From d0749e6a8fc5e7b0ddc301aef0170e12c7dc459c Mon Sep 17 00:00:00 2001 From: Paul Maddox Date: Sun, 27 Oct 2019 04:09:45 +0400 Subject: [PATCH] Group CloudFormation resources by AWS service name (#234) * fix(schema): Move resources to separate packages BREAKING CHANGE: this change moves all Cloudformation resources to packages based on the AWS service name. The main motivation for this is that building goformation on some platforms (Windows) failed due to too many files in the old cloudformation/resources package. This new package style has a nice benefit of slightly nicer to use API, but is a breaking change and will require refactoring existing codebases to update to v3. Old usage: ```go import "github.com/awslabs/goformation/v2/cloudformation/resources" ... snip ... topic := &resources.AWSSNSTopic{} ``` New usage: ```go import "github.com/awslabs/goformation/v3/cloudformation/sns" ...snip... topic := &sns.Topic{} ``` Most tests are still failing at this point and need refactoring. * fix(schema): Tag handling Fixed tag handling for new grouped resources style (via new tags.Tag struct). * fix(schema): SAM specification SAM Specification now generates nicely with new grouped resources format. Also all tests are now passing \o/ --- README.md | 14 +- cloudformation/all.go | 8471 +-- .../aws-amazonmq-broker.go | 45 +- .../aws-amazonmq-broker_configurationid.go | 24 +- .../aws-amazonmq-broker_encryptionoptions.go | 24 +- .../aws-amazonmq-broker_loglist.go | 24 +- .../aws-amazonmq-broker_maintenancewindow.go | 24 +- .../aws-amazonmq-broker_tagsentry.go | 24 +- .../aws-amazonmq-broker_user.go | 24 +- .../aws-amazonmq-configuration.go | 35 +- .../aws-amazonmq-configuration_tagsentry.go | 24 +- .../aws-amazonmq-configurationassociation.go | 35 +- ...onfigurationassociation_configurationid.go | 24 +- .../{resources => amplify}/aws-amplify-app.go | 44 +- ...ws-amplify-app_autobranchcreationconfig.go | 28 +- .../aws-amplify-app_basicauthconfig.go | 24 +- .../aws-amplify-app_customrule.go | 24 +- .../aws-amplify-app_environmentvariable.go | 24 +- .../aws-amplify-branch.go | 40 +- .../aws-amplify-branch_basicauthconfig.go | 24 +- .../aws-amplify-branch_environmentvariable.go | 24 +- .../aws-amplify-domain.go | 35 +- .../aws-amplify-domain_subdomainsetting.go | 24 +- .../aws-apigateway-account.go | 33 +- .../aws-apigateway-apikey.go | 35 +- .../aws-apigateway-apikey_stagekey.go | 24 +- .../aws-apigateway-authorizer.go | 33 +- .../aws-apigateway-basepathmapping.go | 33 +- .../aws-apigateway-clientcertificate.go | 33 +- .../aws-apigateway-deployment.go | 37 +- ...-apigateway-deployment_accesslogsetting.go | 24 +- ...aws-apigateway-deployment_canarysetting.go | 24 +- ...way-deployment_deploymentcanarysettings.go | 24 +- ...aws-apigateway-deployment_methodsetting.go | 24 +- ...-apigateway-deployment_stagedescription.go | 33 +- .../aws-apigateway-documentationpart.go | 35 +- ...s-apigateway-documentationpart_location.go | 24 +- .../aws-apigateway-documentationversion.go | 33 +- .../aws-apigateway-domainname.go | 35 +- ...ateway-domainname_endpointconfiguration.go | 24 +- .../aws-apigateway-gatewayresponse.go | 33 +- .../aws-apigateway-method.go | 37 +- .../aws-apigateway-method_integration.go | 26 +- ...s-apigateway-method_integrationresponse.go | 24 +- .../aws-apigateway-method_methodresponse.go | 24 +- .../aws-apigateway-model.go | 33 +- .../aws-apigateway-requestvalidator.go | 33 +- .../aws-apigateway-resource.go | 33 +- .../aws-apigateway-restapi.go | 37 +- ...pigateway-restapi_endpointconfiguration.go | 24 +- .../aws-apigateway-restapi_s3location.go | 24 +- .../aws-apigateway-stage.go | 42 +- .../aws-apigateway-stage_accesslogsetting.go | 24 +- .../aws-apigateway-stage_canarysetting.go | 24 +- .../aws-apigateway-stage_methodsetting.go | 24 +- .../aws-apigateway-usageplan.go | 39 +- .../aws-apigateway-usageplan_apistage.go | 26 +- .../aws-apigateway-usageplan_quotasettings.go | 24 +- ...s-apigateway-usageplan_throttlesettings.go | 24 +- .../aws-apigateway-usageplankey.go | 33 +- .../aws-apigateway-vpclink.go | 33 +- .../aws-apigatewayv2-api.go | 33 +- .../aws-apigatewayv2-apimapping.go | 33 +- .../aws-apigatewayv2-authorizer.go | 33 +- .../aws-apigatewayv2-deployment.go | 33 +- .../aws-apigatewayv2-domainname.go | 35 +- ...ayv2-domainname_domainnameconfiguration.go | 24 +- .../aws-apigatewayv2-integration.go | 33 +- .../aws-apigatewayv2-integrationresponse.go | 33 +- .../aws-apigatewayv2-model.go | 33 +- .../aws-apigatewayv2-route.go | 33 +- ...apigatewayv2-route_parameterconstraints.go | 24 +- .../aws-apigatewayv2-routeresponse.go | 33 +- ...ayv2-routeresponse_parameterconstraints.go | 24 +- .../aws-apigatewayv2-stage.go | 37 +- ...ws-apigatewayv2-stage_accesslogsettings.go | 24 +- .../aws-apigatewayv2-stage_routesettings.go | 24 +- ...s-applicationautoscaling-scalabletarget.go | 37 +- ...ing-scalabletarget_scalabletargetaction.go | 24 +- ...oscaling-scalabletarget_scheduledaction.go | 26 +- ...toscaling-scalabletarget_suspendedstate.go | 24 +- ...ws-applicationautoscaling-scalingpolicy.go | 37 +- ...ingpolicy_customizedmetricspecification.go | 26 +- ...toscaling-scalingpolicy_metricdimension.go | 24 +- ...ingpolicy_predefinedmetricspecification.go | 24 +- ...utoscaling-scalingpolicy_stepadjustment.go | 24 +- ...ngpolicy_stepscalingpolicyconfiguration.go | 26 +- ...argettrackingscalingpolicyconfiguration.go | 28 +- .../aws-appmesh-mesh.go | 38 +- .../aws-appmesh-mesh_egressfilter.go | 24 +- .../aws-appmesh-mesh_meshspec.go | 26 +- .../aws-appmesh-route.go | 38 +- .../aws-appmesh-route_duration.go | 24 +- .../aws-appmesh-route_headermatchmethod.go | 26 +- .../aws-appmesh-route_httpretrypolicy.go | 26 +- .../aws-appmesh-route_httproute.go | 30 +- .../aws-appmesh-route_httprouteaction.go | 26 +- .../aws-appmesh-route_httprouteheader.go | 26 +- .../aws-appmesh-route_httproutematch.go | 26 +- .../aws-appmesh-route_matchrange.go | 24 +- .../aws-appmesh-route_routespec.go | 28 +- .../aws-appmesh-route_tcproute.go | 26 +- .../aws-appmesh-route_tcprouteaction.go | 26 +- .../aws-appmesh-route_weightedtarget.go | 24 +- .../aws-appmesh-virtualnode.go | 38 +- .../aws-appmesh-virtualnode_accesslog.go | 26 +- ...irtualnode_awscloudmapinstanceattribute.go | 24 +- ...virtualnode_awscloudmapservicediscovery.go | 26 +- .../aws-appmesh-virtualnode_backend.go | 26 +- ...appmesh-virtualnode_dnsservicediscovery.go | 24 +- .../aws-appmesh-virtualnode_fileaccesslog.go | 24 +- .../aws-appmesh-virtualnode_healthcheck.go | 24 +- .../aws-appmesh-virtualnode_listener.go | 28 +- .../aws-appmesh-virtualnode_logging.go | 26 +- .../aws-appmesh-virtualnode_portmapping.go | 24 +- ...ws-appmesh-virtualnode_servicediscovery.go | 28 +- ...aws-appmesh-virtualnode_virtualnodespec.go | 32 +- ...pmesh-virtualnode_virtualservicebackend.go | 24 +- .../aws-appmesh-virtualrouter.go | 38 +- .../aws-appmesh-virtualrouter_portmapping.go | 24 +- ...esh-virtualrouter_virtualrouterlistener.go | 26 +- ...appmesh-virtualrouter_virtualrouterspec.go | 26 +- .../aws-appmesh-virtualservice.go | 38 +- ...rtualservice_virtualnodeserviceprovider.go | 24 +- ...ualservice_virtualrouterserviceprovider.go | 24 +- ...h-virtualservice_virtualserviceprovider.go | 28 +- ...pmesh-virtualservice_virtualservicespec.go | 26 +- .../aws-appstream-directoryconfig.go | 35 +- ...rectoryconfig_serviceaccountcredentials.go | 24 +- .../aws-appstream-fleet.go | 42 +- .../aws-appstream-fleet_computecapacity.go | 24 +- .../aws-appstream-fleet_domainjoininfo.go | 24 +- .../aws-appstream-fleet_vpcconfig.go | 24 +- .../aws-appstream-imagebuilder.go | 40 +- ...s-appstream-imagebuilder_domainjoininfo.go | 24 +- .../aws-appstream-imagebuilder_vpcconfig.go | 24 +- .../aws-appstream-stack.go | 42 +- ...aws-appstream-stack_applicationsettings.go | 24 +- .../aws-appstream-stack_storageconnector.go | 24 +- .../aws-appstream-stack_usersetting.go | 24 +- .../aws-appstream-stackfleetassociation.go | 33 +- .../aws-appstream-stackuserassociation.go | 33 +- .../aws-appstream-user.go | 33 +- .../aws-appsync-apikey.go | 33 +- .../aws-appsync-datasource.go | 43 +- ...-appsync-datasource_authorizationconfig.go | 26 +- .../aws-appsync-datasource_awsiamconfig.go | 24 +- .../aws-appsync-datasource_dynamodbconfig.go | 24 +- ...-appsync-datasource_elasticsearchconfig.go | 24 +- .../aws-appsync-datasource_httpconfig.go | 26 +- .../aws-appsync-datasource_lambdaconfig.go | 24 +- ...ppsync-datasource_rdshttpendpointconfig.go | 24 +- ...ync-datasource_relationaldatabaseconfig.go | 26 +- .../aws-appsync-functionconfiguration.go | 33 +- .../aws-appsync-graphqlapi.go | 43 +- ...hqlapi_additionalauthenticationprovider.go | 28 +- ...qlapi_additionalauthenticationproviders.go | 24 +- ...ppsync-graphqlapi_cognitouserpoolconfig.go | 24 +- .../aws-appsync-graphqlapi_logconfig.go | 24 +- ...-appsync-graphqlapi_openidconnectconfig.go | 24 +- .../aws-appsync-graphqlapi_tags.go | 24 +- .../aws-appsync-graphqlapi_userpoolconfig.go | 24 +- .../aws-appsync-graphqlschema.go | 33 +- .../aws-appsync-resolver.go | 35 +- .../aws-appsync-resolver_pipelineconfig.go | 24 +- .../{resources => ask}/alexa-ask-skill.go | 37 +- ...a-ask-skill_authenticationconfiguration.go | 24 +- .../alexa-ask-skill_overrides.go | 24 +- .../alexa-ask-skill_skillpackage.go | 26 +- .../aws-athena-namedquery.go | 33 +- .../aws-autoscaling-autoscalinggroup.go | 49 +- ...-autoscalinggroup_instancesdistribution.go | 24 +- ...scaling-autoscalinggroup_launchtemplate.go | 28 +- ...utoscalinggroup_launchtemplateoverrides.go | 24 +- ...calinggroup_launchtemplatespecification.go | 24 +- ...scalinggroup_lifecyclehookspecification.go | 24 +- ...ling-autoscalinggroup_metricscollection.go | 24 +- ...g-autoscalinggroup_mixedinstancespolicy.go | 28 +- ...oscalinggroup_notificationconfiguration.go | 24 +- ...utoscaling-autoscalinggroup_tagproperty.go | 24 +- .../aws-autoscaling-launchconfiguration.go | 35 +- ...scaling-launchconfiguration_blockdevice.go | 24 +- ...-launchconfiguration_blockdevicemapping.go | 26 +- .../aws-autoscaling-lifecyclehook.go | 33 +- .../aws-autoscaling-scalingpolicy.go | 37 +- ...ingpolicy_customizedmetricspecification.go | 26 +- ...toscaling-scalingpolicy_metricdimension.go | 24 +- ...ingpolicy_predefinedmetricspecification.go | 24 +- ...utoscaling-scalingpolicy_stepadjustment.go | 24 +- ...alingpolicy_targettrackingconfiguration.go | 28 +- .../aws-autoscaling-scheduledaction.go | 33 +- .../aws-autoscalingplans-scalingplan.go | 37 +- ...lingplans-scalingplan_applicationsource.go | 26 +- ...gplan_customizedloadmetricspecification.go | 26 +- ...an_customizedscalingmetricspecification.go | 26 +- ...calingplans-scalingplan_metricdimension.go | 24 +- ...gplan_predefinedloadmetricspecification.go | 24 +- ...an_predefinedscalingmetricspecification.go | 24 +- ...ingplans-scalingplan_scalinginstruction.go | 30 +- ...-autoscalingplans-scalingplan_tagfilter.go | 24 +- ...scalingplan_targettrackingconfiguration.go | 28 +- .../aws-backup-backupplan.go | 35 +- ...ackup-backupplan_backupplanresourcetype.go | 26 +- ...ackup-backupplan_backupruleresourcetype.go | 26 +- ...backup-backupplan_lifecycleresourcetype.go | 24 +- .../aws-backup-backupselection.go | 35 +- ...upselection_backupselectionresourcetype.go | 26 +- ...p-backupselection_conditionresourcetype.go | 24 +- .../aws-backup-backupvault.go | 35 +- ...ckup-backupvault_notificationobjecttype.go | 24 +- .../aws-batch-computeenvironment.go | 35 +- ...tch-computeenvironment_computeresources.go | 26 +- ...environment_launchtemplatespecification.go | 24 +- .../aws-batch-jobdefinition.go | 41 +- ...batch-jobdefinition_containerproperties.go | 36 +- .../aws-batch-jobdefinition_device.go | 24 +- .../aws-batch-jobdefinition_environment.go | 24 +- ...aws-batch-jobdefinition_linuxparameters.go | 26 +- .../aws-batch-jobdefinition_mountpoints.go | 24 +- .../aws-batch-jobdefinition_nodeproperties.go | 26 +- ...s-batch-jobdefinition_noderangeproperty.go | 26 +- ...batch-jobdefinition_resourcerequirement.go | 24 +- .../aws-batch-jobdefinition_retrystrategy.go | 24 +- .../aws-batch-jobdefinition_timeout.go | 24 +- .../aws-batch-jobdefinition_ulimit.go | 24 +- .../aws-batch-jobdefinition_volumes.go | 26 +- .../aws-batch-jobdefinition_volumeshost.go | 24 +- .../aws-batch-jobqueue.go | 35 +- ...-batch-jobqueue_computeenvironmentorder.go | 24 +- .../aws-budgets-budget.go | 37 +- .../aws-budgets-budget_budgetdata.go | 30 +- .../aws-budgets-budget_costtypes.go | 24 +- .../aws-budgets-budget_notification.go | 24 +- ...gets-budget_notificationwithsubscribers.go | 28 +- .../aws-budgets-budget_spend.go | 24 +- .../aws-budgets-budget_subscriber.go | 24 +- .../aws-budgets-budget_timeperiod.go | 24 +- .../aws-certificatemanager-certificate.go | 38 +- ...ager-certificate_domainvalidationoption.go | 24 +- .../aws-cloud9-environmentec2.go | 35 +- .../aws-cloud9-environmentec2_repository.go | 24 +- .../aws-cloudformation-customresource.go | 33 +- .../aws-cloudformation-macro.go | 33 +- .../aws-cloudformation-stack.go | 36 +- .../aws-cloudformation-waitcondition.go | 35 +- .../aws-cloudformation-waitconditionhandle.go | 33 +- cloudformation/cloudformation/tag.go | 70 + ...oudfront-cloudfrontoriginaccessidentity.go | 35 +- ...ty_cloudfrontoriginaccessidentityconfig.go | 24 +- .../aws-cloudfront-distribution.go | 38 +- ...s-cloudfront-distribution_cachebehavior.go | 28 +- .../aws-cloudfront-distribution_cookies.go | 24 +- ...dfront-distribution_customerrorresponse.go | 24 +- ...udfront-distribution_customoriginconfig.go | 24 +- ...front-distribution_defaultcachebehavior.go | 28 +- ...udfront-distribution_distributionconfig.go | 38 +- ...cloudfront-distribution_forwardedvalues.go | 26 +- ...-cloudfront-distribution_georestriction.go | 24 +- ...-distribution_lambdafunctionassociation.go | 24 +- .../aws-cloudfront-distribution_logging.go | 24 +- .../aws-cloudfront-distribution_origin.go | 30 +- ...udfront-distribution_origincustomheader.go | 24 +- ...ws-cloudfront-distribution_restrictions.go | 26 +- ...-cloudfront-distribution_s3originconfig.go | 24 +- ...oudfront-distribution_viewercertificate.go | 24 +- .../aws-cloudfront-streamingdistribution.go | 38 +- ...loudfront-streamingdistribution_logging.go | 24 +- ...oudfront-streamingdistribution_s3origin.go | 24 +- ...istribution_streamingdistributionconfig.go | 30 +- ...nt-streamingdistribution_trustedsigners.go | 24 +- .../aws-cloudtrail-trail.go | 38 +- .../aws-cloudtrail-trail_dataresource.go | 24 +- .../aws-cloudtrail-trail_eventselector.go | 26 +- .../aws-cloudwatch-alarm.go | 37 +- .../aws-cloudwatch-alarm_dimension.go | 24 +- .../aws-cloudwatch-alarm_metric.go | 26 +- .../aws-cloudwatch-alarm_metricdataquery.go | 26 +- .../aws-cloudwatch-alarm_metricstat.go | 26 +- .../aws-cloudwatch-anomalydetector.go | 37 +- ...loudwatch-anomalydetector_configuration.go | 26 +- ...ws-cloudwatch-anomalydetector_dimension.go | 24 +- .../aws-cloudwatch-anomalydetector_range.go | 24 +- .../aws-cloudwatch-dashboard.go | 33 +- .../aws-codebuild-project.go | 56 +- .../aws-codebuild-project_artifacts.go | 24 +- ...-codebuild-project_cloudwatchlogsconfig.go | 24 +- .../aws-codebuild-project_environment.go | 28 +- ...s-codebuild-project_environmentvariable.go | 24 +- .../aws-codebuild-project_filtergroup.go | 24 +- ...s-codebuild-project_gitsubmodulesconfig.go | 24 +- .../aws-codebuild-project_logsconfig.go | 28 +- .../aws-codebuild-project_projectcache.go | 24 +- ...-codebuild-project_projectsourceversion.go | 24 +- .../aws-codebuild-project_projecttriggers.go | 26 +- ...ws-codebuild-project_registrycredential.go | 24 +- .../aws-codebuild-project_s3logsconfig.go | 24 +- .../aws-codebuild-project_source.go | 28 +- .../aws-codebuild-project_sourceauth.go | 24 +- .../aws-codebuild-project_vpcconfig.go | 24 +- .../aws-codebuild-project_webhookfilter.go | 24 +- .../aws-codebuild-sourcecredential.go | 33 +- .../aws-codecommit-repository.go | 40 +- .../aws-codecommit-repository_code.go | 26 +- ...codecommit-repository_repositorytrigger.go | 24 +- .../aws-codecommit-repository_s3.go | 24 +- .../aws-codedeploy-application.go | 33 +- .../aws-codedeploy-deploymentconfig.go | 35 +- ...oy-deploymentconfig_minimumhealthyhosts.go | 24 +- .../aws-codedeploy-deploymentgroup.go | 53 +- .../aws-codedeploy-deploymentgroup_alarm.go | 24 +- ...ploy-deploymentgroup_alarmconfiguration.go | 26 +- ...ploymentgroup_autorollbackconfiguration.go | 24 +- ...s-codedeploy-deploymentgroup_deployment.go | 26 +- ...edeploy-deploymentgroup_deploymentstyle.go | 24 +- ...codedeploy-deploymentgroup_ec2tagfilter.go | 24 +- ...ws-codedeploy-deploymentgroup_ec2tagset.go | 26 +- ...loy-deploymentgroup_ec2tagsetlistobject.go | 26 +- .../aws-codedeploy-deploymentgroup_elbinfo.go | 24 +- ...dedeploy-deploymentgroup_githublocation.go | 24 +- ...deploy-deploymentgroup_loadbalancerinfo.go | 28 +- ...deploy-deploymentgroup_onpremisestagset.go | 26 +- ...loymentgroup_onpremisestagsetlistobject.go | 26 +- ...deploy-deploymentgroup_revisionlocation.go | 28 +- ...s-codedeploy-deploymentgroup_s3location.go | 24 +- ...ws-codedeploy-deploymentgroup_tagfilter.go | 24 +- ...edeploy-deploymentgroup_targetgroupinfo.go | 24 +- ...odedeploy-deploymentgroup_triggerconfig.go | 24 +- .../aws-codepipeline-customactiontype.go | 41 +- ...peline-customactiontype_artifactdetails.go | 24 +- ...ustomactiontype_configurationproperties.go | 24 +- ...-codepipeline-customactiontype_settings.go | 24 +- .../aws-codepipeline-pipeline.go | 41 +- ...codepipeline-pipeline_actiondeclaration.go | 30 +- .../aws-codepipeline-pipeline_actiontypeid.go | 24 +- ...aws-codepipeline-pipeline_artifactstore.go | 26 +- ...-codepipeline-pipeline_artifactstoremap.go | 26 +- ...odepipeline-pipeline_blockerdeclaration.go | 24 +- ...aws-codepipeline-pipeline_encryptionkey.go | 24 +- ...aws-codepipeline-pipeline_inputartifact.go | 24 +- ...ws-codepipeline-pipeline_outputartifact.go | 24 +- ...-codepipeline-pipeline_stagedeclaration.go | 28 +- ...s-codepipeline-pipeline_stagetransition.go | 24 +- .../aws-codepipeline-webhook.go | 37 +- ...peline-webhook_webhookauthconfiguration.go | 24 +- ...-codepipeline-webhook_webhookfilterrule.go | 24 +- .../aws-codestar-githubrepository.go | 35 +- .../aws-codestar-githubrepository_code.go | 26 +- .../aws-codestar-githubrepository_s3.go | 24 +- .../aws-cognito-identitypool.go | 39 +- ...to-identitypool_cognitoidentityprovider.go | 24 +- ...aws-cognito-identitypool_cognitostreams.go | 24 +- .../aws-cognito-identitypool_pushsync.go | 24 +- .../aws-cognito-identitypoolroleattachment.go | 33 +- ...-identitypoolroleattachment_mappingrule.go | 24 +- ...-identitypoolroleattachment_rolemapping.go | 26 +- ...olroleattachment_rulesconfigurationtype.go | 26 +- .../aws-cognito-userpool.go | 51 +- ...-cognito-userpool_admincreateuserconfig.go | 26 +- ...ws-cognito-userpool_deviceconfiguration.go | 24 +- ...aws-cognito-userpool_emailconfiguration.go | 24 +- ...-cognito-userpool_invitemessagetemplate.go | 24 +- .../aws-cognito-userpool_lambdaconfig.go | 24 +- ...ito-userpool_numberattributeconstraints.go | 24 +- .../aws-cognito-userpool_passwordpolicy.go | 24 +- .../aws-cognito-userpool_policies.go | 26 +- .../aws-cognito-userpool_schemaattribute.go | 28 +- .../aws-cognito-userpool_smsconfiguration.go | 24 +- ...ito-userpool_stringattributeconstraints.go | 24 +- .../aws-cognito-userpool_userpooladdons.go | 24 +- ...to-userpool_verificationmessagetemplate.go | 24 +- .../aws-cognito-userpoolclient.go | 35 +- ...o-userpoolclient_analyticsconfiguration.go | 24 +- .../aws-cognito-userpooldomain.go | 35 +- ...o-userpooldomain_customdomainconfigtype.go | 24 +- .../aws-cognito-userpoolgroup.go | 33 +- .../aws-cognito-userpoolidentityprovider.go | 33 +- .../aws-cognito-userpoolresourceserver.go | 35 +- ...lresourceserver_resourceserverscopetype.go | 24 +- ...ito-userpoolriskconfigurationattachment.go | 39 +- ...onattachment_accounttakeoveractionstype.go | 30 +- ...ionattachment_accounttakeoveractiontype.go | 24 +- ...nt_accounttakeoverriskconfigurationtype.go | 28 +- ...hment_compromisedcredentialsactionstype.go | 24 +- ...romisedcredentialsriskconfigurationtype.go | 26 +- ...ationattachment_notifyconfigurationtype.go | 30 +- ...configurationattachment_notifyemailtype.go | 24 +- ...tachment_riskexceptionconfigurationtype.go | 24 +- ...gnito-userpooluicustomizationattachment.go | 33 +- .../aws-cognito-userpooluser.go | 37 +- .../aws-cognito-userpooluser_attributetype.go | 24 +- ...s-cognito-userpoolusertogroupattachment.go | 33 +- .../aws-config-aggregationauthorization.go | 33 +- .../aws-config-configrule.go | 37 +- .../aws-config-configrule_scope.go | 24 +- .../aws-config-configrule_source.go | 26 +- .../aws-config-configrule_sourcedetail.go | 24 +- .../aws-config-configurationaggregator.go | 37 +- ...tionaggregator_accountaggregationsource.go | 24 +- ...ggregator_organizationaggregationsource.go | 24 +- .../aws-config-configurationrecorder.go | 35 +- ...ig-configurationrecorder_recordinggroup.go | 24 +- .../aws-config-deliverychannel.go | 35 +- ...hannel_configsnapshotdeliveryproperties.go | 24 +- .../aws-config-organizationconfigrule.go | 37 +- ...nfigrule_organizationcustomrulemetadata.go | 24 +- ...figrule_organizationmanagedrulemetadata.go | 24 +- .../aws-config-remediationconfiguration.go | 35 +- ...ediationconfiguration_executioncontrols.go | 26 +- ...configuration_remediationparametervalue.go | 28 +- ...-remediationconfiguration_resourcevalue.go | 24 +- ...ig-remediationconfiguration_ssmcontrols.go | 24 +- ...ig-remediationconfiguration_staticvalue.go | 24 +- cloudformation/custom_resource.go | 2 +- .../aws-datapipeline-pipeline.go | 41 +- .../aws-datapipeline-pipeline_field.go | 24 +- ...atapipeline-pipeline_parameterattribute.go | 24 +- ...s-datapipeline-pipeline_parameterobject.go | 26 +- ...ws-datapipeline-pipeline_parametervalue.go | 24 +- ...ws-datapipeline-pipeline_pipelineobject.go | 26 +- .../aws-datapipeline-pipeline_pipelinetag.go | 24 +- .../{resources => dax}/aws-dax-cluster.go | 35 +- .../aws-dax-cluster_ssespecification.go | 24 +- .../aws-dax-parametergroup.go | 33 +- .../{resources => dax}/aws-dax-subnetgroup.go | 33 +- .../aws-directoryservice-microsoftad.go | 35 +- ...irectoryservice-microsoftad_vpcsettings.go | 24 +- .../aws-directoryservice-simplead.go | 35 +- ...s-directoryservice-simplead_vpcsettings.go | 24 +- .../aws-dlm-lifecyclepolicy.go | 35 +- .../aws-dlm-lifecyclepolicy_createrule.go | 24 +- .../aws-dlm-lifecyclepolicy_parameters.go | 24 +- .../aws-dlm-lifecyclepolicy_policydetails.go | 31 +- .../aws-dlm-lifecyclepolicy_retainrule.go | 24 +- .../aws-dlm-lifecyclepolicy_schedule.go | 33 +- .../{resources => dms}/aws-dms-certificate.go | 33 +- .../{resources => dms}/aws-dms-endpoint.go | 46 +- .../aws-dms-endpoint_dynamodbsettings.go | 24 +- .../aws-dms-endpoint_elasticsearchsettings.go | 24 +- .../aws-dms-endpoint_kinesissettings.go | 24 +- .../aws-dms-endpoint_mongodbsettings.go | 24 +- .../aws-dms-endpoint_s3settings.go | 24 +- .../aws-dms-eventsubscription.go | 36 +- .../aws-dms-replicationinstance.go | 36 +- .../aws-dms-replicationsubnetgroup.go | 36 +- .../aws-dms-replicationtask.go | 36 +- .../aws-docdb-dbcluster.go | 36 +- .../aws-docdb-dbclusterparametergroup.go | 36 +- .../aws-docdb-dbinstance.go | 36 +- .../aws-docdb-dbsubnetgroup.go | 36 +- .../aws-dynamodb-table.go | 54 +- .../aws-dynamodb-table_attributedefinition.go | 24 +- ...aws-dynamodb-table_globalsecondaryindex.go | 30 +- .../aws-dynamodb-table_keyschema.go | 24 +- .../aws-dynamodb-table_localsecondaryindex.go | 28 +- ...-table_pointintimerecoveryspecification.go | 24 +- .../aws-dynamodb-table_projection.go | 24 +- ...ws-dynamodb-table_provisionedthroughput.go | 24 +- .../aws-dynamodb-table_ssespecification.go | 24 +- .../aws-dynamodb-table_streamspecification.go | 24 +- ...-dynamodb-table_timetolivespecification.go | 24 +- .../aws-ec2-capacityreservation.go | 35 +- ...c2-capacityreservation_tagspecification.go | 27 +- .../aws-ec2-clientvpnauthorizationrule.go | 33 +- .../aws-ec2-clientvpnendpoint.go | 39 +- ...dpoint_certificateauthenticationrequest.go | 24 +- ...vpnendpoint_clientauthenticationrequest.go | 28 +- ...-clientvpnendpoint_connectionlogoptions.go | 24 +- ...t_directoryserviceauthenticationrequest.go | 24 +- ...-ec2-clientvpnendpoint_tagspecification.go | 27 +- .../aws-ec2-clientvpnroute.go | 33 +- ...s-ec2-clientvpntargetnetworkassociation.go | 33 +- .../aws-ec2-customergateway.go | 36 +- .../{resources => ec2}/aws-ec2-dhcpoptions.go | 36 +- .../{resources => ec2}/aws-ec2-ec2fleet.go | 43 +- ...2fleet_fleetlaunchtemplateconfigrequest.go | 28 +- ...eet_fleetlaunchtemplateoverridesrequest.go | 24 +- ...fleetlaunchtemplatespecificationrequest.go | 24 +- ...aws-ec2-ec2fleet_ondemandoptionsrequest.go | 24 +- .../aws-ec2-ec2fleet_spotoptionsrequest.go | 24 +- .../aws-ec2-ec2fleet_tagrequest.go | 24 +- .../aws-ec2-ec2fleet_tagspecification.go | 26 +- ...leet_targetcapacityspecificationrequest.go | 24 +- .../aws-ec2-egressonlyinternetgateway.go | 33 +- .../{resources => ec2}/aws-ec2-eip.go | 33 +- .../aws-ec2-eipassociation.go | 33 +- .../{resources => ec2}/aws-ec2-flowlog.go | 33 +- .../{resources => ec2}/aws-ec2-host.go | 33 +- .../{resources => ec2}/aws-ec2-instance.go | 60 +- .../aws-ec2-instance_associationparameter.go | 24 +- .../aws-ec2-instance_blockdevicemapping.go | 28 +- .../aws-ec2-instance_cpuoptions.go | 24 +- .../aws-ec2-instance_creditspecification.go | 24 +- .../aws-ec2-instance_ebs.go | 24 +- ...ws-ec2-instance_elasticgpuspecification.go | 24 +- ...c2-instance_elasticinferenceaccelerator.go | 24 +- .../aws-ec2-instance_instanceipv6address.go | 24 +- ...c2-instance_launchtemplatespecification.go | 24 +- .../aws-ec2-instance_licensespecification.go | 24 +- .../aws-ec2-instance_networkinterface.go | 28 +- .../aws-ec2-instance_nodevice.go | 24 +- ...-instance_privateipaddressspecification.go | 24 +- .../aws-ec2-instance_ssmassociation.go | 26 +- .../aws-ec2-instance_volume.go | 24 +- .../aws-ec2-internetgateway.go | 36 +- .../aws-ec2-launchtemplate.go | 35 +- ...s-ec2-launchtemplate_blockdevicemapping.go | 26 +- ...htemplate_capacityreservationpreference.go | 24 +- ...mplate_capacityreservationspecification.go | 28 +- ...aunchtemplate_capacityreservationtarget.go | 24 +- .../aws-ec2-launchtemplate_cpuoptions.go | 24 +- ...-ec2-launchtemplate_creditspecification.go | 24 +- .../aws-ec2-launchtemplate_ebs.go | 24 +- ...-launchtemplate_elasticgpuspecification.go | 24 +- ...s-ec2-launchtemplate_hibernationoptions.go | 24 +- ...s-ec2-launchtemplate_iaminstanceprofile.go | 24 +- ...c2-launchtemplate_instancemarketoptions.go | 26 +- .../aws-ec2-launchtemplate_ipv6add.go | 24 +- ...s-ec2-launchtemplate_launchtemplatedata.go | 52 +- ...unchtemplateelasticinferenceaccelerator.go | 24 +- ...ec2-launchtemplate_licensespecification.go | 24 +- .../aws-ec2-launchtemplate_monitoring.go | 24 +- ...aws-ec2-launchtemplate_networkinterface.go | 28 +- .../aws-ec2-launchtemplate_placement.go | 24 +- .../aws-ec2-launchtemplate_privateipadd.go | 24 +- .../aws-ec2-launchtemplate_spotoptions.go | 24 +- ...aws-ec2-launchtemplate_tagspecification.go | 27 +- .../{resources => ec2}/aws-ec2-natgateway.go | 36 +- .../{resources => ec2}/aws-ec2-networkacl.go | 36 +- .../aws-ec2-networkaclentry.go | 37 +- .../aws-ec2-networkaclentry_icmp.go | 24 +- .../aws-ec2-networkaclentry_portrange.go | 24 +- .../aws-ec2-networkinterface.go | 40 +- ...c2-networkinterface_instanceipv6address.go | 24 +- ...interface_privateipaddressspecification.go | 24 +- .../aws-ec2-networkinterfaceattachment.go | 33 +- .../aws-ec2-networkinterfacepermission.go | 33 +- .../aws-ec2-placementgroup.go | 33 +- .../{resources => ec2}/aws-ec2-route.go | 33 +- .../{resources => ec2}/aws-ec2-routetable.go | 36 +- .../aws-ec2-securitygroup.go | 40 +- .../aws-ec2-securitygroup_egress.go | 24 +- .../aws-ec2-securitygroup_ingress.go | 24 +- .../aws-ec2-securitygroupegress.go | 33 +- .../aws-ec2-securitygroupingress.go | 33 +- .../{resources => ec2}/aws-ec2-spotfleet.go | 35 +- .../aws-ec2-spotfleet_blockdevicemapping.go | 26 +- .../aws-ec2-spotfleet_classicloadbalancer.go | 24 +- ...c2-spotfleet_classicloadbalancersconfig.go | 26 +- .../aws-ec2-spotfleet_ebsblockdevice.go | 24 +- ...tfleet_fleetlaunchtemplatespecification.go | 24 +- .../aws-ec2-spotfleet_groupidentifier.go | 24 +- ...otfleet_iaminstanceprofilespecification.go | 24 +- .../aws-ec2-spotfleet_instanceipv6address.go | 24 +- ...t_instancenetworkinterfacespecification.go | 28 +- .../aws-ec2-spotfleet_launchtemplateconfig.go | 28 +- ...s-ec2-spotfleet_launchtemplateoverrides.go | 24 +- .../aws-ec2-spotfleet_loadbalancersconfig.go | 28 +- ...spotfleet_privateipaddressspecification.go | 24 +- ...-spotfleet_spotfleetlaunchspecification.go | 38 +- .../aws-ec2-spotfleet_spotfleetmonitoring.go | 24 +- ...c2-spotfleet_spotfleetrequestconfigdata.go | 30 +- ...ec2-spotfleet_spotfleettagspecification.go | 27 +- .../aws-ec2-spotfleet_spotplacement.go | 24 +- .../aws-ec2-spotfleet_targetgroup.go | 24 +- .../aws-ec2-spotfleet_targetgroupsconfig.go | 26 +- .../{resources => ec2}/aws-ec2-subnet.go | 36 +- .../aws-ec2-subnetcidrblock.go | 33 +- .../aws-ec2-subnetnetworkaclassociation.go | 33 +- .../aws-ec2-subnetroutetableassociation.go | 33 +- .../aws-ec2-trafficmirrorfilter.go | 36 +- .../aws-ec2-trafficmirrorfilterrule.go | 37 +- ...mirrorfilterrule_trafficmirrorportrange.go | 24 +- .../aws-ec2-trafficmirrorsession.go | 36 +- .../aws-ec2-trafficmirrortarget.go | 36 +- .../aws-ec2-transitgateway.go | 36 +- .../aws-ec2-transitgatewayattachment.go | 36 +- .../aws-ec2-transitgatewayroute.go | 33 +- .../aws-ec2-transitgatewayroutetable.go | 36 +- ...ec2-transitgatewayroutetableassociation.go | 33 +- ...ec2-transitgatewayroutetablepropagation.go | 33 +- .../{resources => ec2}/aws-ec2-volume.go | 36 +- .../aws-ec2-volumeattachment.go | 33 +- .../{resources => ec2}/aws-ec2-vpc.go | 36 +- .../aws-ec2-vpccidrblock.go | 33 +- .../aws-ec2-vpcdhcpoptionsassociation.go | 33 +- .../{resources => ec2}/aws-ec2-vpcendpoint.go | 33 +- ...s-ec2-vpcendpointconnectionnotification.go | 33 +- .../aws-ec2-vpcendpointservice.go | 33 +- .../aws-ec2-vpcendpointservicepermissions.go | 33 +- .../aws-ec2-vpcgatewayattachment.go | 33 +- .../aws-ec2-vpcpeeringconnection.go | 36 +- .../aws-ec2-vpnconnection.go | 38 +- ...onnection_vpntunneloptionsspecification.go | 24 +- .../aws-ec2-vpnconnectionroute.go | 33 +- .../{resources => ec2}/aws-ec2-vpngateway.go | 36 +- .../aws-ec2-vpngatewayroutepropagation.go | 33 +- .../{resources => ecr}/aws-ecr-repository.go | 38 +- .../aws-ecr-repository_lifecyclepolicy.go | 24 +- .../{resources => ecs}/aws-ecs-cluster.go | 36 +- .../{resources => ecs}/aws-ecs-service.go | 48 +- .../aws-ecs-service_awsvpcconfiguration.go | 24 +- ...aws-ecs-service_deploymentconfiguration.go | 24 +- .../aws-ecs-service_loadbalancer.go | 24 +- .../aws-ecs-service_networkconfiguration.go | 26 +- .../aws-ecs-service_placementconstraint.go | 24 +- .../aws-ecs-service_placementstrategy.go | 24 +- .../aws-ecs-service_serviceregistry.go | 24 +- .../aws-ecs-taskdefinition.go | 44 +- ...-ecs-taskdefinition_containerdefinition.go | 52 +- ...-ecs-taskdefinition_containerdependency.go | 24 +- .../aws-ecs-taskdefinition_device.go | 24 +- ...askdefinition_dockervolumeconfiguration.go | 24 +- .../aws-ecs-taskdefinition_healthcheck.go | 24 +- .../aws-ecs-taskdefinition_hostentry.go | 24 +- ...ecs-taskdefinition_hostvolumeproperties.go | 24 +- ...s-ecs-taskdefinition_kernelcapabilities.go | 24 +- .../aws-ecs-taskdefinition_keyvaluepair.go | 24 +- .../aws-ecs-taskdefinition_linuxparameters.go | 30 +- ...aws-ecs-taskdefinition_logconfiguration.go | 26 +- .../aws-ecs-taskdefinition_mountpoint.go | 24 +- .../aws-ecs-taskdefinition_portmapping.go | 24 +- ...s-ecs-taskdefinition_proxyconfiguration.go | 26 +- ...cs-taskdefinition_repositorycredentials.go | 24 +- ...-ecs-taskdefinition_resourcerequirement.go | 24 +- .../aws-ecs-taskdefinition_secret.go | 24 +- .../aws-ecs-taskdefinition_systemcontrol.go | 24 +- ...ition_taskdefinitionplacementconstraint.go | 24 +- .../aws-ecs-taskdefinition_tmpfs.go | 24 +- .../aws-ecs-taskdefinition_ulimit.go | 24 +- .../aws-ecs-taskdefinition_volume.go | 28 +- .../aws-ecs-taskdefinition_volumefrom.go | 24 +- .../{resources => efs}/aws-efs-filesystem.go | 37 +- ...aws-efs-filesystem_elasticfilesystemtag.go | 24 +- .../aws-efs-filesystem_lifecyclepolicy.go | 24 +- .../{resources => efs}/aws-efs-mounttarget.go | 33 +- .../{resources => eks}/aws-eks-cluster.go | 35 +- .../aws-eks-cluster_resourcesvpcconfig.go | 24 +- .../aws-elasticache-cachecluster.go | 36 +- .../aws-elasticache-parametergroup.go | 33 +- .../aws-elasticache-replicationgroup.go | 38 +- ...replicationgroup_nodegroupconfiguration.go | 24 +- .../aws-elasticache-securitygroup.go | 33 +- .../aws-elasticache-securitygroupingress.go | 33 +- .../aws-elasticache-subnetgroup.go | 33 +- .../aws-elasticbeanstalk-application.go | 35 +- ...tion_applicationresourcelifecycleconfig.go | 26 +- ...ation_applicationversionlifecycleconfig.go | 28 +- ...elasticbeanstalk-application_maxagerule.go | 24 +- ...asticbeanstalk-application_maxcountrule.go | 24 +- ...aws-elasticbeanstalk-applicationversion.go | 35 +- ...anstalk-applicationversion_sourcebundle.go | 24 +- ...-elasticbeanstalk-configurationtemplate.go | 37 +- ...tiontemplate_configurationoptionsetting.go | 24 +- ...nfigurationtemplate_sourceconfiguration.go | 24 +- .../aws-elasticbeanstalk-environment.go | 40 +- ...sticbeanstalk-environment_optionsetting.go | 24 +- .../aws-elasticbeanstalk-environment_tier.go | 24 +- .../aws-elasticloadbalancing-loadbalancer.go | 52 +- ...ancing-loadbalancer_accessloggingpolicy.go | 24 +- ...-loadbalancer_appcookiestickinesspolicy.go | 24 +- ...g-loadbalancer_connectiondrainingpolicy.go | 24 +- ...lancing-loadbalancer_connectionsettings.go | 24 +- ...cloadbalancing-loadbalancer_healthcheck.go | 24 +- ...g-loadbalancer_lbcookiestickinesspolicy.go | 24 +- ...ticloadbalancing-loadbalancer_listeners.go | 24 +- ...sticloadbalancing-loadbalancer_policies.go | 24 +- .../aws-elasticloadbalancingv2-listener.go | 37 +- ...-elasticloadbalancingv2-listener_action.go | 32 +- ...ngv2-listener_authenticatecognitoconfig.go | 24 +- ...ncingv2-listener_authenticateoidcconfig.go | 24 +- ...ticloadbalancingv2-listener_certificate.go | 24 +- ...alancingv2-listener_fixedresponseconfig.go | 24 +- ...loadbalancingv2-listener_redirectconfig.go | 24 +- ...sticloadbalancingv2-listenercertificate.go | 35 +- ...ncingv2-listenercertificate_certificate.go | 24 +- ...aws-elasticloadbalancingv2-listenerrule.go | 37 +- ...sticloadbalancingv2-listenerrule_action.go | 32 +- ...-listenerrule_authenticatecognitoconfig.go | 24 +- ...gv2-listenerrule_authenticateoidcconfig.go | 24 +- ...cingv2-listenerrule_fixedresponseconfig.go | 24 +- ...lancingv2-listenerrule_hostheaderconfig.go | 24 +- ...lancingv2-listenerrule_httpheaderconfig.go | 24 +- ...v2-listenerrule_httprequestmethodconfig.go | 24 +- ...ancingv2-listenerrule_pathpatternconfig.go | 24 +- ...ancingv2-listenerrule_querystringconfig.go | 26 +- ...cingv2-listenerrule_querystringkeyvalue.go | 24 +- ...balancingv2-listenerrule_redirectconfig.go | 24 +- ...dbalancingv2-listenerrule_rulecondition.go | 36 +- ...balancingv2-listenerrule_sourceipconfig.go | 24 +- ...aws-elasticloadbalancingv2-loadbalancer.go | 40 +- ...ngv2-loadbalancer_loadbalancerattribute.go | 24 +- ...dbalancingv2-loadbalancer_subnetmapping.go | 24 +- .../aws-elasticloadbalancingv2-targetgroup.go | 42 +- ...sticloadbalancingv2-targetgroup_matcher.go | 24 +- ...lancingv2-targetgroup_targetdescription.go | 24 +- ...cingv2-targetgroup_targetgroupattribute.go | 24 +- .../aws-elasticsearch-domain.go | 48 +- .../aws-elasticsearch-domain_ebsoptions.go | 24 +- ...earch-domain_elasticsearchclusterconfig.go | 26 +- ...icsearch-domain_encryptionatrestoptions.go | 24 +- ...arch-domain_nodetonodeencryptionoptions.go | 24 +- ...ws-elasticsearch-domain_snapshotoptions.go | 24 +- .../aws-elasticsearch-domain_vpcoptions.go | 24 +- ...lasticsearch-domain_zoneawarenessconfig.go | 24 +- .../{resources => emr}/aws-emr-cluster.go | 48 +- .../aws-emr-cluster_application.go | 24 +- .../aws-emr-cluster_autoscalingpolicy.go | 28 +- .../aws-emr-cluster_bootstrapactionconfig.go | 26 +- ...s-emr-cluster_cloudwatchalarmdefinition.go | 26 +- .../aws-emr-cluster_configuration.go | 26 +- .../aws-emr-cluster_ebsblockdeviceconfig.go | 26 +- .../aws-emr-cluster_ebsconfiguration.go | 26 +- .../aws-emr-cluster_hadoopjarstepconfig.go | 26 +- .../aws-emr-cluster_instancefleetconfig.go | 28 +- ...instancefleetprovisioningspecifications.go | 26 +- .../aws-emr-cluster_instancegroupconfig.go | 30 +- .../aws-emr-cluster_instancetypeconfig.go | 28 +- .../aws-emr-cluster_jobflowinstancesconfig.go | 34 +- .../aws-emr-cluster_kerberosattributes.go | 24 +- .../aws-emr-cluster_keyvalue.go | 24 +- .../aws-emr-cluster_metricdimension.go | 24 +- .../aws-emr-cluster_placementtype.go | 24 +- .../aws-emr-cluster_scalingaction.go | 26 +- .../aws-emr-cluster_scalingconstraints.go | 24 +- .../aws-emr-cluster_scalingrule.go | 28 +- .../aws-emr-cluster_scalingtrigger.go | 26 +- ...emr-cluster_scriptbootstrapactionconfig.go | 24 +- ...luster_simplescalingpolicyconfiguration.go | 24 +- ...r-cluster_spotprovisioningspecification.go | 24 +- .../aws-emr-cluster_stepconfig.go | 26 +- .../aws-emr-cluster_volumespecification.go | 24 +- .../aws-emr-instancefleetconfig.go | 37 +- ...s-emr-instancefleetconfig_configuration.go | 26 +- ...nstancefleetconfig_ebsblockdeviceconfig.go | 26 +- ...mr-instancefleetconfig_ebsconfiguration.go | 26 +- ...instancefleetprovisioningspecifications.go | 26 +- ...-instancefleetconfig_instancetypeconfig.go | 28 +- ...eetconfig_spotprovisioningspecification.go | 24 +- ...instancefleetconfig_volumespecification.go | 24 +- .../aws-emr-instancegroupconfig.go | 39 +- ...r-instancegroupconfig_autoscalingpolicy.go | 28 +- ...cegroupconfig_cloudwatchalarmdefinition.go | 26 +- ...s-emr-instancegroupconfig_configuration.go | 26 +- ...nstancegroupconfig_ebsblockdeviceconfig.go | 26 +- ...mr-instancegroupconfig_ebsconfiguration.go | 26 +- ...emr-instancegroupconfig_metricdimension.go | 24 +- ...s-emr-instancegroupconfig_scalingaction.go | 26 +- ...-instancegroupconfig_scalingconstraints.go | 24 +- ...aws-emr-instancegroupconfig_scalingrule.go | 28 +- ...-emr-instancegroupconfig_scalingtrigger.go | 26 +- ...config_simplescalingpolicyconfiguration.go | 24 +- ...instancegroupconfig_volumespecification.go | 24 +- .../aws-emr-securityconfiguration.go | 33 +- .../{resources => emr}/aws-emr-step.go | 35 +- .../aws-emr-step_hadoopjarstepconfig.go | 26 +- .../aws-emr-step_keyvalue.go | 24 +- .../aws-events-eventbus.go | 33 +- .../aws-events-eventbuspolicy.go | 35 +- .../aws-events-eventbuspolicy_condition.go | 24 +- .../{resources => events}/aws-events-rule.go | 35 +- .../aws-events-rule_awsvpcconfiguration.go | 24 +- .../aws-events-rule_ecsparameters.go | 26 +- .../aws-events-rule_inputtransformer.go | 24 +- .../aws-events-rule_kinesisparameters.go | 24 +- .../aws-events-rule_networkconfiguration.go | 26 +- .../aws-events-rule_runcommandparameters.go | 26 +- .../aws-events-rule_runcommandtarget.go | 24 +- .../aws-events-rule_sqsparameters.go | 24 +- .../aws-events-rule_target.go | 34 +- .../{resources => fsx}/aws-fsx-filesystem.go | 40 +- .../aws-fsx-filesystem_lustreconfiguration.go | 24 +- ...selfmanagedactivedirectoryconfiguration.go | 24 +- ...aws-fsx-filesystem_windowsconfiguration.go | 26 +- .../aws-gamelift-alias.go | 35 +- .../aws-gamelift-alias_routingstrategy.go | 24 +- .../aws-gamelift-build.go | 35 +- .../aws-gamelift-build_s3location.go | 24 +- .../aws-gamelift-fleet.go | 35 +- .../aws-gamelift-fleet_ippermission.go | 24 +- .../aws-glue-classifier.go | 41 +- .../aws-glue-classifier_csvclassifier.go | 24 +- .../aws-glue-classifier_grokclassifier.go | 24 +- .../aws-glue-classifier_jsonclassifier.go | 24 +- .../aws-glue-classifier_xmlclassifier.go | 24 +- .../aws-glue-connection.go | 35 +- .../aws-glue-connection_connectioninput.go | 26 +- ...nnection_physicalconnectionrequirements.go | 24 +- .../{resources => glue}/aws-glue-crawler.go | 39 +- .../aws-glue-crawler_jdbctarget.go | 24 +- .../aws-glue-crawler_s3target.go | 24 +- .../aws-glue-crawler_schedule.go | 24 +- .../aws-glue-crawler_schemachangepolicy.go | 24 +- .../aws-glue-crawler_targets.go | 28 +- .../{resources => glue}/aws-glue-database.go | 35 +- .../aws-glue-database_databaseinput.go | 24 +- .../aws-glue-datacatalogencryptionsettings.go | 35 +- ...onsettings_connectionpasswordencryption.go | 24 +- ...nsettings_datacatalogencryptionsettings.go | 28 +- ...alogencryptionsettings_encryptionatrest.go | 24 +- .../aws-glue-devendpoint.go | 33 +- .../{resources => glue}/aws-glue-job.go | 41 +- .../aws-glue-job_connectionslist.go | 24 +- .../aws-glue-job_executionproperty.go | 24 +- .../aws-glue-job_jobcommand.go | 24 +- .../aws-glue-job_notificationproperty.go | 24 +- .../aws-glue-mltransform.go | 37 +- ...-glue-mltransform_findmatchesparameters.go | 24 +- .../aws-glue-mltransform_gluetables.go | 24 +- .../aws-glue-mltransform_inputrecordtables.go | 26 +- ...ws-glue-mltransform_transformparameters.go | 26 +- .../{resources => glue}/aws-glue-partition.go | 35 +- .../aws-glue-partition_column.go | 24 +- .../aws-glue-partition_order.go | 24 +- .../aws-glue-partition_partitioninput.go | 26 +- .../aws-glue-partition_serdeinfo.go | 24 +- .../aws-glue-partition_skewedinfo.go | 24 +- .../aws-glue-partition_storagedescriptor.go | 32 +- .../aws-glue-securityconfiguration.go | 35 +- ...urityconfiguration_cloudwatchencryption.go | 24 +- ...tyconfiguration_encryptionconfiguration.go | 30 +- ...ityconfiguration_jobbookmarksencryption.go | 24 +- ...glue-securityconfiguration_s3encryption.go | 24 +- ...lue-securityconfiguration_s3encryptions.go | 24 +- .../{resources => glue}/aws-glue-table.go | 35 +- .../aws-glue-table_column.go | 24 +- .../aws-glue-table_order.go | 24 +- .../aws-glue-table_serdeinfo.go | 24 +- .../aws-glue-table_skewedinfo.go | 24 +- .../aws-glue-table_storagedescriptor.go | 32 +- .../aws-glue-table_tableinput.go | 28 +- .../{resources => glue}/aws-glue-trigger.go | 37 +- .../aws-glue-trigger_action.go | 26 +- .../aws-glue-trigger_condition.go | 24 +- .../aws-glue-trigger_notificationproperty.go | 24 +- .../aws-glue-trigger_predicate.go | 26 +- .../{resources => glue}/aws-glue-workflow.go | 33 +- .../aws-greengrass-connectordefinition.go | 35 +- ...reengrass-connectordefinition_connector.go | 24 +- ...ordefinition_connectordefinitionversion.go | 26 +- ...s-greengrass-connectordefinitionversion.go | 35 +- ...ss-connectordefinitionversion_connector.go | 24 +- .../aws-greengrass-coredefinition.go | 35 +- .../aws-greengrass-coredefinition_core.go | 24 +- ...ss-coredefinition_coredefinitionversion.go | 26 +- .../aws-greengrass-coredefinitionversion.go | 35 +- ...s-greengrass-coredefinitionversion_core.go | 24 +- .../aws-greengrass-devicedefinition.go | 35 +- .../aws-greengrass-devicedefinition_device.go | 24 +- ...evicedefinition_devicedefinitionversion.go | 26 +- .../aws-greengrass-devicedefinitionversion.go | 35 +- ...eengrass-devicedefinitionversion_device.go | 24 +- .../aws-greengrass-functiondefinition.go | 35 +- ...ngrass-functiondefinition_defaultconfig.go | 26 +- ...eengrass-functiondefinition_environment.go | 28 +- ...greengrass-functiondefinition_execution.go | 26 +- ...-greengrass-functiondefinition_function.go | 26 +- ...unctiondefinition_functionconfiguration.go | 26 +- ...iondefinition_functiondefinitionversion.go | 28 +- ...functiondefinition_resourceaccesspolicy.go | 24 +- ...aws-greengrass-functiondefinition_runas.go | 24 +- ...ws-greengrass-functiondefinitionversion.go | 37 +- ...functiondefinitionversion_defaultconfig.go | 26 +- ...s-functiondefinitionversion_environment.go | 28 +- ...ass-functiondefinitionversion_execution.go | 26 +- ...rass-functiondefinitionversion_function.go | 26 +- ...definitionversion_functionconfiguration.go | 26 +- ...ndefinitionversion_resourceaccesspolicy.go | 24 +- ...engrass-functiondefinitionversion_runas.go | 24 +- .../aws-greengrass-group.go | 35 +- .../aws-greengrass-group_groupversion.go | 24 +- .../aws-greengrass-groupversion.go | 33 +- .../aws-greengrass-loggerdefinition.go | 35 +- .../aws-greengrass-loggerdefinition_logger.go | 24 +- ...oggerdefinition_loggerdefinitionversion.go | 26 +- .../aws-greengrass-loggerdefinitionversion.go | 35 +- ...eengrass-loggerdefinitionversion_logger.go | 24 +- .../aws-greengrass-resourcedefinition.go | 35 +- ...ss-resourcedefinition_groupownersetting.go | 24 +- ...ourcedefinition_localdeviceresourcedata.go | 26 +- ...ourcedefinition_localvolumeresourcedata.go | 26 +- ...esourcedefinition_resourcedatacontainer.go | 34 +- ...rcedefinition_resourcedefinitionversion.go | 26 +- ...ass-resourcedefinition_resourceinstance.go | 26 +- ...tion_s3machinelearningmodelresourcedata.go | 24 +- ...gemakermachinelearningmodelresourcedata.go | 24 +- ...nition_secretsmanagersecretresourcedata.go | 24 +- ...ws-greengrass-resourcedefinitionversion.go | 35 +- ...urcedefinitionversion_groupownersetting.go | 24 +- ...finitionversion_localdeviceresourcedata.go | 26 +- ...finitionversion_localvolumeresourcedata.go | 26 +- ...definitionversion_resourcedatacontainer.go | 34 +- ...ourcedefinitionversion_resourceinstance.go | 26 +- ...sion_s3machinelearningmodelresourcedata.go | 24 +- ...gemakermachinelearningmodelresourcedata.go | 24 +- ...ersion_secretsmanagersecretresourcedata.go | 24 +- .../aws-greengrass-subscriptiondefinition.go | 35 +- ...ass-subscriptiondefinition_subscription.go | 24 +- ...efinition_subscriptiondefinitionversion.go | 26 +- ...reengrass-subscriptiondefinitionversion.go | 35 +- ...scriptiondefinitionversion_subscription.go | 24 +- .../aws-guardduty-detector.go | 33 +- .../aws-guardduty-filter.go | 35 +- .../aws-guardduty-filter_condition.go | 24 +- .../aws-guardduty-filter_findingcriteria.go | 26 +- .../aws-guardduty-ipset.go | 33 +- .../aws-guardduty-master.go | 33 +- .../aws-guardduty-member.go | 33 +- .../aws-guardduty-threatintelset.go | 33 +- .../{resources => iam}/aws-iam-accesskey.go | 33 +- .../{resources => iam}/aws-iam-group.go | 35 +- .../aws-iam-group_policy.go | 24 +- .../aws-iam-instanceprofile.go | 33 +- .../aws-iam-managedpolicy.go | 33 +- .../{resources => iam}/aws-iam-policy.go | 33 +- .../{resources => iam}/aws-iam-role.go | 38 +- .../{resources => iam}/aws-iam-role_policy.go | 24 +- .../aws-iam-servicelinkedrole.go | 33 +- .../{resources => iam}/aws-iam-user.go | 37 +- .../aws-iam-user_loginprofile.go | 24 +- .../{resources => iam}/aws-iam-user_policy.go | 24 +- .../aws-iam-usertogroupaddition.go | 33 +- .../aws-inspector-assessmenttarget.go | 33 +- .../aws-inspector-assessmenttemplate.go | 36 +- .../aws-inspector-resourcegroup.go | 36 +- cloudformation/intrinsics.go | 2 +- cloudformation/intrinsics_test.go | 6 +- .../{resources => iot}/aws-iot-certificate.go | 33 +- .../{resources => iot}/aws-iot-policy.go | 33 +- .../aws-iot-policyprincipalattachment.go | 33 +- .../{resources => iot}/aws-iot-thing.go | 35 +- .../aws-iot-thing_attributepayload.go | 24 +- .../aws-iot-thingprincipalattachment.go | 33 +- .../{resources => iot}/aws-iot-topicrule.go | 35 +- .../aws-iot-topicrule_action.go | 52 +- ...aws-iot-topicrule_cloudwatchalarmaction.go | 24 +- ...ws-iot-topicrule_cloudwatchmetricaction.go | 24 +- .../aws-iot-topicrule_dynamodbaction.go | 24 +- .../aws-iot-topicrule_dynamodbv2action.go | 26 +- .../aws-iot-topicrule_elasticsearchaction.go | 24 +- .../aws-iot-topicrule_firehoseaction.go | 24 +- .../aws-iot-topicrule_iotanalyticsaction.go | 24 +- .../aws-iot-topicrule_kinesisaction.go | 24 +- .../aws-iot-topicrule_lambdaaction.go | 24 +- .../aws-iot-topicrule_putiteminput.go | 24 +- .../aws-iot-topicrule_republishaction.go | 24 +- .../aws-iot-topicrule_s3action.go | 24 +- .../aws-iot-topicrule_snsaction.go | 24 +- .../aws-iot-topicrule_sqsaction.go | 24 +- .../aws-iot-topicrule_stepfunctionsaction.go | 24 +- .../aws-iot-topicrule_topicrulepayload.go | 28 +- .../aws-iot1click-device.go | 33 +- .../aws-iot1click-placement.go | 33 +- .../aws-iot1click-project.go | 35 +- .../aws-iot1click-project_devicetemplate.go | 24 +- ...aws-iot1click-project_placementtemplate.go | 24 +- .../aws-iotanalytics-channel.go | 40 +- ...aws-iotanalytics-channel_channelstorage.go | 28 +- ...-iotanalytics-channel_customermanageds3.go | 24 +- ...ws-iotanalytics-channel_retentionperiod.go | 24 +- ...s-iotanalytics-channel_servicemanageds3.go | 24 +- .../aws-iotanalytics-dataset.go | 46 +- .../aws-iotanalytics-dataset_action.go | 28 +- ...ws-iotanalytics-dataset_containeraction.go | 28 +- ...tics-dataset_datasetcontentdeliveryrule.go | 26 +- ...t_datasetcontentdeliveryruledestination.go | 28 +- ...tics-dataset_datasetcontentversionvalue.go | 24 +- .../aws-iotanalytics-dataset_deltatime.go | 24 +- .../aws-iotanalytics-dataset_filter.go | 26 +- ...-iotanalytics-dataset_glueconfiguration.go | 24 +- ...taset_ioteventsdestinationconfiguration.go | 24 +- ...iotanalytics-dataset_outputfileurivalue.go | 24 +- .../aws-iotanalytics-dataset_queryaction.go | 26 +- ...analytics-dataset_resourceconfiguration.go | 24 +- ...ws-iotanalytics-dataset_retentionperiod.go | 24 +- ...tics-dataset_s3destinationconfiguration.go | 26 +- .../aws-iotanalytics-dataset_schedule.go | 24 +- .../aws-iotanalytics-dataset_trigger.go | 28 +- ...-iotanalytics-dataset_triggeringdataset.go | 24 +- .../aws-iotanalytics-dataset_variable.go | 28 +- ...alytics-dataset_versioningconfiguration.go | 24 +- .../aws-iotanalytics-datastore.go | 40 +- ...otanalytics-datastore_customermanageds3.go | 24 +- ...iotanalytics-datastore_datastorestorage.go | 28 +- ...-iotanalytics-datastore_retentionperiod.go | 24 +- ...iotanalytics-datastore_servicemanageds3.go | 24 +- .../aws-iotanalytics-pipeline.go | 38 +- .../aws-iotanalytics-pipeline_activity.go | 44 +- ...aws-iotanalytics-pipeline_addattributes.go | 24 +- .../aws-iotanalytics-pipeline_channel.go | 24 +- .../aws-iotanalytics-pipeline_datastore.go | 24 +- ...analytics-pipeline_deviceregistryenrich.go | 24 +- ...otanalytics-pipeline_deviceshadowenrich.go | 24 +- .../aws-iotanalytics-pipeline_filter.go | 24 +- .../aws-iotanalytics-pipeline_lambda.go | 24 +- .../aws-iotanalytics-pipeline_math.go | 24 +- ...-iotanalytics-pipeline_removeattributes.go | 24 +- ...-iotanalytics-pipeline_selectattributes.go | 24 +- .../aws-iotevents-detectormodel.go | 38 +- .../aws-iotevents-detectormodel_action.go | 44 +- .../aws-iotevents-detectormodel_cleartimer.go | 24 +- ...s-detectormodel_detectormodeldefinition.go | 26 +- .../aws-iotevents-detectormodel_event.go | 26 +- .../aws-iotevents-detectormodel_firehose.go | 24 +- .../aws-iotevents-detectormodel_iotevents.go | 24 +- ...iotevents-detectormodel_iottopicpublish.go | 24 +- .../aws-iotevents-detectormodel_lambda.go | 24 +- .../aws-iotevents-detectormodel_onenter.go | 26 +- .../aws-iotevents-detectormodel_onexit.go | 26 +- .../aws-iotevents-detectormodel_oninput.go | 28 +- .../aws-iotevents-detectormodel_resettimer.go | 24 +- .../aws-iotevents-detectormodel_settimer.go | 24 +- ...aws-iotevents-detectormodel_setvariable.go | 24 +- .../aws-iotevents-detectormodel_sns.go | 24 +- .../aws-iotevents-detectormodel_sqs.go | 24 +- .../aws-iotevents-detectormodel_state.go | 30 +- ...iotevents-detectormodel_transitionevent.go | 26 +- .../aws-iotevents-input.go | 38 +- .../aws-iotevents-input_attribute.go | 24 +- .../aws-iotevents-input_inputdefinition.go | 26 +- .../aws-iotthingsgraph-flowtemplate.go | 35 +- ...gsgraph-flowtemplate_definitiondocument.go | 24 +- .../aws-kinesis-stream.go | 38 +- .../aws-kinesis-stream_streamencryption.go | 24 +- .../aws-kinesis-streamconsumer.go | 33 +- .../aws-kinesisanalytics-application.go | 35 +- ...lytics-application_csvmappingparameters.go | 24 +- .../aws-kinesisanalytics-application_input.go | 34 +- ...lytics-application_inputlambdaprocessor.go | 24 +- ...sanalytics-application_inputparallelism.go | 24 +- ...pplication_inputprocessingconfiguration.go | 26 +- ...inesisanalytics-application_inputschema.go | 28 +- ...ytics-application_jsonmappingparameters.go | 24 +- ...lytics-application_kinesisfirehoseinput.go | 24 +- ...alytics-application_kinesisstreamsinput.go | 24 +- ...analytics-application_mappingparameters.go | 28 +- ...nesisanalytics-application_recordcolumn.go | 24 +- ...nesisanalytics-application_recordformat.go | 26 +- .../aws-kinesisanalytics-applicationoutput.go | 35 +- ...ics-applicationoutput_destinationschema.go | 24 +- ...applicationoutput_kinesisfirehoseoutput.go | 24 +- ...-applicationoutput_kinesisstreamsoutput.go | 24 +- ...nalytics-applicationoutput_lambdaoutput.go | 24 +- ...nesisanalytics-applicationoutput_output.go | 32 +- ...nalytics-applicationreferencedatasource.go | 35 +- ...eferencedatasource_csvmappingparameters.go | 24 +- ...ferencedatasource_jsonmappingparameters.go | 24 +- ...onreferencedatasource_mappingparameters.go | 28 +- ...icationreferencedatasource_recordcolumn.go | 24 +- ...icationreferencedatasource_recordformat.go | 26 +- ...referencedatasource_referencedatasource.go | 28 +- ...tionreferencedatasource_referenceschema.go | 28 +- ...ferencedatasource_s3referencedatasource.go | 24 +- .../aws-kinesisanalyticsv2-application.go | 35 +- ...pplication_applicationcodeconfiguration.go | 26 +- ...v2-application_applicationconfiguration.go | 34 +- ...cation_applicationsnapshotconfiguration.go | 24 +- ...sv2-application_checkpointconfiguration.go | 24 +- ...esisanalyticsv2-application_codecontent.go | 26 +- ...ticsv2-application_csvmappingparameters.go | 24 +- ...icsv2-application_environmentproperties.go | 26 +- ...plication_flinkapplicationconfiguration.go | 30 +- ...ws-kinesisanalyticsv2-application_input.go | 34 +- ...ticsv2-application_inputlambdaprocessor.go | 24 +- ...nalyticsv2-application_inputparallelism.go | 24 +- ...pplication_inputprocessingconfiguration.go | 26 +- ...esisanalyticsv2-application_inputschema.go | 28 +- ...icsv2-application_jsonmappingparameters.go | 24 +- ...ticsv2-application_kinesisfirehoseinput.go | 24 +- ...yticsv2-application_kinesisstreamsinput.go | 24 +- ...alyticsv2-application_mappingparameters.go | 28 +- ...sv2-application_monitoringconfiguration.go | 24 +- ...v2-application_parallelismconfiguration.go | 24 +- ...isanalyticsv2-application_propertygroup.go | 24 +- ...sisanalyticsv2-application_recordcolumn.go | 24 +- ...sisanalyticsv2-application_recordformat.go | 26 +- ...alyticsv2-application_s3contentlocation.go | 24 +- ...application_sqlapplicationconfiguration.go | 26 +- ...csv2-applicationcloudwatchloggingoption.go | 35 +- ...chloggingoption_cloudwatchloggingoption.go | 24 +- ...ws-kinesisanalyticsv2-applicationoutput.go | 35 +- ...sv2-applicationoutput_destinationschema.go | 24 +- ...applicationoutput_kinesisfirehoseoutput.go | 24 +- ...-applicationoutput_kinesisstreamsoutput.go | 24 +- ...lyticsv2-applicationoutput_lambdaoutput.go | 24 +- ...sisanalyticsv2-applicationoutput_output.go | 32 +- ...lyticsv2-applicationreferencedatasource.go | 35 +- ...eferencedatasource_csvmappingparameters.go | 24 +- ...ferencedatasource_jsonmappingparameters.go | 24 +- ...onreferencedatasource_mappingparameters.go | 28 +- ...icationreferencedatasource_recordcolumn.go | 24 +- ...icationreferencedatasource_recordformat.go | 26 +- ...referencedatasource_referencedatasource.go | 28 +- ...tionreferencedatasource_referenceschema.go | 28 +- ...ferencedatasource_s3referencedatasource.go | 24 +- .../aws-kinesisfirehose-deliverystream.go | 45 +- ...sfirehose-deliverystream_bufferinghints.go | 24 +- ...deliverystream_cloudwatchloggingoptions.go | 24 +- ...esisfirehose-deliverystream_copycommand.go | 24 +- ...tream_dataformatconversionconfiguration.go | 30 +- ...sisfirehose-deliverystream_deserializer.go | 28 +- ...iverystream_elasticsearchbufferinghints.go | 24 +- ...m_elasticsearchdestinationconfiguration.go | 34 +- ...eliverystream_elasticsearchretryoptions.go | 24 +- ...-deliverystream_encryptionconfiguration.go | 26 +- ...ream_extendeds3destinationconfiguration.go | 36 +- ...isfirehose-deliverystream_hivejsonserde.go | 24 +- ...deliverystream_inputformatconfiguration.go | 26 +- ...stream_kinesisstreamsourceconfiguration.go | 24 +- ...hose-deliverystream_kmsencryptionconfig.go | 24 +- ...sfirehose-deliverystream_openxjsonserde.go | 24 +- ...kinesisfirehose-deliverystream_orcserde.go | 24 +- ...eliverystream_outputformatconfiguration.go | 26 +- ...sisfirehose-deliverystream_parquetserde.go | 24 +- ...-deliverystream_processingconfiguration.go | 26 +- ...inesisfirehose-deliverystream_processor.go | 26 +- ...ehose-deliverystream_processorparameter.go | 24 +- ...stream_redshiftdestinationconfiguration.go | 32 +- ...liverystream_s3destinationconfiguration.go | 30 +- ...hose-deliverystream_schemaconfiguration.go | 24 +- ...nesisfirehose-deliverystream_serializer.go | 28 +- ...rystream_splunkdestinationconfiguration.go | 32 +- ...ehose-deliverystream_splunkretryoptions.go | 24 +- .../{resources => kms}/aws-kms-alias.go | 33 +- .../{resources => kms}/aws-kms-key.go | 36 +- .../aws-lakeformation-datalakesettings.go | 35 +- ...s-lakeformation-datalakesettings_admins.go | 24 +- ...tion-datalakesettings_datalakeprincipal.go | 24 +- .../aws-lakeformation-permissions.go | 37 +- ...eformation-permissions_databaseresource.go | 24 +- ...formation-permissions_datalakeprincipal.go | 24 +- .../aws-lakeformation-permissions_resource.go | 28 +- ...lakeformation-permissions_tableresource.go | 24 +- .../aws-lakeformation-resource.go | 33 +- .../{resources => lambda}/aws-lambda-alias.go | 37 +- ...-lambda-alias_aliasroutingconfiguration.go | 26 +- .../aws-lambda-alias_versionweight.go | 24 +- .../aws-lambda-eventsourcemapping.go | 33 +- .../aws-lambda-function.go | 46 +- .../aws-lambda-function_code.go | 24 +- .../aws-lambda-function_deadletterconfig.go | 24 +- .../aws-lambda-function_environment.go | 24 +- .../aws-lambda-function_tracingconfig.go | 24 +- .../aws-lambda-function_vpcconfig.go | 24 +- .../aws-lambda-layerversion.go | 35 +- .../aws-lambda-layerversion_content.go | 24 +- .../aws-lambda-layerversionpermission.go | 33 +- .../aws-lambda-permission.go | 33 +- .../aws-lambda-version.go | 33 +- .../aws-logs-destination.go | 33 +- .../{resources => logs}/aws-logs-loggroup.go | 33 +- .../{resources => logs}/aws-logs-logstream.go | 33 +- .../aws-logs-metricfilter.go | 35 +- ...-logs-metricfilter_metrictransformation.go | 24 +- .../aws-logs-subscriptionfilter.go | 33 +- .../aws-managedblockchain-member.go | 37 +- ...ockchain-member_approvalthresholdpolicy.go | 24 +- ...edblockchain-member_memberconfiguration.go | 26 +- ...kchain-member_memberfabricconfiguration.go | 24 +- ...ain-member_memberframeworkconfiguration.go | 26 +- ...dblockchain-member_networkconfiguration.go | 28 +- ...chain-member_networkfabricconfiguration.go | 24 +- ...in-member_networkframeworkconfiguration.go | 26 +- ...s-managedblockchain-member_votingpolicy.go | 26 +- .../aws-managedblockchain-node.go | 35 +- ...anagedblockchain-node_nodeconfiguration.go | 24 +- .../aws-medialive-channel.go | 39 +- ...ws-medialive-channel_aribsourcesettings.go | 24 +- ...edialive-channel_audiolanguageselection.go | 24 +- ...aws-medialive-channel_audiopidselection.go | 24 +- .../aws-medialive-channel_audioselector.go | 26 +- ...medialive-channel_audioselectorsettings.go | 28 +- .../aws-medialive-channel_captionselector.go | 26 +- ...dialive-channel_captionselectorsettings.go | 36 +- ...-medialive-channel_dvbsubsourcesettings.go | 24 +- ...edialive-channel_embeddedsourcesettings.go | 24 +- .../aws-medialive-channel_hlsinputsettings.go | 24 +- .../aws-medialive-channel_inputattachment.go | 26 +- .../aws-medialive-channel_inputsettings.go | 32 +- ...ws-medialive-channel_inputspecification.go | 24 +- ...l_mediapackageoutputdestinationsettings.go | 24 +- ...-medialive-channel_networkinputsettings.go | 26 +- ...aws-medialive-channel_outputdestination.go | 28 +- ...alive-channel_outputdestinationsettings.go | 24 +- ...-medialive-channel_scte20sourcesettings.go | 24 +- ...-medialive-channel_scte27sourcesettings.go | 24 +- ...edialive-channel_teletextsourcesettings.go | 24 +- .../aws-medialive-channel_videoselector.go | 26 +- .../aws-medialive-channel_videoselectorpid.go | 24 +- ...edialive-channel_videoselectorprogramid.go | 24 +- ...medialive-channel_videoselectorsettings.go | 28 +- .../aws-medialive-input.go | 41 +- ...medialive-input_inputdestinationrequest.go | 24 +- .../aws-medialive-input_inputsourcerequest.go | 24 +- .../aws-medialive-input_inputvpcrequest.go | 24 +- ...medialive-input_mediaconnectflowrequest.go | 24 +- .../aws-medialive-inputsecuritygroup.go | 35 +- ...putsecuritygroup_inputwhitelistrulecidr.go | 24 +- .../aws-mediastore-container.go | 35 +- .../aws-mediastore-container_corsrule.go | 24 +- .../{resources => msk}/aws-msk-cluster.go | 41 +- .../aws-msk-cluster_brokernodegroupinfo.go | 26 +- .../aws-msk-cluster_clientauthentication.go | 26 +- .../aws-msk-cluster_configurationinfo.go | 24 +- .../aws-msk-cluster_ebsstorageinfo.go | 24 +- .../aws-msk-cluster_encryptionatrest.go | 24 +- .../aws-msk-cluster_encryptioninfo.go | 28 +- .../aws-msk-cluster_encryptionintransit.go | 24 +- .../aws-msk-cluster_storageinfo.go | 26 +- .../{resources => msk}/aws-msk-cluster_tls.go | 24 +- .../aws-neptune-dbcluster.go | 36 +- .../aws-neptune-dbclusterparametergroup.go | 36 +- .../aws-neptune-dbinstance.go | 36 +- .../aws-neptune-dbparametergroup.go | 36 +- .../aws-neptune-dbsubnetgroup.go | 36 +- .../aws-opsworks-app.go | 41 +- .../aws-opsworks-app_datasource.go | 24 +- .../aws-opsworks-app_environmentvariable.go | 24 +- .../aws-opsworks-app_source.go | 24 +- .../aws-opsworks-app_sslconfiguration.go | 24 +- ...-opsworks-elasticloadbalancerattachment.go | 33 +- .../aws-opsworks-instance.go | 37 +- ...ws-opsworks-instance_blockdevicemapping.go | 26 +- .../aws-opsworks-instance_ebsblockdevice.go | 24 +- ...-opsworks-instance_timebasedautoscaling.go | 24 +- .../aws-opsworks-layer.go | 44 +- ...ws-opsworks-layer_autoscalingthresholds.go | 24 +- ...works-layer_lifecycleeventconfiguration.go | 26 +- ...aws-opsworks-layer_loadbasedautoscaling.go | 28 +- .../aws-opsworks-layer_recipes.go | 24 +- ...sworks-layer_shutdowneventconfiguration.go | 24 +- .../aws-opsworks-layer_volumeconfiguration.go | 24 +- .../aws-opsworks-stack.go | 46 +- .../aws-opsworks-stack_chefconfiguration.go | 24 +- .../aws-opsworks-stack_elasticip.go | 24 +- .../aws-opsworks-stack_rdsdbinstance.go | 24 +- .../aws-opsworks-stack_source.go | 24 +- ...psworks-stack_stackconfigurationmanager.go | 24 +- .../aws-opsworks-userprofile.go | 33 +- .../aws-opsworks-volume.go | 33 +- .../aws-opsworkscm-server.go | 35 +- .../aws-opsworkscm-server_engineattribute.go | 24 +- .../aws-pinpoint-admchannel.go | 33 +- .../aws-pinpoint-apnschannel.go | 33 +- .../aws-pinpoint-apnssandboxchannel.go | 33 +- .../aws-pinpoint-apnsvoipchannel.go | 33 +- .../aws-pinpoint-apnsvoipsandboxchannel.go | 33 +- .../aws-pinpoint-app.go | 33 +- .../aws-pinpoint-applicationsettings.go | 39 +- ...npoint-applicationsettings_campaignhook.go | 24 +- ...aws-pinpoint-applicationsettings_limits.go | 24 +- ...-pinpoint-applicationsettings_quiettime.go | 24 +- .../aws-pinpoint-baiduchannel.go | 33 +- .../aws-pinpoint-campaign.go | 43 +- ...ws-pinpoint-campaign_attributedimension.go | 24 +- ...-pinpoint-campaign_campaignemailmessage.go | 24 +- ...s-pinpoint-campaign_campaigneventfilter.go | 26 +- .../aws-pinpoint-campaign_campaignhook.go | 24 +- ...ws-pinpoint-campaign_campaignsmsmessage.go | 24 +- .../aws-pinpoint-campaign_eventdimensions.go | 26 +- .../aws-pinpoint-campaign_limits.go | 24 +- .../aws-pinpoint-campaign_message.go | 24 +- ...-pinpoint-campaign_messageconfiguration.go | 38 +- .../aws-pinpoint-campaign_metricdimension.go | 24 +- .../aws-pinpoint-campaign_quiettime.go | 24 +- .../aws-pinpoint-campaign_schedule.go | 28 +- .../aws-pinpoint-campaign_setdimension.go | 24 +- ...inpoint-campaign_writetreatmentresource.go | 28 +- .../aws-pinpoint-emailchannel.go | 33 +- .../aws-pinpoint-eventstream.go | 33 +- .../aws-pinpoint-gcmchannel.go | 33 +- .../aws-pinpoint-segment.go | 37 +- ...aws-pinpoint-segment_attributedimension.go | 24 +- .../aws-pinpoint-segment_behavior.go | 26 +- .../aws-pinpoint-segment_coordinates.go | 24 +- .../aws-pinpoint-segment_demographic.go | 36 +- .../aws-pinpoint-segment_gpspoint.go | 26 +- .../aws-pinpoint-segment_groups.go | 28 +- .../aws-pinpoint-segment_location.go | 28 +- .../aws-pinpoint-segment_recency.go | 24 +- .../aws-pinpoint-segment_segmentdimensions.go | 30 +- .../aws-pinpoint-segment_segmentgroups.go | 26 +- .../aws-pinpoint-segment_setdimension.go | 24 +- .../aws-pinpoint-segment_sourcesegments.go | 24 +- .../aws-pinpoint-smschannel.go | 33 +- .../aws-pinpoint-voicechannel.go | 33 +- .../aws-pinpointemail-configurationset.go | 43 +- ...temail-configurationset_deliveryoptions.go | 24 +- ...mail-configurationset_reputationoptions.go | 24 +- ...ntemail-configurationset_sendingoptions.go | 24 +- ...aws-pinpointemail-configurationset_tags.go | 24 +- ...temail-configurationset_trackingoptions.go | 24 +- ...temail-configurationseteventdestination.go | 35 +- ...teventdestination_cloudwatchdestination.go | 26 +- ...eventdestination_dimensionconfiguration.go | 24 +- ...ionseteventdestination_eventdestination.go | 32 +- ...tdestination_kinesisfirehosedestination.go | 24 +- ...seteventdestination_pinpointdestination.go | 24 +- ...ationseteventdestination_snsdestination.go | 24 +- .../aws-pinpointemail-dedicatedippool.go | 35 +- .../aws-pinpointemail-dedicatedippool_tags.go | 24 +- .../aws-pinpointemail-identity.go | 37 +- ...npointemail-identity_mailfromattributes.go | 24 +- .../aws-pinpointemail-identity_tags.go | 24 +- cloudformation/policies_test.go | 12 +- .../{resources => qldb}/aws-qldb-ledger.go | 36 +- .../aws-ram-resourceshare.go | 36 +- .../{resources => rds}/aws-rds-dbcluster.go | 40 +- .../aws-rds-dbcluster_dbclusterrole.go | 24 +- .../aws-rds-dbcluster_scalingconfiguration.go | 24 +- .../aws-rds-dbclusterparametergroup.go | 36 +- .../{resources => rds}/aws-rds-dbinstance.go | 40 +- .../aws-rds-dbinstance_dbinstancerole.go | 24 +- .../aws-rds-dbinstance_processorfeature.go | 24 +- .../aws-rds-dbparametergroup.go | 36 +- .../aws-rds-dbsecuritygroup.go | 38 +- .../aws-rds-dbsecuritygroup_ingress.go | 24 +- .../aws-rds-dbsecuritygroupingress.go | 33 +- .../aws-rds-dbsubnetgroup.go | 36 +- .../aws-rds-eventsubscription.go | 33 +- .../{resources => rds}/aws-rds-optiongroup.go | 38 +- ...aws-rds-optiongroup_optionconfiguration.go | 26 +- .../aws-rds-optiongroup_optionsetting.go | 24 +- .../aws-redshift-cluster.go | 38 +- .../aws-redshift-cluster_loggingproperties.go | 24 +- .../aws-redshift-clusterparametergroup.go | 38 +- ...edshift-clusterparametergroup_parameter.go | 24 +- .../aws-redshift-clustersecuritygroup.go | 36 +- ...ws-redshift-clustersecuritygroupingress.go | 33 +- .../aws-redshift-clustersubnetgroup.go | 36 +- .../aws-robomaker-fleet.go | 33 +- .../aws-robomaker-robot.go | 33 +- .../aws-robomaker-robotapplication.go | 37 +- ...ker-robotapplication_robotsoftwaresuite.go | 24 +- ...robomaker-robotapplication_sourceconfig.go | 24 +- .../aws-robomaker-robotapplicationversion.go | 33 +- .../aws-robomaker-simulationapplication.go | 41 +- ...r-simulationapplication_renderingengine.go | 24 +- ...imulationapplication_robotsoftwaresuite.go | 24 +- ...tionapplication_simulationsoftwaresuite.go | 24 +- ...aker-simulationapplication_sourceconfig.go | 24 +- ...-robomaker-simulationapplicationversion.go | 33 +- .../aws-route53-healthcheck.go | 37 +- ...aws-route53-healthcheck_alarmidentifier.go | 24 +- ...s-route53-healthcheck_healthcheckconfig.go | 26 +- .../aws-route53-healthcheck_healthchecktag.go | 24 +- .../aws-route53-hostedzone.go | 41 +- ...aws-route53-hostedzone_hostedzoneconfig.go | 24 +- .../aws-route53-hostedzone_hostedzonetag.go | 24 +- ...s-route53-hostedzone_queryloggingconfig.go | 24 +- .../aws-route53-hostedzone_vpc.go | 24 +- .../aws-route53-recordset.go | 37 +- .../aws-route53-recordset_aliastarget.go | 24 +- .../aws-route53-recordset_geolocation.go | 24 +- .../aws-route53-recordsetgroup.go | 35 +- .../aws-route53-recordsetgroup_aliastarget.go | 24 +- .../aws-route53-recordsetgroup_geolocation.go | 24 +- .../aws-route53-recordsetgroup_recordset.go | 28 +- .../aws-route53resolver-resolverendpoint.go | 38 +- ...olver-resolverendpoint_ipaddressrequest.go | 24 +- .../aws-route53resolver-resolverrule.go | 38 +- ...te53resolver-resolverrule_targetaddress.go | 24 +- ...route53resolver-resolverruleassociation.go | 33 +- .../{resources => s3}/aws-s3-bucket.go | 64 +- ...3-bucket_abortincompletemultipartupload.go | 24 +- .../aws-s3-bucket_accelerateconfiguration.go | 24 +- .../aws-s3-bucket_accesscontroltranslation.go | 24 +- .../aws-s3-bucket_analyticsconfiguration.go | 28 +- .../aws-s3-bucket_bucketencryption.go | 26 +- .../aws-s3-bucket_corsconfiguration.go | 26 +- .../aws-s3-bucket_corsrule.go | 24 +- .../aws-s3-bucket_dataexport.go | 26 +- .../aws-s3-bucket_defaultretention.go | 24 +- .../aws-s3-bucket_destination.go | 24 +- .../aws-s3-bucket_encryptionconfiguration.go | 24 +- .../aws-s3-bucket_filterrule.go | 24 +- .../aws-s3-bucket_inventoryconfiguration.go | 26 +- .../aws-s3-bucket_lambdaconfiguration.go | 26 +- .../aws-s3-bucket_lifecycleconfiguration.go | 26 +- .../aws-s3-bucket_loggingconfiguration.go | 24 +- .../aws-s3-bucket_metricsconfiguration.go | 26 +- ...s-s3-bucket_noncurrentversiontransition.go | 24 +- ...aws-s3-bucket_notificationconfiguration.go | 30 +- .../aws-s3-bucket_notificationfilter.go | 26 +- .../aws-s3-bucket_objectlockconfiguration.go | 26 +- .../aws-s3-bucket_objectlockrule.go | 26 +- ...3-bucket_publicaccessblockconfiguration.go | 24 +- .../aws-s3-bucket_queueconfiguration.go | 26 +- .../aws-s3-bucket_redirectallrequeststo.go | 24 +- .../aws-s3-bucket_redirectrule.go | 24 +- .../aws-s3-bucket_replicationconfiguration.go | 26 +- .../aws-s3-bucket_replicationdestination.go | 28 +- .../aws-s3-bucket_replicationrule.go | 28 +- .../aws-s3-bucket_routingrule.go | 28 +- .../aws-s3-bucket_routingrulecondition.go | 24 +- .../{resources => s3}/aws-s3-bucket_rule.go | 36 +- .../aws-s3-bucket_s3keyfilter.go | 26 +- ...s3-bucket_serversideencryptionbydefault.go | 24 +- .../aws-s3-bucket_serversideencryptionrule.go | 26 +- .../aws-s3-bucket_sourceselectioncriteria.go | 26 +- .../aws-s3-bucket_ssekmsencryptedobjects.go | 24 +- .../aws-s3-bucket_storageclassanalysis.go | 26 +- .../aws-s3-bucket_tagfilter.go | 24 +- .../aws-s3-bucket_topicconfiguration.go | 26 +- .../aws-s3-bucket_transition.go | 24 +- .../aws-s3-bucket_versioningconfiguration.go | 24 +- .../aws-s3-bucket_websiteconfiguration.go | 28 +- .../{resources => s3}/aws-s3-bucketpolicy.go | 33 +- .../aws-sagemaker-coderepository.go | 35 +- .../aws-sagemaker-coderepository_gitconfig.go | 24 +- .../aws-sagemaker-endpoint.go | 36 +- .../aws-sagemaker-endpointconfig.go | 38 +- ...emaker-endpointconfig_productionvariant.go | 24 +- .../aws-sagemaker-model.go | 42 +- ...aws-sagemaker-model_containerdefinition.go | 24 +- .../aws-sagemaker-model_vpcconfig.go | 24 +- .../aws-sagemaker-notebookinstance.go | 36 +- ...gemaker-notebookinstancelifecycleconfig.go | 37 +- ...cleconfig_notebookinstancelifecyclehook.go | 24 +- .../aws-sagemaker-workteam.go | 40 +- ...emaker-workteam_cognitomemberdefinition.go | 24 +- ...aws-sagemaker-workteam_memberdefinition.go | 26 +- ...aker-workteam_notificationconfiguration.go | 24 +- .../{resources => sdb}/aws-sdb-domain.go | 33 +- .../aws-secretsmanager-resourcepolicy.go | 33 +- .../aws-secretsmanager-rotationschedule.go | 35 +- ...smanager-rotationschedule_rotationrules.go | 24 +- .../aws-secretsmanager-secret.go | 38 +- ...retsmanager-secret_generatesecretstring.go | 24 +- ...s-secretsmanager-secrettargetattachment.go | 33 +- .../aws-securityhub-hub.go | 33 +- .../api_definitionuri.go} | 19 +- .../application_location.go} | 19 +- .../aws-serverless-api.go | 39 +- .../aws-serverless-api_accesslogsetting.go | 24 +- .../aws-serverless-api_auth.go | 24 +- .../aws-serverless-api_s3location.go | 24 +- .../aws-serverless-application.go | 35 +- ...verless-application_applicationlocation.go | 24 +- .../aws-serverless-function.go | 47 +- ...aws-serverless-function_alexaskillevent.go | 24 +- .../aws-serverless-function_apievent.go | 24 +- .../aws-serverless-function_bucketsampt.go | 24 +- ...erverless-function_cloudwatcheventevent.go | 24 +- ...aws-serverless-function_collectionsampt.go | 24 +- ...aws-serverless-function_deadletterqueue.go | 24 +- ...erverless-function_deploymentpreference.go | 24 +- .../aws-serverless-function_domainsampt.go | 24 +- .../aws-serverless-function_dynamodbevent.go | 24 +- .../aws-serverless-function_emptysampt.go | 24 +- .../aws-serverless-function_eventsource.go | 26 +- ...serverless-function_functionenvironment.go | 24 +- .../aws-serverless-function_functionsampt.go | 24 +- ...s-serverless-function_iampolicydocument.go | 24 +- .../aws-serverless-function_identitysampt.go | 24 +- .../aws-serverless-function_iotruleevent.go | 24 +- .../aws-serverless-function_keysampt.go | 24 +- .../aws-serverless-function_kinesisevent.go | 24 +- .../aws-serverless-function_loggroupsampt.go | 24 +- .../aws-serverless-function_queuesampt.go | 24 +- .../aws-serverless-function_s3event.go | 28 +- .../aws-serverless-function_s3location.go | 24 +- ...erverless-function_s3notificationfilter.go | 24 +- ...s-serverless-function_sampolicytemplate.go | 84 +- .../aws-serverless-function_scheduleevent.go | 24 +- .../aws-serverless-function_snsevent.go | 24 +- .../aws-serverless-function_sqsevent.go | 24 +- ...s-serverless-function_statemachinesampt.go | 24 +- .../aws-serverless-function_streamsampt.go | 24 +- .../aws-serverless-function_tablesampt.go | 24 +- ...ws-serverless-function_tablestreamsampt.go | 24 +- .../aws-serverless-function_topicsampt.go | 24 +- .../aws-serverless-function_vpcconfig.go | 24 +- .../aws-serverless-layerversion.go | 33 +- .../aws-serverless-simpletable.go | 39 +- .../aws-serverless-simpletable_primarykey.go | 24 +- ...rless-simpletable_provisionedthroughput.go | 24 +- ...serverless-simpletable_ssespecification.go | 24 +- .../function_codeuri.go} | 19 +- .../function_events.go} | 17 +- .../function_policies.go} | 23 +- .../function_properties.go} | 37 +- ...s-servicecatalog-acceptedportfolioshare.go | 33 +- ...ws-servicecatalog-cloudformationproduct.go | 38 +- ...nproduct_provisioningartifactproperties.go | 24 +- ...atalog-cloudformationprovisionedproduct.go | 40 +- ...rovisionedproduct_provisioningparameter.go | 24 +- ...visionedproduct_provisioningpreferences.go | 24 +- ...icecatalog-launchnotificationconstraint.go | 33 +- ...aws-servicecatalog-launchroleconstraint.go | 33 +- ...servicecatalog-launchtemplateconstraint.go | 33 +- .../aws-servicecatalog-portfolio.go | 36 +- ...cecatalog-portfolioprincipalassociation.go | 33 +- ...vicecatalog-portfolioproductassociation.go | 33 +- .../aws-servicecatalog-portfolioshare.go | 33 +- ...servicecatalog-resourceupdateconstraint.go | 33 +- .../aws-servicecatalog-stacksetconstraint.go | 33 +- .../aws-servicecatalog-tagoption.go | 33 +- ...aws-servicecatalog-tagoptionassociation.go | 33 +- .../aws-servicediscovery-httpnamespace.go | 33 +- .../aws-servicediscovery-instance.go | 33 +- ...ws-servicediscovery-privatednsnamespace.go | 33 +- ...aws-servicediscovery-publicdnsnamespace.go | 33 +- .../aws-servicediscovery-service.go | 39 +- .../aws-servicediscovery-service_dnsconfig.go | 26 +- .../aws-servicediscovery-service_dnsrecord.go | 24 +- ...vicediscovery-service_healthcheckconfig.go | 24 +- ...scovery-service_healthcheckcustomconfig.go | 24 +- .../aws-ses-configurationset.go | 33 +- ...ws-ses-configurationseteventdestination.go | 35 +- ...teventdestination_cloudwatchdestination.go | 26 +- ...eventdestination_dimensionconfiguration.go | 24 +- ...ionseteventdestination_eventdestination.go | 28 +- ...tdestination_kinesisfirehosedestination.go | 24 +- .../aws-ses-receiptfilter.go | 35 +- .../aws-ses-receiptfilter_filter.go | 26 +- .../aws-ses-receiptfilter_ipfilter.go | 24 +- .../{resources => ses}/aws-ses-receiptrule.go | 35 +- .../aws-ses-receiptrule_action.go | 38 +- .../aws-ses-receiptrule_addheaderaction.go | 24 +- .../aws-ses-receiptrule_bounceaction.go | 24 +- .../aws-ses-receiptrule_lambdaaction.go | 24 +- .../aws-ses-receiptrule_rule.go | 26 +- .../aws-ses-receiptrule_s3action.go | 24 +- .../aws-ses-receiptrule_snsaction.go | 24 +- .../aws-ses-receiptrule_stopaction.go | 24 +- .../aws-ses-receiptrule_workmailaction.go | 24 +- .../aws-ses-receiptruleset.go | 33 +- .../{resources => ses}/aws-ses-template.go | 35 +- .../aws-ses-template_template.go | 24 +- .../aws-sns-subscription.go | 33 +- .../{resources => sns}/aws-sns-topic.go | 35 +- .../aws-sns-topic_subscription.go | 24 +- .../{resources => sns}/aws-sns-topicpolicy.go | 33 +- .../{resources => sqs}/aws-sqs-queue.go | 36 +- .../{resources => sqs}/aws-sqs-queuepolicy.go | 33 +- .../{resources => ssm}/aws-ssm-association.go | 39 +- ...ation_instanceassociationoutputlocation.go | 26 +- .../aws-ssm-association_parametervalues.go | 24 +- .../aws-ssm-association_s3outputlocation.go | 24 +- .../aws-ssm-association_target.go | 24 +- .../{resources => ssm}/aws-ssm-document.go | 36 +- .../aws-ssm-maintenancewindow.go | 36 +- .../aws-ssm-maintenancewindowtarget.go | 35 +- ...aws-ssm-maintenancewindowtarget_targets.go | 24 +- .../aws-ssm-maintenancewindowtask.go | 39 +- ...s-ssm-maintenancewindowtask_logginginfo.go | 24 +- ...k_maintenancewindowautomationparameters.go | 24 +- ...wtask_maintenancewindowlambdaparameters.go | 24 +- ...k_maintenancewindowruncommandparameters.go | 26 +- ...aintenancewindowstepfunctionsparameters.go | 24 +- ...aintenancewindowtask_notificationconfig.go | 24 +- .../aws-ssm-maintenancewindowtask_target.go | 24 +- ...ancewindowtask_taskinvocationparameters.go | 32 +- .../{resources => ssm}/aws-ssm-parameter.go | 33 +- .../aws-ssm-patchbaseline.go | 42 +- .../aws-ssm-patchbaseline_patchfilter.go | 24 +- .../aws-ssm-patchbaseline_patchfiltergroup.go | 26 +- .../aws-ssm-patchbaseline_patchsource.go | 24 +- .../aws-ssm-patchbaseline_rule.go | 26 +- .../aws-ssm-patchbaseline_rulegroup.go | 26 +- .../aws-ssm-resourcedatasync.go | 33 +- .../aws-stepfunctions-activity.go | 35 +- .../aws-stepfunctions-activity_tagsentry.go | 24 +- .../aws-stepfunctions-statemachine.go | 35 +- ...ws-stepfunctions-statemachine_tagsentry.go | 24 +- cloudformation/{resources => tags}/tag.go | 4 +- cloudformation/template.go | 2 +- .../aws-transfer-server.go | 40 +- .../aws-transfer-server_endpointdetails.go | 24 +- ...transfer-server_identityproviderdetails.go | 24 +- .../aws-transfer-user.go | 38 +- .../aws-transfer-user_sshpublickey.go | 24 +- cloudformation/{resources => utils}/utils.go | 11 +- .../aws-waf-bytematchset.go | 35 +- .../aws-waf-bytematchset_bytematchtuple.go | 26 +- .../aws-waf-bytematchset_fieldtomatch.go | 24 +- .../{resources => waf}/aws-waf-ipset.go | 35 +- .../aws-waf-ipset_ipsetdescriptor.go | 24 +- .../{resources => waf}/aws-waf-rule.go | 35 +- .../aws-waf-rule_predicate.go | 24 +- .../aws-waf-sizeconstraintset.go | 35 +- .../aws-waf-sizeconstraintset_fieldtomatch.go | 24 +- ...ws-waf-sizeconstraintset_sizeconstraint.go | 26 +- .../aws-waf-sqlinjectionmatchset.go | 35 +- ...s-waf-sqlinjectionmatchset_fieldtomatch.go | 24 +- ...njectionmatchset_sqlinjectionmatchtuple.go | 26 +- .../{resources => waf}/aws-waf-webacl.go | 37 +- .../aws-waf-webacl_activatedrule.go | 26 +- .../aws-waf-webacl_wafaction.go | 24 +- .../{resources => waf}/aws-waf-xssmatchset.go | 35 +- .../aws-waf-xssmatchset_fieldtomatch.go | 24 +- .../aws-waf-xssmatchset_xssmatchtuple.go | 26 +- .../aws-wafregional-bytematchset.go | 35 +- ...wafregional-bytematchset_bytematchtuple.go | 26 +- ...s-wafregional-bytematchset_fieldtomatch.go | 24 +- .../aws-wafregional-geomatchset.go | 35 +- ...regional-geomatchset_geomatchconstraint.go | 24 +- .../aws-wafregional-ipset.go | 35 +- .../aws-wafregional-ipset_ipsetdescriptor.go | 24 +- .../aws-wafregional-ratebasedrule.go | 35 +- ...aws-wafregional-ratebasedrule_predicate.go | 24 +- .../aws-wafregional-regexpatternset.go | 33 +- .../aws-wafregional-rule.go | 35 +- .../aws-wafregional-rule_predicate.go | 24 +- .../aws-wafregional-sizeconstraintset.go | 35 +- ...regional-sizeconstraintset_fieldtomatch.go | 24 +- ...gional-sizeconstraintset_sizeconstraint.go | 26 +- .../aws-wafregional-sqlinjectionmatchset.go | 35 +- ...ional-sqlinjectionmatchset_fieldtomatch.go | 24 +- ...njectionmatchset_sqlinjectionmatchtuple.go | 26 +- .../aws-wafregional-webacl.go | 37 +- .../aws-wafregional-webacl_action.go | 24 +- .../aws-wafregional-webacl_rule.go | 26 +- .../aws-wafregional-webaclassociation.go | 33 +- .../aws-wafregional-xssmatchset.go | 35 +- ...ws-wafregional-xssmatchset_fieldtomatch.go | 24 +- ...s-wafregional-xssmatchset_xssmatchtuple.go | 26 +- .../aws-workspaces-workspace.go | 38 +- ...orkspaces-workspace_workspaceproperties.go | 24 +- example/go-to-yaml/main.go | 8 +- example/yaml-to-go/main.go | 18 +- example/yaml-to-go/template.yaml | 24 +- generate/cfn-2019-10-26.json | 46718 ++++++++++++++++ generate/generate.go | 120 +- generate/main.go | 5 +- generate/naming.go | 43 +- generate/property.go | 17 +- generate/property_test.go | 34 +- generate/resource_test.go | 34 +- generate/templates/all.template | 27 +- .../templates/polymorphic-property.template | 7 +- generate/templates/resource.template | 13 +- go.mod | 17 +- go.sum | 35 +- goformation.go | 4 +- goformation_schema_test.go | 5 +- goformation_test.go | 111 +- intrinsics/intrinsics_test.go | 2 +- 1638 files changed, 75650 insertions(+), 25787 deletions(-) rename cloudformation/{resources => amazonmq}/aws-amazonmq-broker.go (83%) rename cloudformation/{resources => amazonmq}/aws-amazonmq-broker_configurationid.go (73%) rename cloudformation/{resources => amazonmq}/aws-amazonmq-broker_encryptionoptions.go (73%) rename cloudformation/{resources => amazonmq}/aws-amazonmq-broker_loglist.go (75%) rename cloudformation/{resources => amazonmq}/aws-amazonmq-broker_maintenancewindow.go (75%) rename cloudformation/{resources => amazonmq}/aws-amazonmq-broker_tagsentry.go (75%) rename cloudformation/{resources => amazonmq}/aws-amazonmq-broker_user.go (79%) rename cloudformation/{resources => amazonmq}/aws-amazonmq-configuration.go (82%) rename cloudformation/{resources => amazonmq}/aws-amazonmq-configuration_tagsentry.go (73%) rename cloudformation/{resources => amazonmq}/aws-amazonmq-configurationassociation.go (75%) rename cloudformation/{resources => amazonmq}/aws-amazonmq-configurationassociation_configurationid.go (70%) rename cloudformation/{resources => amplify}/aws-amplify-app.go (83%) rename cloudformation/{resources => amplify}/aws-amplify-app_autobranchcreationconfig.go (78%) rename cloudformation/{resources => amplify}/aws-amplify-app_basicauthconfig.go (77%) rename cloudformation/{resources => amplify}/aws-amplify-app_customrule.go (79%) rename cloudformation/{resources => amplify}/aws-amplify-app_environmentvariable.go (73%) rename cloudformation/{resources => amplify}/aws-amplify-branch.go (83%) rename cloudformation/{resources => amplify}/aws-amplify-branch_basicauthconfig.go (76%) rename cloudformation/{resources => amplify}/aws-amplify-branch_environmentvariable.go (73%) rename cloudformation/{resources => amplify}/aws-amplify-domain.go (80%) rename cloudformation/{resources => amplify}/aws-amplify-domain_subdomainsetting.go (74%) rename cloudformation/{resources => apigateway}/aws-apigateway-account.go (79%) rename cloudformation/{resources => apigateway}/aws-apigateway-apikey.go (83%) rename cloudformation/{resources => apigateway}/aws-apigateway-apikey_stagekey.go (75%) rename cloudformation/{resources => apigateway}/aws-apigateway-authorizer.go (86%) rename cloudformation/{resources => apigateway}/aws-apigateway-basepathmapping.go (80%) rename cloudformation/{resources => apigateway}/aws-apigateway-clientcertificate.go (76%) rename cloudformation/{resources => apigateway}/aws-apigateway-deployment.go (79%) rename cloudformation/{resources => apigateway}/aws-apigateway-deployment_accesslogsetting.go (73%) rename cloudformation/{resources => apigateway}/aws-apigateway-deployment_canarysetting.go (76%) rename cloudformation/{resources => apigateway}/aws-apigateway-deployment_deploymentcanarysettings.go (74%) rename cloudformation/{resources => apigateway}/aws-apigateway-deployment_methodsetting.go (85%) rename cloudformation/{resources => apigateway}/aws-apigateway-deployment_stagedescription.go (86%) rename cloudformation/{resources => apigateway}/aws-apigateway-documentationpart.go (77%) rename cloudformation/{resources => apigateway}/aws-apigateway-documentationpart_location.go (78%) rename cloudformation/{resources => apigateway}/aws-apigateway-documentationversion.go (79%) rename cloudformation/{resources => apigateway}/aws-apigateway-domainname.go (80%) rename cloudformation/{resources => apigateway}/aws-apigateway-domainname_endpointconfiguration.go (69%) rename cloudformation/{resources => apigateway}/aws-apigateway-gatewayresponse.go (81%) rename cloudformation/{resources => apigateway}/aws-apigateway-method.go (86%) rename cloudformation/{resources => apigateway}/aws-apigateway-method_integration.go (86%) rename cloudformation/{resources => apigateway}/aws-apigateway-method_integrationresponse.go (80%) rename cloudformation/{resources => apigateway}/aws-apigateway-method_methodresponse.go (76%) rename cloudformation/{resources => apigateway}/aws-apigateway-model.go (83%) rename cloudformation/{resources => apigateway}/aws-apigateway-requestvalidator.go (80%) rename cloudformation/{resources => apigateway}/aws-apigateway-resource.go (81%) rename cloudformation/{resources => apigateway}/aws-apigateway-restapi.go (85%) rename cloudformation/{resources => apigateway}/aws-apigateway-restapi_endpointconfiguration.go (69%) rename cloudformation/{resources => apigateway}/aws-apigateway-restapi_s3location.go (78%) rename cloudformation/{resources => apigateway}/aws-apigateway-stage.go (85%) rename cloudformation/{resources => apigateway}/aws-apigateway-stage_accesslogsetting.go (73%) rename cloudformation/{resources => apigateway}/aws-apigateway-stage_canarysetting.go (78%) rename cloudformation/{resources => apigateway}/aws-apigateway-stage_methodsetting.go (85%) rename cloudformation/{resources => apigateway}/aws-apigateway-usageplan.go (79%) rename cloudformation/{resources => apigateway}/aws-apigateway-usageplan_apistage.go (74%) rename cloudformation/{resources => apigateway}/aws-apigateway-usageplan_quotasettings.go (75%) rename cloudformation/{resources => apigateway}/aws-apigateway-usageplan_throttlesettings.go (73%) rename cloudformation/{resources => apigateway}/aws-apigateway-usageplankey.go (80%) rename cloudformation/{resources => apigateway}/aws-apigateway-vpclink.go (81%) rename cloudformation/{resources => apigatewayv2}/aws-apigatewayv2-api.go (85%) rename cloudformation/{resources => apigatewayv2}/aws-apigatewayv2-apimapping.go (81%) rename cloudformation/{resources => apigatewayv2}/aws-apigatewayv2-authorizer.go (84%) rename cloudformation/{resources => apigatewayv2}/aws-apigatewayv2-deployment.go (80%) rename cloudformation/{resources => apigatewayv2}/aws-apigatewayv2-domainname.go (78%) rename cloudformation/{resources => apigatewayv2}/aws-apigatewayv2-domainname_domainnameconfiguration.go (74%) rename cloudformation/{resources => apigatewayv2}/aws-apigatewayv2-integration.go (87%) rename cloudformation/{resources => apigatewayv2}/aws-apigatewayv2-integrationresponse.go (82%) rename cloudformation/{resources => apigatewayv2}/aws-apigatewayv2-model.go (83%) rename cloudformation/{resources => apigatewayv2}/aws-apigatewayv2-route.go (87%) rename cloudformation/{resources => apigatewayv2}/aws-apigatewayv2-route_parameterconstraints.go (69%) rename cloudformation/{resources => apigatewayv2}/aws-apigatewayv2-routeresponse.go (82%) rename cloudformation/{resources => apigatewayv2}/aws-apigatewayv2-routeresponse_parameterconstraints.go (68%) rename cloudformation/{resources => apigatewayv2}/aws-apigatewayv2-stage.go (83%) rename cloudformation/{resources => apigatewayv2}/aws-apigatewayv2-stage_accesslogsettings.go (73%) rename cloudformation/{resources => apigatewayv2}/aws-apigatewayv2-stage_routesettings.go (80%) rename cloudformation/{resources => applicationautoscaling}/aws-applicationautoscaling-scalabletarget.go (79%) rename cloudformation/{resources => applicationautoscaling}/aws-applicationautoscaling-scalabletarget_scalabletargetaction.go (69%) rename cloudformation/{resources => applicationautoscaling}/aws-applicationautoscaling-scalabletarget_scheduledaction.go (74%) rename cloudformation/{resources => applicationautoscaling}/aws-applicationautoscaling-scalabletarget_suspendedstate.go (74%) rename cloudformation/{resources => applicationautoscaling}/aws-applicationautoscaling-scalingpolicy.go (78%) rename cloudformation/{resources => applicationautoscaling}/aws-applicationautoscaling-scalingpolicy_customizedmetricspecification.go (73%) rename cloudformation/{resources => applicationautoscaling}/aws-applicationautoscaling-scalingpolicy_metricdimension.go (70%) rename cloudformation/{resources => applicationautoscaling}/aws-applicationautoscaling-scalingpolicy_predefinedmetricspecification.go (69%) rename cloudformation/{resources => applicationautoscaling}/aws-applicationautoscaling-scalingpolicy_stepadjustment.go (75%) rename cloudformation/{resources => applicationautoscaling}/aws-applicationautoscaling-scalingpolicy_stepscalingpolicyconfiguration.go (74%) rename cloudformation/{resources => applicationautoscaling}/aws-applicationautoscaling-scalingpolicy_targettrackingscalingpolicyconfiguration.go (72%) rename cloudformation/{resources => appmesh}/aws-appmesh-mesh.go (80%) rename cloudformation/{resources => appmesh}/aws-appmesh-mesh_egressfilter.go (72%) rename cloudformation/{resources => appmesh}/aws-appmesh-mesh_meshspec.go (71%) rename cloudformation/{resources => appmesh}/aws-appmesh-route.go (82%) rename cloudformation/{resources => appmesh}/aws-appmesh-route_duration.go (75%) rename cloudformation/{resources => appmesh}/aws-appmesh-route_headermatchmethod.go (77%) rename cloudformation/{resources => appmesh}/aws-appmesh-route_httpretrypolicy.go (76%) rename cloudformation/{resources => appmesh}/aws-appmesh-route_httproute.go (71%) rename cloudformation/{resources => appmesh}/aws-appmesh-route_httprouteaction.go (69%) rename cloudformation/{resources => appmesh}/aws-appmesh-route_httprouteheader.go (74%) rename cloudformation/{resources => appmesh}/aws-appmesh-route_httproutematch.go (76%) rename cloudformation/{resources => appmesh}/aws-appmesh-route_matchrange.go (74%) rename cloudformation/{resources => appmesh}/aws-appmesh-route_routespec.go (73%) rename cloudformation/{resources => appmesh}/aws-appmesh-route_tcproute.go (71%) rename cloudformation/{resources => appmesh}/aws-appmesh-route_tcprouteaction.go (69%) rename cloudformation/{resources => appmesh}/aws-appmesh-route_weightedtarget.go (74%) rename cloudformation/{resources => appmesh}/aws-appmesh-virtualnode.go (80%) rename cloudformation/{resources => appmesh}/aws-appmesh-virtualnode_accesslog.go (69%) rename cloudformation/{resources => appmesh}/aws-appmesh-virtualnode_awscloudmapinstanceattribute.go (70%) rename cloudformation/{resources => appmesh}/aws-appmesh-virtualnode_awscloudmapservicediscovery.go (71%) rename cloudformation/{resources => appmesh}/aws-appmesh-virtualnode_backend.go (69%) rename cloudformation/{resources => appmesh}/aws-appmesh-virtualnode_dnsservicediscovery.go (70%) rename cloudformation/{resources => appmesh}/aws-appmesh-virtualnode_fileaccesslog.go (71%) rename cloudformation/{resources => appmesh}/aws-appmesh-virtualnode_healthcheck.go (82%) rename cloudformation/{resources => appmesh}/aws-appmesh-virtualnode_listener.go (70%) rename cloudformation/{resources => appmesh}/aws-appmesh-virtualnode_logging.go (70%) rename cloudformation/{resources => appmesh}/aws-appmesh-virtualnode_portmapping.go (73%) rename cloudformation/{resources => appmesh}/aws-appmesh-virtualnode_servicediscovery.go (69%) rename cloudformation/{resources => appmesh}/aws-appmesh-virtualnode_virtualnodespec.go (70%) rename cloudformation/{resources => appmesh}/aws-appmesh-virtualnode_virtualservicebackend.go (70%) rename cloudformation/{resources => appmesh}/aws-appmesh-virtualrouter.go (79%) rename cloudformation/{resources => appmesh}/aws-appmesh-virtualrouter_portmapping.go (73%) rename cloudformation/{resources => appmesh}/aws-appmesh-virtualrouter_virtualrouterlistener.go (67%) rename cloudformation/{resources => appmesh}/aws-appmesh-virtualrouter_virtualrouterspec.go (67%) rename cloudformation/{resources => appmesh}/aws-appmesh-virtualservice.go (79%) rename cloudformation/{resources => appmesh}/aws-appmesh-virtualservice_virtualnodeserviceprovider.go (68%) rename cloudformation/{resources => appmesh}/aws-appmesh-virtualservice_virtualrouterserviceprovider.go (68%) rename cloudformation/{resources => appmesh}/aws-appmesh-virtualservice_virtualserviceprovider.go (67%) rename cloudformation/{resources => appmesh}/aws-appmesh-virtualservice_virtualservicespec.go (67%) rename cloudformation/{resources => appstream}/aws-appstream-directoryconfig.go (78%) rename cloudformation/{resources => appstream}/aws-appstream-directoryconfig_serviceaccountcredentials.go (71%) rename cloudformation/{resources => appstream}/aws-appstream-fleet.go (85%) rename cloudformation/{resources => appstream}/aws-appstream-fleet_computecapacity.go (71%) rename cloudformation/{resources => appstream}/aws-appstream-fleet_domainjoininfo.go (75%) rename cloudformation/{resources => appstream}/aws-appstream-fleet_vpcconfig.go (75%) rename cloudformation/{resources => appstream}/aws-appstream-imagebuilder.go (83%) rename cloudformation/{resources => appstream}/aws-appstream-imagebuilder_domainjoininfo.go (74%) rename cloudformation/{resources => appstream}/aws-appstream-imagebuilder_vpcconfig.go (74%) rename cloudformation/{resources => appstream}/aws-appstream-stack.go (83%) rename cloudformation/{resources => appstream}/aws-appstream-stack_applicationsettings.go (73%) rename cloudformation/{resources => appstream}/aws-appstream-stack_storageconnector.go (76%) rename cloudformation/{resources => appstream}/aws-appstream-stack_usersetting.go (74%) rename cloudformation/{resources => appstream}/aws-appstream-stackfleetassociation.go (77%) rename cloudformation/{resources => appstream}/aws-appstream-stackuserassociation.go (80%) rename cloudformation/{resources => appstream}/aws-appstream-user.go (84%) rename cloudformation/{resources => appsync}/aws-appsync-apikey.go (82%) rename cloudformation/{resources => appsync}/aws-appsync-datasource.go (80%) rename cloudformation/{resources => appsync}/aws-appsync-datasource_authorizationconfig.go (71%) rename cloudformation/{resources => appsync}/aws-appsync-datasource_awsiamconfig.go (74%) rename cloudformation/{resources => appsync}/aws-appsync-datasource_dynamodbconfig.go (76%) rename cloudformation/{resources => appsync}/aws-appsync-datasource_elasticsearchconfig.go (72%) rename cloudformation/{resources => appsync}/aws-appsync-datasource_httpconfig.go (71%) rename cloudformation/{resources => appsync}/aws-appsync-datasource_lambdaconfig.go (72%) rename cloudformation/{resources => appsync}/aws-appsync-datasource_rdshttpendpointconfig.go (78%) rename cloudformation/{resources => appsync}/aws-appsync-datasource_relationaldatabaseconfig.go (70%) rename cloudformation/{resources => appsync}/aws-appsync-functionconfiguration.go (84%) rename cloudformation/{resources => appsync}/aws-appsync-graphqlapi.go (77%) rename cloudformation/{resources => appsync}/aws-appsync-graphqlapi_additionalauthenticationprovider.go (69%) rename cloudformation/{resources => appsync}/aws-appsync-graphqlapi_additionalauthenticationproviders.go (64%) rename cloudformation/{resources => appsync}/aws-appsync-graphqlapi_cognitouserpoolconfig.go (75%) rename cloudformation/{resources => appsync}/aws-appsync-graphqlapi_logconfig.go (77%) rename cloudformation/{resources => appsync}/aws-appsync-graphqlapi_openidconnectconfig.go (76%) rename cloudformation/{resources => appsync}/aws-appsync-graphqlapi_tags.go (70%) rename cloudformation/{resources => appsync}/aws-appsync-graphqlapi_userpoolconfig.go (78%) rename cloudformation/{resources => appsync}/aws-appsync-graphqlschema.go (80%) rename cloudformation/{resources => appsync}/aws-appsync-resolver.go (85%) rename cloudformation/{resources => appsync}/aws-appsync-resolver_pipelineconfig.go (71%) rename cloudformation/{resources => ask}/alexa-ask-skill.go (79%) rename cloudformation/{resources => ask}/alexa-ask-skill_authenticationconfiguration.go (75%) rename cloudformation/{resources => ask}/alexa-ask-skill_overrides.go (73%) rename cloudformation/{resources => ask}/alexa-ask-skill_skillpackage.go (78%) rename cloudformation/{resources => athena}/aws-athena-namedquery.go (82%) rename cloudformation/{resources => autoscaling}/aws-autoscaling-autoscalinggroup.go (83%) rename cloudformation/{resources => autoscaling}/aws-autoscaling-autoscalinggroup_instancesdistribution.go (79%) rename cloudformation/{resources => autoscaling}/aws-autoscaling-autoscalinggroup_launchtemplate.go (65%) rename cloudformation/{resources => autoscaling}/aws-autoscaling-autoscalinggroup_launchtemplateoverrides.go (67%) rename cloudformation/{resources => autoscaling}/aws-autoscaling-autoscalinggroup_launchtemplatespecification.go (72%) rename cloudformation/{resources => autoscaling}/aws-autoscaling-autoscalinggroup_lifecyclehookspecification.go (80%) rename cloudformation/{resources => autoscaling}/aws-autoscaling-autoscalinggroup_metricscollection.go (70%) rename cloudformation/{resources => autoscaling}/aws-autoscaling-autoscalinggroup_mixedinstancespolicy.go (65%) rename cloudformation/{resources => autoscaling}/aws-autoscaling-autoscalinggroup_notificationconfiguration.go (69%) rename cloudformation/{resources => autoscaling}/aws-autoscaling-autoscalinggroup_tagproperty.go (72%) rename cloudformation/{resources => autoscaling}/aws-autoscaling-launchconfiguration.go (86%) rename cloudformation/{resources => autoscaling}/aws-autoscaling-launchconfiguration_blockdevice.go (78%) rename cloudformation/{resources => autoscaling}/aws-autoscaling-launchconfiguration_blockdevicemapping.go (72%) rename cloudformation/{resources => autoscaling}/aws-autoscaling-lifecyclehook.go (84%) rename cloudformation/{resources => autoscaling}/aws-autoscaling-scalingpolicy.go (82%) rename cloudformation/{resources => autoscaling}/aws-autoscaling-scalingpolicy_customizedmetricspecification.go (74%) rename cloudformation/{resources => autoscaling}/aws-autoscaling-scalingpolicy_metricdimension.go (72%) rename cloudformation/{resources => autoscaling}/aws-autoscaling-scalingpolicy_predefinedmetricspecification.go (70%) rename cloudformation/{resources => autoscaling}/aws-autoscaling-scalingpolicy_stepadjustment.go (75%) rename cloudformation/{resources => autoscaling}/aws-autoscaling-scalingpolicy_targettrackingconfiguration.go (70%) rename cloudformation/{resources => autoscaling}/aws-autoscaling-scheduledaction.go (82%) rename cloudformation/{resources => autoscalingplans}/aws-autoscalingplans-scalingplan.go (74%) rename cloudformation/{resources => autoscalingplans}/aws-autoscalingplans-scalingplan_applicationsource.go (69%) rename cloudformation/{resources => autoscalingplans}/aws-autoscalingplans-scalingplan_customizedloadmetricspecification.go (74%) rename cloudformation/{resources => autoscalingplans}/aws-autoscalingplans-scalingplan_customizedscalingmetricspecification.go (73%) rename cloudformation/{resources => autoscalingplans}/aws-autoscalingplans-scalingplan_metricdimension.go (71%) rename cloudformation/{resources => autoscalingplans}/aws-autoscalingplans-scalingplan_predefinedloadmetricspecification.go (69%) rename cloudformation/{resources => autoscalingplans}/aws-autoscalingplans-scalingplan_predefinedscalingmetricspecification.go (69%) rename cloudformation/{resources => autoscalingplans}/aws-autoscalingplans-scalingplan_scalinginstruction.go (82%) rename cloudformation/{resources => autoscalingplans}/aws-autoscalingplans-scalingplan_tagfilter.go (72%) rename cloudformation/{resources => autoscalingplans}/aws-autoscalingplans-scalingplan_targettrackingconfiguration.go (75%) rename cloudformation/{resources => backup}/aws-backup-backupplan.go (79%) rename cloudformation/{resources => backup}/aws-backup-backupplan_backupplanresourcetype.go (70%) rename cloudformation/{resources => backup}/aws-backup-backupplan_backupruleresourcetype.go (80%) rename cloudformation/{resources => backup}/aws-backup-backupplan_lifecycleresourcetype.go (73%) rename cloudformation/{resources => backup}/aws-backup-backupselection.go (77%) rename cloudformation/{resources => backup}/aws-backup-backupselection_backupselectionresourcetype.go (73%) rename cloudformation/{resources => backup}/aws-backup-backupselection_conditionresourcetype.go (74%) rename cloudformation/{resources => backup}/aws-backup-backupvault.go (81%) rename cloudformation/{resources => backup}/aws-backup-backupvault_notificationobjecttype.go (72%) rename cloudformation/{resources => batch}/aws-batch-computeenvironment.go (80%) rename cloudformation/{resources => batch}/aws-batch-computeenvironment_computeresources.go (86%) rename cloudformation/{resources => batch}/aws-batch-computeenvironment_launchtemplatespecification.go (73%) rename cloudformation/{resources => batch}/aws-batch-jobdefinition.go (79%) rename cloudformation/{resources => batch}/aws-batch-jobdefinition_containerproperties.go (81%) rename cloudformation/{resources => batch}/aws-batch-jobdefinition_device.go (77%) rename cloudformation/{resources => batch}/aws-batch-jobdefinition_environment.go (73%) rename cloudformation/{resources => batch}/aws-batch-jobdefinition_linuxparameters.go (69%) rename cloudformation/{resources => batch}/aws-batch-jobdefinition_mountpoints.go (76%) rename cloudformation/{resources => batch}/aws-batch-jobdefinition_nodeproperties.go (73%) rename cloudformation/{resources => batch}/aws-batch-jobdefinition_noderangeproperty.go (70%) rename cloudformation/{resources => batch}/aws-batch-jobdefinition_resourcerequirement.go (72%) rename cloudformation/{resources => batch}/aws-batch-jobdefinition_retrystrategy.go (71%) rename cloudformation/{resources => batch}/aws-batch-jobdefinition_timeout.go (73%) rename cloudformation/{resources => batch}/aws-batch-jobdefinition_ulimit.go (76%) rename cloudformation/{resources => batch}/aws-batch-jobdefinition_volumes.go (72%) rename cloudformation/{resources => batch}/aws-batch-jobdefinition_volumeshost.go (71%) rename cloudformation/{resources => batch}/aws-batch-jobqueue.go (81%) rename cloudformation/{resources => batch}/aws-batch-jobqueue_computeenvironmentorder.go (72%) rename cloudformation/{resources => budgets}/aws-budgets-budget.go (77%) rename cloudformation/{resources => budgets}/aws-budgets-budget_budgetdata.go (79%) rename cloudformation/{resources => budgets}/aws-budgets-budget_costtypes.go (86%) rename cloudformation/{resources => budgets}/aws-budgets-budget_notification.go (79%) rename cloudformation/{resources => budgets}/aws-budgets-budget_notificationwithsubscribers.go (68%) rename cloudformation/{resources => budgets}/aws-budgets-budget_spend.go (76%) rename cloudformation/{resources => budgets}/aws-budgets-budget_subscriber.go (75%) rename cloudformation/{resources => budgets}/aws-budgets-budget_timeperiod.go (75%) rename cloudformation/{resources => certificatemanager}/aws-certificatemanager-certificate.go (78%) rename cloudformation/{resources => certificatemanager}/aws-certificatemanager-certificate_domainvalidationoption.go (70%) rename cloudformation/{resources => cloud9}/aws-cloud9-environmentec2.go (82%) rename cloudformation/{resources => cloud9}/aws-cloud9-environmentec2_repository.go (74%) rename cloudformation/{resources => cloudformation}/aws-cloudformation-customresource.go (76%) rename cloudformation/{resources => cloudformation}/aws-cloudformation-macro.go (82%) rename cloudformation/{resources => cloudformation}/aws-cloudformation-stack.go (82%) rename cloudformation/{resources => cloudformation}/aws-cloudformation-waitcondition.go (79%) rename cloudformation/{resources => cloudformation}/aws-cloudformation-waitconditionhandle.go (74%) create mode 100644 cloudformation/cloudformation/tag.go rename cloudformation/{resources => cloudfront}/aws-cloudfront-cloudfrontoriginaccessidentity.go (71%) rename cloudformation/{resources => cloudfront}/aws-cloudfront-cloudfrontoriginaccessidentity_cloudfrontoriginaccessidentityconfig.go (63%) rename cloudformation/{resources => cloudfront}/aws-cloudfront-distribution.go (76%) rename cloudformation/{resources => cloudfront}/aws-cloudfront-distribution_cachebehavior.go (84%) rename cloudformation/{resources => cloudfront}/aws-cloudfront-distribution_cookies.go (74%) rename cloudformation/{resources => cloudfront}/aws-cloudfront-distribution_customerrorresponse.go (76%) rename cloudformation/{resources => cloudfront}/aws-cloudfront-distribution_customoriginconfig.go (80%) rename cloudformation/{resources => cloudfront}/aws-cloudfront-distribution_defaultcachebehavior.go (83%) rename cloudformation/{resources => cloudfront}/aws-cloudfront-distribution_distributionconfig.go (79%) rename cloudformation/{resources => cloudfront}/aws-cloudfront-distribution_forwardedvalues.go (75%) rename cloudformation/{resources => cloudfront}/aws-cloudfront-distribution_georestriction.go (73%) rename cloudformation/{resources => cloudfront}/aws-cloudfront-distribution_lambdafunctionassociation.go (71%) rename cloudformation/{resources => cloudfront}/aws-cloudfront-distribution_logging.go (76%) rename cloudformation/{resources => cloudfront}/aws-cloudfront-distribution_origin.go (75%) rename cloudformation/{resources => cloudfront}/aws-cloudfront-distribution_origincustomheader.go (72%) rename cloudformation/{resources => cloudfront}/aws-cloudfront-distribution_restrictions.go (68%) rename cloudformation/{resources => cloudfront}/aws-cloudfront-distribution_s3originconfig.go (70%) rename cloudformation/{resources => cloudfront}/aws-cloudfront-distribution_viewercertificate.go (79%) rename cloudformation/{resources => cloudfront}/aws-cloudfront-streamingdistribution.go (74%) rename cloudformation/{resources => cloudfront}/aws-cloudfront-streamingdistribution_logging.go (74%) rename cloudformation/{resources => cloudfront}/aws-cloudfront-streamingdistribution_s3origin.go (72%) rename cloudformation/{resources => cloudfront}/aws-cloudfront-streamingdistribution_streamingdistributionconfig.go (74%) rename cloudformation/{resources => cloudfront}/aws-cloudfront-streamingdistribution_trustedsigners.go (71%) rename cloudformation/{resources => cloudtrail}/aws-cloudtrail-trail.go (86%) rename cloudformation/{resources => cloudtrail}/aws-cloudtrail-trail_dataresource.go (74%) rename cloudformation/{resources => cloudtrail}/aws-cloudtrail-trail_eventselector.go (74%) rename cloudformation/{resources => cloudwatch}/aws-cloudwatch-alarm.go (89%) rename cloudformation/{resources => cloudwatch}/aws-cloudwatch-alarm_dimension.go (74%) rename cloudformation/{resources => cloudwatch}/aws-cloudwatch-alarm_metric.go (75%) rename cloudformation/{resources => cloudwatch}/aws-cloudwatch-alarm_metricdataquery.go (77%) rename cloudformation/{resources => cloudwatch}/aws-cloudwatch-alarm_metricstat.go (76%) rename cloudformation/{resources => cloudwatch}/aws-cloudwatch-anomalydetector.go (78%) rename cloudformation/{resources => cloudwatch}/aws-cloudwatch-anomalydetector_configuration.go (70%) rename cloudformation/{resources => cloudwatch}/aws-cloudwatch-anomalydetector_dimension.go (72%) rename cloudformation/{resources => cloudwatch}/aws-cloudwatch-anomalydetector_range.go (73%) rename cloudformation/{resources => cloudwatch}/aws-cloudwatch-dashboard.go (80%) rename cloudformation/{resources => codebuild}/aws-codebuild-project.go (81%) rename cloudformation/{resources => codebuild}/aws-codebuild-project_artifacts.go (84%) rename cloudformation/{resources => codebuild}/aws-codebuild-project_cloudwatchlogsconfig.go (75%) rename cloudformation/{resources => codebuild}/aws-codebuild-project_environment.go (79%) rename cloudformation/{resources => codebuild}/aws-codebuild-project_environmentvariable.go (74%) rename cloudformation/{resources => codebuild}/aws-codebuild-project_filtergroup.go (69%) rename cloudformation/{resources => codebuild}/aws-codebuild-project_gitsubmodulesconfig.go (70%) rename cloudformation/{resources => codebuild}/aws-codebuild-project_logsconfig.go (70%) rename cloudformation/{resources => codebuild}/aws-codebuild-project_projectcache.go (76%) rename cloudformation/{resources => codebuild}/aws-codebuild-project_projectsourceversion.go (73%) rename cloudformation/{resources => codebuild}/aws-codebuild-project_projecttriggers.go (71%) rename cloudformation/{resources => codebuild}/aws-codebuild-project_registrycredential.go (73%) rename cloudformation/{resources => codebuild}/aws-codebuild-project_s3logsconfig.go (76%) rename cloudformation/{resources => codebuild}/aws-codebuild-project_source.go (81%) rename cloudformation/{resources => codebuild}/aws-codebuild-project_sourceauth.go (74%) rename cloudformation/{resources => codebuild}/aws-codebuild-project_vpcconfig.go (77%) rename cloudformation/{resources => codebuild}/aws-codebuild-project_webhookfilter.go (76%) rename cloudformation/{resources => codebuild}/aws-codebuild-sourcecredential.go (80%) rename cloudformation/{resources => codecommit}/aws-codecommit-repository.go (79%) rename cloudformation/{resources => codecommit}/aws-codecommit-repository_code.go (70%) rename cloudformation/{resources => codecommit}/aws-codecommit-repository_repositorytrigger.go (78%) rename cloudformation/{resources => codecommit}/aws-codecommit-repository_s3.go (77%) rename cloudformation/{resources => codedeploy}/aws-codedeploy-application.go (79%) rename cloudformation/{resources => codedeploy}/aws-codedeploy-deploymentconfig.go (76%) rename cloudformation/{resources => codedeploy}/aws-codedeploy-deploymentconfig_minimumhealthyhosts.go (71%) rename cloudformation/{resources => codedeploy}/aws-codedeploy-deploymentgroup.go (77%) rename cloudformation/{resources => codedeploy}/aws-codedeploy-deploymentgroup_alarm.go (71%) rename cloudformation/{resources => codedeploy}/aws-codedeploy-deploymentgroup_alarmconfiguration.go (72%) rename cloudformation/{resources => codedeploy}/aws-codedeploy-deploymentgroup_autorollbackconfiguration.go (70%) rename cloudformation/{resources => codedeploy}/aws-codedeploy-deploymentgroup_deployment.go (74%) rename cloudformation/{resources => codedeploy}/aws-codedeploy-deploymentgroup_deploymentstyle.go (72%) rename cloudformation/{resources => codedeploy}/aws-codedeploy-deploymentgroup_ec2tagfilter.go (74%) rename cloudformation/{resources => codedeploy}/aws-codedeploy-deploymentgroup_ec2tagset.go (67%) rename cloudformation/{resources => codedeploy}/aws-codedeploy-deploymentgroup_ec2tagsetlistobject.go (66%) rename cloudformation/{resources => codedeploy}/aws-codedeploy-deploymentgroup_elbinfo.go (70%) rename cloudformation/{resources => codedeploy}/aws-codedeploy-deploymentgroup_githublocation.go (73%) rename cloudformation/{resources => codedeploy}/aws-codedeploy-deploymentgroup_loadbalancerinfo.go (67%) rename cloudformation/{resources => codedeploy}/aws-codedeploy-deploymentgroup_onpremisestagset.go (66%) rename cloudformation/{resources => codedeploy}/aws-codedeploy-deploymentgroup_onpremisestagsetlistobject.go (65%) rename cloudformation/{resources => codedeploy}/aws-codedeploy-deploymentgroup_revisionlocation.go (70%) rename cloudformation/{resources => codedeploy}/aws-codedeploy-deploymentgroup_s3location.go (79%) rename cloudformation/{resources => codedeploy}/aws-codedeploy-deploymentgroup_tagfilter.go (75%) rename cloudformation/{resources => codedeploy}/aws-codedeploy-deploymentgroup_targetgroupinfo.go (69%) rename cloudformation/{resources => codedeploy}/aws-codedeploy-deploymentgroup_triggerconfig.go (75%) rename cloudformation/{resources => codepipeline}/aws-codepipeline-customactiontype.go (77%) rename cloudformation/{resources => codepipeline}/aws-codepipeline-customactiontype_artifactdetails.go (71%) rename cloudformation/{resources => codepipeline}/aws-codepipeline-customactiontype_configurationproperties.go (79%) rename cloudformation/{resources => codepipeline}/aws-codepipeline-customactiontype_settings.go (78%) rename cloudformation/{resources => codepipeline}/aws-codepipeline-pipeline.go (78%) rename cloudformation/{resources => codepipeline}/aws-codepipeline-pipeline_actiondeclaration.go (77%) rename cloudformation/{resources => codepipeline}/aws-codepipeline-pipeline_actiontypeid.go (78%) rename cloudformation/{resources => codepipeline}/aws-codepipeline-pipeline_artifactstore.go (73%) rename cloudformation/{resources => codepipeline}/aws-codepipeline-pipeline_artifactstoremap.go (70%) rename cloudformation/{resources => codepipeline}/aws-codepipeline-pipeline_blockerdeclaration.go (72%) rename cloudformation/{resources => codepipeline}/aws-codepipeline-pipeline_encryptionkey.go (73%) rename cloudformation/{resources => codepipeline}/aws-codepipeline-pipeline_inputartifact.go (71%) rename cloudformation/{resources => codepipeline}/aws-codepipeline-pipeline_outputartifact.go (70%) rename cloudformation/{resources => codepipeline}/aws-codepipeline-pipeline_stagedeclaration.go (70%) rename cloudformation/{resources => codepipeline}/aws-codepipeline-pipeline_stagetransition.go (73%) rename cloudformation/{resources => codepipeline}/aws-codepipeline-webhook.go (82%) rename cloudformation/{resources => codepipeline}/aws-codepipeline-webhook_webhookauthconfiguration.go (72%) rename cloudformation/{resources => codepipeline}/aws-codepipeline-webhook_webhookfilterrule.go (72%) rename cloudformation/{resources => codestar}/aws-codestar-githubrepository.go (82%) rename cloudformation/{resources => codestar}/aws-codestar-githubrepository_code.go (69%) rename cloudformation/{resources => codestar}/aws-codestar-githubrepository_s3.go (76%) rename cloudformation/{resources => cognito}/aws-cognito-identitypool.go (83%) rename cloudformation/{resources => cognito}/aws-cognito-identitypool_cognitoidentityprovider.go (74%) rename cloudformation/{resources => cognito}/aws-cognito-identitypool_cognitostreams.go (75%) rename cloudformation/{resources => cognito}/aws-cognito-identitypool_pushsync.go (74%) rename cloudformation/{resources => cognito}/aws-cognito-identitypoolroleattachment.go (78%) rename cloudformation/{resources => cognito}/aws-cognito-identitypoolroleattachment_mappingrule.go (75%) rename cloudformation/{resources => cognito}/aws-cognito-identitypoolroleattachment_rolemapping.go (74%) rename cloudformation/{resources => cognito}/aws-cognito-identitypoolroleattachment_rulesconfigurationtype.go (64%) rename cloudformation/{resources => cognito}/aws-cognito-userpool.go (82%) rename cloudformation/{resources => cognito}/aws-cognito-userpool_admincreateuserconfig.go (73%) rename cloudformation/{resources => cognito}/aws-cognito-userpool_deviceconfiguration.go (74%) rename cloudformation/{resources => cognito}/aws-cognito-userpool_emailconfiguration.go (76%) rename cloudformation/{resources => cognito}/aws-cognito-userpool_invitemessagetemplate.go (75%) rename cloudformation/{resources => cognito}/aws-cognito-userpool_lambdaconfig.go (85%) rename cloudformation/{resources => cognito}/aws-cognito-userpool_numberattributeconstraints.go (72%) rename cloudformation/{resources => cognito}/aws-cognito-userpool_passwordpolicy.go (81%) rename cloudformation/{resources => cognito}/aws-cognito-userpool_policies.go (70%) rename cloudformation/{resources => cognito}/aws-cognito-userpool_schemaattribute.go (78%) rename cloudformation/{resources => cognito}/aws-cognito-userpool_smsconfiguration.go (74%) rename cloudformation/{resources => cognito}/aws-cognito-userpool_stringattributeconstraints.go (72%) rename cloudformation/{resources => cognito}/aws-cognito-userpool_userpooladdons.go (72%) rename cloudformation/{resources => cognito}/aws-cognito-userpool_verificationmessagetemplate.go (79%) rename cloudformation/{resources => cognito}/aws-cognito-userpoolclient.go (87%) rename cloudformation/{resources => cognito}/aws-cognito-userpoolclient_analyticsconfiguration.go (76%) rename cloudformation/{resources => cognito}/aws-cognito-userpooldomain.go (78%) rename cloudformation/{resources => cognito}/aws-cognito-userpooldomain_customdomainconfigtype.go (69%) rename cloudformation/{resources => cognito}/aws-cognito-userpoolgroup.go (82%) rename cloudformation/{resources => cognito}/aws-cognito-userpoolidentityprovider.go (81%) rename cloudformation/{resources => cognito}/aws-cognito-userpoolresourceserver.go (78%) rename cloudformation/{resources => cognito}/aws-cognito-userpoolresourceserver_resourceserverscopetype.go (70%) rename cloudformation/{resources => cognito}/aws-cognito-userpoolriskconfigurationattachment.go (72%) rename cloudformation/{resources => cognito}/aws-cognito-userpoolriskconfigurationattachment_accounttakeoveractionstype.go (64%) rename cloudformation/{resources => cognito}/aws-cognito-userpoolriskconfigurationattachment_accounttakeoveractiontype.go (68%) rename cloudformation/{resources => cognito}/aws-cognito-userpoolriskconfigurationattachment_accounttakeoverriskconfigurationtype.go (62%) rename cloudformation/{resources => cognito}/aws-cognito-userpoolriskconfigurationattachment_compromisedcredentialsactionstype.go (63%) rename cloudformation/{resources => cognito}/aws-cognito-userpoolriskconfigurationattachment_compromisedcredentialsriskconfigurationtype.go (63%) rename cloudformation/{resources => cognito}/aws-cognito-userpoolriskconfigurationattachment_notifyconfigurationtype.go (71%) rename cloudformation/{resources => cognito}/aws-cognito-userpoolriskconfigurationattachment_notifyemailtype.go (72%) rename cloudformation/{resources => cognito}/aws-cognito-userpoolriskconfigurationattachment_riskexceptionconfigurationtype.go (68%) rename cloudformation/{resources => cognito}/aws-cognito-userpooluicustomizationattachment.go (76%) rename cloudformation/{resources => cognito}/aws-cognito-userpooluser.go (81%) rename cloudformation/{resources => cognito}/aws-cognito-userpooluser_attributetype.go (73%) rename cloudformation/{resources => cognito}/aws-cognito-userpoolusertogroupattachment.go (77%) rename cloudformation/{resources => config}/aws-config-aggregationauthorization.go (77%) rename cloudformation/{resources => config}/aws-config-configrule.go (82%) rename cloudformation/{resources => config}/aws-config-configrule_scope.go (79%) rename cloudformation/{resources => config}/aws-config-configrule_source.go (75%) rename cloudformation/{resources => config}/aws-config-configrule_sourcedetail.go (77%) rename cloudformation/{resources => config}/aws-config-configurationaggregator.go (75%) rename cloudformation/{resources => config}/aws-config-configurationaggregator_accountaggregationsource.go (72%) rename cloudformation/{resources => config}/aws-config-configurationaggregator_organizationaggregationsource.go (72%) rename cloudformation/{resources => config}/aws-config-configurationrecorder.go (77%) rename cloudformation/{resources => config}/aws-config-configurationrecorder_recordinggroup.go (75%) rename cloudformation/{resources => config}/aws-config-deliverychannel.go (80%) rename cloudformation/{resources => config}/aws-config-deliverychannel_configsnapshotdeliveryproperties.go (67%) rename cloudformation/{resources => config}/aws-config-organizationconfigrule.go (76%) rename cloudformation/{resources => config}/aws-config-organizationconfigrule_organizationcustomrulemetadata.go (82%) rename cloudformation/{resources => config}/aws-config-organizationconfigrule_organizationmanagedrulemetadata.go (81%) rename cloudformation/{resources => config}/aws-config-remediationconfiguration.go (83%) rename cloudformation/{resources => config}/aws-config-remediationconfiguration_executioncontrols.go (65%) rename cloudformation/{resources => config}/aws-config-remediationconfiguration_remediationparametervalue.go (65%) rename cloudformation/{resources => config}/aws-config-remediationconfiguration_resourcevalue.go (68%) rename cloudformation/{resources => config}/aws-config-remediationconfiguration_ssmcontrols.go (73%) rename cloudformation/{resources => config}/aws-config-remediationconfiguration_staticvalue.go (69%) rename cloudformation/{resources => datapipeline}/aws-datapipeline-pipeline.go (78%) rename cloudformation/{resources => datapipeline}/aws-datapipeline-pipeline_field.go (77%) rename cloudformation/{resources => datapipeline}/aws-datapipeline-pipeline_parameterattribute.go (72%) rename cloudformation/{resources => datapipeline}/aws-datapipeline-pipeline_parameterobject.go (70%) rename cloudformation/{resources => datapipeline}/aws-datapipeline-pipeline_parametervalue.go (73%) rename cloudformation/{resources => datapipeline}/aws-datapipeline-pipeline_pipelineobject.go (73%) rename cloudformation/{resources => datapipeline}/aws-datapipeline-pipeline_pipelinetag.go (73%) rename cloudformation/{resources => dax}/aws-dax-cluster.go (87%) rename cloudformation/{resources => dax}/aws-dax-cluster_ssespecification.go (72%) rename cloudformation/{resources => dax}/aws-dax-parametergroup.go (81%) rename cloudformation/{resources => dax}/aws-dax-subnetgroup.go (82%) rename cloudformation/{resources => directoryservice}/aws-directoryservice-microsoftad.go (81%) rename cloudformation/{resources => directoryservice}/aws-directoryservice-microsoftad_vpcsettings.go (72%) rename cloudformation/{resources => directoryservice}/aws-directoryservice-simplead.go (82%) rename cloudformation/{resources => directoryservice}/aws-directoryservice-simplead_vpcsettings.go (72%) rename cloudformation/{resources => dlm}/aws-dlm-lifecyclepolicy.go (80%) rename cloudformation/{resources => dlm}/aws-dlm-lifecyclepolicy_createrule.go (76%) rename cloudformation/{resources => dlm}/aws-dlm-lifecyclepolicy_parameters.go (72%) rename cloudformation/{resources => dlm}/aws-dlm-lifecyclepolicy_policydetails.go (74%) rename cloudformation/{resources => dlm}/aws-dlm-lifecyclepolicy_retainrule.go (71%) rename cloudformation/{resources => dlm}/aws-dlm-lifecyclepolicy_schedule.go (75%) rename cloudformation/{resources => dms}/aws-dms-certificate.go (82%) rename cloudformation/{resources => dms}/aws-dms-endpoint.go (85%) rename cloudformation/{resources => dms}/aws-dms-endpoint_dynamodbsettings.go (72%) rename cloudformation/{resources => dms}/aws-dms-endpoint_elasticsearchsettings.go (78%) rename cloudformation/{resources => dms}/aws-dms-endpoint_kinesissettings.go (77%) rename cloudformation/{resources => dms}/aws-dms-endpoint_mongodbsettings.go (86%) rename cloudformation/{resources => dms}/aws-dms-endpoint_s3settings.go (83%) rename cloudformation/{resources => dms}/aws-dms-eventsubscription.go (83%) rename cloudformation/{resources => dms}/aws-dms-replicationinstance.go (87%) rename cloudformation/{resources => dms}/aws-dms-replicationsubnetgroup.go (80%) rename cloudformation/{resources => dms}/aws-dms-replicationtask.go (86%) rename cloudformation/{resources => docdb}/aws-docdb-dbcluster.go (90%) rename cloudformation/{resources => docdb}/aws-docdb-dbclusterparametergroup.go (80%) rename cloudformation/{resources => docdb}/aws-docdb-dbinstance.go (84%) rename cloudformation/{resources => docdb}/aws-docdb-dbsubnetgroup.go (81%) rename cloudformation/{resources => dynamodb}/aws-dynamodb-table.go (76%) rename cloudformation/{resources => dynamodb}/aws-dynamodb-table_attributedefinition.go (73%) rename cloudformation/{resources => dynamodb}/aws-dynamodb-table_globalsecondaryindex.go (70%) rename cloudformation/{resources => dynamodb}/aws-dynamodb-table_keyschema.go (75%) rename cloudformation/{resources => dynamodb}/aws-dynamodb-table_localsecondaryindex.go (70%) rename cloudformation/{resources => dynamodb}/aws-dynamodb-table_pointintimerecoveryspecification.go (69%) rename cloudformation/{resources => dynamodb}/aws-dynamodb-table_projection.go (75%) rename cloudformation/{resources => dynamodb}/aws-dynamodb-table_provisionedthroughput.go (73%) rename cloudformation/{resources => dynamodb}/aws-dynamodb-table_ssespecification.go (76%) rename cloudformation/{resources => dynamodb}/aws-dynamodb-table_streamspecification.go (71%) rename cloudformation/{resources => dynamodb}/aws-dynamodb-table_timetolivespecification.go (72%) rename cloudformation/{resources => ec2}/aws-ec2-capacityreservation.go (85%) rename cloudformation/{resources => ec2}/aws-ec2-capacityreservation_tagspecification.go (71%) rename cloudformation/{resources => ec2}/aws-ec2-clientvpnauthorizationrule.go (81%) rename cloudformation/{resources => ec2}/aws-ec2-clientvpnendpoint.go (81%) rename cloudformation/{resources => ec2}/aws-ec2-clientvpnendpoint_certificateauthenticationrequest.go (68%) rename cloudformation/{resources => ec2}/aws-ec2-clientvpnendpoint_clientauthenticationrequest.go (68%) rename cloudformation/{resources => ec2}/aws-ec2-clientvpnendpoint_connectionlogoptions.go (74%) rename cloudformation/{resources => ec2}/aws-ec2-clientvpnendpoint_directoryserviceauthenticationrequest.go (66%) rename cloudformation/{resources => ec2}/aws-ec2-clientvpnendpoint_tagspecification.go (71%) rename cloudformation/{resources => ec2}/aws-ec2-clientvpnroute.go (82%) rename cloudformation/{resources => ec2}/aws-ec2-clientvpntargetnetworkassociation.go (76%) rename cloudformation/{resources => ec2}/aws-ec2-customergateway.go (81%) rename cloudformation/{resources => ec2}/aws-ec2-dhcpoptions.go (83%) rename cloudformation/{resources => ec2}/aws-ec2-ec2fleet.go (81%) rename cloudformation/{resources => ec2}/aws-ec2-ec2fleet_fleetlaunchtemplateconfigrequest.go (66%) rename cloudformation/{resources => ec2}/aws-ec2-ec2fleet_fleetlaunchtemplateoverridesrequest.go (79%) rename cloudformation/{resources => ec2}/aws-ec2-ec2fleet_fleetlaunchtemplatespecificationrequest.go (73%) rename cloudformation/{resources => ec2}/aws-ec2-ec2fleet_ondemandoptionsrequest.go (71%) rename cloudformation/{resources => ec2}/aws-ec2-ec2fleet_spotoptionsrequest.go (77%) rename cloudformation/{resources => ec2}/aws-ec2-ec2fleet_tagrequest.go (75%) rename cloudformation/{resources => ec2}/aws-ec2-ec2fleet_tagspecification.go (72%) rename cloudformation/{resources => ec2}/aws-ec2-ec2fleet_targetcapacityspecificationrequest.go (76%) rename cloudformation/{resources => ec2}/aws-ec2-egressonlyinternetgateway.go (76%) rename cloudformation/{resources => ec2}/aws-ec2-eip.go (83%) rename cloudformation/{resources => ec2}/aws-ec2-eipassociation.go (83%) rename cloudformation/{resources => ec2}/aws-ec2-flowlog.go (86%) rename cloudformation/{resources => ec2}/aws-ec2-host.go (84%) rename cloudformation/{resources => ec2}/aws-ec2-instance.go (86%) rename cloudformation/{resources => ec2}/aws-ec2-instance_associationparameter.go (74%) rename cloudformation/{resources => ec2}/aws-ec2-instance_blockdevicemapping.go (74%) rename cloudformation/{resources => ec2}/aws-ec2-instance_cpuoptions.go (75%) rename cloudformation/{resources => ec2}/aws-ec2-instance_creditspecification.go (71%) rename cloudformation/{resources => ec2}/aws-ec2-instance_ebs.go (84%) rename cloudformation/{resources => ec2}/aws-ec2-instance_elasticgpuspecification.go (70%) rename cloudformation/{resources => ec2}/aws-ec2-instance_elasticinferenceaccelerator.go (69%) rename cloudformation/{resources => ec2}/aws-ec2-instance_instanceipv6address.go (71%) rename cloudformation/{resources => ec2}/aws-ec2-instance_launchtemplatespecification.go (75%) rename cloudformation/{resources => ec2}/aws-ec2-instance_licensespecification.go (71%) rename cloudformation/{resources => ec2}/aws-ec2-instance_networkinterface.go (84%) rename cloudformation/{resources => ec2}/aws-ec2-instance_nodevice.go (71%) rename cloudformation/{resources => ec2}/aws-ec2-instance_privateipaddressspecification.go (72%) rename cloudformation/{resources => ec2}/aws-ec2-instance_ssmassociation.go (72%) rename cloudformation/{resources => ec2}/aws-ec2-instance_volume.go (76%) rename cloudformation/{resources => ec2}/aws-ec2-internetgateway.go (78%) rename cloudformation/{resources => ec2}/aws-ec2-launchtemplate.go (78%) rename cloudformation/{resources => ec2}/aws-ec2-launchtemplate_blockdevicemapping.go (75%) rename cloudformation/{resources => ec2}/aws-ec2-launchtemplate_capacityreservationpreference.go (63%) rename cloudformation/{resources => ec2}/aws-ec2-launchtemplate_capacityreservationspecification.go (66%) rename cloudformation/{resources => ec2}/aws-ec2-launchtemplate_capacityreservationtarget.go (69%) rename cloudformation/{resources => ec2}/aws-ec2-launchtemplate_cpuoptions.go (75%) rename cloudformation/{resources => ec2}/aws-ec2-launchtemplate_creditspecification.go (70%) rename cloudformation/{resources => ec2}/aws-ec2-launchtemplate_ebs.go (84%) rename cloudformation/{resources => ec2}/aws-ec2-launchtemplate_elasticgpuspecification.go (69%) rename cloudformation/{resources => ec2}/aws-ec2-launchtemplate_hibernationoptions.go (71%) rename cloudformation/{resources => ec2}/aws-ec2-launchtemplate_iaminstanceprofile.go (73%) rename cloudformation/{resources => ec2}/aws-ec2-launchtemplate_instancemarketoptions.go (71%) rename cloudformation/{resources => ec2}/aws-ec2-launchtemplate_ipv6add.go (72%) rename cloudformation/{resources => ec2}/aws-ec2-launchtemplate_launchtemplatedata.go (79%) rename cloudformation/{resources => ec2}/aws-ec2-launchtemplate_launchtemplateelasticinferenceaccelerator.go (66%) rename cloudformation/{resources => ec2}/aws-ec2-launchtemplate_licensespecification.go (70%) rename cloudformation/{resources => ec2}/aws-ec2-launchtemplate_monitoring.go (72%) rename cloudformation/{resources => ec2}/aws-ec2-launchtemplate_networkinterface.go (84%) rename cloudformation/{resources => ec2}/aws-ec2-launchtemplate_placement.go (81%) rename cloudformation/{resources => ec2}/aws-ec2-launchtemplate_privateipadd.go (74%) rename cloudformation/{resources => ec2}/aws-ec2-launchtemplate_spotoptions.go (82%) rename cloudformation/{resources => ec2}/aws-ec2-launchtemplate_tagspecification.go (72%) rename cloudformation/{resources => ec2}/aws-ec2-natgateway.go (81%) rename cloudformation/{resources => ec2}/aws-ec2-networkacl.go (80%) rename cloudformation/{resources => ec2}/aws-ec2-networkaclentry.go (83%) rename cloudformation/{resources => ec2}/aws-ec2-networkaclentry_icmp.go (75%) rename cloudformation/{resources => ec2}/aws-ec2-networkaclentry_portrange.go (74%) rename cloudformation/{resources => ec2}/aws-ec2-networkinterface.go (83%) rename cloudformation/{resources => ec2}/aws-ec2-networkinterface_instanceipv6address.go (69%) rename cloudformation/{resources => ec2}/aws-ec2-networkinterface_privateipaddressspecification.go (70%) rename cloudformation/{resources => ec2}/aws-ec2-networkinterfaceattachment.go (80%) rename cloudformation/{resources => ec2}/aws-ec2-networkinterfacepermission.go (79%) rename cloudformation/{resources => ec2}/aws-ec2-placementgroup.go (79%) rename cloudformation/{resources => ec2}/aws-ec2-route.go (88%) rename cloudformation/{resources => ec2}/aws-ec2-routetable.go (80%) rename cloudformation/{resources => ec2}/aws-ec2-securitygroup.go (80%) rename cloudformation/{resources => ec2}/aws-ec2-securitygroup_egress.go (84%) rename cloudformation/{resources => ec2}/aws-ec2-securitygroup_ingress.go (85%) rename cloudformation/{resources => ec2}/aws-ec2-securitygroupegress.go (85%) rename cloudformation/{resources => ec2}/aws-ec2-securitygroupingress.go (86%) rename cloudformation/{resources => ec2}/aws-ec2-spotfleet.go (78%) rename cloudformation/{resources => ec2}/aws-ec2-spotfleet_blockdevicemapping.go (77%) rename cloudformation/{resources => ec2}/aws-ec2-spotfleet_classicloadbalancer.go (71%) rename cloudformation/{resources => ec2}/aws-ec2-spotfleet_classicloadbalancersconfig.go (67%) rename cloudformation/{resources => ec2}/aws-ec2-spotfleet_ebsblockdevice.go (82%) rename cloudformation/{resources => ec2}/aws-ec2-spotfleet_fleetlaunchtemplatespecification.go (74%) rename cloudformation/{resources => ec2}/aws-ec2-spotfleet_groupidentifier.go (72%) rename cloudformation/{resources => ec2}/aws-ec2-spotfleet_iaminstanceprofilespecification.go (69%) rename cloudformation/{resources => ec2}/aws-ec2-spotfleet_instanceipv6address.go (71%) rename cloudformation/{resources => ec2}/aws-ec2-spotfleet_instancenetworkinterfacespecification.go (82%) rename cloudformation/{resources => ec2}/aws-ec2-spotfleet_launchtemplateconfig.go (68%) rename cloudformation/{resources => ec2}/aws-ec2-spotfleet_launchtemplateoverrides.go (79%) rename cloudformation/{resources => ec2}/aws-ec2-spotfleet_loadbalancersconfig.go (68%) rename cloudformation/{resources => ec2}/aws-ec2-spotfleet_privateipaddressspecification.go (73%) rename cloudformation/{resources => ec2}/aws-ec2-spotfleet_spotfleetlaunchspecification.go (81%) rename cloudformation/{resources => ec2}/aws-ec2-spotfleet_spotfleetmonitoring.go (71%) rename cloudformation/{resources => ec2}/aws-ec2-spotfleet_spotfleetrequestconfigdata.go (83%) rename cloudformation/{resources => ec2}/aws-ec2-spotfleet_spotfleettagspecification.go (72%) rename cloudformation/{resources => ec2}/aws-ec2-spotfleet_spotplacement.go (78%) rename cloudformation/{resources => ec2}/aws-ec2-spotfleet_targetgroup.go (72%) rename cloudformation/{resources => ec2}/aws-ec2-spotfleet_targetgroupsconfig.go (69%) rename cloudformation/{resources => ec2}/aws-ec2-subnet.go (85%) rename cloudformation/{resources => ec2}/aws-ec2-subnetcidrblock.go (80%) rename cloudformation/{resources => ec2}/aws-ec2-subnetnetworkaclassociation.go (77%) rename cloudformation/{resources => ec2}/aws-ec2-subnetroutetableassociation.go (77%) rename cloudformation/{resources => ec2}/aws-ec2-trafficmirrorfilter.go (79%) rename cloudformation/{resources => ec2}/aws-ec2-trafficmirrorfilterrule.go (82%) rename cloudformation/{resources => ec2}/aws-ec2-trafficmirrorfilterrule_trafficmirrorportrange.go (70%) rename cloudformation/{resources => ec2}/aws-ec2-trafficmirrorsession.go (84%) rename cloudformation/{resources => ec2}/aws-ec2-trafficmirrortarget.go (80%) rename cloudformation/{resources => ec2}/aws-ec2-transitgateway.go (85%) rename cloudformation/{resources => ec2}/aws-ec2-transitgatewayattachment.go (79%) rename cloudformation/{resources => ec2}/aws-ec2-transitgatewayroute.go (81%) rename cloudformation/{resources => ec2}/aws-ec2-transitgatewayroutetable.go (77%) rename cloudformation/{resources => ec2}/aws-ec2-transitgatewayroutetableassociation.go (76%) rename cloudformation/{resources => ec2}/aws-ec2-transitgatewayroutetablepropagation.go (76%) rename cloudformation/{resources => ec2}/aws-ec2-volume.go (86%) rename cloudformation/{resources => ec2}/aws-ec2-volumeattachment.go (81%) rename cloudformation/{resources => ec2}/aws-ec2-vpc.go (84%) rename cloudformation/{resources => ec2}/aws-ec2-vpccidrblock.go (82%) rename cloudformation/{resources => ec2}/aws-ec2-vpcdhcpoptionsassociation.go (77%) rename cloudformation/{resources => ec2}/aws-ec2-vpcendpoint.go (85%) rename cloudformation/{resources => ec2}/aws-ec2-vpcendpointconnectionnotification.go (79%) rename cloudformation/{resources => ec2}/aws-ec2-vpcendpointservice.go (79%) rename cloudformation/{resources => ec2}/aws-ec2-vpcendpointservicepermissions.go (77%) rename cloudformation/{resources => ec2}/aws-ec2-vpcgatewayattachment.go (80%) rename cloudformation/{resources => ec2}/aws-ec2-vpcpeeringconnection.go (82%) rename cloudformation/{resources => ec2}/aws-ec2-vpnconnection.go (82%) rename cloudformation/{resources => ec2}/aws-ec2-vpnconnection_vpntunneloptionsspecification.go (71%) rename cloudformation/{resources => ec2}/aws-ec2-vpnconnectionroute.go (79%) rename cloudformation/{resources => ec2}/aws-ec2-vpngateway.go (81%) rename cloudformation/{resources => ec2}/aws-ec2-vpngatewayroutepropagation.go (77%) rename cloudformation/{resources => ecr}/aws-ecr-repository.go (81%) rename cloudformation/{resources => ecr}/aws-ecr-repository_lifecyclepolicy.go (74%) rename cloudformation/{resources => ecs}/aws-ecs-cluster.go (81%) rename cloudformation/{resources => ecs}/aws-ecs-service.go (84%) rename cloudformation/{resources => ecs}/aws-ecs-service_awsvpcconfiguration.go (76%) rename cloudformation/{resources => ecs}/aws-ecs-service_deploymentconfiguration.go (73%) rename cloudformation/{resources => ecs}/aws-ecs-service_loadbalancer.go (79%) rename cloudformation/{resources => ecs}/aws-ecs-service_networkconfiguration.go (68%) rename cloudformation/{resources => ecs}/aws-ecs-service_placementconstraint.go (74%) rename cloudformation/{resources => ecs}/aws-ecs-service_placementstrategy.go (74%) rename cloudformation/{resources => ecs}/aws-ecs-service_serviceregistry.go (78%) rename cloudformation/{resources => ecs}/aws-ecs-taskdefinition.go (83%) rename cloudformation/{resources => ecs}/aws-ecs-taskdefinition_containerdefinition.go (85%) rename cloudformation/{resources => ecs}/aws-ecs-taskdefinition_containerdependency.go (73%) rename cloudformation/{resources => ecs}/aws-ecs-taskdefinition_device.go (77%) rename cloudformation/{resources => ecs}/aws-ecs-taskdefinition_dockervolumeconfiguration.go (77%) rename cloudformation/{resources => ecs}/aws-ecs-taskdefinition_healthcheck.go (79%) rename cloudformation/{resources => ecs}/aws-ecs-taskdefinition_hostentry.go (75%) rename cloudformation/{resources => ecs}/aws-ecs-taskdefinition_hostvolumeproperties.go (69%) rename cloudformation/{resources => ecs}/aws-ecs-taskdefinition_kernelcapabilities.go (72%) rename cloudformation/{resources => ecs}/aws-ecs-taskdefinition_keyvaluepair.go (74%) rename cloudformation/{resources => ecs}/aws-ecs-taskdefinition_linuxparameters.go (74%) rename cloudformation/{resources => ecs}/aws-ecs-taskdefinition_logconfiguration.go (74%) rename cloudformation/{resources => ecs}/aws-ecs-taskdefinition_mountpoint.go (77%) rename cloudformation/{resources => ecs}/aws-ecs-taskdefinition_portmapping.go (77%) rename cloudformation/{resources => ecs}/aws-ecs-taskdefinition_proxyconfiguration.go (72%) rename cloudformation/{resources => ecs}/aws-ecs-taskdefinition_repositorycredentials.go (70%) rename cloudformation/{resources => ecs}/aws-ecs-taskdefinition_resourcerequirement.go (72%) rename cloudformation/{resources => ecs}/aws-ecs-taskdefinition_secret.go (75%) rename cloudformation/{resources => ecs}/aws-ecs-taskdefinition_systemcontrol.go (73%) rename cloudformation/{resources => ecs}/aws-ecs-taskdefinition_taskdefinitionplacementconstraint.go (70%) rename cloudformation/{resources => ecs}/aws-ecs-taskdefinition_tmpfs.go (77%) rename cloudformation/{resources => ecs}/aws-ecs-taskdefinition_ulimit.go (77%) rename cloudformation/{resources => ecs}/aws-ecs-taskdefinition_volume.go (72%) rename cloudformation/{resources => ecs}/aws-ecs-taskdefinition_volumefrom.go (75%) rename cloudformation/{resources => efs}/aws-efs-filesystem.go (82%) rename cloudformation/{resources => efs}/aws-efs-filesystem_elasticfilesystemtag.go (72%) rename cloudformation/{resources => efs}/aws-efs-filesystem_lifecyclepolicy.go (72%) rename cloudformation/{resources => efs}/aws-efs-mounttarget.go (82%) rename cloudformation/{resources => eks}/aws-eks-cluster.go (82%) rename cloudformation/{resources => eks}/aws-eks-cluster_resourcesvpcconfig.go (74%) rename cloudformation/{resources => elasticache}/aws-elasticache-cachecluster.go (89%) rename cloudformation/{resources => elasticache}/aws-elasticache-parametergroup.go (80%) rename cloudformation/{resources => elasticache}/aws-elasticache-replicationgroup.go (90%) rename cloudformation/{resources => elasticache}/aws-elasticache-replicationgroup_nodegroupconfiguration.go (77%) rename cloudformation/{resources => elasticache}/aws-elasticache-securitygroup.go (77%) rename cloudformation/{resources => elasticache}/aws-elasticache-securitygroupingress.go (79%) rename cloudformation/{resources => elasticache}/aws-elasticache-subnetgroup.go (80%) rename cloudformation/{resources => elasticbeanstalk}/aws-elasticbeanstalk-application.go (77%) rename cloudformation/{resources => elasticbeanstalk}/aws-elasticbeanstalk-application_applicationresourcelifecycleconfig.go (66%) rename cloudformation/{resources => elasticbeanstalk}/aws-elasticbeanstalk-application_applicationversionlifecycleconfig.go (65%) rename cloudformation/{resources => elasticbeanstalk}/aws-elasticbeanstalk-application_maxagerule.go (75%) rename cloudformation/{resources => elasticbeanstalk}/aws-elasticbeanstalk-application_maxcountrule.go (74%) rename cloudformation/{resources => elasticbeanstalk}/aws-elasticbeanstalk-applicationversion.go (76%) rename cloudformation/{resources => elasticbeanstalk}/aws-elasticbeanstalk-applicationversion_sourcebundle.go (70%) rename cloudformation/{resources => elasticbeanstalk}/aws-elasticbeanstalk-configurationtemplate.go (78%) rename cloudformation/{resources => elasticbeanstalk}/aws-elasticbeanstalk-configurationtemplate_configurationoptionsetting.go (73%) rename cloudformation/{resources => elasticbeanstalk}/aws-elasticbeanstalk-configurationtemplate_sourceconfiguration.go (70%) rename cloudformation/{resources => elasticbeanstalk}/aws-elasticbeanstalk-environment.go (82%) rename cloudformation/{resources => elasticbeanstalk}/aws-elasticbeanstalk-environment_optionsetting.go (75%) rename cloudformation/{resources => elasticbeanstalk}/aws-elasticbeanstalk-environment_tier.go (75%) rename cloudformation/{resources => elasticloadbalancing}/aws-elasticloadbalancing-loadbalancer.go (76%) rename cloudformation/{resources => elasticloadbalancing}/aws-elasticloadbalancing-loadbalancer_accessloggingpolicy.go (73%) rename cloudformation/{resources => elasticloadbalancing}/aws-elasticloadbalancing-loadbalancer_appcookiestickinesspolicy.go (68%) rename cloudformation/{resources => elasticloadbalancing}/aws-elasticloadbalancing-loadbalancer_connectiondrainingpolicy.go (68%) rename cloudformation/{resources => elasticloadbalancing}/aws-elasticloadbalancing-loadbalancer_connectionsettings.go (66%) rename cloudformation/{resources => elasticloadbalancing}/aws-elasticloadbalancing-loadbalancer_healthcheck.go (76%) rename cloudformation/{resources => elasticloadbalancing}/aws-elasticloadbalancing-loadbalancer_lbcookiestickinesspolicy.go (69%) rename cloudformation/{resources => elasticloadbalancing}/aws-elasticloadbalancing-loadbalancer_listeners.go (78%) rename cloudformation/{resources => elasticloadbalancing}/aws-elasticloadbalancing-loadbalancer_policies.go (76%) rename cloudformation/{resources => elasticloadbalancingv2}/aws-elasticloadbalancingv2-listener.go (78%) rename cloudformation/{resources => elasticloadbalancingv2}/aws-elasticloadbalancingv2-listener_action.go (73%) rename cloudformation/{resources => elasticloadbalancingv2}/aws-elasticloadbalancingv2-listener_authenticatecognitoconfig.go (81%) rename cloudformation/{resources => elasticloadbalancingv2}/aws-elasticloadbalancingv2-listener_authenticateoidcconfig.go (84%) rename cloudformation/{resources => elasticloadbalancingv2}/aws-elasticloadbalancingv2-listener_certificate.go (69%) rename cloudformation/{resources => elasticloadbalancingv2}/aws-elasticloadbalancingv2-listener_fixedresponseconfig.go (73%) rename cloudformation/{resources => elasticloadbalancingv2}/aws-elasticloadbalancingv2-listener_redirectconfig.go (78%) rename cloudformation/{resources => elasticloadbalancingv2}/aws-elasticloadbalancingv2-listenercertificate.go (73%) rename cloudformation/{resources => elasticloadbalancingv2}/aws-elasticloadbalancingv2-listenercertificate_certificate.go (67%) rename cloudformation/{resources => elasticloadbalancingv2}/aws-elasticloadbalancingv2-listenerrule.go (76%) rename cloudformation/{resources => elasticloadbalancingv2}/aws-elasticloadbalancingv2-listenerrule_action.go (72%) rename cloudformation/{resources => elasticloadbalancingv2}/aws-elasticloadbalancingv2-listenerrule_authenticatecognitoconfig.go (81%) rename cloudformation/{resources => elasticloadbalancingv2}/aws-elasticloadbalancingv2-listenerrule_authenticateoidcconfig.go (84%) rename cloudformation/{resources => elasticloadbalancingv2}/aws-elasticloadbalancingv2-listenerrule_fixedresponseconfig.go (72%) rename cloudformation/{resources => elasticloadbalancingv2}/aws-elasticloadbalancingv2-listenerrule_hostheaderconfig.go (67%) rename cloudformation/{resources => elasticloadbalancingv2}/aws-elasticloadbalancingv2-listenerrule_httpheaderconfig.go (70%) rename cloudformation/{resources => elasticloadbalancingv2}/aws-elasticloadbalancingv2-listenerrule_httprequestmethodconfig.go (66%) rename cloudformation/{resources => elasticloadbalancingv2}/aws-elasticloadbalancingv2-listenerrule_pathpatternconfig.go (67%) rename cloudformation/{resources => elasticloadbalancingv2}/aws-elasticloadbalancingv2-listenerrule_querystringconfig.go (65%) rename cloudformation/{resources => elasticloadbalancingv2}/aws-elasticloadbalancingv2-listenerrule_querystringkeyvalue.go (69%) rename cloudformation/{resources => elasticloadbalancingv2}/aws-elasticloadbalancingv2-listenerrule_redirectconfig.go (78%) rename cloudformation/{resources => elasticloadbalancingv2}/aws-elasticloadbalancingv2-listenerrule_rulecondition.go (70%) rename cloudformation/{resources => elasticloadbalancingv2}/aws-elasticloadbalancingv2-listenerrule_sourceipconfig.go (67%) rename cloudformation/{resources => elasticloadbalancingv2}/aws-elasticloadbalancingv2-loadbalancer.go (79%) rename cloudformation/{resources => elasticloadbalancingv2}/aws-elasticloadbalancingv2-loadbalancer_loadbalancerattribute.go (69%) rename cloudformation/{resources => elasticloadbalancingv2}/aws-elasticloadbalancingv2-loadbalancer_subnetmapping.go (71%) rename cloudformation/{resources => elasticloadbalancingv2}/aws-elasticloadbalancingv2-targetgroup.go (84%) rename cloudformation/{resources => elasticloadbalancingv2}/aws-elasticloadbalancingv2-targetgroup_matcher.go (69%) rename cloudformation/{resources => elasticloadbalancingv2}/aws-elasticloadbalancingv2-targetgroup_targetdescription.go (72%) rename cloudformation/{resources => elasticloadbalancingv2}/aws-elasticloadbalancingv2-targetgroup_targetgroupattribute.go (69%) rename cloudformation/{resources => elasticsearch}/aws-elasticsearch-domain.go (78%) rename cloudformation/{resources => elasticsearch}/aws-elasticsearch-domain_ebsoptions.go (77%) rename cloudformation/{resources => elasticsearch}/aws-elasticsearch-domain_elasticsearchclusterconfig.go (79%) rename cloudformation/{resources => elasticsearch}/aws-elasticsearch-domain_encryptionatrestoptions.go (71%) rename cloudformation/{resources => elasticsearch}/aws-elasticsearch-domain_nodetonodeencryptionoptions.go (68%) rename cloudformation/{resources => elasticsearch}/aws-elasticsearch-domain_snapshotoptions.go (71%) rename cloudformation/{resources => elasticsearch}/aws-elasticsearch-domain_vpcoptions.go (74%) rename cloudformation/{resources => elasticsearch}/aws-elasticsearch-domain_zoneawarenessconfig.go (70%) rename cloudformation/{resources => emr}/aws-emr-cluster.go (86%) rename cloudformation/{resources => emr}/aws-emr-cluster_application.go (79%) rename cloudformation/{resources => emr}/aws-emr-cluster_autoscalingpolicy.go (71%) rename cloudformation/{resources => emr}/aws-emr-cluster_bootstrapactionconfig.go (71%) rename cloudformation/{resources => emr}/aws-emr-cluster_cloudwatchalarmdefinition.go (82%) rename cloudformation/{resources => emr}/aws-emr-cluster_configuration.go (76%) rename cloudformation/{resources => emr}/aws-emr-cluster_ebsblockdeviceconfig.go (72%) rename cloudformation/{resources => emr}/aws-emr-cluster_ebsconfiguration.go (72%) rename cloudformation/{resources => emr}/aws-emr-cluster_hadoopjarstepconfig.go (76%) rename cloudformation/{resources => emr}/aws-emr-cluster_instancefleetconfig.go (76%) rename cloudformation/{resources => emr}/aws-emr-cluster_instancefleetprovisioningspecifications.go (65%) rename cloudformation/{resources => emr}/aws-emr-cluster_instancegroupconfig.go (79%) rename cloudformation/{resources => emr}/aws-emr-cluster_instancetypeconfig.go (79%) rename cloudformation/{resources => emr}/aws-emr-cluster_jobflowinstancesconfig.go (84%) rename cloudformation/{resources => emr}/aws-emr-cluster_kerberosattributes.go (81%) rename cloudformation/{resources => emr}/aws-emr-cluster_keyvalue.go (76%) rename cloudformation/{resources => emr}/aws-emr-cluster_metricdimension.go (75%) rename cloudformation/{resources => emr}/aws-emr-cluster_placementtype.go (73%) rename cloudformation/{resources => emr}/aws-emr-cluster_scalingaction.go (72%) rename cloudformation/{resources => emr}/aws-emr-cluster_scalingconstraints.go (74%) rename cloudformation/{resources => emr}/aws-emr-cluster_scalingrule.go (76%) rename cloudformation/{resources => emr}/aws-emr-cluster_scalingtrigger.go (70%) rename cloudformation/{resources => emr}/aws-emr-cluster_scriptbootstrapactionconfig.go (72%) rename cloudformation/{resources => emr}/aws-emr-cluster_simplescalingpolicyconfiguration.go (75%) rename cloudformation/{resources => emr}/aws-emr-cluster_spotprovisioningspecification.go (75%) rename cloudformation/{resources => emr}/aws-emr-cluster_stepconfig.go (76%) rename cloudformation/{resources => emr}/aws-emr-cluster_volumespecification.go (76%) rename cloudformation/{resources => emr}/aws-emr-instancefleetconfig.go (81%) rename cloudformation/{resources => emr}/aws-emr-instancefleetconfig_configuration.go (74%) rename cloudformation/{resources => emr}/aws-emr-instancefleetconfig_ebsblockdeviceconfig.go (70%) rename cloudformation/{resources => emr}/aws-emr-instancefleetconfig_ebsconfiguration.go (70%) rename cloudformation/{resources => emr}/aws-emr-instancefleetconfig_instancefleetprovisioningspecifications.go (63%) rename cloudformation/{resources => emr}/aws-emr-instancefleetconfig_instancetypeconfig.go (77%) rename cloudformation/{resources => emr}/aws-emr-instancefleetconfig_spotprovisioningspecification.go (74%) rename cloudformation/{resources => emr}/aws-emr-instancefleetconfig_volumespecification.go (74%) rename cloudformation/{resources => emr}/aws-emr-instancegroupconfig.go (81%) rename cloudformation/{resources => emr}/aws-emr-instancegroupconfig_autoscalingpolicy.go (68%) rename cloudformation/{resources => emr}/aws-emr-instancegroupconfig_cloudwatchalarmdefinition.go (81%) rename cloudformation/{resources => emr}/aws-emr-instancegroupconfig_configuration.go (73%) rename cloudformation/{resources => emr}/aws-emr-instancegroupconfig_ebsblockdeviceconfig.go (69%) rename cloudformation/{resources => emr}/aws-emr-instancegroupconfig_ebsconfiguration.go (69%) rename cloudformation/{resources => emr}/aws-emr-instancegroupconfig_metricdimension.go (72%) rename cloudformation/{resources => emr}/aws-emr-instancegroupconfig_scalingaction.go (70%) rename cloudformation/{resources => emr}/aws-emr-instancegroupconfig_scalingconstraints.go (72%) rename cloudformation/{resources => emr}/aws-emr-instancegroupconfig_scalingrule.go (74%) rename cloudformation/{resources => emr}/aws-emr-instancegroupconfig_scalingtrigger.go (67%) rename cloudformation/{resources => emr}/aws-emr-instancegroupconfig_simplescalingpolicyconfiguration.go (73%) rename cloudformation/{resources => emr}/aws-emr-instancegroupconfig_volumespecification.go (75%) rename cloudformation/{resources => emr}/aws-emr-securityconfiguration.go (78%) rename cloudformation/{resources => emr}/aws-emr-step.go (83%) rename cloudformation/{resources => emr}/aws-emr-step_hadoopjarstepconfig.go (77%) rename cloudformation/{resources => emr}/aws-emr-step_keyvalue.go (77%) rename cloudformation/{resources => events}/aws-events-eventbus.go (81%) rename cloudformation/{resources => events}/aws-events-eventbuspolicy.go (81%) rename cloudformation/{resources => events}/aws-events-eventbuspolicy_condition.go (75%) rename cloudformation/{resources => events}/aws-events-rule.go (84%) rename cloudformation/{resources => events}/aws-events-rule_awsvpcconfiguration.go (76%) rename cloudformation/{resources => events}/aws-events-rule_ecsparameters.go (79%) rename cloudformation/{resources => events}/aws-events-rule_inputtransformer.go (75%) rename cloudformation/{resources => events}/aws-events-rule_kinesisparameters.go (72%) rename cloudformation/{resources => events}/aws-events-rule_networkconfiguration.go (68%) rename cloudformation/{resources => events}/aws-events-rule_runcommandparameters.go (69%) rename cloudformation/{resources => events}/aws-events-rule_runcommandtarget.go (74%) rename cloudformation/{resources => events}/aws-events-rule_sqsparameters.go (73%) rename cloudformation/{resources => events}/aws-events-rule_target.go (78%) rename cloudformation/{resources => fsx}/aws-fsx-filesystem.go (83%) rename cloudformation/{resources => fsx}/aws-fsx-filesystem_lustreconfiguration.go (78%) rename cloudformation/{resources => fsx}/aws-fsx-filesystem_selfmanagedactivedirectoryconfiguration.go (80%) rename cloudformation/{resources => fsx}/aws-fsx-filesystem_windowsconfiguration.go (80%) rename cloudformation/{resources => gamelift}/aws-gamelift-alias.go (80%) rename cloudformation/{resources => gamelift}/aws-gamelift-alias_routingstrategy.go (76%) rename cloudformation/{resources => gamelift}/aws-gamelift-build.go (80%) rename cloudformation/{resources => gamelift}/aws-gamelift-build_s3location.go (77%) rename cloudformation/{resources => gamelift}/aws-gamelift-fleet.go (86%) rename cloudformation/{resources => gamelift}/aws-gamelift-fleet_ippermission.go (78%) rename cloudformation/{resources => glue}/aws-glue-classifier.go (77%) rename cloudformation/{resources => glue}/aws-glue-classifier_csvclassifier.go (82%) rename cloudformation/{resources => glue}/aws-glue-classifier_grokclassifier.go (78%) rename cloudformation/{resources => glue}/aws-glue-classifier_jsonclassifier.go (74%) rename cloudformation/{resources => glue}/aws-glue-classifier_xmlclassifier.go (76%) rename cloudformation/{resources => glue}/aws-glue-connection.go (79%) rename cloudformation/{resources => glue}/aws-glue-connection_connectioninput.go (78%) rename cloudformation/{resources => glue}/aws-glue-connection_physicalconnectionrequirements.go (74%) rename cloudformation/{resources => glue}/aws-glue-crawler.go (85%) rename cloudformation/{resources => glue}/aws-glue-crawler_jdbctarget.go (77%) rename cloudformation/{resources => glue}/aws-glue-crawler_s3target.go (76%) rename cloudformation/{resources => glue}/aws-glue-crawler_schedule.go (74%) rename cloudformation/{resources => glue}/aws-glue-crawler_schemachangepolicy.go (74%) rename cloudformation/{resources => glue}/aws-glue-crawler_targets.go (72%) rename cloudformation/{resources => glue}/aws-glue-database.go (80%) rename cloudformation/{resources => glue}/aws-glue-database_databaseinput.go (78%) rename cloudformation/{resources => glue}/aws-glue-datacatalogencryptionsettings.go (74%) rename cloudformation/{resources => glue}/aws-glue-datacatalogencryptionsettings_connectionpasswordencryption.go (69%) rename cloudformation/{resources => glue}/aws-glue-datacatalogencryptionsettings_datacatalogencryptionsettings.go (64%) rename cloudformation/{resources => glue}/aws-glue-datacatalogencryptionsettings_encryptionatrest.go (71%) rename cloudformation/{resources => glue}/aws-glue-devendpoint.go (88%) rename cloudformation/{resources => glue}/aws-glue-job.go (87%) rename cloudformation/{resources => glue}/aws-glue-job_connectionslist.go (73%) rename cloudformation/{resources => glue}/aws-glue-job_executionproperty.go (73%) rename cloudformation/{resources => glue}/aws-glue-job_jobcommand.go (78%) rename cloudformation/{resources => glue}/aws-glue-job_notificationproperty.go (72%) rename cloudformation/{resources => glue}/aws-glue-mltransform.go (83%) rename cloudformation/{resources => glue}/aws-glue-mltransform_findmatchesparameters.go (79%) rename cloudformation/{resources => glue}/aws-glue-mltransform_gluetables.go (79%) rename cloudformation/{resources => glue}/aws-glue-mltransform_inputrecordtables.go (68%) rename cloudformation/{resources => glue}/aws-glue-mltransform_transformparameters.go (70%) rename cloudformation/{resources => glue}/aws-glue-partition.go (81%) rename cloudformation/{resources => glue}/aws-glue-partition_column.go (77%) rename cloudformation/{resources => glue}/aws-glue-partition_order.go (76%) rename cloudformation/{resources => glue}/aws-glue-partition_partitioninput.go (74%) rename cloudformation/{resources => glue}/aws-glue-partition_serdeinfo.go (77%) rename cloudformation/{resources => glue}/aws-glue-partition_skewedinfo.go (78%) rename cloudformation/{resources => glue}/aws-glue-partition_storagedescriptor.go (82%) rename cloudformation/{resources => glue}/aws-glue-securityconfiguration.go (76%) rename cloudformation/{resources => glue}/aws-glue-securityconfiguration_cloudwatchencryption.go (71%) rename cloudformation/{resources => glue}/aws-glue-securityconfiguration_encryptionconfiguration.go (66%) rename cloudformation/{resources => glue}/aws-glue-securityconfiguration_jobbookmarksencryption.go (71%) rename cloudformation/{resources => glue}/aws-glue-securityconfiguration_s3encryption.go (73%) rename cloudformation/{resources => glue}/aws-glue-securityconfiguration_s3encryptions.go (66%) rename cloudformation/{resources => glue}/aws-glue-table.go (81%) rename cloudformation/{resources => glue}/aws-glue-table_column.go (78%) rename cloudformation/{resources => glue}/aws-glue-table_order.go (77%) rename cloudformation/{resources => glue}/aws-glue-table_serdeinfo.go (78%) rename cloudformation/{resources => glue}/aws-glue-table_skewedinfo.go (79%) rename cloudformation/{resources => glue}/aws-glue-table_storagedescriptor.go (82%) rename cloudformation/{resources => glue}/aws-glue-table_tableinput.go (83%) rename cloudformation/{resources => glue}/aws-glue-trigger.go (84%) rename cloudformation/{resources => glue}/aws-glue-trigger_action.go (80%) rename cloudformation/{resources => glue}/aws-glue-trigger_condition.go (80%) rename cloudformation/{resources => glue}/aws-glue-trigger_notificationproperty.go (71%) rename cloudformation/{resources => glue}/aws-glue-trigger_predicate.go (73%) rename cloudformation/{resources => glue}/aws-glue-workflow.go (83%) rename cloudformation/{resources => greengrass}/aws-greengrass-connectordefinition.go (77%) rename cloudformation/{resources => greengrass}/aws-greengrass-connectordefinition_connector.go (74%) rename cloudformation/{resources => greengrass}/aws-greengrass-connectordefinition_connectordefinitionversion.go (64%) rename cloudformation/{resources => greengrass}/aws-greengrass-connectordefinitionversion.go (75%) rename cloudformation/{resources => greengrass}/aws-greengrass-connectordefinitionversion_connector.go (73%) rename cloudformation/{resources => greengrass}/aws-greengrass-coredefinition.go (78%) rename cloudformation/{resources => greengrass}/aws-greengrass-coredefinition_core.go (78%) rename cloudformation/{resources => greengrass}/aws-greengrass-coredefinition_coredefinitionversion.go (66%) rename cloudformation/{resources => greengrass}/aws-greengrass-coredefinitionversion.go (76%) rename cloudformation/{resources => greengrass}/aws-greengrass-coredefinitionversion_core.go (77%) rename cloudformation/{resources => greengrass}/aws-greengrass-devicedefinition.go (77%) rename cloudformation/{resources => greengrass}/aws-greengrass-devicedefinition_device.go (77%) rename cloudformation/{resources => greengrass}/aws-greengrass-devicedefinition_devicedefinitionversion.go (65%) rename cloudformation/{resources => greengrass}/aws-greengrass-devicedefinitionversion.go (75%) rename cloudformation/{resources => greengrass}/aws-greengrass-devicedefinitionversion_device.go (76%) rename cloudformation/{resources => greengrass}/aws-greengrass-functiondefinition.go (77%) rename cloudformation/{resources => greengrass}/aws-greengrass-functiondefinition_defaultconfig.go (67%) rename cloudformation/{resources => greengrass}/aws-greengrass-functiondefinition_environment.go (72%) rename cloudformation/{resources => greengrass}/aws-greengrass-functiondefinition_execution.go (70%) rename cloudformation/{resources => greengrass}/aws-greengrass-functiondefinition_function.go (72%) rename cloudformation/{resources => greengrass}/aws-greengrass-functiondefinition_functionconfiguration.go (78%) rename cloudformation/{resources => greengrass}/aws-greengrass-functiondefinition_functiondefinitionversion.go (66%) rename cloudformation/{resources => greengrass}/aws-greengrass-functiondefinition_resourceaccesspolicy.go (71%) rename cloudformation/{resources => greengrass}/aws-greengrass-functiondefinition_runas.go (73%) rename cloudformation/{resources => greengrass}/aws-greengrass-functiondefinitionversion.go (74%) rename cloudformation/{resources => greengrass}/aws-greengrass-functiondefinitionversion_defaultconfig.go (65%) rename cloudformation/{resources => greengrass}/aws-greengrass-functiondefinitionversion_environment.go (71%) rename cloudformation/{resources => greengrass}/aws-greengrass-functiondefinitionversion_execution.go (69%) rename cloudformation/{resources => greengrass}/aws-greengrass-functiondefinitionversion_function.go (71%) rename cloudformation/{resources => greengrass}/aws-greengrass-functiondefinitionversion_functionconfiguration.go (77%) rename cloudformation/{resources => greengrass}/aws-greengrass-functiondefinitionversion_resourceaccesspolicy.go (69%) rename cloudformation/{resources => greengrass}/aws-greengrass-functiondefinitionversion_runas.go (71%) rename cloudformation/{resources => greengrass}/aws-greengrass-group.go (81%) rename cloudformation/{resources => greengrass}/aws-greengrass-group_groupversion.go (84%) rename cloudformation/{resources => greengrass}/aws-greengrass-groupversion.go (85%) rename cloudformation/{resources => greengrass}/aws-greengrass-loggerdefinition.go (77%) rename cloudformation/{resources => greengrass}/aws-greengrass-loggerdefinition_logger.go (78%) rename cloudformation/{resources => greengrass}/aws-greengrass-loggerdefinition_loggerdefinitionversion.go (65%) rename cloudformation/{resources => greengrass}/aws-greengrass-loggerdefinitionversion.go (75%) rename cloudformation/{resources => greengrass}/aws-greengrass-loggerdefinitionversion_logger.go (77%) rename cloudformation/{resources => greengrass}/aws-greengrass-resourcedefinition.go (77%) rename cloudformation/{resources => greengrass}/aws-greengrass-resourcedefinition_groupownersetting.go (71%) rename cloudformation/{resources => greengrass}/aws-greengrass-resourcedefinition_localdeviceresourcedata.go (68%) rename cloudformation/{resources => greengrass}/aws-greengrass-resourcedefinition_localvolumeresourcedata.go (70%) rename cloudformation/{resources => greengrass}/aws-greengrass-resourcedefinition_resourcedatacontainer.go (65%) rename cloudformation/{resources => greengrass}/aws-greengrass-resourcedefinition_resourcedefinitionversion.go (64%) rename cloudformation/{resources => greengrass}/aws-greengrass-resourcedefinition_resourceinstance.go (71%) rename cloudformation/{resources => greengrass}/aws-greengrass-resourcedefinition_s3machinelearningmodelresourcedata.go (69%) rename cloudformation/{resources => greengrass}/aws-greengrass-resourcedefinition_sagemakermachinelearningmodelresourcedata.go (68%) rename cloudformation/{resources => greengrass}/aws-greengrass-resourcedefinition_secretsmanagersecretresourcedata.go (69%) rename cloudformation/{resources => greengrass}/aws-greengrass-resourcedefinitionversion.go (75%) rename cloudformation/{resources => greengrass}/aws-greengrass-resourcedefinitionversion_groupownersetting.go (70%) rename cloudformation/{resources => greengrass}/aws-greengrass-resourcedefinitionversion_localdeviceresourcedata.go (67%) rename cloudformation/{resources => greengrass}/aws-greengrass-resourcedefinitionversion_localvolumeresourcedata.go (70%) rename cloudformation/{resources => greengrass}/aws-greengrass-resourcedefinitionversion_resourcedatacontainer.go (65%) rename cloudformation/{resources => greengrass}/aws-greengrass-resourcedefinitionversion_resourceinstance.go (70%) rename cloudformation/{resources => greengrass}/aws-greengrass-resourcedefinitionversion_s3machinelearningmodelresourcedata.go (68%) rename cloudformation/{resources => greengrass}/aws-greengrass-resourcedefinitionversion_sagemakermachinelearningmodelresourcedata.go (67%) rename cloudformation/{resources => greengrass}/aws-greengrass-resourcedefinitionversion_secretsmanagersecretresourcedata.go (68%) rename cloudformation/{resources => greengrass}/aws-greengrass-subscriptiondefinition.go (76%) rename cloudformation/{resources => greengrass}/aws-greengrass-subscriptiondefinition_subscription.go (75%) rename cloudformation/{resources => greengrass}/aws-greengrass-subscriptiondefinition_subscriptiondefinitionversion.go (63%) rename cloudformation/{resources => greengrass}/aws-greengrass-subscriptiondefinitionversion.go (74%) rename cloudformation/{resources => greengrass}/aws-greengrass-subscriptiondefinitionversion_subscription.go (74%) rename cloudformation/{resources => guardduty}/aws-guardduty-detector.go (80%) rename cloudformation/{resources => guardduty}/aws-guardduty-filter.go (82%) rename cloudformation/{resources => guardduty}/aws-guardduty-filter_condition.go (79%) rename cloudformation/{resources => guardduty}/aws-guardduty-filter_findingcriteria.go (72%) rename cloudformation/{resources => guardduty}/aws-guardduty-ipset.go (83%) rename cloudformation/{resources => guardduty}/aws-guardduty-master.go (81%) rename cloudformation/{resources => guardduty}/aws-guardduty-member.go (84%) rename cloudformation/{resources => guardduty}/aws-guardduty-threatintelset.go (81%) rename cloudformation/{resources => iam}/aws-iam-accesskey.go (82%) rename cloudformation/{resources => iam}/aws-iam-group.go (83%) rename cloudformation/{resources => iam}/aws-iam-group_policy.go (77%) rename cloudformation/{resources => iam}/aws-iam-instanceprofile.go (81%) rename cloudformation/{resources => iam}/aws-iam-managedpolicy.go (84%) rename cloudformation/{resources => iam}/aws-iam-policy.go (84%) rename cloudformation/{resources => iam}/aws-iam-role.go (86%) rename cloudformation/{resources => iam}/aws-iam-role_policy.go (77%) rename cloudformation/{resources => iam}/aws-iam-servicelinkedrole.go (80%) rename cloudformation/{resources => iam}/aws-iam-user.go (84%) rename cloudformation/{resources => iam}/aws-iam-user_loginprofile.go (76%) rename cloudformation/{resources => iam}/aws-iam-user_policy.go (77%) rename cloudformation/{resources => iam}/aws-iam-usertogroupaddition.go (79%) rename cloudformation/{resources => inspector}/aws-inspector-assessmenttarget.go (78%) rename cloudformation/{resources => inspector}/aws-inspector-assessmenttemplate.go (80%) rename cloudformation/{resources => inspector}/aws-inspector-resourcegroup.go (76%) rename cloudformation/{resources => iot}/aws-iot-certificate.go (81%) rename cloudformation/{resources => iot}/aws-iot-policy.go (82%) rename cloudformation/{resources => iot}/aws-iot-policyprincipalattachment.go (78%) rename cloudformation/{resources => iot}/aws-iot-thing.go (80%) rename cloudformation/{resources => iot}/aws-iot-thing_attributepayload.go (72%) rename cloudformation/{resources => iot}/aws-iot-thingprincipalattachment.go (78%) rename cloudformation/{resources => iot}/aws-iot-topicrule.go (79%) rename cloudformation/{resources => iot}/aws-iot-topicrule_action.go (73%) rename cloudformation/{resources => iot}/aws-iot-topicrule_cloudwatchalarmaction.go (77%) rename cloudformation/{resources => iot}/aws-iot-topicrule_cloudwatchmetricaction.go (80%) rename cloudformation/{resources => iot}/aws-iot-topicrule_dynamodbaction.go (84%) rename cloudformation/{resources => iot}/aws-iot-topicrule_dynamodbv2action.go (72%) rename cloudformation/{resources => iot}/aws-iot-topicrule_elasticsearchaction.go (78%) rename cloudformation/{resources => iot}/aws-iot-topicrule_firehoseaction.go (76%) rename cloudformation/{resources => iot}/aws-iot-topicrule_iotanalyticsaction.go (73%) rename cloudformation/{resources => iot}/aws-iot-topicrule_kinesisaction.go (77%) rename cloudformation/{resources => iot}/aws-iot-topicrule_lambdaaction.go (72%) rename cloudformation/{resources => iot}/aws-iot-topicrule_putiteminput.go (72%) rename cloudformation/{resources => iot}/aws-iot-topicrule_republishaction.go (74%) rename cloudformation/{resources => iot}/aws-iot-topicrule_s3action.go (77%) rename cloudformation/{resources => iot}/aws-iot-topicrule_snsaction.go (77%) rename cloudformation/{resources => iot}/aws-iot-topicrule_sqsaction.go (77%) rename cloudformation/{resources => iot}/aws-iot-topicrule_stepfunctionsaction.go (76%) rename cloudformation/{resources => iot}/aws-iot-topicrule_topicrulepayload.go (78%) rename cloudformation/{resources => iot1click}/aws-iot1click-device.go (80%) rename cloudformation/{resources => iot1click}/aws-iot1click-placement.go (82%) rename cloudformation/{resources => iot1click}/aws-iot1click-project.go (80%) rename cloudformation/{resources => iot1click}/aws-iot1click-project_devicetemplate.go (74%) rename cloudformation/{resources => iot1click}/aws-iot1click-project_placementtemplate.go (74%) rename cloudformation/{resources => iotanalytics}/aws-iotanalytics-channel.go (78%) rename cloudformation/{resources => iotanalytics}/aws-iotanalytics-channel_channelstorage.go (68%) rename cloudformation/{resources => iotanalytics}/aws-iotanalytics-channel_customermanageds3.go (75%) rename cloudformation/{resources => iotanalytics}/aws-iotanalytics-channel_retentionperiod.go (73%) rename cloudformation/{resources => iotanalytics}/aws-iotanalytics-channel_servicemanageds3.go (67%) rename cloudformation/{resources => iotanalytics}/aws-iotanalytics-dataset.go (76%) rename cloudformation/{resources => iotanalytics}/aws-iotanalytics-dataset_action.go (72%) rename cloudformation/{resources => iotanalytics}/aws-iotanalytics-dataset_containeraction.go (73%) rename cloudformation/{resources => iotanalytics}/aws-iotanalytics-dataset_datasetcontentdeliveryrule.go (68%) rename cloudformation/{resources => iotanalytics}/aws-iotanalytics-dataset_datasetcontentdeliveryruledestination.go (64%) rename cloudformation/{resources => iotanalytics}/aws-iotanalytics-dataset_datasetcontentversionvalue.go (68%) rename cloudformation/{resources => iotanalytics}/aws-iotanalytics-dataset_deltatime.go (74%) rename cloudformation/{resources => iotanalytics}/aws-iotanalytics-dataset_filter.go (70%) rename cloudformation/{resources => iotanalytics}/aws-iotanalytics-dataset_glueconfiguration.go (73%) rename cloudformation/{resources => iotanalytics}/aws-iotanalytics-dataset_ioteventsdestinationconfiguration.go (70%) rename cloudformation/{resources => iotanalytics}/aws-iotanalytics-dataset_outputfileurivalue.go (70%) rename cloudformation/{resources => iotanalytics}/aws-iotanalytics-dataset_queryaction.go (71%) rename cloudformation/{resources => iotanalytics}/aws-iotanalytics-dataset_resourceconfiguration.go (72%) rename cloudformation/{resources => iotanalytics}/aws-iotanalytics-dataset_retentionperiod.go (73%) rename cloudformation/{resources => iotanalytics}/aws-iotanalytics-dataset_s3destinationconfiguration.go (73%) rename cloudformation/{resources => iotanalytics}/aws-iotanalytics-dataset_schedule.go (72%) rename cloudformation/{resources => iotanalytics}/aws-iotanalytics-dataset_trigger.go (70%) rename cloudformation/{resources => iotanalytics}/aws-iotanalytics-dataset_triggeringdataset.go (70%) rename cloudformation/{resources => iotanalytics}/aws-iotanalytics-dataset_variable.go (75%) rename cloudformation/{resources => iotanalytics}/aws-iotanalytics-dataset_versioningconfiguration.go (71%) rename cloudformation/{resources => iotanalytics}/aws-iotanalytics-datastore.go (77%) rename cloudformation/{resources => iotanalytics}/aws-iotanalytics-datastore_customermanageds3.go (74%) rename cloudformation/{resources => iotanalytics}/aws-iotanalytics-datastore_datastorestorage.go (68%) rename cloudformation/{resources => iotanalytics}/aws-iotanalytics-datastore_retentionperiod.go (73%) rename cloudformation/{resources => iotanalytics}/aws-iotanalytics-datastore_servicemanageds3.go (66%) rename cloudformation/{resources => iotanalytics}/aws-iotanalytics-pipeline.go (78%) rename cloudformation/{resources => iotanalytics}/aws-iotanalytics-pipeline_activity.go (71%) rename cloudformation/{resources => iotanalytics}/aws-iotanalytics-pipeline_addattributes.go (75%) rename cloudformation/{resources => iotanalytics}/aws-iotanalytics-pipeline_channel.go (76%) rename cloudformation/{resources => iotanalytics}/aws-iotanalytics-pipeline_datastore.go (74%) rename cloudformation/{resources => iotanalytics}/aws-iotanalytics-pipeline_deviceregistryenrich.go (77%) rename cloudformation/{resources => iotanalytics}/aws-iotanalytics-pipeline_deviceshadowenrich.go (78%) rename cloudformation/{resources => iotanalytics}/aws-iotanalytics-pipeline_filter.go (76%) rename cloudformation/{resources => iotanalytics}/aws-iotanalytics-pipeline_lambda.go (78%) rename cloudformation/{resources => iotanalytics}/aws-iotanalytics-pipeline_math.go (78%) rename cloudformation/{resources => iotanalytics}/aws-iotanalytics-pipeline_removeattributes.go (74%) rename cloudformation/{resources => iotanalytics}/aws-iotanalytics-pipeline_selectattributes.go (74%) rename cloudformation/{resources => iotevents}/aws-iotevents-detectormodel.go (80%) rename cloudformation/{resources => iotevents}/aws-iotevents-detectormodel_action.go (72%) rename cloudformation/{resources => iotevents}/aws-iotevents-detectormodel_cleartimer.go (71%) rename cloudformation/{resources => iotevents}/aws-iotevents-detectormodel_detectormodeldefinition.go (69%) rename cloudformation/{resources => iotevents}/aws-iotevents-detectormodel_event.go (75%) rename cloudformation/{resources => iotevents}/aws-iotevents-detectormodel_firehose.go (74%) rename cloudformation/{resources => iotevents}/aws-iotevents-detectormodel_iotevents.go (71%) rename cloudformation/{resources => iotevents}/aws-iotevents-detectormodel_iottopicpublish.go (70%) rename cloudformation/{resources => iotevents}/aws-iotevents-detectormodel_lambda.go (71%) rename cloudformation/{resources => iotevents}/aws-iotevents-detectormodel_onenter.go (69%) rename cloudformation/{resources => iotevents}/aws-iotevents-detectormodel_onexit.go (69%) rename cloudformation/{resources => iotevents}/aws-iotevents-detectormodel_oninput.go (69%) rename cloudformation/{resources => iotevents}/aws-iotevents-detectormodel_resettimer.go (71%) rename cloudformation/{resources => iotevents}/aws-iotevents-detectormodel_settimer.go (73%) rename cloudformation/{resources => iotevents}/aws-iotevents-detectormodel_setvariable.go (73%) rename cloudformation/{resources => iotevents}/aws-iotevents-detectormodel_sns.go (72%) rename cloudformation/{resources => iotevents}/aws-iotevents-detectormodel_sqs.go (74%) rename cloudformation/{resources => iotevents}/aws-iotevents-detectormodel_state.go (73%) rename cloudformation/{resources => iotevents}/aws-iotevents-detectormodel_transitionevent.go (75%) rename cloudformation/{resources => iotevents}/aws-iotevents-input.go (80%) rename cloudformation/{resources => iotevents}/aws-iotevents-input_attribute.go (72%) rename cloudformation/{resources => iotevents}/aws-iotevents-input_inputdefinition.go (69%) rename cloudformation/{resources => iotthingsgraph}/aws-iotthingsgraph-flowtemplate.go (77%) rename cloudformation/{resources => iotthingsgraph}/aws-iotthingsgraph-flowtemplate_definitiondocument.go (71%) rename cloudformation/{resources => kinesis}/aws-kinesis-stream.go (81%) rename cloudformation/{resources => kinesis}/aws-kinesis-stream_streamencryption.go (74%) rename cloudformation/{resources => kinesis}/aws-kinesis-streamconsumer.go (79%) rename cloudformation/{resources => kinesisanalytics}/aws-kinesisanalytics-application.go (79%) rename cloudformation/{resources => kinesisanalytics}/aws-kinesisanalytics-application_csvmappingparameters.go (71%) rename cloudformation/{resources => kinesisanalytics}/aws-kinesisanalytics-application_input.go (70%) rename cloudformation/{resources => kinesisanalytics}/aws-kinesisanalytics-application_inputlambdaprocessor.go (71%) rename cloudformation/{resources => kinesisanalytics}/aws-kinesisanalytics-application_inputparallelism.go (68%) rename cloudformation/{resources => kinesisanalytics}/aws-kinesisanalytics-application_inputprocessingconfiguration.go (64%) rename cloudformation/{resources => kinesisanalytics}/aws-kinesisanalytics-application_inputschema.go (70%) rename cloudformation/{resources => kinesisanalytics}/aws-kinesisanalytics-application_jsonmappingparameters.go (68%) rename cloudformation/{resources => kinesisanalytics}/aws-kinesisanalytics-application_kinesisfirehoseinput.go (71%) rename cloudformation/{resources => kinesisanalytics}/aws-kinesisanalytics-application_kinesisstreamsinput.go (71%) rename cloudformation/{resources => kinesisanalytics}/aws-kinesisanalytics-application_mappingparameters.go (66%) rename cloudformation/{resources => kinesisanalytics}/aws-kinesisanalytics-application_recordcolumn.go (74%) rename cloudformation/{resources => kinesisanalytics}/aws-kinesisanalytics-application_recordformat.go (70%) rename cloudformation/{resources => kinesisanalytics}/aws-kinesisanalytics-applicationoutput.go (75%) rename cloudformation/{resources => kinesisanalytics}/aws-kinesisanalytics-applicationoutput_destinationschema.go (68%) rename cloudformation/{resources => kinesisanalytics}/aws-kinesisanalytics-applicationoutput_kinesisfirehoseoutput.go (70%) rename cloudformation/{resources => kinesisanalytics}/aws-kinesisanalytics-applicationoutput_kinesisstreamsoutput.go (70%) rename cloudformation/{resources => kinesisanalytics}/aws-kinesisanalytics-applicationoutput_lambdaoutput.go (71%) rename cloudformation/{resources => kinesisanalytics}/aws-kinesisanalytics-applicationoutput_output.go (69%) rename cloudformation/{resources => kinesisanalytics}/aws-kinesisanalytics-applicationreferencedatasource.go (72%) rename cloudformation/{resources => kinesisanalytics}/aws-kinesisanalytics-applicationreferencedatasource_csvmappingparameters.go (69%) rename cloudformation/{resources => kinesisanalytics}/aws-kinesisanalytics-applicationreferencedatasource_jsonmappingparameters.go (65%) rename cloudformation/{resources => kinesisanalytics}/aws-kinesisanalytics-applicationreferencedatasource_mappingparameters.go (63%) rename cloudformation/{resources => kinesisanalytics}/aws-kinesisanalytics-applicationreferencedatasource_recordcolumn.go (71%) rename cloudformation/{resources => kinesisanalytics}/aws-kinesisanalytics-applicationreferencedatasource_recordformat.go (67%) rename cloudformation/{resources => kinesisanalytics}/aws-kinesisanalytics-applicationreferencedatasource_referencedatasource.go (66%) rename cloudformation/{resources => kinesisanalytics}/aws-kinesisanalytics-applicationreferencedatasource_referenceschema.go (67%) rename cloudformation/{resources => kinesisanalytics}/aws-kinesisanalytics-applicationreferencedatasource_s3referencedatasource.go (71%) rename cloudformation/{resources => kinesisanalyticsv2}/aws-kinesisanalyticsv2-application.go (79%) rename cloudformation/{resources => kinesisanalyticsv2}/aws-kinesisanalyticsv2-application_applicationcodeconfiguration.go (67%) rename cloudformation/{resources => kinesisanalyticsv2}/aws-kinesisanalyticsv2-application_applicationconfiguration.go (66%) rename cloudformation/{resources => kinesisanalyticsv2}/aws-kinesisanalyticsv2-application_applicationsnapshotconfiguration.go (66%) rename cloudformation/{resources => kinesisanalyticsv2}/aws-kinesisanalyticsv2-application_checkpointconfiguration.go (75%) rename cloudformation/{resources => kinesisanalyticsv2}/aws-kinesisanalyticsv2-application_codecontent.go (72%) rename cloudformation/{resources => kinesisanalyticsv2}/aws-kinesisanalyticsv2-application_csvmappingparameters.go (71%) rename cloudformation/{resources => kinesisanalyticsv2}/aws-kinesisanalyticsv2-application_environmentproperties.go (65%) rename cloudformation/{resources => kinesisanalyticsv2}/aws-kinesisanalyticsv2-application_flinkapplicationconfiguration.go (65%) rename cloudformation/{resources => kinesisanalyticsv2}/aws-kinesisanalyticsv2-application_input.go (70%) rename cloudformation/{resources => kinesisanalyticsv2}/aws-kinesisanalyticsv2-application_inputlambdaprocessor.go (67%) rename cloudformation/{resources => kinesisanalyticsv2}/aws-kinesisanalyticsv2-application_inputparallelism.go (68%) rename cloudformation/{resources => kinesisanalyticsv2}/aws-kinesisanalyticsv2-application_inputprocessingconfiguration.go (64%) rename cloudformation/{resources => kinesisanalyticsv2}/aws-kinesisanalyticsv2-application_inputschema.go (70%) rename cloudformation/{resources => kinesisanalyticsv2}/aws-kinesisanalyticsv2-application_jsonmappingparameters.go (67%) rename cloudformation/{resources => kinesisanalyticsv2}/aws-kinesisanalyticsv2-application_kinesisfirehoseinput.go (67%) rename cloudformation/{resources => kinesisanalyticsv2}/aws-kinesisanalyticsv2-application_kinesisstreamsinput.go (68%) rename cloudformation/{resources => kinesisanalyticsv2}/aws-kinesisanalyticsv2-application_mappingparameters.go (66%) rename cloudformation/{resources => kinesisanalyticsv2}/aws-kinesisanalyticsv2-application_monitoringconfiguration.go (73%) rename cloudformation/{resources => kinesisanalyticsv2}/aws-kinesisanalyticsv2-application_parallelismconfiguration.go (75%) rename cloudformation/{resources => kinesisanalyticsv2}/aws-kinesisanalyticsv2-application_propertygroup.go (72%) rename cloudformation/{resources => kinesisanalyticsv2}/aws-kinesisanalyticsv2-application_recordcolumn.go (74%) rename cloudformation/{resources => kinesisanalyticsv2}/aws-kinesisanalyticsv2-application_recordformat.go (69%) rename cloudformation/{resources => kinesisanalyticsv2}/aws-kinesisanalyticsv2-application_s3contentlocation.go (73%) rename cloudformation/{resources => kinesisanalyticsv2}/aws-kinesisanalyticsv2-application_sqlapplicationconfiguration.go (64%) rename cloudformation/{resources => kinesisanalyticsv2}/aws-kinesisanalyticsv2-applicationcloudwatchloggingoption.go (71%) rename cloudformation/{resources => kinesisanalyticsv2}/aws-kinesisanalyticsv2-applicationcloudwatchloggingoption_cloudwatchloggingoption.go (63%) rename cloudformation/{resources => kinesisanalyticsv2}/aws-kinesisanalyticsv2-applicationoutput.go (75%) rename cloudformation/{resources => kinesisanalyticsv2}/aws-kinesisanalyticsv2-applicationoutput_destinationschema.go (67%) rename cloudformation/{resources => kinesisanalyticsv2}/aws-kinesisanalyticsv2-applicationoutput_kinesisfirehoseoutput.go (66%) rename cloudformation/{resources => kinesisanalyticsv2}/aws-kinesisanalyticsv2-applicationoutput_kinesisstreamsoutput.go (66%) rename cloudformation/{resources => kinesisanalyticsv2}/aws-kinesisanalyticsv2-applicationoutput_lambdaoutput.go (68%) rename cloudformation/{resources => kinesisanalyticsv2}/aws-kinesisanalyticsv2-applicationoutput_output.go (69%) rename cloudformation/{resources => kinesisanalyticsv2}/aws-kinesisanalyticsv2-applicationreferencedatasource.go (72%) rename cloudformation/{resources => kinesisanalyticsv2}/aws-kinesisanalyticsv2-applicationreferencedatasource_csvmappingparameters.go (68%) rename cloudformation/{resources => kinesisanalyticsv2}/aws-kinesisanalyticsv2-applicationreferencedatasource_jsonmappingparameters.go (64%) rename cloudformation/{resources => kinesisanalyticsv2}/aws-kinesisanalyticsv2-applicationreferencedatasource_mappingparameters.go (63%) rename cloudformation/{resources => kinesisanalyticsv2}/aws-kinesisanalyticsv2-applicationreferencedatasource_recordcolumn.go (71%) rename cloudformation/{resources => kinesisanalyticsv2}/aws-kinesisanalyticsv2-applicationreferencedatasource_recordformat.go (66%) rename cloudformation/{resources => kinesisanalyticsv2}/aws-kinesisanalyticsv2-applicationreferencedatasource_referencedatasource.go (66%) rename cloudformation/{resources => kinesisanalyticsv2}/aws-kinesisanalyticsv2-applicationreferencedatasource_referenceschema.go (67%) rename cloudformation/{resources => kinesisanalyticsv2}/aws-kinesisanalyticsv2-applicationreferencedatasource_s3referencedatasource.go (68%) rename cloudformation/{resources => kinesisfirehose}/aws-kinesisfirehose-deliverystream.go (73%) rename cloudformation/{resources => kinesisfirehose}/aws-kinesisfirehose-deliverystream_bufferinghints.go (71%) rename cloudformation/{resources => kinesisfirehose}/aws-kinesisfirehose-deliverystream_cloudwatchloggingoptions.go (72%) rename cloudformation/{resources => kinesisfirehose}/aws-kinesisfirehose-deliverystream_copycommand.go (74%) rename cloudformation/{resources => kinesisfirehose}/aws-kinesisfirehose-deliverystream_dataformatconversionconfiguration.go (67%) rename cloudformation/{resources => kinesisfirehose}/aws-kinesisfirehose-deliverystream_deserializer.go (67%) rename cloudformation/{resources => kinesisfirehose}/aws-kinesisfirehose-deliverystream_elasticsearchbufferinghints.go (69%) rename cloudformation/{resources => kinesisfirehose}/aws-kinesisfirehose-deliverystream_elasticsearchdestinationconfiguration.go (76%) rename cloudformation/{resources => kinesisfirehose}/aws-kinesisfirehose-deliverystream_elasticsearchretryoptions.go (67%) rename cloudformation/{resources => kinesisfirehose}/aws-kinesisfirehose-deliverystream_encryptionconfiguration.go (68%) rename cloudformation/{resources => kinesisfirehose}/aws-kinesisfirehose-deliverystream_extendeds3destinationconfiguration.go (75%) rename cloudformation/{resources => kinesisfirehose}/aws-kinesisfirehose-deliverystream_hivejsonserde.go (69%) rename cloudformation/{resources => kinesisfirehose}/aws-kinesisfirehose-deliverystream_inputformatconfiguration.go (64%) rename cloudformation/{resources => kinesisfirehose}/aws-kinesisfirehose-deliverystream_kinesisstreamsourceconfiguration.go (69%) rename cloudformation/{resources => kinesisfirehose}/aws-kinesisfirehose-deliverystream_kmsencryptionconfig.go (68%) rename cloudformation/{resources => kinesisfirehose}/aws-kinesisfirehose-deliverystream_openxjsonserde.go (75%) rename cloudformation/{resources => kinesisfirehose}/aws-kinesisfirehose-deliverystream_orcserde.go (84%) rename cloudformation/{resources => kinesisfirehose}/aws-kinesisfirehose-deliverystream_outputformatconfiguration.go (64%) rename cloudformation/{resources => kinesisfirehose}/aws-kinesisfirehose-deliverystream_parquetserde.go (80%) rename cloudformation/{resources => kinesisfirehose}/aws-kinesisfirehose-deliverystream_processingconfiguration.go (68%) rename cloudformation/{resources => kinesisfirehose}/aws-kinesisfirehose-deliverystream_processor.go (69%) rename cloudformation/{resources => kinesisfirehose}/aws-kinesisfirehose-deliverystream_processorparameter.go (71%) rename cloudformation/{resources => kinesisfirehose}/aws-kinesisfirehose-deliverystream_redshiftdestinationconfiguration.go (73%) rename cloudformation/{resources => kinesisfirehose}/aws-kinesisfirehose-deliverystream_s3destinationconfiguration.go (75%) rename cloudformation/{resources => kinesisfirehose}/aws-kinesisfirehose-deliverystream_schemaconfiguration.go (78%) rename cloudformation/{resources => kinesisfirehose}/aws-kinesisfirehose-deliverystream_serializer.go (68%) rename cloudformation/{resources => kinesisfirehose}/aws-kinesisfirehose-deliverystream_splunkdestinationconfiguration.go (75%) rename cloudformation/{resources => kinesisfirehose}/aws-kinesisfirehose-deliverystream_splunkretryoptions.go (68%) rename cloudformation/{resources => kms}/aws-kms-alias.go (82%) rename cloudformation/{resources => kms}/aws-kms-key.go (85%) rename cloudformation/{resources => lakeformation}/aws-lakeformation-datalakesettings.go (75%) rename cloudformation/{resources => lakeformation}/aws-lakeformation-datalakesettings_admins.go (67%) rename cloudformation/{resources => lakeformation}/aws-lakeformation-datalakesettings_datalakeprincipal.go (69%) rename cloudformation/{resources => lakeformation}/aws-lakeformation-permissions.go (78%) rename cloudformation/{resources => lakeformation}/aws-lakeformation-permissions_databaseresource.go (69%) rename cloudformation/{resources => lakeformation}/aws-lakeformation-permissions_datalakeprincipal.go (70%) rename cloudformation/{resources => lakeformation}/aws-lakeformation-permissions_resource.go (68%) rename cloudformation/{resources => lakeformation}/aws-lakeformation-permissions_tableresource.go (72%) rename cloudformation/{resources => lakeformation}/aws-lakeformation-resource.go (80%) rename cloudformation/{resources => lambda}/aws-lambda-alias.go (82%) rename cloudformation/{resources => lambda}/aws-lambda-alias_aliasroutingconfiguration.go (67%) rename cloudformation/{resources => lambda}/aws-lambda-alias_versionweight.go (75%) rename cloudformation/{resources => lambda}/aws-lambda-eventsourcemapping.go (82%) rename cloudformation/{resources => lambda}/aws-lambda-function.go (84%) rename cloudformation/{resources => lambda}/aws-lambda-function_code.go (79%) rename cloudformation/{resources => lambda}/aws-lambda-function_deadletterconfig.go (71%) rename cloudformation/{resources => lambda}/aws-lambda-function_environment.go (72%) rename cloudformation/{resources => lambda}/aws-lambda-function_tracingconfig.go (71%) rename cloudformation/{resources => lambda}/aws-lambda-function_vpcconfig.go (75%) rename cloudformation/{resources => lambda}/aws-lambda-layerversion.go (81%) rename cloudformation/{resources => lambda}/aws-lambda-layerversion_content.go (76%) rename cloudformation/{resources => lambda}/aws-lambda-layerversionpermission.go (80%) rename cloudformation/{resources => lambda}/aws-lambda-permission.go (84%) rename cloudformation/{resources => lambda}/aws-lambda-version.go (82%) rename cloudformation/{resources => logs}/aws-logs-destination.go (82%) rename cloudformation/{resources => logs}/aws-logs-loggroup.go (81%) rename cloudformation/{resources => logs}/aws-logs-logstream.go (81%) rename cloudformation/{resources => logs}/aws-logs-metricfilter.go (79%) rename cloudformation/{resources => logs}/aws-logs-metricfilter_metrictransformation.go (77%) rename cloudformation/{resources => logs}/aws-logs-subscriptionfilter.go (81%) rename cloudformation/{resources => managedblockchain}/aws-managedblockchain-member.go (77%) rename cloudformation/{resources => managedblockchain}/aws-managedblockchain-member_approvalthresholdpolicy.go (74%) rename cloudformation/{resources => managedblockchain}/aws-managedblockchain-member_memberconfiguration.go (71%) rename cloudformation/{resources => managedblockchain}/aws-managedblockchain-member_memberfabricconfiguration.go (71%) rename cloudformation/{resources => managedblockchain}/aws-managedblockchain-member_memberframeworkconfiguration.go (64%) rename cloudformation/{resources => managedblockchain}/aws-managedblockchain-member_networkconfiguration.go (75%) rename cloudformation/{resources => managedblockchain}/aws-managedblockchain-member_networkfabricconfiguration.go (67%) rename cloudformation/{resources => managedblockchain}/aws-managedblockchain-member_networkframeworkconfiguration.go (64%) rename cloudformation/{resources => managedblockchain}/aws-managedblockchain-member_votingpolicy.go (67%) rename cloudformation/{resources => managedblockchain}/aws-managedblockchain-node.go (78%) rename cloudformation/{resources => managedblockchain}/aws-managedblockchain-node_nodeconfiguration.go (72%) rename cloudformation/{resources => medialive}/aws-medialive-channel.go (82%) rename cloudformation/{resources => medialive}/aws-medialive-channel_aribsourcesettings.go (67%) rename cloudformation/{resources => medialive}/aws-medialive-channel_audiolanguageselection.go (73%) rename cloudformation/{resources => medialive}/aws-medialive-channel_audiopidselection.go (70%) rename cloudformation/{resources => medialive}/aws-medialive-channel_audioselector.go (71%) rename cloudformation/{resources => medialive}/aws-medialive-channel_audioselectorsettings.go (68%) rename cloudformation/{resources => medialive}/aws-medialive-channel_captionselector.go (73%) rename cloudformation/{resources => medialive}/aws-medialive-channel_captionselectorsettings.go (69%) rename cloudformation/{resources => medialive}/aws-medialive-channel_dvbsubsourcesettings.go (70%) rename cloudformation/{resources => medialive}/aws-medialive-channel_embeddedsourcesettings.go (77%) rename cloudformation/{resources => medialive}/aws-medialive-channel_hlsinputsettings.go (77%) rename cloudformation/{resources => medialive}/aws-medialive-channel_inputattachment.go (74%) rename cloudformation/{resources => medialive}/aws-medialive-channel_inputsettings.go (78%) rename cloudformation/{resources => medialive}/aws-medialive-channel_inputspecification.go (75%) rename cloudformation/{resources => medialive}/aws-medialive-channel_mediapackageoutputdestinationsettings.go (67%) rename cloudformation/{resources => medialive}/aws-medialive-channel_networkinputsettings.go (70%) rename cloudformation/{resources => medialive}/aws-medialive-channel_outputdestination.go (70%) rename cloudformation/{resources => medialive}/aws-medialive-channel_outputdestinationsettings.go (76%) rename cloudformation/{resources => medialive}/aws-medialive-channel_scte20sourcesettings.go (73%) rename cloudformation/{resources => medialive}/aws-medialive-channel_scte27sourcesettings.go (70%) rename cloudformation/{resources => medialive}/aws-medialive-channel_teletextsourcesettings.go (69%) rename cloudformation/{resources => medialive}/aws-medialive-channel_videoselector.go (74%) rename cloudformation/{resources => medialive}/aws-medialive-channel_videoselectorpid.go (70%) rename cloudformation/{resources => medialive}/aws-medialive-channel_videoselectorprogramid.go (69%) rename cloudformation/{resources => medialive}/aws-medialive-channel_videoselectorsettings.go (68%) rename cloudformation/{resources => medialive}/aws-medialive-input.go (81%) rename cloudformation/{resources => medialive}/aws-medialive-input_inputdestinationrequest.go (70%) rename cloudformation/{resources => medialive}/aws-medialive-input_inputsourcerequest.go (75%) rename cloudformation/{resources => medialive}/aws-medialive-input_inputvpcrequest.go (74%) rename cloudformation/{resources => medialive}/aws-medialive-input_mediaconnectflowrequest.go (70%) rename cloudformation/{resources => medialive}/aws-medialive-inputsecuritygroup.go (76%) rename cloudformation/{resources => medialive}/aws-medialive-inputsecuritygroup_inputwhitelistrulecidr.go (67%) rename cloudformation/{resources => mediastore}/aws-mediastore-container.go (81%) rename cloudformation/{resources => mediastore}/aws-mediastore-container_corsrule.go (80%) rename cloudformation/{resources => msk}/aws-msk-cluster.go (81%) rename cloudformation/{resources => msk}/aws-msk-cluster_brokernodegroupinfo.go (78%) rename cloudformation/{resources => msk}/aws-msk-cluster_clientauthentication.go (69%) rename cloudformation/{resources => msk}/aws-msk-cluster_configurationinfo.go (74%) rename cloudformation/{resources => msk}/aws-msk-cluster_ebsstorageinfo.go (72%) rename cloudformation/{resources => msk}/aws-msk-cluster_encryptionatrest.go (72%) rename cloudformation/{resources => msk}/aws-msk-cluster_encryptioninfo.go (70%) rename cloudformation/{resources => msk}/aws-msk-cluster_encryptionintransit.go (74%) rename cloudformation/{resources => msk}/aws-msk-cluster_storageinfo.go (71%) rename cloudformation/{resources => msk}/aws-msk-cluster_tls.go (75%) rename cloudformation/{resources => neptune}/aws-neptune-dbcluster.go (89%) rename cloudformation/{resources => neptune}/aws-neptune-dbclusterparametergroup.go (80%) rename cloudformation/{resources => neptune}/aws-neptune-dbinstance.go (86%) rename cloudformation/{resources => neptune}/aws-neptune-dbparametergroup.go (81%) rename cloudformation/{resources => neptune}/aws-neptune-dbsubnetgroup.go (81%) rename cloudformation/{resources => opsworks}/aws-opsworks-app.go (83%) rename cloudformation/{resources => opsworks}/aws-opsworks-app_datasource.go (77%) rename cloudformation/{resources => opsworks}/aws-opsworks-app_environmentvariable.go (75%) rename cloudformation/{resources => opsworks}/aws-opsworks-app_source.go (82%) rename cloudformation/{resources => opsworks}/aws-opsworks-app_sslconfiguration.go (76%) rename cloudformation/{resources => opsworks}/aws-opsworks-elasticloadbalancerattachment.go (75%) rename cloudformation/{resources => opsworks}/aws-opsworks-instance.go (88%) rename cloudformation/{resources => opsworks}/aws-opsworks-instance_blockdevicemapping.go (75%) rename cloudformation/{resources => opsworks}/aws-opsworks-instance_ebsblockdevice.go (79%) rename cloudformation/{resources => opsworks}/aws-opsworks-instance_timebasedautoscaling.go (81%) rename cloudformation/{resources => opsworks}/aws-opsworks-layer.go (86%) rename cloudformation/{resources => opsworks}/aws-opsworks-layer_autoscalingthresholds.go (81%) rename cloudformation/{resources => opsworks}/aws-opsworks-layer_lifecycleeventconfiguration.go (66%) rename cloudformation/{resources => opsworks}/aws-opsworks-layer_loadbasedautoscaling.go (71%) rename cloudformation/{resources => opsworks}/aws-opsworks-layer_recipes.go (80%) rename cloudformation/{resources => opsworks}/aws-opsworks-layer_shutdowneventconfiguration.go (74%) rename cloudformation/{resources => opsworks}/aws-opsworks-layer_volumeconfiguration.go (81%) rename cloudformation/{resources => opsworks}/aws-opsworks-stack.go (87%) rename cloudformation/{resources => opsworks}/aws-opsworks-stack_chefconfiguration.go (74%) rename cloudformation/{resources => opsworks}/aws-opsworks-stack_elasticip.go (75%) rename cloudformation/{resources => opsworks}/aws-opsworks-stack_rdsdbinstance.go (76%) rename cloudformation/{resources => opsworks}/aws-opsworks-stack_source.go (82%) rename cloudformation/{resources => opsworks}/aws-opsworks-stack_stackconfigurationmanager.go (71%) rename cloudformation/{resources => opsworks}/aws-opsworks-userprofile.go (82%) rename cloudformation/{resources => opsworks}/aws-opsworks-volume.go (82%) rename cloudformation/{resources => opsworkscm}/aws-opsworkscm-server.go (88%) rename cloudformation/{resources => opsworkscm}/aws-opsworkscm-server_engineattribute.go (73%) rename cloudformation/{resources => pinpoint}/aws-pinpoint-admchannel.go (82%) rename cloudformation/{resources => pinpoint}/aws-pinpoint-apnschannel.go (85%) rename cloudformation/{resources => pinpoint}/aws-pinpoint-apnssandboxchannel.go (84%) rename cloudformation/{resources => pinpoint}/aws-pinpoint-apnsvoipchannel.go (84%) rename cloudformation/{resources => pinpoint}/aws-pinpoint-apnsvoipsandboxchannel.go (84%) rename cloudformation/{resources => pinpoint}/aws-pinpoint-app.go (81%) rename cloudformation/{resources => pinpoint}/aws-pinpoint-applicationsettings.go (77%) rename cloudformation/{resources => pinpoint}/aws-pinpoint-applicationsettings_campaignhook.go (74%) rename cloudformation/{resources => pinpoint}/aws-pinpoint-applicationsettings_limits.go (77%) rename cloudformation/{resources => pinpoint}/aws-pinpoint-applicationsettings_quiettime.go (72%) rename cloudformation/{resources => pinpoint}/aws-pinpoint-baiduchannel.go (81%) rename cloudformation/{resources => pinpoint}/aws-pinpoint-campaign.go (83%) rename cloudformation/{resources => pinpoint}/aws-pinpoint-campaign_attributedimension.go (73%) rename cloudformation/{resources => pinpoint}/aws-pinpoint-campaign_campaignemailmessage.go (76%) rename cloudformation/{resources => pinpoint}/aws-pinpoint-campaign_campaigneventfilter.go (71%) rename cloudformation/{resources => pinpoint}/aws-pinpoint-campaign_campaignhook.go (76%) rename cloudformation/{resources => pinpoint}/aws-pinpoint-campaign_campaignsmsmessage.go (75%) rename cloudformation/{resources => pinpoint}/aws-pinpoint-campaign_eventdimensions.go (74%) rename cloudformation/{resources => pinpoint}/aws-pinpoint-campaign_limits.go (79%) rename cloudformation/{resources => pinpoint}/aws-pinpoint-campaign_message.go (86%) rename cloudformation/{resources => pinpoint}/aws-pinpoint-campaign_messageconfiguration.go (71%) rename cloudformation/{resources => pinpoint}/aws-pinpoint-campaign_metricdimension.go (73%) rename cloudformation/{resources => pinpoint}/aws-pinpoint-campaign_quiettime.go (74%) rename cloudformation/{resources => pinpoint}/aws-pinpoint-campaign_schedule.go (79%) rename cloudformation/{resources => pinpoint}/aws-pinpoint-campaign_setdimension.go (74%) rename cloudformation/{resources => pinpoint}/aws-pinpoint-campaign_writetreatmentresource.go (75%) rename cloudformation/{resources => pinpoint}/aws-pinpoint-emailchannel.go (83%) rename cloudformation/{resources => pinpoint}/aws-pinpoint-eventstream.go (81%) rename cloudformation/{resources => pinpoint}/aws-pinpoint-gcmchannel.go (81%) rename cloudformation/{resources => pinpoint}/aws-pinpoint-segment.go (80%) rename cloudformation/{resources => pinpoint}/aws-pinpoint-segment_attributedimension.go (73%) rename cloudformation/{resources => pinpoint}/aws-pinpoint-segment_behavior.go (71%) rename cloudformation/{resources => pinpoint}/aws-pinpoint-segment_coordinates.go (75%) rename cloudformation/{resources => pinpoint}/aws-pinpoint-segment_demographic.go (73%) rename cloudformation/{resources => pinpoint}/aws-pinpoint-segment_gpspoint.go (74%) rename cloudformation/{resources => pinpoint}/aws-pinpoint-segment_groups.go (75%) rename cloudformation/{resources => pinpoint}/aws-pinpoint-segment_location.go (72%) rename cloudformation/{resources => pinpoint}/aws-pinpoint-segment_recency.go (76%) rename cloudformation/{resources => pinpoint}/aws-pinpoint-segment_segmentdimensions.go (76%) rename cloudformation/{resources => pinpoint}/aws-pinpoint-segment_segmentgroups.go (72%) rename cloudformation/{resources => pinpoint}/aws-pinpoint-segment_setdimension.go (74%) rename cloudformation/{resources => pinpoint}/aws-pinpoint-segment_sourcesegments.go (74%) rename cloudformation/{resources => pinpoint}/aws-pinpoint-smschannel.go (82%) rename cloudformation/{resources => pinpoint}/aws-pinpoint-voicechannel.go (79%) rename cloudformation/{resources => pinpointemail}/aws-pinpointemail-configurationset.go (74%) rename cloudformation/{resources => pinpointemail}/aws-pinpointemail-configurationset_deliveryoptions.go (69%) rename cloudformation/{resources => pinpointemail}/aws-pinpointemail-configurationset_reputationoptions.go (68%) rename cloudformation/{resources => pinpointemail}/aws-pinpointemail-configurationset_sendingoptions.go (69%) rename cloudformation/{resources => pinpointemail}/aws-pinpointemail-configurationset_tags.go (73%) rename cloudformation/{resources => pinpointemail}/aws-pinpointemail-configurationset_trackingoptions.go (69%) rename cloudformation/{resources => pinpointemail}/aws-pinpointemail-configurationseteventdestination.go (74%) rename cloudformation/{resources => pinpointemail}/aws-pinpointemail-configurationseteventdestination_cloudwatchdestination.go (62%) rename cloudformation/{resources => pinpointemail}/aws-pinpointemail-configurationseteventdestination_dimensionconfiguration.go (71%) rename cloudformation/{resources => pinpointemail}/aws-pinpointemail-configurationseteventdestination_eventdestination.go (69%) rename cloudformation/{resources => pinpointemail}/aws-pinpointemail-configurationseteventdestination_kinesisfirehosedestination.go (68%) rename cloudformation/{resources => pinpointemail}/aws-pinpointemail-configurationseteventdestination_pinpointdestination.go (65%) rename cloudformation/{resources => pinpointemail}/aws-pinpointemail-configurationseteventdestination_snsdestination.go (66%) rename cloudformation/{resources => pinpointemail}/aws-pinpointemail-dedicatedippool.go (76%) rename cloudformation/{resources => pinpointemail}/aws-pinpointemail-dedicatedippool_tags.go (73%) rename cloudformation/{resources => pinpointemail}/aws-pinpointemail-identity.go (79%) rename cloudformation/{resources => pinpointemail}/aws-pinpointemail-identity_mailfromattributes.go (72%) rename cloudformation/{resources => pinpointemail}/aws-pinpointemail-identity_tags.go (74%) rename cloudformation/{resources => qldb}/aws-qldb-ledger.go (83%) rename cloudformation/{resources => ram}/aws-ram-resourceshare.go (82%) rename cloudformation/{resources => rds}/aws-rds-dbcluster.go (91%) rename cloudformation/{resources => rds}/aws-rds-dbcluster_dbclusterrole.go (76%) rename cloudformation/{resources => rds}/aws-rds-dbcluster_scalingconfiguration.go (77%) rename cloudformation/{resources => rds}/aws-rds-dbclusterparametergroup.go (79%) rename cloudformation/{resources => rds}/aws-rds-dbinstance.go (94%) rename cloudformation/{resources => rds}/aws-rds-dbinstance_dbinstancerole.go (76%) rename cloudformation/{resources => rds}/aws-rds-dbinstance_processorfeature.go (73%) rename cloudformation/{resources => rds}/aws-rds-dbparametergroup.go (81%) rename cloudformation/{resources => rds}/aws-rds-dbsecuritygroup.go (79%) rename cloudformation/{resources => rds}/aws-rds-dbsecuritygroup_ingress.go (79%) rename cloudformation/{resources => rds}/aws-rds-dbsecuritygroupingress.go (82%) rename cloudformation/{resources => rds}/aws-rds-dbsubnetgroup.go (82%) rename cloudformation/{resources => rds}/aws-rds-eventsubscription.go (82%) rename cloudformation/{resources => rds}/aws-rds-optiongroup.go (81%) rename cloudformation/{resources => rds}/aws-rds-optiongroup_optionconfiguration.go (79%) rename cloudformation/{resources => rds}/aws-rds-optiongroup_optionsetting.go (75%) rename cloudformation/{resources => redshift}/aws-redshift-cluster.go (91%) rename cloudformation/{resources => redshift}/aws-redshift-cluster_loggingproperties.go (73%) rename cloudformation/{resources => redshift}/aws-redshift-clusterparametergroup.go (78%) rename cloudformation/{resources => redshift}/aws-redshift-clusterparametergroup_parameter.go (72%) rename cloudformation/{resources => redshift}/aws-redshift-clustersecuritygroup.go (77%) rename cloudformation/{resources => redshift}/aws-redshift-clustersecuritygroupingress.go (79%) rename cloudformation/{resources => redshift}/aws-redshift-clustersubnetgroup.go (78%) rename cloudformation/{resources => robomaker}/aws-robomaker-fleet.go (80%) rename cloudformation/{resources => robomaker}/aws-robomaker-robot.go (83%) rename cloudformation/{resources => robomaker}/aws-robomaker-robotapplication.go (78%) rename cloudformation/{resources => robomaker}/aws-robomaker-robotapplication_robotsoftwaresuite.go (71%) rename cloudformation/{resources => robomaker}/aws-robomaker-robotapplication_sourceconfig.go (74%) rename cloudformation/{resources => robomaker}/aws-robomaker-robotapplicationversion.go (77%) rename cloudformation/{resources => robomaker}/aws-robomaker-simulationapplication.go (76%) rename cloudformation/{resources => robomaker}/aws-robomaker-simulationapplication_renderingengine.go (71%) rename cloudformation/{resources => robomaker}/aws-robomaker-simulationapplication_robotsoftwaresuite.go (70%) rename cloudformation/{resources => robomaker}/aws-robomaker-simulationapplication_simulationsoftwaresuite.go (69%) rename cloudformation/{resources => robomaker}/aws-robomaker-simulationapplication_sourceconfig.go (74%) rename cloudformation/{resources => robomaker}/aws-robomaker-simulationapplicationversion.go (76%) rename cloudformation/{resources => route53}/aws-route53-healthcheck.go (76%) rename cloudformation/{resources => route53}/aws-route53-healthcheck_alarmidentifier.go (73%) rename cloudformation/{resources => route53}/aws-route53-healthcheck_healthcheckconfig.go (87%) rename cloudformation/{resources => route53}/aws-route53-healthcheck_healthchecktag.go (73%) rename cloudformation/{resources => route53}/aws-route53-hostedzone.go (77%) rename cloudformation/{resources => route53}/aws-route53-hostedzone_hostedzoneconfig.go (71%) rename cloudformation/{resources => route53}/aws-route53-hostedzone_hostedzonetag.go (73%) rename cloudformation/{resources => route53}/aws-route53-hostedzone_queryloggingconfig.go (71%) rename cloudformation/{resources => route53}/aws-route53-hostedzone_vpc.go (76%) rename cloudformation/{resources => route53}/aws-route53-recordset.go (86%) rename cloudformation/{resources => route53}/aws-route53-recordset_aliastarget.go (76%) rename cloudformation/{resources => route53}/aws-route53-recordset_geolocation.go (76%) rename cloudformation/{resources => route53}/aws-route53-recordsetgroup.go (80%) rename cloudformation/{resources => route53}/aws-route53-recordsetgroup_aliastarget.go (75%) rename cloudformation/{resources => route53}/aws-route53-recordsetgroup_geolocation.go (76%) rename cloudformation/{resources => route53}/aws-route53-recordsetgroup_recordset.go (84%) rename cloudformation/{resources => route53resolver}/aws-route53resolver-resolverendpoint.go (78%) rename cloudformation/{resources => route53resolver}/aws-route53resolver-resolverendpoint_ipaddressrequest.go (70%) rename cloudformation/{resources => route53resolver}/aws-route53resolver-resolverrule.go (80%) rename cloudformation/{resources => route53resolver}/aws-route53resolver-resolverrule_targetaddress.go (71%) rename cloudformation/{resources => route53resolver}/aws-route53resolver-resolverruleassociation.go (77%) rename cloudformation/{resources => s3}/aws-s3-bucket.go (76%) rename cloudformation/{resources => s3}/aws-s3-bucket_abortincompletemultipartupload.go (70%) rename cloudformation/{resources => s3}/aws-s3-bucket_accelerateconfiguration.go (71%) rename cloudformation/{resources => s3}/aws-s3-bucket_accesscontroltranslation.go (70%) rename cloudformation/{resources => s3}/aws-s3-bucket_analyticsconfiguration.go (73%) rename cloudformation/{resources => s3}/aws-s3-bucket_bucketencryption.go (69%) rename cloudformation/{resources => s3}/aws-s3-bucket_corsconfiguration.go (70%) rename cloudformation/{resources => s3}/aws-s3-bucket_corsrule.go (83%) rename cloudformation/{resources => s3}/aws-s3-bucket_dataexport.go (74%) rename cloudformation/{resources => s3}/aws-s3-bucket_defaultretention.go (76%) rename cloudformation/{resources => s3}/aws-s3-bucket_destination.go (79%) rename cloudformation/{resources => s3}/aws-s3-bucket_encryptionconfiguration.go (71%) rename cloudformation/{resources => s3}/aws-s3-bucket_filterrule.go (77%) rename cloudformation/{resources => s3}/aws-s3-bucket_inventoryconfiguration.go (80%) rename cloudformation/{resources => s3}/aws-s3-bucket_lambdaconfiguration.go (75%) rename cloudformation/{resources => s3}/aws-s3-bucket_lifecycleconfiguration.go (69%) rename cloudformation/{resources => s3}/aws-s3-bucket_loggingconfiguration.go (74%) rename cloudformation/{resources => s3}/aws-s3-bucket_metricsconfiguration.go (74%) rename cloudformation/{resources => s3}/aws-s3-bucket_noncurrentversiontransition.go (74%) rename cloudformation/{resources => s3}/aws-s3-bucket_notificationconfiguration.go (68%) rename cloudformation/{resources => s3}/aws-s3-bucket_notificationfilter.go (70%) rename cloudformation/{resources => s3}/aws-s3-bucket_objectlockconfiguration.go (72%) rename cloudformation/{resources => s3}/aws-s3-bucket_objectlockrule.go (70%) rename cloudformation/{resources => s3}/aws-s3-bucket_publicaccessblockconfiguration.go (77%) rename cloudformation/{resources => s3}/aws-s3-bucket_queueconfiguration.go (75%) rename cloudformation/{resources => s3}/aws-s3-bucket_redirectallrequeststo.go (74%) rename cloudformation/{resources => s3}/aws-s3-bucket_redirectrule.go (82%) rename cloudformation/{resources => s3}/aws-s3-bucket_replicationconfiguration.go (71%) rename cloudformation/{resources => s3}/aws-s3-bucket_replicationdestination.go (76%) rename cloudformation/{resources => s3}/aws-s3-bucket_replicationrule.go (76%) rename cloudformation/{resources => s3}/aws-s3-bucket_routingrule.go (72%) rename cloudformation/{resources => s3}/aws-s3-bucket_routingrulecondition.go (76%) rename cloudformation/{resources => s3}/aws-s3-bucket_rule.go (80%) rename cloudformation/{resources => s3}/aws-s3-bucket_s3keyfilter.go (72%) rename cloudformation/{resources => s3}/aws-s3-bucket_serversideencryptionbydefault.go (73%) rename cloudformation/{resources => s3}/aws-s3-bucket_serversideencryptionrule.go (68%) rename cloudformation/{resources => s3}/aws-s3-bucket_sourceselectioncriteria.go (68%) rename cloudformation/{resources => s3}/aws-s3-bucket_ssekmsencryptedobjects.go (71%) rename cloudformation/{resources => s3}/aws-s3-bucket_storageclassanalysis.go (69%) rename cloudformation/{resources => s3}/aws-s3-bucket_tagfilter.go (76%) rename cloudformation/{resources => s3}/aws-s3-bucket_topicconfiguration.go (75%) rename cloudformation/{resources => s3}/aws-s3-bucket_transition.go (79%) rename cloudformation/{resources => s3}/aws-s3-bucket_versioningconfiguration.go (70%) rename cloudformation/{resources => s3}/aws-s3-bucket_websiteconfiguration.go (74%) rename cloudformation/{resources => s3}/aws-s3-bucketpolicy.go (81%) rename cloudformation/{resources => sagemaker}/aws-sagemaker-coderepository.go (77%) rename cloudformation/{resources => sagemaker}/aws-sagemaker-coderepository_gitconfig.go (75%) rename cloudformation/{resources => sagemaker}/aws-sagemaker-endpoint.go (80%) rename cloudformation/{resources => sagemaker}/aws-sagemaker-endpointconfig.go (78%) rename cloudformation/{resources => sagemaker}/aws-sagemaker-endpointconfig_productionvariant.go (80%) rename cloudformation/{resources => sagemaker}/aws-sagemaker-model.go (79%) rename cloudformation/{resources => sagemaker}/aws-sagemaker-model_containerdefinition.go (77%) rename cloudformation/{resources => sagemaker}/aws-sagemaker-model_vpcconfig.go (75%) rename cloudformation/{resources => sagemaker}/aws-sagemaker-notebookinstance.go (87%) rename cloudformation/{resources => sagemaker}/aws-sagemaker-notebookinstancelifecycleconfig.go (73%) rename cloudformation/{resources => sagemaker}/aws-sagemaker-notebookinstancelifecycleconfig_notebookinstancelifecyclehook.go (64%) rename cloudformation/{resources => sagemaker}/aws-sagemaker-workteam.go (79%) rename cloudformation/{resources => sagemaker}/aws-sagemaker-workteam_cognitomemberdefinition.go (75%) rename cloudformation/{resources => sagemaker}/aws-sagemaker-workteam_memberdefinition.go (68%) rename cloudformation/{resources => sagemaker}/aws-sagemaker-workteam_notificationconfiguration.go (69%) rename cloudformation/{resources => sdb}/aws-sdb-domain.go (81%) rename cloudformation/{resources => secretsmanager}/aws-secretsmanager-resourcepolicy.go (78%) rename cloudformation/{resources => secretsmanager}/aws-secretsmanager-rotationschedule.go (77%) rename cloudformation/{resources => secretsmanager}/aws-secretsmanager-rotationschedule_rotationrules.go (69%) rename cloudformation/{resources => secretsmanager}/aws-secretsmanager-secret.go (81%) rename cloudformation/{resources => secretsmanager}/aws-secretsmanager-secret_generatesecretstring.go (84%) rename cloudformation/{resources => secretsmanager}/aws-secretsmanager-secrettargetattachment.go (77%) rename cloudformation/{resources => securityhub}/aws-securityhub-hub.go (80%) rename cloudformation/{resources/awsserverlessapi_definitionuri.go => serverless/api_definitionuri.go} (59%) rename cloudformation/{resources/awsserverlessapplication_location.go => serverless/application_location.go} (57%) rename cloudformation/{resources => serverless}/aws-serverless-api.go (85%) rename cloudformation/{resources => serverless}/aws-serverless-api_accesslogsetting.go (74%) rename cloudformation/{resources => serverless}/aws-serverless-api_auth.go (76%) rename cloudformation/{resources => serverless}/aws-serverless-api_s3location.go (76%) rename cloudformation/{resources => serverless}/aws-serverless-application.go (80%) rename cloudformation/{resources => serverless}/aws-serverless-application_applicationlocation.go (71%) rename cloudformation/{resources => serverless}/aws-serverless-function.go (83%) rename cloudformation/{resources => serverless}/aws-serverless-function_alexaskillevent.go (70%) rename cloudformation/{resources => serverless}/aws-serverless-function_apievent.go (75%) rename cloudformation/{resources => serverless}/aws-serverless-function_bucketsampt.go (70%) rename cloudformation/{resources => serverless}/aws-serverless-function_cloudwatcheventevent.go (72%) rename cloudformation/{resources => serverless}/aws-serverless-function_collectionsampt.go (69%) rename cloudformation/{resources => serverless}/aws-serverless-function_deadletterqueue.go (72%) rename cloudformation/{resources => serverless}/aws-serverless-function_deploymentpreference.go (76%) rename cloudformation/{resources => serverless}/aws-serverless-function_domainsampt.go (70%) rename cloudformation/{resources => serverless}/aws-serverless-function_dynamodbevent.go (76%) rename cloudformation/{resources => serverless}/aws-serverless-function_emptysampt.go (68%) rename cloudformation/{resources => serverless}/aws-serverless-function_eventsource.go (71%) rename cloudformation/{resources => serverless}/aws-serverless-function_functionenvironment.go (69%) rename cloudformation/{resources => serverless}/aws-serverless-function_functionsampt.go (70%) rename cloudformation/{resources => serverless}/aws-serverless-function_iampolicydocument.go (68%) rename cloudformation/{resources => serverless}/aws-serverless-function_identitysampt.go (70%) rename cloudformation/{resources => serverless}/aws-serverless-function_iotruleevent.go (72%) rename cloudformation/{resources => serverless}/aws-serverless-function_keysampt.go (71%) rename cloudformation/{resources => serverless}/aws-serverless-function_kinesisevent.go (76%) rename cloudformation/{resources => serverless}/aws-serverless-function_loggroupsampt.go (70%) rename cloudformation/{resources => serverless}/aws-serverless-function_queuesampt.go (71%) rename cloudformation/{resources => serverless}/aws-serverless-function_s3event.go (71%) rename cloudformation/{resources => serverless}/aws-serverless-function_s3location.go (75%) rename cloudformation/{resources => serverless}/aws-serverless-function_s3notificationfilter.go (69%) rename cloudformation/{resources => serverless}/aws-serverless-function_sampolicytemplate.go (65%) rename cloudformation/{resources => serverless}/aws-serverless-function_scheduleevent.go (72%) rename cloudformation/{resources => serverless}/aws-serverless-function_snsevent.go (71%) rename cloudformation/{resources => serverless}/aws-serverless-function_sqsevent.go (75%) rename cloudformation/{resources => serverless}/aws-serverless-function_statemachinesampt.go (69%) rename cloudformation/{resources => serverless}/aws-serverless-function_streamsampt.go (70%) rename cloudformation/{resources => serverless}/aws-serverless-function_tablesampt.go (71%) rename cloudformation/{resources => serverless}/aws-serverless-function_tablestreamsampt.go (71%) rename cloudformation/{resources => serverless}/aws-serverless-function_topicsampt.go (71%) rename cloudformation/{resources => serverless}/aws-serverless-function_vpcconfig.go (73%) rename cloudformation/{resources => serverless}/aws-serverless-layerversion.go (82%) rename cloudformation/{resources => serverless}/aws-serverless-simpletable.go (77%) rename cloudformation/{resources => serverless}/aws-serverless-simpletable_primarykey.go (72%) rename cloudformation/{resources => serverless}/aws-serverless-simpletable_provisionedthroughput.go (70%) rename cloudformation/{resources => serverless}/aws-serverless-simpletable_ssespecification.go (69%) rename cloudformation/{resources/awsserverlessfunction_codeuri.go => serverless/function_codeuri.go} (59%) rename cloudformation/{resources/awsserverlessfunction_events.go => serverless/function_events.go} (64%) rename cloudformation/{resources/awsserverlessfunction_policies.go => serverless/function_policies.go} (62%) rename cloudformation/{resources/awsserverlessfunction_properties.go => serverless/function_properties.go} (57%) rename cloudformation/{resources => servicecatalog}/aws-servicecatalog-acceptedportfolioshare.go (76%) rename cloudformation/{resources => servicecatalog}/aws-servicecatalog-cloudformationproduct.go (81%) rename cloudformation/{resources => servicecatalog}/aws-servicecatalog-cloudformationproduct_provisioningartifactproperties.go (73%) rename cloudformation/{resources => servicecatalog}/aws-servicecatalog-cloudformationprovisionedproduct.go (80%) rename cloudformation/{resources => servicecatalog}/aws-servicecatalog-cloudformationprovisionedproduct_provisioningparameter.go (67%) rename cloudformation/{resources => servicecatalog}/aws-servicecatalog-cloudformationprovisionedproduct_provisioningpreferences.go (79%) rename cloudformation/{resources => servicecatalog}/aws-servicecatalog-launchnotificationconstraint.go (79%) rename cloudformation/{resources => servicecatalog}/aws-servicecatalog-launchroleconstraint.go (80%) rename cloudformation/{resources => servicecatalog}/aws-servicecatalog-launchtemplateconstraint.go (79%) rename cloudformation/{resources => servicecatalog}/aws-servicecatalog-portfolio.go (81%) rename cloudformation/{resources => servicecatalog}/aws-servicecatalog-portfolioprincipalassociation.go (77%) rename cloudformation/{resources => servicecatalog}/aws-servicecatalog-portfolioproductassociation.go (78%) rename cloudformation/{resources => servicecatalog}/aws-servicecatalog-portfolioshare.go (79%) rename cloudformation/{resources => servicecatalog}/aws-servicecatalog-resourceupdateconstraint.go (79%) rename cloudformation/{resources => servicecatalog}/aws-servicecatalog-stacksetconstraint.go (83%) rename cloudformation/{resources => servicecatalog}/aws-servicecatalog-tagoption.go (79%) rename cloudformation/{resources => servicecatalog}/aws-servicecatalog-tagoptionassociation.go (76%) rename cloudformation/{resources => servicediscovery}/aws-servicediscovery-httpnamespace.go (77%) rename cloudformation/{resources => servicediscovery}/aws-servicediscovery-instance.go (80%) rename cloudformation/{resources => servicediscovery}/aws-servicediscovery-privatednsnamespace.go (77%) rename cloudformation/{resources => servicediscovery}/aws-servicediscovery-publicdnsnamespace.go (76%) rename cloudformation/{resources => servicediscovery}/aws-servicediscovery-service.go (78%) rename cloudformation/{resources => servicediscovery}/aws-servicediscovery-service_dnsconfig.go (73%) rename cloudformation/{resources => servicediscovery}/aws-servicediscovery-service_dnsrecord.go (73%) rename cloudformation/{resources => servicediscovery}/aws-servicediscovery-service_healthcheckconfig.go (74%) rename cloudformation/{resources => servicediscovery}/aws-servicediscovery-service_healthcheckcustomconfig.go (68%) rename cloudformation/{resources => ses}/aws-ses-configurationset.go (78%) rename cloudformation/{resources => ses}/aws-ses-configurationseteventdestination.go (74%) rename cloudformation/{resources => ses}/aws-ses-configurationseteventdestination_cloudwatchdestination.go (63%) rename cloudformation/{resources => ses}/aws-ses-configurationseteventdestination_dimensionconfiguration.go (72%) rename cloudformation/{resources => ses}/aws-ses-configurationseteventdestination_eventdestination.go (72%) rename cloudformation/{resources => ses}/aws-ses-configurationseteventdestination_kinesisfirehosedestination.go (69%) rename cloudformation/{resources => ses}/aws-ses-receiptfilter.go (78%) rename cloudformation/{resources => ses}/aws-ses-receiptfilter_filter.go (73%) rename cloudformation/{resources => ses}/aws-ses-receiptfilter_ipfilter.go (74%) rename cloudformation/{resources => ses}/aws-ses-receiptrule.go (80%) rename cloudformation/{resources => ses}/aws-ses-receiptrule_action.go (72%) rename cloudformation/{resources => ses}/aws-ses-receiptrule_addheaderaction.go (74%) rename cloudformation/{resources => ses}/aws-ses-receiptrule_bounceaction.go (79%) rename cloudformation/{resources => ses}/aws-ses-receiptrule_lambdaaction.go (76%) rename cloudformation/{resources => ses}/aws-ses-receiptrule_rule.go (80%) rename cloudformation/{resources => ses}/aws-ses-receiptrule_s3action.go (79%) rename cloudformation/{resources => ses}/aws-ses-receiptrule_snsaction.go (75%) rename cloudformation/{resources => ses}/aws-ses-receiptrule_stopaction.go (74%) rename cloudformation/{resources => ses}/aws-ses-receiptrule_workmailaction.go (74%) rename cloudformation/{resources => ses}/aws-ses-receiptruleset.go (79%) rename cloudformation/{resources => ses}/aws-ses-template.go (79%) rename cloudformation/{resources => ses}/aws-ses-template_template.go (79%) rename cloudformation/{resources => sns}/aws-sns-subscription.go (84%) rename cloudformation/{resources => sns}/aws-sns-topic.go (82%) rename cloudformation/{resources => sns}/aws-sns-topic_subscription.go (75%) rename cloudformation/{resources => sns}/aws-sns-topicpolicy.go (81%) rename cloudformation/{resources => sqs}/aws-sqs-queue.go (88%) rename cloudformation/{resources => sqs}/aws-sqs-queuepolicy.go (81%) rename cloudformation/{resources => ssm}/aws-ssm-association.go (82%) rename cloudformation/{resources => ssm}/aws-ssm-association_instanceassociationoutputlocation.go (66%) rename cloudformation/{resources => ssm}/aws-ssm-association_parametervalues.go (71%) rename cloudformation/{resources => ssm}/aws-ssm-association_s3outputlocation.go (74%) rename cloudformation/{resources => ssm}/aws-ssm-association_target.go (75%) rename cloudformation/{resources => ssm}/aws-ssm-document.go (81%) rename cloudformation/{resources => ssm}/aws-ssm-maintenancewindow.go (85%) rename cloudformation/{resources => ssm}/aws-ssm-maintenancewindowtarget.go (81%) rename cloudformation/{resources => ssm}/aws-ssm-maintenancewindowtarget_targets.go (73%) rename cloudformation/{resources => ssm}/aws-ssm-maintenancewindowtask.go (83%) rename cloudformation/{resources => ssm}/aws-ssm-maintenancewindowtask_logginginfo.go (75%) rename cloudformation/{resources => ssm}/aws-ssm-maintenancewindowtask_maintenancewindowautomationparameters.go (69%) rename cloudformation/{resources => ssm}/aws-ssm-maintenancewindowtask_maintenancewindowlambdaparameters.go (72%) rename cloudformation/{resources => ssm}/aws-ssm-maintenancewindowtask_maintenancewindowruncommandparameters.go (80%) rename cloudformation/{resources => ssm}/aws-ssm-maintenancewindowtask_maintenancewindowstepfunctionsparameters.go (68%) rename cloudformation/{resources => ssm}/aws-ssm-maintenancewindowtask_notificationconfig.go (74%) rename cloudformation/{resources => ssm}/aws-ssm-maintenancewindowtask_target.go (73%) rename cloudformation/{resources => ssm}/aws-ssm-maintenancewindowtask_taskinvocationparameters.go (65%) rename cloudformation/{resources => ssm}/aws-ssm-parameter.go (85%) rename cloudformation/{resources => ssm}/aws-ssm-patchbaseline.go (84%) rename cloudformation/{resources => ssm}/aws-ssm-patchbaseline_patchfilter.go (74%) rename cloudformation/{resources => ssm}/aws-ssm-patchbaseline_patchfiltergroup.go (68%) rename cloudformation/{resources => ssm}/aws-ssm-patchbaseline_patchsource.go (76%) rename cloudformation/{resources => ssm}/aws-ssm-patchbaseline_rule.go (77%) rename cloudformation/{resources => ssm}/aws-ssm-patchbaseline_rulegroup.go (70%) rename cloudformation/{resources => ssm}/aws-ssm-resourcedatasync.go (83%) rename cloudformation/{resources => stepfunctions}/aws-stepfunctions-activity.go (78%) rename cloudformation/{resources => stepfunctions}/aws-stepfunctions-activity_tagsentry.go (73%) rename cloudformation/{resources => stepfunctions}/aws-stepfunctions-statemachine.go (79%) rename cloudformation/{resources => stepfunctions}/aws-stepfunctions-statemachine_tagsentry.go (72%) rename cloudformation/{resources => tags}/tag.go (96%) rename cloudformation/{resources => transfer}/aws-transfer-server.go (80%) rename cloudformation/{resources => transfer}/aws-transfer-server_endpointdetails.go (71%) rename cloudformation/{resources => transfer}/aws-transfer-server_identityproviderdetails.go (72%) rename cloudformation/{resources => transfer}/aws-transfer-user.go (83%) rename cloudformation/{resources => transfer}/aws-transfer-user_sshpublickey.go (68%) rename cloudformation/{resources => utils}/utils.go (58%) rename cloudformation/{resources => waf}/aws-waf-bytematchset.go (79%) rename cloudformation/{resources => waf}/aws-waf-bytematchset_bytematchtuple.go (78%) rename cloudformation/{resources => waf}/aws-waf-bytematchset_fieldtomatch.go (74%) rename cloudformation/{resources => waf}/aws-waf-ipset.go (80%) rename cloudformation/{resources => waf}/aws-waf-ipset_ipsetdescriptor.go (75%) rename cloudformation/{resources => waf}/aws-waf-rule.go (82%) rename cloudformation/{resources => waf}/aws-waf-rule_predicate.go (78%) rename cloudformation/{resources => waf}/aws-waf-sizeconstraintset.go (78%) rename cloudformation/{resources => waf}/aws-waf-sizeconstraintset_fieldtomatch.go (73%) rename cloudformation/{resources => waf}/aws-waf-sizeconstraintset_sizeconstraint.go (75%) rename cloudformation/{resources => waf}/aws-waf-sqlinjectionmatchset.go (76%) rename cloudformation/{resources => waf}/aws-waf-sqlinjectionmatchset_fieldtomatch.go (73%) rename cloudformation/{resources => waf}/aws-waf-sqlinjectionmatchset_sqlinjectionmatchtuple.go (69%) rename cloudformation/{resources => waf}/aws-waf-webacl.go (81%) rename cloudformation/{resources => waf}/aws-waf-webacl_activatedrule.go (75%) rename cloudformation/{resources => waf}/aws-waf-webacl_wafaction.go (73%) rename cloudformation/{resources => waf}/aws-waf-xssmatchset.go (79%) rename cloudformation/{resources => waf}/aws-waf-xssmatchset_fieldtomatch.go (74%) rename cloudformation/{resources => waf}/aws-waf-xssmatchset_xssmatchtuple.go (72%) rename cloudformation/{resources => wafregional}/aws-wafregional-bytematchset.go (77%) rename cloudformation/{resources => wafregional}/aws-wafregional-bytematchset_bytematchtuple.go (77%) rename cloudformation/{resources => wafregional}/aws-wafregional-bytematchset_fieldtomatch.go (72%) rename cloudformation/{resources => wafregional}/aws-wafregional-geomatchset.go (77%) rename cloudformation/{resources => wafregional}/aws-wafregional-geomatchset_geomatchconstraint.go (71%) rename cloudformation/{resources => wafregional}/aws-wafregional-ipset.go (78%) rename cloudformation/{resources => wafregional}/aws-wafregional-ipset_ipsetdescriptor.go (73%) rename cloudformation/{resources => wafregional}/aws-wafregional-ratebasedrule.go (80%) rename cloudformation/{resources => wafregional}/aws-wafregional-ratebasedrule_predicate.go (75%) rename cloudformation/{resources => wafregional}/aws-wafregional-regexpatternset.go (78%) rename cloudformation/{resources => wafregional}/aws-wafregional-rule.go (80%) rename cloudformation/{resources => wafregional}/aws-wafregional-rule_predicate.go (76%) rename cloudformation/{resources => wafregional}/aws-wafregional-sizeconstraintset.go (76%) rename cloudformation/{resources => wafregional}/aws-wafregional-sizeconstraintset_fieldtomatch.go (71%) rename cloudformation/{resources => wafregional}/aws-wafregional-sizeconstraintset_sizeconstraint.go (74%) rename cloudformation/{resources => wafregional}/aws-wafregional-sqlinjectionmatchset.go (75%) rename cloudformation/{resources => wafregional}/aws-wafregional-sqlinjectionmatchset_fieldtomatch.go (71%) rename cloudformation/{resources => wafregional}/aws-wafregional-sqlinjectionmatchset_sqlinjectionmatchtuple.go (68%) rename cloudformation/{resources => wafregional}/aws-wafregional-webacl.go (79%) rename cloudformation/{resources => wafregional}/aws-wafregional-webacl_action.go (72%) rename cloudformation/{resources => wafregional}/aws-wafregional-webacl_rule.go (75%) rename cloudformation/{resources => wafregional}/aws-wafregional-webaclassociation.go (78%) rename cloudformation/{resources => wafregional}/aws-wafregional-xssmatchset.go (77%) rename cloudformation/{resources => wafregional}/aws-wafregional-xssmatchset_fieldtomatch.go (72%) rename cloudformation/{resources => wafregional}/aws-wafregional-xssmatchset_xssmatchtuple.go (71%) rename cloudformation/{resources => workspaces}/aws-workspaces-workspace.go (83%) rename cloudformation/{resources => workspaces}/aws-workspaces-workspace_workspaceproperties.go (79%) create mode 100644 generate/cfn-2019-10-26.json 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/resources/aws-amazonmq-broker_configurationid.go b/cloudformation/amazonmq/aws-amazonmq-broker_configurationid.go similarity index 73% rename from cloudformation/resources/aws-amazonmq-broker_configurationid.go rename to cloudformation/amazonmq/aws-amazonmq-broker_configurationid.go index eb50892285..0d5b1f8e3a 100644 --- a/cloudformation/resources/aws-amazonmq-broker_configurationid.go +++ b/cloudformation/amazonmq/aws-amazonmq-broker_configurationid.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_ConfigurationId AWS CloudFormation Resource (AWS::AmazonMQ::Broker.ConfigurationId) +// 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 AWSAmazonMQBroker_ConfigurationId struct { +type Broker_ConfigurationId struct { // Id AWS CloudFormation Property // Required: true @@ -27,42 +29,42 @@ type AWSAmazonMQBroker_ConfigurationId struct { } // AWSCloudFormationType returns the AWS CloudFormation resource type -func (r *AWSAmazonMQBroker_ConfigurationId) AWSCloudFormationType() string { +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 *AWSAmazonMQBroker_ConfigurationId) DependsOn() []string { +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 *AWSAmazonMQBroker_ConfigurationId) SetDependsOn(dependencies []string) { +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 *AWSAmazonMQBroker_ConfigurationId) Metadata() map[string]interface{} { +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 *AWSAmazonMQBroker_ConfigurationId) SetMetadata(metadata map[string]interface{}) { +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 *AWSAmazonMQBroker_ConfigurationId) DeletionPolicy() policies.DeletionPolicy { +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 *AWSAmazonMQBroker_ConfigurationId) SetDeletionPolicy(policy policies.DeletionPolicy) { +func (r *Broker_ConfigurationId) SetDeletionPolicy(policy policies.DeletionPolicy) { r._deletionPolicy = policy } diff --git a/cloudformation/resources/aws-amazonmq-broker_encryptionoptions.go b/cloudformation/amazonmq/aws-amazonmq-broker_encryptionoptions.go similarity index 73% rename from cloudformation/resources/aws-amazonmq-broker_encryptionoptions.go rename to cloudformation/amazonmq/aws-amazonmq-broker_encryptionoptions.go index 44705e2993..2645dc8880 100644 --- a/cloudformation/resources/aws-amazonmq-broker_encryptionoptions.go +++ b/cloudformation/amazonmq/aws-amazonmq-broker_encryptionoptions.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_EncryptionOptions AWS CloudFormation Resource (AWS::AmazonMQ::Broker.EncryptionOptions) +// 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 AWSAmazonMQBroker_EncryptionOptions struct { +type Broker_EncryptionOptions struct { // KmsKeyId AWS CloudFormation Property // Required: false @@ -27,42 +29,42 @@ type AWSAmazonMQBroker_EncryptionOptions struct { } // AWSCloudFormationType returns the AWS CloudFormation resource type -func (r *AWSAmazonMQBroker_EncryptionOptions) AWSCloudFormationType() string { +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 *AWSAmazonMQBroker_EncryptionOptions) DependsOn() []string { +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 *AWSAmazonMQBroker_EncryptionOptions) SetDependsOn(dependencies []string) { +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 *AWSAmazonMQBroker_EncryptionOptions) Metadata() map[string]interface{} { +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 *AWSAmazonMQBroker_EncryptionOptions) SetMetadata(metadata map[string]interface{}) { +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 *AWSAmazonMQBroker_EncryptionOptions) DeletionPolicy() policies.DeletionPolicy { +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 *AWSAmazonMQBroker_EncryptionOptions) SetDeletionPolicy(policy policies.DeletionPolicy) { +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/resources/aws-amazonmq-configuration_tagsentry.go b/cloudformation/amazonmq/aws-amazonmq-configuration_tagsentry.go similarity index 73% rename from cloudformation/resources/aws-amazonmq-configuration_tagsentry.go rename to cloudformation/amazonmq/aws-amazonmq-configuration_tagsentry.go index 9f2d770e6f..ccecdfa7f0 100644 --- a/cloudformation/resources/aws-amazonmq-configuration_tagsentry.go +++ b/cloudformation/amazonmq/aws-amazonmq-configuration_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" +) -// AWSAmazonMQConfiguration_TagsEntry AWS CloudFormation Resource (AWS::AmazonMQ::Configuration.TagsEntry) +// 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 AWSAmazonMQConfiguration_TagsEntry struct { +type Configuration_TagsEntry struct { // Key AWS CloudFormation Property // Required: true @@ -27,42 +29,42 @@ type AWSAmazonMQConfiguration_TagsEntry struct { } // AWSCloudFormationType returns the AWS CloudFormation resource type -func (r *AWSAmazonMQConfiguration_TagsEntry) AWSCloudFormationType() string { +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 *AWSAmazonMQConfiguration_TagsEntry) DependsOn() []string { +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 *AWSAmazonMQConfiguration_TagsEntry) SetDependsOn(dependencies []string) { +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 *AWSAmazonMQConfiguration_TagsEntry) Metadata() map[string]interface{} { +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 *AWSAmazonMQConfiguration_TagsEntry) SetMetadata(metadata map[string]interface{}) { +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 *AWSAmazonMQConfiguration_TagsEntry) DeletionPolicy() policies.DeletionPolicy { +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 *AWSAmazonMQConfiguration_TagsEntry) SetDeletionPolicy(policy policies.DeletionPolicy) { +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/resources/aws-amazonmq-configurationassociation_configurationid.go b/cloudformation/amazonmq/aws-amazonmq-configurationassociation_configurationid.go similarity index 70% rename from cloudformation/resources/aws-amazonmq-configurationassociation_configurationid.go rename to cloudformation/amazonmq/aws-amazonmq-configurationassociation_configurationid.go index 3b22217d2e..6fcf7417ba 100644 --- a/cloudformation/resources/aws-amazonmq-configurationassociation_configurationid.go +++ b/cloudformation/amazonmq/aws-amazonmq-configurationassociation_configurationid.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" +) -// AWSAmazonMQConfigurationAssociation_ConfigurationId AWS CloudFormation Resource (AWS::AmazonMQ::ConfigurationAssociation.ConfigurationId) +// 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 AWSAmazonMQConfigurationAssociation_ConfigurationId struct { +type ConfigurationAssociation_ConfigurationId struct { // Id AWS CloudFormation Property // Required: true @@ -27,42 +29,42 @@ type AWSAmazonMQConfigurationAssociation_ConfigurationId struct { } // AWSCloudFormationType returns the AWS CloudFormation resource type -func (r *AWSAmazonMQConfigurationAssociation_ConfigurationId) AWSCloudFormationType() string { +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 *AWSAmazonMQConfigurationAssociation_ConfigurationId) DependsOn() []string { +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 *AWSAmazonMQConfigurationAssociation_ConfigurationId) SetDependsOn(dependencies []string) { +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 *AWSAmazonMQConfigurationAssociation_ConfigurationId) Metadata() map[string]interface{} { +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 *AWSAmazonMQConfigurationAssociation_ConfigurationId) SetMetadata(metadata map[string]interface{}) { +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 *AWSAmazonMQConfigurationAssociation_ConfigurationId) DeletionPolicy() policies.DeletionPolicy { +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 *AWSAmazonMQConfigurationAssociation_ConfigurationId) SetDeletionPolicy(policy policies.DeletionPolicy) { +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/resources/aws-amplify-app_environmentvariable.go b/cloudformation/amplify/aws-amplify-app_environmentvariable.go similarity index 73% rename from cloudformation/resources/aws-amplify-app_environmentvariable.go rename to cloudformation/amplify/aws-amplify-app_environmentvariable.go index 570d388a90..c378d3a562 100644 --- a/cloudformation/resources/aws-amplify-app_environmentvariable.go +++ b/cloudformation/amplify/aws-amplify-app_environmentvariable.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_EnvironmentVariable AWS CloudFormation Resource (AWS::Amplify::App.EnvironmentVariable) +// 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 AWSAmplifyApp_EnvironmentVariable struct { +type App_EnvironmentVariable struct { // Name AWS CloudFormation Property // Required: true @@ -27,42 +29,42 @@ type AWSAmplifyApp_EnvironmentVariable struct { } // AWSCloudFormationType returns the AWS CloudFormation resource type -func (r *AWSAmplifyApp_EnvironmentVariable) AWSCloudFormationType() string { +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 *AWSAmplifyApp_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 *AWSAmplifyApp_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 *AWSAmplifyApp_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 *AWSAmplifyApp_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 *AWSAmplifyApp_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 *AWSAmplifyApp_EnvironmentVariable) SetDeletionPolicy(policy policies.DeletionPolicy) { +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/resources/aws-amplify-branch_environmentvariable.go b/cloudformation/amplify/aws-amplify-branch_environmentvariable.go similarity index 73% rename from cloudformation/resources/aws-amplify-branch_environmentvariable.go rename to cloudformation/amplify/aws-amplify-branch_environmentvariable.go index ddbe40b44d..d23974655b 100644 --- a/cloudformation/resources/aws-amplify-branch_environmentvariable.go +++ b/cloudformation/amplify/aws-amplify-branch_environmentvariable.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_EnvironmentVariable AWS CloudFormation Resource (AWS::Amplify::Branch.EnvironmentVariable) +// 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 AWSAmplifyBranch_EnvironmentVariable struct { +type Branch_EnvironmentVariable struct { // Name AWS CloudFormation Property // Required: true @@ -27,42 +29,42 @@ type AWSAmplifyBranch_EnvironmentVariable struct { } // AWSCloudFormationType returns the AWS CloudFormation resource type -func (r *AWSAmplifyBranch_EnvironmentVariable) AWSCloudFormationType() string { +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 *AWSAmplifyBranch_EnvironmentVariable) DependsOn() []string { +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 *AWSAmplifyBranch_EnvironmentVariable) SetDependsOn(dependencies []string) { +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 *AWSAmplifyBranch_EnvironmentVariable) Metadata() map[string]interface{} { +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 *AWSAmplifyBranch_EnvironmentVariable) SetMetadata(metadata map[string]interface{}) { +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 *AWSAmplifyBranch_EnvironmentVariable) DeletionPolicy() policies.DeletionPolicy { +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 *AWSAmplifyBranch_EnvironmentVariable) SetDeletionPolicy(policy policies.DeletionPolicy) { +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/resources/aws-amplify-domain_subdomainsetting.go b/cloudformation/amplify/aws-amplify-domain_subdomainsetting.go similarity index 74% rename from cloudformation/resources/aws-amplify-domain_subdomainsetting.go rename to cloudformation/amplify/aws-amplify-domain_subdomainsetting.go index 67b10c7b37..cb0e8a70c4 100644 --- a/cloudformation/resources/aws-amplify-domain_subdomainsetting.go +++ b/cloudformation/amplify/aws-amplify-domain_subdomainsetting.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" +) -// AWSAmplifyDomain_SubDomainSetting AWS CloudFormation Resource (AWS::Amplify::Domain.SubDomainSetting) +// 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 AWSAmplifyDomain_SubDomainSetting struct { +type Domain_SubDomainSetting struct { // BranchName AWS CloudFormation Property // Required: true @@ -27,42 +29,42 @@ type AWSAmplifyDomain_SubDomainSetting struct { } // AWSCloudFormationType returns the AWS CloudFormation resource type -func (r *AWSAmplifyDomain_SubDomainSetting) AWSCloudFormationType() string { +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 *AWSAmplifyDomain_SubDomainSetting) DependsOn() []string { +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 *AWSAmplifyDomain_SubDomainSetting) SetDependsOn(dependencies []string) { +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 *AWSAmplifyDomain_SubDomainSetting) Metadata() map[string]interface{} { +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 *AWSAmplifyDomain_SubDomainSetting) SetMetadata(metadata map[string]interface{}) { +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 *AWSAmplifyDomain_SubDomainSetting) DeletionPolicy() policies.DeletionPolicy { +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 *AWSAmplifyDomain_SubDomainSetting) SetDeletionPolicy(policy policies.DeletionPolicy) { +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/resources/aws-apigateway-deployment_accesslogsetting.go b/cloudformation/apigateway/aws-apigateway-deployment_accesslogsetting.go similarity index 73% rename from cloudformation/resources/aws-apigateway-deployment_accesslogsetting.go rename to cloudformation/apigateway/aws-apigateway-deployment_accesslogsetting.go index ecc2df7d35..5026a05205 100644 --- a/cloudformation/resources/aws-apigateway-deployment_accesslogsetting.go +++ b/cloudformation/apigateway/aws-apigateway-deployment_accesslogsetting.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_AccessLogSetting AWS CloudFormation Resource (AWS::ApiGateway::Deployment.AccessLogSetting) +// 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 AWSApiGatewayDeployment_AccessLogSetting struct { +type Deployment_AccessLogSetting struct { // DestinationArn AWS CloudFormation Property // Required: false @@ -27,42 +29,42 @@ type AWSApiGatewayDeployment_AccessLogSetting struct { } // AWSCloudFormationType returns the AWS CloudFormation resource type -func (r *AWSApiGatewayDeployment_AccessLogSetting) AWSCloudFormationType() string { +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 *AWSApiGatewayDeployment_AccessLogSetting) DependsOn() []string { +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 *AWSApiGatewayDeployment_AccessLogSetting) SetDependsOn(dependencies []string) { +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 *AWSApiGatewayDeployment_AccessLogSetting) Metadata() map[string]interface{} { +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 *AWSApiGatewayDeployment_AccessLogSetting) SetMetadata(metadata map[string]interface{}) { +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 *AWSApiGatewayDeployment_AccessLogSetting) DeletionPolicy() policies.DeletionPolicy { +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 *AWSApiGatewayDeployment_AccessLogSetting) SetDeletionPolicy(policy policies.DeletionPolicy) { +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/resources/aws-apigateway-deployment_deploymentcanarysettings.go b/cloudformation/apigateway/aws-apigateway-deployment_deploymentcanarysettings.go similarity index 74% rename from cloudformation/resources/aws-apigateway-deployment_deploymentcanarysettings.go rename to cloudformation/apigateway/aws-apigateway-deployment_deploymentcanarysettings.go index 5adb58cae2..8a5f301cc2 100644 --- a/cloudformation/resources/aws-apigateway-deployment_deploymentcanarysettings.go +++ b/cloudformation/apigateway/aws-apigateway-deployment_deploymentcanarysettings.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_DeploymentCanarySettings AWS CloudFormation Resource (AWS::ApiGateway::Deployment.DeploymentCanarySettings) +// 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 AWSApiGatewayDeployment_DeploymentCanarySettings struct { +type Deployment_DeploymentCanarySettings struct { // PercentTraffic AWS CloudFormation Property // Required: false @@ -32,42 +34,42 @@ type AWSApiGatewayDeployment_DeploymentCanarySettings struct { } // AWSCloudFormationType returns the AWS CloudFormation resource type -func (r *AWSApiGatewayDeployment_DeploymentCanarySettings) AWSCloudFormationType() string { +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 *AWSApiGatewayDeployment_DeploymentCanarySettings) DependsOn() []string { +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 *AWSApiGatewayDeployment_DeploymentCanarySettings) SetDependsOn(dependencies []string) { +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 *AWSApiGatewayDeployment_DeploymentCanarySettings) Metadata() map[string]interface{} { +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 *AWSApiGatewayDeployment_DeploymentCanarySettings) SetMetadata(metadata map[string]interface{}) { +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 *AWSApiGatewayDeployment_DeploymentCanarySettings) DeletionPolicy() policies.DeletionPolicy { +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 *AWSApiGatewayDeployment_DeploymentCanarySettings) SetDeletionPolicy(policy policies.DeletionPolicy) { +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/resources/aws-apigateway-domainname_endpointconfiguration.go b/cloudformation/apigateway/aws-apigateway-domainname_endpointconfiguration.go similarity index 69% rename from cloudformation/resources/aws-apigateway-domainname_endpointconfiguration.go rename to cloudformation/apigateway/aws-apigateway-domainname_endpointconfiguration.go index bbb3d40b47..3dffc399cc 100644 --- a/cloudformation/resources/aws-apigateway-domainname_endpointconfiguration.go +++ b/cloudformation/apigateway/aws-apigateway-domainname_endpointconfiguration.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" +) -// AWSApiGatewayDomainName_EndpointConfiguration AWS CloudFormation Resource (AWS::ApiGateway::DomainName.EndpointConfiguration) +// 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 AWSApiGatewayDomainName_EndpointConfiguration struct { +type DomainName_EndpointConfiguration struct { // Types AWS CloudFormation Property // Required: false @@ -22,42 +24,42 @@ type AWSApiGatewayDomainName_EndpointConfiguration struct { } // AWSCloudFormationType returns the AWS CloudFormation resource type -func (r *AWSApiGatewayDomainName_EndpointConfiguration) AWSCloudFormationType() string { +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 *AWSApiGatewayDomainName_EndpointConfiguration) DependsOn() []string { +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 *AWSApiGatewayDomainName_EndpointConfiguration) SetDependsOn(dependencies []string) { +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 *AWSApiGatewayDomainName_EndpointConfiguration) Metadata() map[string]interface{} { +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 *AWSApiGatewayDomainName_EndpointConfiguration) SetMetadata(metadata map[string]interface{}) { +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 *AWSApiGatewayDomainName_EndpointConfiguration) DeletionPolicy() policies.DeletionPolicy { +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 *AWSApiGatewayDomainName_EndpointConfiguration) SetDeletionPolicy(policy policies.DeletionPolicy) { +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/resources/aws-apigateway-restapi_endpointconfiguration.go b/cloudformation/apigateway/aws-apigateway-restapi_endpointconfiguration.go similarity index 69% rename from cloudformation/resources/aws-apigateway-restapi_endpointconfiguration.go rename to cloudformation/apigateway/aws-apigateway-restapi_endpointconfiguration.go index 7a738c87aa..fdcbbd82a5 100644 --- a/cloudformation/resources/aws-apigateway-restapi_endpointconfiguration.go +++ b/cloudformation/apigateway/aws-apigateway-restapi_endpointconfiguration.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_EndpointConfiguration AWS CloudFormation Resource (AWS::ApiGateway::RestApi.EndpointConfiguration) +// 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 AWSApiGatewayRestApi_EndpointConfiguration struct { +type RestApi_EndpointConfiguration struct { // Types AWS CloudFormation Property // Required: false @@ -22,42 +24,42 @@ type AWSApiGatewayRestApi_EndpointConfiguration struct { } // AWSCloudFormationType returns the AWS CloudFormation resource type -func (r *AWSApiGatewayRestApi_EndpointConfiguration) AWSCloudFormationType() string { +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 *AWSApiGatewayRestApi_EndpointConfiguration) DependsOn() []string { +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 *AWSApiGatewayRestApi_EndpointConfiguration) SetDependsOn(dependencies []string) { +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 *AWSApiGatewayRestApi_EndpointConfiguration) Metadata() map[string]interface{} { +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 *AWSApiGatewayRestApi_EndpointConfiguration) SetMetadata(metadata map[string]interface{}) { +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 *AWSApiGatewayRestApi_EndpointConfiguration) DeletionPolicy() policies.DeletionPolicy { +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 *AWSApiGatewayRestApi_EndpointConfiguration) SetDeletionPolicy(policy policies.DeletionPolicy) { +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/resources/aws-apigateway-stage_accesslogsetting.go b/cloudformation/apigateway/aws-apigateway-stage_accesslogsetting.go similarity index 73% rename from cloudformation/resources/aws-apigateway-stage_accesslogsetting.go rename to cloudformation/apigateway/aws-apigateway-stage_accesslogsetting.go index 9573a4c058..92ceef82e2 100644 --- a/cloudformation/resources/aws-apigateway-stage_accesslogsetting.go +++ b/cloudformation/apigateway/aws-apigateway-stage_accesslogsetting.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_AccessLogSetting AWS CloudFormation Resource (AWS::ApiGateway::Stage.AccessLogSetting) +// 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 AWSApiGatewayStage_AccessLogSetting struct { +type Stage_AccessLogSetting struct { // DestinationArn AWS CloudFormation Property // Required: false @@ -27,42 +29,42 @@ type AWSApiGatewayStage_AccessLogSetting struct { } // AWSCloudFormationType returns the AWS CloudFormation resource type -func (r *AWSApiGatewayStage_AccessLogSetting) AWSCloudFormationType() string { +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 *AWSApiGatewayStage_AccessLogSetting) DependsOn() []string { +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 *AWSApiGatewayStage_AccessLogSetting) SetDependsOn(dependencies []string) { +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 *AWSApiGatewayStage_AccessLogSetting) Metadata() map[string]interface{} { +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 *AWSApiGatewayStage_AccessLogSetting) SetMetadata(metadata map[string]interface{}) { +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 *AWSApiGatewayStage_AccessLogSetting) DeletionPolicy() policies.DeletionPolicy { +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 *AWSApiGatewayStage_AccessLogSetting) SetDeletionPolicy(policy policies.DeletionPolicy) { +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/resources/aws-apigateway-usageplan_apistage.go b/cloudformation/apigateway/aws-apigateway-usageplan_apistage.go similarity index 74% rename from cloudformation/resources/aws-apigateway-usageplan_apistage.go rename to cloudformation/apigateway/aws-apigateway-usageplan_apistage.go index 111f217177..21c369a479 100644 --- a/cloudformation/resources/aws-apigateway-usageplan_apistage.go +++ b/cloudformation/apigateway/aws-apigateway-usageplan_apistage.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_ApiStage AWS CloudFormation Resource (AWS::ApiGateway::UsagePlan.ApiStage) +// 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 AWSApiGatewayUsagePlan_ApiStage struct { +type UsagePlan_ApiStage struct { // ApiId AWS CloudFormation Property // Required: false @@ -19,7 +21,7 @@ type AWSApiGatewayUsagePlan_ApiStage struct { // 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"` + Throttle map[string]UsagePlan_ThrottleSettings `json:"Throttle,omitempty"` // _deletionPolicy represents a CloudFormation DeletionPolicy _deletionPolicy policies.DeletionPolicy @@ -32,42 +34,42 @@ type AWSApiGatewayUsagePlan_ApiStage struct { } // AWSCloudFormationType returns the AWS CloudFormation resource type -func (r *AWSApiGatewayUsagePlan_ApiStage) AWSCloudFormationType() string { +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 *AWSApiGatewayUsagePlan_ApiStage) DependsOn() []string { +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 *AWSApiGatewayUsagePlan_ApiStage) SetDependsOn(dependencies []string) { +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 *AWSApiGatewayUsagePlan_ApiStage) Metadata() map[string]interface{} { +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 *AWSApiGatewayUsagePlan_ApiStage) SetMetadata(metadata map[string]interface{}) { +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 *AWSApiGatewayUsagePlan_ApiStage) DeletionPolicy() policies.DeletionPolicy { +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 *AWSApiGatewayUsagePlan_ApiStage) SetDeletionPolicy(policy policies.DeletionPolicy) { +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/resources/aws-apigateway-usageplan_throttlesettings.go b/cloudformation/apigateway/aws-apigateway-usageplan_throttlesettings.go similarity index 73% rename from cloudformation/resources/aws-apigateway-usageplan_throttlesettings.go rename to cloudformation/apigateway/aws-apigateway-usageplan_throttlesettings.go index 394583d8c0..09dbcca3ad 100644 --- a/cloudformation/resources/aws-apigateway-usageplan_throttlesettings.go +++ b/cloudformation/apigateway/aws-apigateway-usageplan_throttlesettings.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_ThrottleSettings AWS CloudFormation Resource (AWS::ApiGateway::UsagePlan.ThrottleSettings) +// 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 AWSApiGatewayUsagePlan_ThrottleSettings struct { +type UsagePlan_ThrottleSettings struct { // BurstLimit AWS CloudFormation Property // Required: false @@ -27,42 +29,42 @@ type AWSApiGatewayUsagePlan_ThrottleSettings struct { } // AWSCloudFormationType returns the AWS CloudFormation resource type -func (r *AWSApiGatewayUsagePlan_ThrottleSettings) AWSCloudFormationType() string { +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 *AWSApiGatewayUsagePlan_ThrottleSettings) DependsOn() []string { +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 *AWSApiGatewayUsagePlan_ThrottleSettings) SetDependsOn(dependencies []string) { +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 *AWSApiGatewayUsagePlan_ThrottleSettings) Metadata() map[string]interface{} { +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 *AWSApiGatewayUsagePlan_ThrottleSettings) SetMetadata(metadata map[string]interface{}) { +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 *AWSApiGatewayUsagePlan_ThrottleSettings) DeletionPolicy() policies.DeletionPolicy { +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 *AWSApiGatewayUsagePlan_ThrottleSettings) SetDeletionPolicy(policy policies.DeletionPolicy) { +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/resources/aws-apigatewayv2-domainname_domainnameconfiguration.go b/cloudformation/apigatewayv2/aws-apigatewayv2-domainname_domainnameconfiguration.go similarity index 74% rename from cloudformation/resources/aws-apigatewayv2-domainname_domainnameconfiguration.go rename to cloudformation/apigatewayv2/aws-apigatewayv2-domainname_domainnameconfiguration.go index 3e25c7c953..9b7f07a24c 100644 --- a/cloudformation/resources/aws-apigatewayv2-domainname_domainnameconfiguration.go +++ b/cloudformation/apigatewayv2/aws-apigatewayv2-domainname_domainnameconfiguration.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" +) -// AWSApiGatewayV2DomainName_DomainNameConfiguration AWS CloudFormation Resource (AWS::ApiGatewayV2::DomainName.DomainNameConfiguration) +// 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 AWSApiGatewayV2DomainName_DomainNameConfiguration struct { +type DomainName_DomainNameConfiguration struct { // CertificateArn AWS CloudFormation Property // Required: false @@ -32,42 +34,42 @@ type AWSApiGatewayV2DomainName_DomainNameConfiguration struct { } // AWSCloudFormationType returns the AWS CloudFormation resource type -func (r *AWSApiGatewayV2DomainName_DomainNameConfiguration) AWSCloudFormationType() string { +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 *AWSApiGatewayV2DomainName_DomainNameConfiguration) DependsOn() []string { +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 *AWSApiGatewayV2DomainName_DomainNameConfiguration) SetDependsOn(dependencies []string) { +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 *AWSApiGatewayV2DomainName_DomainNameConfiguration) Metadata() map[string]interface{} { +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 *AWSApiGatewayV2DomainName_DomainNameConfiguration) SetMetadata(metadata map[string]interface{}) { +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 *AWSApiGatewayV2DomainName_DomainNameConfiguration) DeletionPolicy() policies.DeletionPolicy { +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 *AWSApiGatewayV2DomainName_DomainNameConfiguration) SetDeletionPolicy(policy policies.DeletionPolicy) { +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/resources/aws-apigatewayv2-route_parameterconstraints.go b/cloudformation/apigatewayv2/aws-apigatewayv2-route_parameterconstraints.go similarity index 69% rename from cloudformation/resources/aws-apigatewayv2-route_parameterconstraints.go rename to cloudformation/apigatewayv2/aws-apigatewayv2-route_parameterconstraints.go index d03838c802..ad1a7e15b3 100644 --- a/cloudformation/resources/aws-apigatewayv2-route_parameterconstraints.go +++ b/cloudformation/apigatewayv2/aws-apigatewayv2-route_parameterconstraints.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" +) -// AWSApiGatewayV2Route_ParameterConstraints AWS CloudFormation Resource (AWS::ApiGatewayV2::Route.ParameterConstraints) +// 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 AWSApiGatewayV2Route_ParameterConstraints struct { +type Route_ParameterConstraints struct { // Required AWS CloudFormation Property // Required: true @@ -22,42 +24,42 @@ type AWSApiGatewayV2Route_ParameterConstraints struct { } // AWSCloudFormationType returns the AWS CloudFormation resource type -func (r *AWSApiGatewayV2Route_ParameterConstraints) AWSCloudFormationType() string { +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 *AWSApiGatewayV2Route_ParameterConstraints) DependsOn() []string { +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 *AWSApiGatewayV2Route_ParameterConstraints) SetDependsOn(dependencies []string) { +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 *AWSApiGatewayV2Route_ParameterConstraints) Metadata() map[string]interface{} { +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 *AWSApiGatewayV2Route_ParameterConstraints) SetMetadata(metadata map[string]interface{}) { +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 *AWSApiGatewayV2Route_ParameterConstraints) DeletionPolicy() policies.DeletionPolicy { +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 *AWSApiGatewayV2Route_ParameterConstraints) SetDeletionPolicy(policy policies.DeletionPolicy) { +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/resources/aws-apigatewayv2-routeresponse_parameterconstraints.go b/cloudformation/apigatewayv2/aws-apigatewayv2-routeresponse_parameterconstraints.go similarity index 68% rename from cloudformation/resources/aws-apigatewayv2-routeresponse_parameterconstraints.go rename to cloudformation/apigatewayv2/aws-apigatewayv2-routeresponse_parameterconstraints.go index dd705304c5..71dcf11f27 100644 --- a/cloudformation/resources/aws-apigatewayv2-routeresponse_parameterconstraints.go +++ b/cloudformation/apigatewayv2/aws-apigatewayv2-routeresponse_parameterconstraints.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" +) -// AWSApiGatewayV2RouteResponse_ParameterConstraints AWS CloudFormation Resource (AWS::ApiGatewayV2::RouteResponse.ParameterConstraints) +// 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 AWSApiGatewayV2RouteResponse_ParameterConstraints struct { +type RouteResponse_ParameterConstraints struct { // Required AWS CloudFormation Property // Required: true @@ -22,42 +24,42 @@ type AWSApiGatewayV2RouteResponse_ParameterConstraints struct { } // AWSCloudFormationType returns the AWS CloudFormation resource type -func (r *AWSApiGatewayV2RouteResponse_ParameterConstraints) AWSCloudFormationType() string { +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 *AWSApiGatewayV2RouteResponse_ParameterConstraints) DependsOn() []string { +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 *AWSApiGatewayV2RouteResponse_ParameterConstraints) SetDependsOn(dependencies []string) { +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 *AWSApiGatewayV2RouteResponse_ParameterConstraints) Metadata() map[string]interface{} { +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 *AWSApiGatewayV2RouteResponse_ParameterConstraints) SetMetadata(metadata map[string]interface{}) { +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 *AWSApiGatewayV2RouteResponse_ParameterConstraints) DeletionPolicy() policies.DeletionPolicy { +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 *AWSApiGatewayV2RouteResponse_ParameterConstraints) SetDeletionPolicy(policy policies.DeletionPolicy) { +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/resources/aws-apigatewayv2-stage_accesslogsettings.go b/cloudformation/apigatewayv2/aws-apigatewayv2-stage_accesslogsettings.go similarity index 73% rename from cloudformation/resources/aws-apigatewayv2-stage_accesslogsettings.go rename to cloudformation/apigatewayv2/aws-apigatewayv2-stage_accesslogsettings.go index b3d6e4256c..4d31313df9 100644 --- a/cloudformation/resources/aws-apigatewayv2-stage_accesslogsettings.go +++ b/cloudformation/apigatewayv2/aws-apigatewayv2-stage_accesslogsettings.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_AccessLogSettings AWS CloudFormation Resource (AWS::ApiGatewayV2::Stage.AccessLogSettings) +// 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 AWSApiGatewayV2Stage_AccessLogSettings struct { +type Stage_AccessLogSettings struct { // DestinationArn AWS CloudFormation Property // Required: false @@ -27,42 +29,42 @@ type AWSApiGatewayV2Stage_AccessLogSettings struct { } // AWSCloudFormationType returns the AWS CloudFormation resource type -func (r *AWSApiGatewayV2Stage_AccessLogSettings) AWSCloudFormationType() string { +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 *AWSApiGatewayV2Stage_AccessLogSettings) DependsOn() []string { +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 *AWSApiGatewayV2Stage_AccessLogSettings) SetDependsOn(dependencies []string) { +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 *AWSApiGatewayV2Stage_AccessLogSettings) Metadata() map[string]interface{} { +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 *AWSApiGatewayV2Stage_AccessLogSettings) SetMetadata(metadata map[string]interface{}) { +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 *AWSApiGatewayV2Stage_AccessLogSettings) DeletionPolicy() policies.DeletionPolicy { +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 *AWSApiGatewayV2Stage_AccessLogSettings) SetDeletionPolicy(policy policies.DeletionPolicy) { +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/resources/aws-applicationautoscaling-scalabletarget_scalabletargetaction.go b/cloudformation/applicationautoscaling/aws-applicationautoscaling-scalabletarget_scalabletargetaction.go similarity index 69% rename from cloudformation/resources/aws-applicationautoscaling-scalabletarget_scalabletargetaction.go rename to cloudformation/applicationautoscaling/aws-applicationautoscaling-scalabletarget_scalabletargetaction.go index 8128a1e14a..2d175a7461 100644 --- a/cloudformation/resources/aws-applicationautoscaling-scalabletarget_scalabletargetaction.go +++ b/cloudformation/applicationautoscaling/aws-applicationautoscaling-scalabletarget_scalabletargetaction.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" +) -// AWSApplicationAutoScalingScalableTarget_ScalableTargetAction AWS CloudFormation Resource (AWS::ApplicationAutoScaling::ScalableTarget.ScalableTargetAction) +// 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 AWSApplicationAutoScalingScalableTarget_ScalableTargetAction struct { +type ScalableTarget_ScalableTargetAction struct { // MaxCapacity AWS CloudFormation Property // Required: false @@ -27,42 +29,42 @@ type AWSApplicationAutoScalingScalableTarget_ScalableTargetAction struct { } // AWSCloudFormationType returns the AWS CloudFormation resource type -func (r *AWSApplicationAutoScalingScalableTarget_ScalableTargetAction) AWSCloudFormationType() string { +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 *AWSApplicationAutoScalingScalableTarget_ScalableTargetAction) DependsOn() []string { +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 *AWSApplicationAutoScalingScalableTarget_ScalableTargetAction) SetDependsOn(dependencies []string) { +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 *AWSApplicationAutoScalingScalableTarget_ScalableTargetAction) Metadata() map[string]interface{} { +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 *AWSApplicationAutoScalingScalableTarget_ScalableTargetAction) SetMetadata(metadata map[string]interface{}) { +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 *AWSApplicationAutoScalingScalableTarget_ScalableTargetAction) DeletionPolicy() policies.DeletionPolicy { +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 *AWSApplicationAutoScalingScalableTarget_ScalableTargetAction) SetDeletionPolicy(policy policies.DeletionPolicy) { +func (r *ScalableTarget_ScalableTargetAction) SetDeletionPolicy(policy policies.DeletionPolicy) { r._deletionPolicy = policy } diff --git a/cloudformation/resources/aws-applicationautoscaling-scalabletarget_scheduledaction.go b/cloudformation/applicationautoscaling/aws-applicationautoscaling-scalabletarget_scheduledaction.go similarity index 74% rename from cloudformation/resources/aws-applicationautoscaling-scalabletarget_scheduledaction.go rename to cloudformation/applicationautoscaling/aws-applicationautoscaling-scalabletarget_scheduledaction.go index 87265990a7..0302e21025 100644 --- a/cloudformation/resources/aws-applicationautoscaling-scalabletarget_scheduledaction.go +++ b/cloudformation/applicationautoscaling/aws-applicationautoscaling-scalabletarget_scheduledaction.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" +) -// AWSApplicationAutoScalingScalableTarget_ScheduledAction AWS CloudFormation Resource (AWS::ApplicationAutoScaling::ScalableTarget.ScheduledAction) +// 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 AWSApplicationAutoScalingScalableTarget_ScheduledAction struct { +type ScalableTarget_ScheduledAction struct { // EndTime AWS CloudFormation Property // Required: false @@ -14,7 +16,7 @@ type AWSApplicationAutoScalingScalableTarget_ScheduledAction struct { // 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"` + ScalableTargetAction *ScalableTarget_ScalableTargetAction `json:"ScalableTargetAction,omitempty"` // Schedule AWS CloudFormation Property // Required: true @@ -42,42 +44,42 @@ type AWSApplicationAutoScalingScalableTarget_ScheduledAction struct { } // AWSCloudFormationType returns the AWS CloudFormation resource type -func (r *AWSApplicationAutoScalingScalableTarget_ScheduledAction) AWSCloudFormationType() string { +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 *AWSApplicationAutoScalingScalableTarget_ScheduledAction) DependsOn() []string { +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 *AWSApplicationAutoScalingScalableTarget_ScheduledAction) SetDependsOn(dependencies []string) { +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 *AWSApplicationAutoScalingScalableTarget_ScheduledAction) Metadata() map[string]interface{} { +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 *AWSApplicationAutoScalingScalableTarget_ScheduledAction) SetMetadata(metadata map[string]interface{}) { +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 *AWSApplicationAutoScalingScalableTarget_ScheduledAction) DeletionPolicy() policies.DeletionPolicy { +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 *AWSApplicationAutoScalingScalableTarget_ScheduledAction) SetDeletionPolicy(policy policies.DeletionPolicy) { +func (r *ScalableTarget_ScheduledAction) SetDeletionPolicy(policy policies.DeletionPolicy) { r._deletionPolicy = policy } diff --git a/cloudformation/resources/aws-applicationautoscaling-scalabletarget_suspendedstate.go b/cloudformation/applicationautoscaling/aws-applicationautoscaling-scalabletarget_suspendedstate.go similarity index 74% rename from cloudformation/resources/aws-applicationautoscaling-scalabletarget_suspendedstate.go rename to cloudformation/applicationautoscaling/aws-applicationautoscaling-scalabletarget_suspendedstate.go index 7712c7394b..4ae48257a7 100644 --- a/cloudformation/resources/aws-applicationautoscaling-scalabletarget_suspendedstate.go +++ b/cloudformation/applicationautoscaling/aws-applicationautoscaling-scalabletarget_suspendedstate.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" +) -// AWSApplicationAutoScalingScalableTarget_SuspendedState AWS CloudFormation Resource (AWS::ApplicationAutoScaling::ScalableTarget.SuspendedState) +// 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 AWSApplicationAutoScalingScalableTarget_SuspendedState struct { +type ScalableTarget_SuspendedState struct { // DynamicScalingInSuspended AWS CloudFormation Property // Required: false @@ -32,42 +34,42 @@ type AWSApplicationAutoScalingScalableTarget_SuspendedState struct { } // AWSCloudFormationType returns the AWS CloudFormation resource type -func (r *AWSApplicationAutoScalingScalableTarget_SuspendedState) AWSCloudFormationType() string { +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 *AWSApplicationAutoScalingScalableTarget_SuspendedState) DependsOn() []string { +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 *AWSApplicationAutoScalingScalableTarget_SuspendedState) SetDependsOn(dependencies []string) { +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 *AWSApplicationAutoScalingScalableTarget_SuspendedState) Metadata() map[string]interface{} { +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 *AWSApplicationAutoScalingScalableTarget_SuspendedState) SetMetadata(metadata map[string]interface{}) { +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 *AWSApplicationAutoScalingScalableTarget_SuspendedState) DeletionPolicy() policies.DeletionPolicy { +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 *AWSApplicationAutoScalingScalableTarget_SuspendedState) SetDeletionPolicy(policy policies.DeletionPolicy) { +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/resources/aws-applicationautoscaling-scalingpolicy_customizedmetricspecification.go b/cloudformation/applicationautoscaling/aws-applicationautoscaling-scalingpolicy_customizedmetricspecification.go similarity index 73% rename from cloudformation/resources/aws-applicationautoscaling-scalingpolicy_customizedmetricspecification.go rename to cloudformation/applicationautoscaling/aws-applicationautoscaling-scalingpolicy_customizedmetricspecification.go index 55e261198a..0951298721 100644 --- a/cloudformation/resources/aws-applicationautoscaling-scalingpolicy_customizedmetricspecification.go +++ b/cloudformation/applicationautoscaling/aws-applicationautoscaling-scalingpolicy_customizedmetricspecification.go @@ -1,15 +1,17 @@ -package resources +package applicationautoscaling -import "github.com/awslabs/goformation/v2/cloudformation/policies" +import ( + "github.com/awslabs/goformation/v3/cloudformation/policies" +) -// AWSApplicationAutoScalingScalingPolicy_CustomizedMetricSpecification AWS CloudFormation Resource (AWS::ApplicationAutoScaling::ScalingPolicy.CustomizedMetricSpecification) +// 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 AWSApplicationAutoScalingScalingPolicy_CustomizedMetricSpecification struct { +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 []AWSApplicationAutoScalingScalingPolicy_MetricDimension `json:"Dimensions,omitempty"` + Dimensions []ScalingPolicy_MetricDimension `json:"Dimensions,omitempty"` // MetricName AWS CloudFormation Property // Required: true @@ -42,42 +44,42 @@ type AWSApplicationAutoScalingScalingPolicy_CustomizedMetricSpecification struct } // AWSCloudFormationType returns the AWS CloudFormation resource type -func (r *AWSApplicationAutoScalingScalingPolicy_CustomizedMetricSpecification) AWSCloudFormationType() string { +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 *AWSApplicationAutoScalingScalingPolicy_CustomizedMetricSpecification) DependsOn() []string { +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 *AWSApplicationAutoScalingScalingPolicy_CustomizedMetricSpecification) SetDependsOn(dependencies []string) { +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 *AWSApplicationAutoScalingScalingPolicy_CustomizedMetricSpecification) Metadata() map[string]interface{} { +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 *AWSApplicationAutoScalingScalingPolicy_CustomizedMetricSpecification) SetMetadata(metadata map[string]interface{}) { +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 *AWSApplicationAutoScalingScalingPolicy_CustomizedMetricSpecification) DeletionPolicy() policies.DeletionPolicy { +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 *AWSApplicationAutoScalingScalingPolicy_CustomizedMetricSpecification) SetDeletionPolicy(policy policies.DeletionPolicy) { +func (r *ScalingPolicy_CustomizedMetricSpecification) SetDeletionPolicy(policy policies.DeletionPolicy) { r._deletionPolicy = policy } diff --git a/cloudformation/resources/aws-applicationautoscaling-scalingpolicy_metricdimension.go b/cloudformation/applicationautoscaling/aws-applicationautoscaling-scalingpolicy_metricdimension.go similarity index 70% rename from cloudformation/resources/aws-applicationautoscaling-scalingpolicy_metricdimension.go rename to cloudformation/applicationautoscaling/aws-applicationautoscaling-scalingpolicy_metricdimension.go index a1ccf8c9ac..5550818f2c 100644 --- a/cloudformation/resources/aws-applicationautoscaling-scalingpolicy_metricdimension.go +++ b/cloudformation/applicationautoscaling/aws-applicationautoscaling-scalingpolicy_metricdimension.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_MetricDimension AWS CloudFormation Resource (AWS::ApplicationAutoScaling::ScalingPolicy.MetricDimension) +// 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 AWSApplicationAutoScalingScalingPolicy_MetricDimension struct { +type ScalingPolicy_MetricDimension struct { // Name AWS CloudFormation Property // Required: true @@ -27,42 +29,42 @@ type AWSApplicationAutoScalingScalingPolicy_MetricDimension struct { } // AWSCloudFormationType returns the AWS CloudFormation resource type -func (r *AWSApplicationAutoScalingScalingPolicy_MetricDimension) AWSCloudFormationType() string { +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 *AWSApplicationAutoScalingScalingPolicy_MetricDimension) DependsOn() []string { +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 *AWSApplicationAutoScalingScalingPolicy_MetricDimension) SetDependsOn(dependencies []string) { +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 *AWSApplicationAutoScalingScalingPolicy_MetricDimension) Metadata() map[string]interface{} { +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 *AWSApplicationAutoScalingScalingPolicy_MetricDimension) SetMetadata(metadata map[string]interface{}) { +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 *AWSApplicationAutoScalingScalingPolicy_MetricDimension) DeletionPolicy() policies.DeletionPolicy { +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 *AWSApplicationAutoScalingScalingPolicy_MetricDimension) SetDeletionPolicy(policy policies.DeletionPolicy) { +func (r *ScalingPolicy_MetricDimension) SetDeletionPolicy(policy policies.DeletionPolicy) { r._deletionPolicy = policy } diff --git a/cloudformation/resources/aws-applicationautoscaling-scalingpolicy_predefinedmetricspecification.go b/cloudformation/applicationautoscaling/aws-applicationautoscaling-scalingpolicy_predefinedmetricspecification.go similarity index 69% rename from cloudformation/resources/aws-applicationautoscaling-scalingpolicy_predefinedmetricspecification.go rename to cloudformation/applicationautoscaling/aws-applicationautoscaling-scalingpolicy_predefinedmetricspecification.go index 6c5feae141..f3e0a5d4c4 100644 --- a/cloudformation/resources/aws-applicationautoscaling-scalingpolicy_predefinedmetricspecification.go +++ b/cloudformation/applicationautoscaling/aws-applicationautoscaling-scalingpolicy_predefinedmetricspecification.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_PredefinedMetricSpecification AWS CloudFormation Resource (AWS::ApplicationAutoScaling::ScalingPolicy.PredefinedMetricSpecification) +// 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 AWSApplicationAutoScalingScalingPolicy_PredefinedMetricSpecification struct { +type ScalingPolicy_PredefinedMetricSpecification struct { // PredefinedMetricType AWS CloudFormation Property // Required: true @@ -27,42 +29,42 @@ type AWSApplicationAutoScalingScalingPolicy_PredefinedMetricSpecification struct } // AWSCloudFormationType returns the AWS CloudFormation resource type -func (r *AWSApplicationAutoScalingScalingPolicy_PredefinedMetricSpecification) AWSCloudFormationType() string { +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 *AWSApplicationAutoScalingScalingPolicy_PredefinedMetricSpecification) DependsOn() []string { +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 *AWSApplicationAutoScalingScalingPolicy_PredefinedMetricSpecification) SetDependsOn(dependencies []string) { +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 *AWSApplicationAutoScalingScalingPolicy_PredefinedMetricSpecification) Metadata() map[string]interface{} { +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 *AWSApplicationAutoScalingScalingPolicy_PredefinedMetricSpecification) SetMetadata(metadata map[string]interface{}) { +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 *AWSApplicationAutoScalingScalingPolicy_PredefinedMetricSpecification) DeletionPolicy() policies.DeletionPolicy { +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 *AWSApplicationAutoScalingScalingPolicy_PredefinedMetricSpecification) SetDeletionPolicy(policy policies.DeletionPolicy) { +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/resources/aws-applicationautoscaling-scalingpolicy_stepscalingpolicyconfiguration.go b/cloudformation/applicationautoscaling/aws-applicationautoscaling-scalingpolicy_stepscalingpolicyconfiguration.go similarity index 74% rename from cloudformation/resources/aws-applicationautoscaling-scalingpolicy_stepscalingpolicyconfiguration.go rename to cloudformation/applicationautoscaling/aws-applicationautoscaling-scalingpolicy_stepscalingpolicyconfiguration.go index 9941d2e3af..80ac8aa8d2 100644 --- a/cloudformation/resources/aws-applicationautoscaling-scalingpolicy_stepscalingpolicyconfiguration.go +++ b/cloudformation/applicationautoscaling/aws-applicationautoscaling-scalingpolicy_stepscalingpolicyconfiguration.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_StepScalingPolicyConfiguration AWS CloudFormation Resource (AWS::ApplicationAutoScaling::ScalingPolicy.StepScalingPolicyConfiguration) +// 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 AWSApplicationAutoScalingScalingPolicy_StepScalingPolicyConfiguration struct { +type ScalingPolicy_StepScalingPolicyConfiguration struct { // AdjustmentType AWS CloudFormation Property // Required: false @@ -29,7 +31,7 @@ type AWSApplicationAutoScalingScalingPolicy_StepScalingPolicyConfiguration struc // 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"` + StepAdjustments []ScalingPolicy_StepAdjustment `json:"StepAdjustments,omitempty"` // _deletionPolicy represents a CloudFormation DeletionPolicy _deletionPolicy policies.DeletionPolicy @@ -42,42 +44,42 @@ type AWSApplicationAutoScalingScalingPolicy_StepScalingPolicyConfiguration struc } // AWSCloudFormationType returns the AWS CloudFormation resource type -func (r *AWSApplicationAutoScalingScalingPolicy_StepScalingPolicyConfiguration) AWSCloudFormationType() string { +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 *AWSApplicationAutoScalingScalingPolicy_StepScalingPolicyConfiguration) DependsOn() []string { +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 *AWSApplicationAutoScalingScalingPolicy_StepScalingPolicyConfiguration) SetDependsOn(dependencies []string) { +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 *AWSApplicationAutoScalingScalingPolicy_StepScalingPolicyConfiguration) Metadata() map[string]interface{} { +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 *AWSApplicationAutoScalingScalingPolicy_StepScalingPolicyConfiguration) SetMetadata(metadata map[string]interface{}) { +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 *AWSApplicationAutoScalingScalingPolicy_StepScalingPolicyConfiguration) DeletionPolicy() policies.DeletionPolicy { +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 *AWSApplicationAutoScalingScalingPolicy_StepScalingPolicyConfiguration) SetDeletionPolicy(policy policies.DeletionPolicy) { +func (r *ScalingPolicy_StepScalingPolicyConfiguration) SetDeletionPolicy(policy policies.DeletionPolicy) { r._deletionPolicy = policy } diff --git a/cloudformation/resources/aws-applicationautoscaling-scalingpolicy_targettrackingscalingpolicyconfiguration.go b/cloudformation/applicationautoscaling/aws-applicationautoscaling-scalingpolicy_targettrackingscalingpolicyconfiguration.go similarity index 72% rename from cloudformation/resources/aws-applicationautoscaling-scalingpolicy_targettrackingscalingpolicyconfiguration.go rename to cloudformation/applicationautoscaling/aws-applicationautoscaling-scalingpolicy_targettrackingscalingpolicyconfiguration.go index 690a4a935c..e8dd2af06a 100644 --- a/cloudformation/resources/aws-applicationautoscaling-scalingpolicy_targettrackingscalingpolicyconfiguration.go +++ b/cloudformation/applicationautoscaling/aws-applicationautoscaling-scalingpolicy_targettrackingscalingpolicyconfiguration.go @@ -1,15 +1,17 @@ -package resources +package applicationautoscaling -import "github.com/awslabs/goformation/v2/cloudformation/policies" +import ( + "github.com/awslabs/goformation/v3/cloudformation/policies" +) -// AWSApplicationAutoScalingScalingPolicy_TargetTrackingScalingPolicyConfiguration AWS CloudFormation Resource (AWS::ApplicationAutoScaling::ScalingPolicy.TargetTrackingScalingPolicyConfiguration) +// 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 AWSApplicationAutoScalingScalingPolicy_TargetTrackingScalingPolicyConfiguration struct { +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 *AWSApplicationAutoScalingScalingPolicy_CustomizedMetricSpecification `json:"CustomizedMetricSpecification,omitempty"` + CustomizedMetricSpecification *ScalingPolicy_CustomizedMetricSpecification `json:"CustomizedMetricSpecification,omitempty"` // DisableScaleIn AWS CloudFormation Property // Required: false @@ -19,7 +21,7 @@ type AWSApplicationAutoScalingScalingPolicy_TargetTrackingScalingPolicyConfigura // 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"` + PredefinedMetricSpecification *ScalingPolicy_PredefinedMetricSpecification `json:"PredefinedMetricSpecification,omitempty"` // ScaleInCooldown AWS CloudFormation Property // Required: false @@ -47,42 +49,42 @@ type AWSApplicationAutoScalingScalingPolicy_TargetTrackingScalingPolicyConfigura } // AWSCloudFormationType returns the AWS CloudFormation resource type -func (r *AWSApplicationAutoScalingScalingPolicy_TargetTrackingScalingPolicyConfiguration) AWSCloudFormationType() string { +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 *AWSApplicationAutoScalingScalingPolicy_TargetTrackingScalingPolicyConfiguration) DependsOn() []string { +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 *AWSApplicationAutoScalingScalingPolicy_TargetTrackingScalingPolicyConfiguration) SetDependsOn(dependencies []string) { +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 *AWSApplicationAutoScalingScalingPolicy_TargetTrackingScalingPolicyConfiguration) Metadata() map[string]interface{} { +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 *AWSApplicationAutoScalingScalingPolicy_TargetTrackingScalingPolicyConfiguration) SetMetadata(metadata map[string]interface{}) { +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 *AWSApplicationAutoScalingScalingPolicy_TargetTrackingScalingPolicyConfiguration) DeletionPolicy() policies.DeletionPolicy { +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 *AWSApplicationAutoScalingScalingPolicy_TargetTrackingScalingPolicyConfiguration) SetDeletionPolicy(policy policies.DeletionPolicy) { +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/resources/aws-appmesh-mesh_egressfilter.go b/cloudformation/appmesh/aws-appmesh-mesh_egressfilter.go similarity index 72% rename from cloudformation/resources/aws-appmesh-mesh_egressfilter.go rename to cloudformation/appmesh/aws-appmesh-mesh_egressfilter.go index f09b3f8691..c27693a32f 100644 --- a/cloudformation/resources/aws-appmesh-mesh_egressfilter.go +++ b/cloudformation/appmesh/aws-appmesh-mesh_egressfilter.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" +) -// AWSAppMeshMesh_EgressFilter AWS CloudFormation Resource (AWS::AppMesh::Mesh.EgressFilter) +// 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 AWSAppMeshMesh_EgressFilter struct { +type Mesh_EgressFilter struct { // Type AWS CloudFormation Property // Required: true @@ -22,42 +24,42 @@ type AWSAppMeshMesh_EgressFilter struct { } // AWSCloudFormationType returns the AWS CloudFormation resource type -func (r *AWSAppMeshMesh_EgressFilter) AWSCloudFormationType() string { +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 *AWSAppMeshMesh_EgressFilter) DependsOn() []string { +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 *AWSAppMeshMesh_EgressFilter) SetDependsOn(dependencies []string) { +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 *AWSAppMeshMesh_EgressFilter) Metadata() map[string]interface{} { +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 *AWSAppMeshMesh_EgressFilter) SetMetadata(metadata map[string]interface{}) { +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 *AWSAppMeshMesh_EgressFilter) DeletionPolicy() policies.DeletionPolicy { +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 *AWSAppMeshMesh_EgressFilter) SetDeletionPolicy(policy policies.DeletionPolicy) { +func (r *Mesh_EgressFilter) SetDeletionPolicy(policy policies.DeletionPolicy) { r._deletionPolicy = policy } diff --git a/cloudformation/resources/aws-appmesh-mesh_meshspec.go b/cloudformation/appmesh/aws-appmesh-mesh_meshspec.go similarity index 71% rename from cloudformation/resources/aws-appmesh-mesh_meshspec.go rename to cloudformation/appmesh/aws-appmesh-mesh_meshspec.go index 47b9ed5779..3f8272b7ea 100644 --- a/cloudformation/resources/aws-appmesh-mesh_meshspec.go +++ b/cloudformation/appmesh/aws-appmesh-mesh_meshspec.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" +) -// AWSAppMeshMesh_MeshSpec AWS CloudFormation Resource (AWS::AppMesh::Mesh.MeshSpec) +// 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 AWSAppMeshMesh_MeshSpec struct { +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 *AWSAppMeshMesh_EgressFilter `json:"EgressFilter,omitempty"` + EgressFilter *Mesh_EgressFilter `json:"EgressFilter,omitempty"` // _deletionPolicy represents a CloudFormation DeletionPolicy _deletionPolicy policies.DeletionPolicy @@ -22,42 +24,42 @@ type AWSAppMeshMesh_MeshSpec struct { } // AWSCloudFormationType returns the AWS CloudFormation resource type -func (r *AWSAppMeshMesh_MeshSpec) AWSCloudFormationType() string { +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 *AWSAppMeshMesh_MeshSpec) DependsOn() []string { +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 *AWSAppMeshMesh_MeshSpec) SetDependsOn(dependencies []string) { +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 *AWSAppMeshMesh_MeshSpec) Metadata() map[string]interface{} { +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 *AWSAppMeshMesh_MeshSpec) SetMetadata(metadata map[string]interface{}) { +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 *AWSAppMeshMesh_MeshSpec) DeletionPolicy() policies.DeletionPolicy { +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 *AWSAppMeshMesh_MeshSpec) SetDeletionPolicy(policy policies.DeletionPolicy) { +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/resources/aws-appmesh-route_httproute.go b/cloudformation/appmesh/aws-appmesh-route_httproute.go similarity index 71% rename from cloudformation/resources/aws-appmesh-route_httproute.go rename to cloudformation/appmesh/aws-appmesh-route_httproute.go index 665b54bdeb..2f408ffe29 100644 --- a/cloudformation/resources/aws-appmesh-route_httproute.go +++ b/cloudformation/appmesh/aws-appmesh-route_httproute.go @@ -1,25 +1,27 @@ -package resources +package appmesh -import "github.com/awslabs/goformation/v2/cloudformation/policies" +import ( + "github.com/awslabs/goformation/v3/cloudformation/policies" +) -// AWSAppMeshRoute_HttpRoute AWS CloudFormation Resource (AWS::AppMesh::Route.HttpRoute) +// 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 AWSAppMeshRoute_HttpRoute struct { +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 *AWSAppMeshRoute_HttpRouteAction `json:"Action,omitempty"` + 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 *AWSAppMeshRoute_HttpRouteMatch `json:"Match,omitempty"` + 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 *AWSAppMeshRoute_HttpRetryPolicy `json:"RetryPolicy,omitempty"` + RetryPolicy *Route_HttpRetryPolicy `json:"RetryPolicy,omitempty"` // _deletionPolicy represents a CloudFormation DeletionPolicy _deletionPolicy policies.DeletionPolicy @@ -32,42 +34,42 @@ type AWSAppMeshRoute_HttpRoute struct { } // AWSCloudFormationType returns the AWS CloudFormation resource type -func (r *AWSAppMeshRoute_HttpRoute) AWSCloudFormationType() string { +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 *AWSAppMeshRoute_HttpRoute) DependsOn() []string { +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 *AWSAppMeshRoute_HttpRoute) SetDependsOn(dependencies []string) { +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 *AWSAppMeshRoute_HttpRoute) Metadata() map[string]interface{} { +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 *AWSAppMeshRoute_HttpRoute) SetMetadata(metadata map[string]interface{}) { +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 *AWSAppMeshRoute_HttpRoute) DeletionPolicy() policies.DeletionPolicy { +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 *AWSAppMeshRoute_HttpRoute) SetDeletionPolicy(policy policies.DeletionPolicy) { +func (r *Route_HttpRoute) SetDeletionPolicy(policy policies.DeletionPolicy) { r._deletionPolicy = policy } diff --git a/cloudformation/resources/aws-appmesh-route_httprouteaction.go b/cloudformation/appmesh/aws-appmesh-route_httprouteaction.go similarity index 69% rename from cloudformation/resources/aws-appmesh-route_httprouteaction.go rename to cloudformation/appmesh/aws-appmesh-route_httprouteaction.go index d0a5881fba..b29c89b42c 100644 --- a/cloudformation/resources/aws-appmesh-route_httprouteaction.go +++ b/cloudformation/appmesh/aws-appmesh-route_httprouteaction.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_HttpRouteAction AWS CloudFormation Resource (AWS::AppMesh::Route.HttpRouteAction) +// 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 AWSAppMeshRoute_HttpRouteAction struct { +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 []AWSAppMeshRoute_WeightedTarget `json:"WeightedTargets,omitempty"` + WeightedTargets []Route_WeightedTarget `json:"WeightedTargets,omitempty"` // _deletionPolicy represents a CloudFormation DeletionPolicy _deletionPolicy policies.DeletionPolicy @@ -22,42 +24,42 @@ type AWSAppMeshRoute_HttpRouteAction struct { } // AWSCloudFormationType returns the AWS CloudFormation resource type -func (r *AWSAppMeshRoute_HttpRouteAction) AWSCloudFormationType() string { +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 *AWSAppMeshRoute_HttpRouteAction) DependsOn() []string { +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 *AWSAppMeshRoute_HttpRouteAction) SetDependsOn(dependencies []string) { +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 *AWSAppMeshRoute_HttpRouteAction) Metadata() map[string]interface{} { +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 *AWSAppMeshRoute_HttpRouteAction) SetMetadata(metadata map[string]interface{}) { +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 *AWSAppMeshRoute_HttpRouteAction) DeletionPolicy() policies.DeletionPolicy { +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 *AWSAppMeshRoute_HttpRouteAction) SetDeletionPolicy(policy policies.DeletionPolicy) { +func (r *Route_HttpRouteAction) SetDeletionPolicy(policy policies.DeletionPolicy) { r._deletionPolicy = policy } diff --git a/cloudformation/resources/aws-appmesh-route_httprouteheader.go b/cloudformation/appmesh/aws-appmesh-route_httprouteheader.go similarity index 74% rename from cloudformation/resources/aws-appmesh-route_httprouteheader.go rename to cloudformation/appmesh/aws-appmesh-route_httprouteheader.go index 99154651c0..f6bd9f9bea 100644 --- a/cloudformation/resources/aws-appmesh-route_httprouteheader.go +++ b/cloudformation/appmesh/aws-appmesh-route_httprouteheader.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_HttpRouteHeader AWS CloudFormation Resource (AWS::AppMesh::Route.HttpRouteHeader) +// 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 AWSAppMeshRoute_HttpRouteHeader struct { +type Route_HttpRouteHeader struct { // Invert AWS CloudFormation Property // Required: false @@ -14,7 +16,7 @@ type AWSAppMeshRoute_HttpRouteHeader struct { // 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"` + Match *Route_HeaderMatchMethod `json:"Match,omitempty"` // Name AWS CloudFormation Property // Required: true @@ -32,42 +34,42 @@ type AWSAppMeshRoute_HttpRouteHeader struct { } // AWSCloudFormationType returns the AWS CloudFormation resource type -func (r *AWSAppMeshRoute_HttpRouteHeader) AWSCloudFormationType() string { +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 *AWSAppMeshRoute_HttpRouteHeader) DependsOn() []string { +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 *AWSAppMeshRoute_HttpRouteHeader) SetDependsOn(dependencies []string) { +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 *AWSAppMeshRoute_HttpRouteHeader) Metadata() map[string]interface{} { +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 *AWSAppMeshRoute_HttpRouteHeader) SetMetadata(metadata map[string]interface{}) { +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 *AWSAppMeshRoute_HttpRouteHeader) DeletionPolicy() policies.DeletionPolicy { +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 *AWSAppMeshRoute_HttpRouteHeader) SetDeletionPolicy(policy policies.DeletionPolicy) { +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/resources/aws-appmesh-route_matchrange.go b/cloudformation/appmesh/aws-appmesh-route_matchrange.go similarity index 74% rename from cloudformation/resources/aws-appmesh-route_matchrange.go rename to cloudformation/appmesh/aws-appmesh-route_matchrange.go index 4bbaecbebd..351e13b612 100644 --- a/cloudformation/resources/aws-appmesh-route_matchrange.go +++ b/cloudformation/appmesh/aws-appmesh-route_matchrange.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_MatchRange AWS CloudFormation Resource (AWS::AppMesh::Route.MatchRange) +// 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 AWSAppMeshRoute_MatchRange struct { +type Route_MatchRange struct { // End AWS CloudFormation Property // Required: true @@ -27,42 +29,42 @@ type AWSAppMeshRoute_MatchRange struct { } // AWSCloudFormationType returns the AWS CloudFormation resource type -func (r *AWSAppMeshRoute_MatchRange) AWSCloudFormationType() string { +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 *AWSAppMeshRoute_MatchRange) DependsOn() []string { +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 *AWSAppMeshRoute_MatchRange) SetDependsOn(dependencies []string) { +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 *AWSAppMeshRoute_MatchRange) Metadata() map[string]interface{} { +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 *AWSAppMeshRoute_MatchRange) SetMetadata(metadata map[string]interface{}) { +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 *AWSAppMeshRoute_MatchRange) DeletionPolicy() policies.DeletionPolicy { +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 *AWSAppMeshRoute_MatchRange) SetDeletionPolicy(policy policies.DeletionPolicy) { +func (r *Route_MatchRange) SetDeletionPolicy(policy policies.DeletionPolicy) { r._deletionPolicy = policy } diff --git a/cloudformation/resources/aws-appmesh-route_routespec.go b/cloudformation/appmesh/aws-appmesh-route_routespec.go similarity index 73% rename from cloudformation/resources/aws-appmesh-route_routespec.go rename to cloudformation/appmesh/aws-appmesh-route_routespec.go index f707737f25..8b503c02af 100644 --- a/cloudformation/resources/aws-appmesh-route_routespec.go +++ b/cloudformation/appmesh/aws-appmesh-route_routespec.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_RouteSpec AWS CloudFormation Resource (AWS::AppMesh::Route.RouteSpec) +// 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 AWSAppMeshRoute_RouteSpec struct { +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 *AWSAppMeshRoute_HttpRoute `json:"HttpRoute,omitempty"` + HttpRoute *Route_HttpRoute `json:"HttpRoute,omitempty"` // Priority AWS CloudFormation Property // Required: false @@ -19,7 +21,7 @@ type AWSAppMeshRoute_RouteSpec struct { // 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"` + TcpRoute *Route_TcpRoute `json:"TcpRoute,omitempty"` // _deletionPolicy represents a CloudFormation DeletionPolicy _deletionPolicy policies.DeletionPolicy @@ -32,42 +34,42 @@ type AWSAppMeshRoute_RouteSpec struct { } // AWSCloudFormationType returns the AWS CloudFormation resource type -func (r *AWSAppMeshRoute_RouteSpec) AWSCloudFormationType() string { +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 *AWSAppMeshRoute_RouteSpec) DependsOn() []string { +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 *AWSAppMeshRoute_RouteSpec) SetDependsOn(dependencies []string) { +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 *AWSAppMeshRoute_RouteSpec) Metadata() map[string]interface{} { +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 *AWSAppMeshRoute_RouteSpec) SetMetadata(metadata map[string]interface{}) { +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 *AWSAppMeshRoute_RouteSpec) DeletionPolicy() policies.DeletionPolicy { +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 *AWSAppMeshRoute_RouteSpec) SetDeletionPolicy(policy policies.DeletionPolicy) { +func (r *Route_RouteSpec) SetDeletionPolicy(policy policies.DeletionPolicy) { r._deletionPolicy = policy } diff --git a/cloudformation/resources/aws-appmesh-route_tcproute.go b/cloudformation/appmesh/aws-appmesh-route_tcproute.go similarity index 71% rename from cloudformation/resources/aws-appmesh-route_tcproute.go rename to cloudformation/appmesh/aws-appmesh-route_tcproute.go index ef5b0f2765..e392ce8177 100644 --- a/cloudformation/resources/aws-appmesh-route_tcproute.go +++ b/cloudformation/appmesh/aws-appmesh-route_tcproute.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_TcpRoute AWS CloudFormation Resource (AWS::AppMesh::Route.TcpRoute) +// 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 AWSAppMeshRoute_TcpRoute struct { +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 *AWSAppMeshRoute_TcpRouteAction `json:"Action,omitempty"` + Action *Route_TcpRouteAction `json:"Action,omitempty"` // _deletionPolicy represents a CloudFormation DeletionPolicy _deletionPolicy policies.DeletionPolicy @@ -22,42 +24,42 @@ type AWSAppMeshRoute_TcpRoute struct { } // AWSCloudFormationType returns the AWS CloudFormation resource type -func (r *AWSAppMeshRoute_TcpRoute) AWSCloudFormationType() string { +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 *AWSAppMeshRoute_TcpRoute) DependsOn() []string { +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 *AWSAppMeshRoute_TcpRoute) SetDependsOn(dependencies []string) { +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 *AWSAppMeshRoute_TcpRoute) Metadata() map[string]interface{} { +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 *AWSAppMeshRoute_TcpRoute) SetMetadata(metadata map[string]interface{}) { +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 *AWSAppMeshRoute_TcpRoute) DeletionPolicy() policies.DeletionPolicy { +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 *AWSAppMeshRoute_TcpRoute) SetDeletionPolicy(policy policies.DeletionPolicy) { +func (r *Route_TcpRoute) SetDeletionPolicy(policy policies.DeletionPolicy) { r._deletionPolicy = policy } diff --git a/cloudformation/resources/aws-appmesh-route_tcprouteaction.go b/cloudformation/appmesh/aws-appmesh-route_tcprouteaction.go similarity index 69% rename from cloudformation/resources/aws-appmesh-route_tcprouteaction.go rename to cloudformation/appmesh/aws-appmesh-route_tcprouteaction.go index 2b6bbf8590..fcd17b1825 100644 --- a/cloudformation/resources/aws-appmesh-route_tcprouteaction.go +++ b/cloudformation/appmesh/aws-appmesh-route_tcprouteaction.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_TcpRouteAction AWS CloudFormation Resource (AWS::AppMesh::Route.TcpRouteAction) +// 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 AWSAppMeshRoute_TcpRouteAction struct { +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 []AWSAppMeshRoute_WeightedTarget `json:"WeightedTargets,omitempty"` + WeightedTargets []Route_WeightedTarget `json:"WeightedTargets,omitempty"` // _deletionPolicy represents a CloudFormation DeletionPolicy _deletionPolicy policies.DeletionPolicy @@ -22,42 +24,42 @@ type AWSAppMeshRoute_TcpRouteAction struct { } // AWSCloudFormationType returns the AWS CloudFormation resource type -func (r *AWSAppMeshRoute_TcpRouteAction) AWSCloudFormationType() string { +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 *AWSAppMeshRoute_TcpRouteAction) DependsOn() []string { +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 *AWSAppMeshRoute_TcpRouteAction) SetDependsOn(dependencies []string) { +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 *AWSAppMeshRoute_TcpRouteAction) Metadata() map[string]interface{} { +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 *AWSAppMeshRoute_TcpRouteAction) SetMetadata(metadata map[string]interface{}) { +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 *AWSAppMeshRoute_TcpRouteAction) DeletionPolicy() policies.DeletionPolicy { +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 *AWSAppMeshRoute_TcpRouteAction) SetDeletionPolicy(policy policies.DeletionPolicy) { +func (r *Route_TcpRouteAction) SetDeletionPolicy(policy policies.DeletionPolicy) { r._deletionPolicy = policy } diff --git a/cloudformation/resources/aws-appmesh-route_weightedtarget.go b/cloudformation/appmesh/aws-appmesh-route_weightedtarget.go similarity index 74% rename from cloudformation/resources/aws-appmesh-route_weightedtarget.go rename to cloudformation/appmesh/aws-appmesh-route_weightedtarget.go index 8d6b0bec16..5ceb0bb4ba 100644 --- a/cloudformation/resources/aws-appmesh-route_weightedtarget.go +++ b/cloudformation/appmesh/aws-appmesh-route_weightedtarget.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_WeightedTarget AWS CloudFormation Resource (AWS::AppMesh::Route.WeightedTarget) +// 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 AWSAppMeshRoute_WeightedTarget struct { +type Route_WeightedTarget struct { // VirtualNode AWS CloudFormation Property // Required: true @@ -27,42 +29,42 @@ type AWSAppMeshRoute_WeightedTarget struct { } // AWSCloudFormationType returns the AWS CloudFormation resource type -func (r *AWSAppMeshRoute_WeightedTarget) AWSCloudFormationType() string { +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 *AWSAppMeshRoute_WeightedTarget) DependsOn() []string { +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 *AWSAppMeshRoute_WeightedTarget) SetDependsOn(dependencies []string) { +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 *AWSAppMeshRoute_WeightedTarget) Metadata() map[string]interface{} { +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 *AWSAppMeshRoute_WeightedTarget) SetMetadata(metadata map[string]interface{}) { +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 *AWSAppMeshRoute_WeightedTarget) DeletionPolicy() policies.DeletionPolicy { +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 *AWSAppMeshRoute_WeightedTarget) SetDeletionPolicy(policy policies.DeletionPolicy) { +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/resources/aws-appmesh-virtualnode_accesslog.go b/cloudformation/appmesh/aws-appmesh-virtualnode_accesslog.go similarity index 69% rename from cloudformation/resources/aws-appmesh-virtualnode_accesslog.go rename to cloudformation/appmesh/aws-appmesh-virtualnode_accesslog.go index 3a3d1037a9..53584405e0 100644 --- a/cloudformation/resources/aws-appmesh-virtualnode_accesslog.go +++ b/cloudformation/appmesh/aws-appmesh-virtualnode_accesslog.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" +) -// AWSAppMeshVirtualNode_AccessLog AWS CloudFormation Resource (AWS::AppMesh::VirtualNode.AccessLog) +// 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 AWSAppMeshVirtualNode_AccessLog struct { +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 *AWSAppMeshVirtualNode_FileAccessLog `json:"File,omitempty"` + File *VirtualNode_FileAccessLog `json:"File,omitempty"` // _deletionPolicy represents a CloudFormation DeletionPolicy _deletionPolicy policies.DeletionPolicy @@ -22,42 +24,42 @@ type AWSAppMeshVirtualNode_AccessLog struct { } // AWSCloudFormationType returns the AWS CloudFormation resource type -func (r *AWSAppMeshVirtualNode_AccessLog) AWSCloudFormationType() string { +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 *AWSAppMeshVirtualNode_AccessLog) DependsOn() []string { +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 *AWSAppMeshVirtualNode_AccessLog) SetDependsOn(dependencies []string) { +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 *AWSAppMeshVirtualNode_AccessLog) Metadata() map[string]interface{} { +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 *AWSAppMeshVirtualNode_AccessLog) SetMetadata(metadata map[string]interface{}) { +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 *AWSAppMeshVirtualNode_AccessLog) DeletionPolicy() policies.DeletionPolicy { +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 *AWSAppMeshVirtualNode_AccessLog) SetDeletionPolicy(policy policies.DeletionPolicy) { +func (r *VirtualNode_AccessLog) SetDeletionPolicy(policy policies.DeletionPolicy) { r._deletionPolicy = policy } diff --git a/cloudformation/resources/aws-appmesh-virtualnode_awscloudmapinstanceattribute.go b/cloudformation/appmesh/aws-appmesh-virtualnode_awscloudmapinstanceattribute.go similarity index 70% rename from cloudformation/resources/aws-appmesh-virtualnode_awscloudmapinstanceattribute.go rename to cloudformation/appmesh/aws-appmesh-virtualnode_awscloudmapinstanceattribute.go index 74792b7bad..692ed3c81b 100644 --- a/cloudformation/resources/aws-appmesh-virtualnode_awscloudmapinstanceattribute.go +++ b/cloudformation/appmesh/aws-appmesh-virtualnode_awscloudmapinstanceattribute.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_AwsCloudMapInstanceAttribute AWS CloudFormation Resource (AWS::AppMesh::VirtualNode.AwsCloudMapInstanceAttribute) +// 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 AWSAppMeshVirtualNode_AwsCloudMapInstanceAttribute struct { +type VirtualNode_AwsCloudMapInstanceAttribute struct { // Key AWS CloudFormation Property // Required: true @@ -27,42 +29,42 @@ type AWSAppMeshVirtualNode_AwsCloudMapInstanceAttribute struct { } // AWSCloudFormationType returns the AWS CloudFormation resource type -func (r *AWSAppMeshVirtualNode_AwsCloudMapInstanceAttribute) AWSCloudFormationType() string { +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 *AWSAppMeshVirtualNode_AwsCloudMapInstanceAttribute) DependsOn() []string { +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 *AWSAppMeshVirtualNode_AwsCloudMapInstanceAttribute) SetDependsOn(dependencies []string) { +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 *AWSAppMeshVirtualNode_AwsCloudMapInstanceAttribute) Metadata() map[string]interface{} { +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 *AWSAppMeshVirtualNode_AwsCloudMapInstanceAttribute) SetMetadata(metadata map[string]interface{}) { +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 *AWSAppMeshVirtualNode_AwsCloudMapInstanceAttribute) DeletionPolicy() policies.DeletionPolicy { +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 *AWSAppMeshVirtualNode_AwsCloudMapInstanceAttribute) SetDeletionPolicy(policy policies.DeletionPolicy) { +func (r *VirtualNode_AwsCloudMapInstanceAttribute) SetDeletionPolicy(policy policies.DeletionPolicy) { r._deletionPolicy = policy } diff --git a/cloudformation/resources/aws-appmesh-virtualnode_awscloudmapservicediscovery.go b/cloudformation/appmesh/aws-appmesh-virtualnode_awscloudmapservicediscovery.go similarity index 71% rename from cloudformation/resources/aws-appmesh-virtualnode_awscloudmapservicediscovery.go rename to cloudformation/appmesh/aws-appmesh-virtualnode_awscloudmapservicediscovery.go index b9600abc10..0630494dcf 100644 --- a/cloudformation/resources/aws-appmesh-virtualnode_awscloudmapservicediscovery.go +++ b/cloudformation/appmesh/aws-appmesh-virtualnode_awscloudmapservicediscovery.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" +) -// AWSAppMeshVirtualNode_AwsCloudMapServiceDiscovery AWS CloudFormation Resource (AWS::AppMesh::VirtualNode.AwsCloudMapServiceDiscovery) +// 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 AWSAppMeshVirtualNode_AwsCloudMapServiceDiscovery struct { +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 []AWSAppMeshVirtualNode_AwsCloudMapInstanceAttribute `json:"Attributes,omitempty"` + Attributes []VirtualNode_AwsCloudMapInstanceAttribute `json:"Attributes,omitempty"` // NamespaceName AWS CloudFormation Property // Required: true @@ -32,42 +34,42 @@ type AWSAppMeshVirtualNode_AwsCloudMapServiceDiscovery struct { } // AWSCloudFormationType returns the AWS CloudFormation resource type -func (r *AWSAppMeshVirtualNode_AwsCloudMapServiceDiscovery) AWSCloudFormationType() string { +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 *AWSAppMeshVirtualNode_AwsCloudMapServiceDiscovery) DependsOn() []string { +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 *AWSAppMeshVirtualNode_AwsCloudMapServiceDiscovery) SetDependsOn(dependencies []string) { +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 *AWSAppMeshVirtualNode_AwsCloudMapServiceDiscovery) Metadata() map[string]interface{} { +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 *AWSAppMeshVirtualNode_AwsCloudMapServiceDiscovery) SetMetadata(metadata map[string]interface{}) { +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 *AWSAppMeshVirtualNode_AwsCloudMapServiceDiscovery) DeletionPolicy() policies.DeletionPolicy { +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 *AWSAppMeshVirtualNode_AwsCloudMapServiceDiscovery) SetDeletionPolicy(policy policies.DeletionPolicy) { +func (r *VirtualNode_AwsCloudMapServiceDiscovery) SetDeletionPolicy(policy policies.DeletionPolicy) { r._deletionPolicy = policy } diff --git a/cloudformation/resources/aws-appmesh-virtualnode_backend.go b/cloudformation/appmesh/aws-appmesh-virtualnode_backend.go similarity index 69% rename from cloudformation/resources/aws-appmesh-virtualnode_backend.go rename to cloudformation/appmesh/aws-appmesh-virtualnode_backend.go index c7c395413d..99966d2331 100644 --- a/cloudformation/resources/aws-appmesh-virtualnode_backend.go +++ b/cloudformation/appmesh/aws-appmesh-virtualnode_backend.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" +) -// AWSAppMeshVirtualNode_Backend AWS CloudFormation Resource (AWS::AppMesh::VirtualNode.Backend) +// 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 AWSAppMeshVirtualNode_Backend struct { +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 *AWSAppMeshVirtualNode_VirtualServiceBackend `json:"VirtualService,omitempty"` + VirtualService *VirtualNode_VirtualServiceBackend `json:"VirtualService,omitempty"` // _deletionPolicy represents a CloudFormation DeletionPolicy _deletionPolicy policies.DeletionPolicy @@ -22,42 +24,42 @@ type AWSAppMeshVirtualNode_Backend struct { } // AWSCloudFormationType returns the AWS CloudFormation resource type -func (r *AWSAppMeshVirtualNode_Backend) AWSCloudFormationType() string { +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 *AWSAppMeshVirtualNode_Backend) DependsOn() []string { +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 *AWSAppMeshVirtualNode_Backend) SetDependsOn(dependencies []string) { +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 *AWSAppMeshVirtualNode_Backend) Metadata() map[string]interface{} { +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 *AWSAppMeshVirtualNode_Backend) SetMetadata(metadata map[string]interface{}) { +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 *AWSAppMeshVirtualNode_Backend) DeletionPolicy() policies.DeletionPolicy { +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 *AWSAppMeshVirtualNode_Backend) SetDeletionPolicy(policy policies.DeletionPolicy) { +func (r *VirtualNode_Backend) SetDeletionPolicy(policy policies.DeletionPolicy) { r._deletionPolicy = policy } diff --git a/cloudformation/resources/aws-appmesh-virtualnode_dnsservicediscovery.go b/cloudformation/appmesh/aws-appmesh-virtualnode_dnsservicediscovery.go similarity index 70% rename from cloudformation/resources/aws-appmesh-virtualnode_dnsservicediscovery.go rename to cloudformation/appmesh/aws-appmesh-virtualnode_dnsservicediscovery.go index ec0eee3bb7..052ae77977 100644 --- a/cloudformation/resources/aws-appmesh-virtualnode_dnsservicediscovery.go +++ b/cloudformation/appmesh/aws-appmesh-virtualnode_dnsservicediscovery.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_DnsServiceDiscovery AWS CloudFormation Resource (AWS::AppMesh::VirtualNode.DnsServiceDiscovery) +// 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 AWSAppMeshVirtualNode_DnsServiceDiscovery struct { +type VirtualNode_DnsServiceDiscovery struct { // Hostname AWS CloudFormation Property // Required: true @@ -22,42 +24,42 @@ type AWSAppMeshVirtualNode_DnsServiceDiscovery struct { } // AWSCloudFormationType returns the AWS CloudFormation resource type -func (r *AWSAppMeshVirtualNode_DnsServiceDiscovery) AWSCloudFormationType() string { +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 *AWSAppMeshVirtualNode_DnsServiceDiscovery) DependsOn() []string { +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 *AWSAppMeshVirtualNode_DnsServiceDiscovery) SetDependsOn(dependencies []string) { +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 *AWSAppMeshVirtualNode_DnsServiceDiscovery) Metadata() map[string]interface{} { +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 *AWSAppMeshVirtualNode_DnsServiceDiscovery) SetMetadata(metadata map[string]interface{}) { +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 *AWSAppMeshVirtualNode_DnsServiceDiscovery) DeletionPolicy() policies.DeletionPolicy { +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 *AWSAppMeshVirtualNode_DnsServiceDiscovery) SetDeletionPolicy(policy policies.DeletionPolicy) { +func (r *VirtualNode_DnsServiceDiscovery) SetDeletionPolicy(policy policies.DeletionPolicy) { r._deletionPolicy = policy } diff --git a/cloudformation/resources/aws-appmesh-virtualnode_fileaccesslog.go b/cloudformation/appmesh/aws-appmesh-virtualnode_fileaccesslog.go similarity index 71% rename from cloudformation/resources/aws-appmesh-virtualnode_fileaccesslog.go rename to cloudformation/appmesh/aws-appmesh-virtualnode_fileaccesslog.go index 2c60fdb0d7..fbef524655 100644 --- a/cloudformation/resources/aws-appmesh-virtualnode_fileaccesslog.go +++ b/cloudformation/appmesh/aws-appmesh-virtualnode_fileaccesslog.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_FileAccessLog AWS CloudFormation Resource (AWS::AppMesh::VirtualNode.FileAccessLog) +// 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 AWSAppMeshVirtualNode_FileAccessLog struct { +type VirtualNode_FileAccessLog struct { // Path AWS CloudFormation Property // Required: true @@ -22,42 +24,42 @@ type AWSAppMeshVirtualNode_FileAccessLog struct { } // AWSCloudFormationType returns the AWS CloudFormation resource type -func (r *AWSAppMeshVirtualNode_FileAccessLog) AWSCloudFormationType() string { +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 *AWSAppMeshVirtualNode_FileAccessLog) DependsOn() []string { +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 *AWSAppMeshVirtualNode_FileAccessLog) SetDependsOn(dependencies []string) { +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 *AWSAppMeshVirtualNode_FileAccessLog) Metadata() map[string]interface{} { +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 *AWSAppMeshVirtualNode_FileAccessLog) SetMetadata(metadata map[string]interface{}) { +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 *AWSAppMeshVirtualNode_FileAccessLog) DeletionPolicy() policies.DeletionPolicy { +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 *AWSAppMeshVirtualNode_FileAccessLog) SetDeletionPolicy(policy policies.DeletionPolicy) { +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/resources/aws-appmesh-virtualnode_listener.go b/cloudformation/appmesh/aws-appmesh-virtualnode_listener.go similarity index 70% rename from cloudformation/resources/aws-appmesh-virtualnode_listener.go rename to cloudformation/appmesh/aws-appmesh-virtualnode_listener.go index 0f896fe7b0..adf5365ffe 100644 --- a/cloudformation/resources/aws-appmesh-virtualnode_listener.go +++ b/cloudformation/appmesh/aws-appmesh-virtualnode_listener.go @@ -1,20 +1,22 @@ -package resources +package appmesh -import "github.com/awslabs/goformation/v2/cloudformation/policies" +import ( + "github.com/awslabs/goformation/v3/cloudformation/policies" +) -// AWSAppMeshVirtualNode_Listener AWS CloudFormation Resource (AWS::AppMesh::VirtualNode.Listener) +// 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 AWSAppMeshVirtualNode_Listener struct { +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 *AWSAppMeshVirtualNode_HealthCheck `json:"HealthCheck,omitempty"` + 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 *AWSAppMeshVirtualNode_PortMapping `json:"PortMapping,omitempty"` + PortMapping *VirtualNode_PortMapping `json:"PortMapping,omitempty"` // _deletionPolicy represents a CloudFormation DeletionPolicy _deletionPolicy policies.DeletionPolicy @@ -27,42 +29,42 @@ type AWSAppMeshVirtualNode_Listener struct { } // AWSCloudFormationType returns the AWS CloudFormation resource type -func (r *AWSAppMeshVirtualNode_Listener) AWSCloudFormationType() string { +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 *AWSAppMeshVirtualNode_Listener) DependsOn() []string { +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 *AWSAppMeshVirtualNode_Listener) SetDependsOn(dependencies []string) { +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 *AWSAppMeshVirtualNode_Listener) Metadata() map[string]interface{} { +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 *AWSAppMeshVirtualNode_Listener) SetMetadata(metadata map[string]interface{}) { +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 *AWSAppMeshVirtualNode_Listener) DeletionPolicy() policies.DeletionPolicy { +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 *AWSAppMeshVirtualNode_Listener) SetDeletionPolicy(policy policies.DeletionPolicy) { +func (r *VirtualNode_Listener) SetDeletionPolicy(policy policies.DeletionPolicy) { r._deletionPolicy = policy } diff --git a/cloudformation/resources/aws-appmesh-virtualnode_logging.go b/cloudformation/appmesh/aws-appmesh-virtualnode_logging.go similarity index 70% rename from cloudformation/resources/aws-appmesh-virtualnode_logging.go rename to cloudformation/appmesh/aws-appmesh-virtualnode_logging.go index 00b56bbfc5..510d6b2e43 100644 --- a/cloudformation/resources/aws-appmesh-virtualnode_logging.go +++ b/cloudformation/appmesh/aws-appmesh-virtualnode_logging.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" +) -// AWSAppMeshVirtualNode_Logging AWS CloudFormation Resource (AWS::AppMesh::VirtualNode.Logging) +// 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 AWSAppMeshVirtualNode_Logging struct { +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 *AWSAppMeshVirtualNode_AccessLog `json:"AccessLog,omitempty"` + AccessLog *VirtualNode_AccessLog `json:"AccessLog,omitempty"` // _deletionPolicy represents a CloudFormation DeletionPolicy _deletionPolicy policies.DeletionPolicy @@ -22,42 +24,42 @@ type AWSAppMeshVirtualNode_Logging struct { } // AWSCloudFormationType returns the AWS CloudFormation resource type -func (r *AWSAppMeshVirtualNode_Logging) AWSCloudFormationType() string { +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 *AWSAppMeshVirtualNode_Logging) DependsOn() []string { +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 *AWSAppMeshVirtualNode_Logging) SetDependsOn(dependencies []string) { +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 *AWSAppMeshVirtualNode_Logging) Metadata() map[string]interface{} { +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 *AWSAppMeshVirtualNode_Logging) SetMetadata(metadata map[string]interface{}) { +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 *AWSAppMeshVirtualNode_Logging) DeletionPolicy() policies.DeletionPolicy { +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 *AWSAppMeshVirtualNode_Logging) SetDeletionPolicy(policy policies.DeletionPolicy) { +func (r *VirtualNode_Logging) SetDeletionPolicy(policy policies.DeletionPolicy) { r._deletionPolicy = policy } diff --git a/cloudformation/resources/aws-appmesh-virtualnode_portmapping.go b/cloudformation/appmesh/aws-appmesh-virtualnode_portmapping.go similarity index 73% rename from cloudformation/resources/aws-appmesh-virtualnode_portmapping.go rename to cloudformation/appmesh/aws-appmesh-virtualnode_portmapping.go index af28db6e05..4d01ea71e2 100644 --- a/cloudformation/resources/aws-appmesh-virtualnode_portmapping.go +++ b/cloudformation/appmesh/aws-appmesh-virtualnode_portmapping.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_PortMapping AWS CloudFormation Resource (AWS::AppMesh::VirtualNode.PortMapping) +// 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 AWSAppMeshVirtualNode_PortMapping struct { +type VirtualNode_PortMapping struct { // Port AWS CloudFormation Property // Required: true @@ -27,42 +29,42 @@ type AWSAppMeshVirtualNode_PortMapping struct { } // AWSCloudFormationType returns the AWS CloudFormation resource type -func (r *AWSAppMeshVirtualNode_PortMapping) AWSCloudFormationType() string { +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 *AWSAppMeshVirtualNode_PortMapping) DependsOn() []string { +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 *AWSAppMeshVirtualNode_PortMapping) SetDependsOn(dependencies []string) { +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 *AWSAppMeshVirtualNode_PortMapping) Metadata() map[string]interface{} { +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 *AWSAppMeshVirtualNode_PortMapping) SetMetadata(metadata map[string]interface{}) { +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 *AWSAppMeshVirtualNode_PortMapping) DeletionPolicy() policies.DeletionPolicy { +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 *AWSAppMeshVirtualNode_PortMapping) SetDeletionPolicy(policy policies.DeletionPolicy) { +func (r *VirtualNode_PortMapping) SetDeletionPolicy(policy policies.DeletionPolicy) { r._deletionPolicy = policy } diff --git a/cloudformation/resources/aws-appmesh-virtualnode_servicediscovery.go b/cloudformation/appmesh/aws-appmesh-virtualnode_servicediscovery.go similarity index 69% rename from cloudformation/resources/aws-appmesh-virtualnode_servicediscovery.go rename to cloudformation/appmesh/aws-appmesh-virtualnode_servicediscovery.go index 67bd6a824d..a4414a97ec 100644 --- a/cloudformation/resources/aws-appmesh-virtualnode_servicediscovery.go +++ b/cloudformation/appmesh/aws-appmesh-virtualnode_servicediscovery.go @@ -1,20 +1,22 @@ -package resources +package appmesh -import "github.com/awslabs/goformation/v2/cloudformation/policies" +import ( + "github.com/awslabs/goformation/v3/cloudformation/policies" +) -// AWSAppMeshVirtualNode_ServiceDiscovery AWS CloudFormation Resource (AWS::AppMesh::VirtualNode.ServiceDiscovery) +// 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 AWSAppMeshVirtualNode_ServiceDiscovery struct { +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 *AWSAppMeshVirtualNode_AwsCloudMapServiceDiscovery `json:"AWSCloudMap,omitempty"` + 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 *AWSAppMeshVirtualNode_DnsServiceDiscovery `json:"DNS,omitempty"` + DNS *VirtualNode_DnsServiceDiscovery `json:"DNS,omitempty"` // _deletionPolicy represents a CloudFormation DeletionPolicy _deletionPolicy policies.DeletionPolicy @@ -27,42 +29,42 @@ type AWSAppMeshVirtualNode_ServiceDiscovery struct { } // AWSCloudFormationType returns the AWS CloudFormation resource type -func (r *AWSAppMeshVirtualNode_ServiceDiscovery) AWSCloudFormationType() string { +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 *AWSAppMeshVirtualNode_ServiceDiscovery) DependsOn() []string { +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 *AWSAppMeshVirtualNode_ServiceDiscovery) SetDependsOn(dependencies []string) { +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 *AWSAppMeshVirtualNode_ServiceDiscovery) Metadata() map[string]interface{} { +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 *AWSAppMeshVirtualNode_ServiceDiscovery) SetMetadata(metadata map[string]interface{}) { +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 *AWSAppMeshVirtualNode_ServiceDiscovery) DeletionPolicy() policies.DeletionPolicy { +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 *AWSAppMeshVirtualNode_ServiceDiscovery) SetDeletionPolicy(policy policies.DeletionPolicy) { +func (r *VirtualNode_ServiceDiscovery) SetDeletionPolicy(policy policies.DeletionPolicy) { r._deletionPolicy = policy } diff --git a/cloudformation/resources/aws-appmesh-virtualnode_virtualnodespec.go b/cloudformation/appmesh/aws-appmesh-virtualnode_virtualnodespec.go similarity index 70% rename from cloudformation/resources/aws-appmesh-virtualnode_virtualnodespec.go rename to cloudformation/appmesh/aws-appmesh-virtualnode_virtualnodespec.go index df690dc48b..af02ba3dfc 100644 --- a/cloudformation/resources/aws-appmesh-virtualnode_virtualnodespec.go +++ b/cloudformation/appmesh/aws-appmesh-virtualnode_virtualnodespec.go @@ -1,30 +1,32 @@ -package resources +package appmesh -import "github.com/awslabs/goformation/v2/cloudformation/policies" +import ( + "github.com/awslabs/goformation/v3/cloudformation/policies" +) -// AWSAppMeshVirtualNode_VirtualNodeSpec AWS CloudFormation Resource (AWS::AppMesh::VirtualNode.VirtualNodeSpec) +// 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 AWSAppMeshVirtualNode_VirtualNodeSpec struct { +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 []AWSAppMeshVirtualNode_Backend `json:"Backends,omitempty"` + 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 []AWSAppMeshVirtualNode_Listener `json:"Listeners,omitempty"` + 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 *AWSAppMeshVirtualNode_Logging `json:"Logging,omitempty"` + 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 *AWSAppMeshVirtualNode_ServiceDiscovery `json:"ServiceDiscovery,omitempty"` + ServiceDiscovery *VirtualNode_ServiceDiscovery `json:"ServiceDiscovery,omitempty"` // _deletionPolicy represents a CloudFormation DeletionPolicy _deletionPolicy policies.DeletionPolicy @@ -37,42 +39,42 @@ type AWSAppMeshVirtualNode_VirtualNodeSpec struct { } // AWSCloudFormationType returns the AWS CloudFormation resource type -func (r *AWSAppMeshVirtualNode_VirtualNodeSpec) AWSCloudFormationType() string { +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 *AWSAppMeshVirtualNode_VirtualNodeSpec) DependsOn() []string { +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 *AWSAppMeshVirtualNode_VirtualNodeSpec) SetDependsOn(dependencies []string) { +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 *AWSAppMeshVirtualNode_VirtualNodeSpec) Metadata() map[string]interface{} { +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 *AWSAppMeshVirtualNode_VirtualNodeSpec) SetMetadata(metadata map[string]interface{}) { +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 *AWSAppMeshVirtualNode_VirtualNodeSpec) DeletionPolicy() policies.DeletionPolicy { +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 *AWSAppMeshVirtualNode_VirtualNodeSpec) SetDeletionPolicy(policy policies.DeletionPolicy) { +func (r *VirtualNode_VirtualNodeSpec) SetDeletionPolicy(policy policies.DeletionPolicy) { r._deletionPolicy = policy } diff --git a/cloudformation/resources/aws-appmesh-virtualnode_virtualservicebackend.go b/cloudformation/appmesh/aws-appmesh-virtualnode_virtualservicebackend.go similarity index 70% rename from cloudformation/resources/aws-appmesh-virtualnode_virtualservicebackend.go rename to cloudformation/appmesh/aws-appmesh-virtualnode_virtualservicebackend.go index 7900c51fbf..0d9e8d3c48 100644 --- a/cloudformation/resources/aws-appmesh-virtualnode_virtualservicebackend.go +++ b/cloudformation/appmesh/aws-appmesh-virtualnode_virtualservicebackend.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_VirtualServiceBackend AWS CloudFormation Resource (AWS::AppMesh::VirtualNode.VirtualServiceBackend) +// 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 AWSAppMeshVirtualNode_VirtualServiceBackend struct { +type VirtualNode_VirtualServiceBackend struct { // VirtualServiceName AWS CloudFormation Property // Required: true @@ -22,42 +24,42 @@ type AWSAppMeshVirtualNode_VirtualServiceBackend struct { } // AWSCloudFormationType returns the AWS CloudFormation resource type -func (r *AWSAppMeshVirtualNode_VirtualServiceBackend) AWSCloudFormationType() string { +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 *AWSAppMeshVirtualNode_VirtualServiceBackend) DependsOn() []string { +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 *AWSAppMeshVirtualNode_VirtualServiceBackend) SetDependsOn(dependencies []string) { +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 *AWSAppMeshVirtualNode_VirtualServiceBackend) Metadata() map[string]interface{} { +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 *AWSAppMeshVirtualNode_VirtualServiceBackend) SetMetadata(metadata map[string]interface{}) { +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 *AWSAppMeshVirtualNode_VirtualServiceBackend) DeletionPolicy() policies.DeletionPolicy { +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 *AWSAppMeshVirtualNode_VirtualServiceBackend) SetDeletionPolicy(policy policies.DeletionPolicy) { +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/resources/aws-appmesh-virtualrouter_portmapping.go b/cloudformation/appmesh/aws-appmesh-virtualrouter_portmapping.go similarity index 73% rename from cloudformation/resources/aws-appmesh-virtualrouter_portmapping.go rename to cloudformation/appmesh/aws-appmesh-virtualrouter_portmapping.go index c8f57a1657..77ec0b04a9 100644 --- a/cloudformation/resources/aws-appmesh-virtualrouter_portmapping.go +++ b/cloudformation/appmesh/aws-appmesh-virtualrouter_portmapping.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" +) -// AWSAppMeshVirtualRouter_PortMapping AWS CloudFormation Resource (AWS::AppMesh::VirtualRouter.PortMapping) +// 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 AWSAppMeshVirtualRouter_PortMapping struct { +type VirtualRouter_PortMapping struct { // Port AWS CloudFormation Property // Required: true @@ -27,42 +29,42 @@ type AWSAppMeshVirtualRouter_PortMapping struct { } // AWSCloudFormationType returns the AWS CloudFormation resource type -func (r *AWSAppMeshVirtualRouter_PortMapping) AWSCloudFormationType() string { +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 *AWSAppMeshVirtualRouter_PortMapping) DependsOn() []string { +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 *AWSAppMeshVirtualRouter_PortMapping) SetDependsOn(dependencies []string) { +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 *AWSAppMeshVirtualRouter_PortMapping) Metadata() map[string]interface{} { +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 *AWSAppMeshVirtualRouter_PortMapping) SetMetadata(metadata map[string]interface{}) { +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 *AWSAppMeshVirtualRouter_PortMapping) DeletionPolicy() policies.DeletionPolicy { +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 *AWSAppMeshVirtualRouter_PortMapping) SetDeletionPolicy(policy policies.DeletionPolicy) { +func (r *VirtualRouter_PortMapping) SetDeletionPolicy(policy policies.DeletionPolicy) { r._deletionPolicy = policy } diff --git a/cloudformation/resources/aws-appmesh-virtualrouter_virtualrouterlistener.go b/cloudformation/appmesh/aws-appmesh-virtualrouter_virtualrouterlistener.go similarity index 67% rename from cloudformation/resources/aws-appmesh-virtualrouter_virtualrouterlistener.go rename to cloudformation/appmesh/aws-appmesh-virtualrouter_virtualrouterlistener.go index fa7b3e4736..fd9366dc65 100644 --- a/cloudformation/resources/aws-appmesh-virtualrouter_virtualrouterlistener.go +++ b/cloudformation/appmesh/aws-appmesh-virtualrouter_virtualrouterlistener.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" +) -// AWSAppMeshVirtualRouter_VirtualRouterListener AWS CloudFormation Resource (AWS::AppMesh::VirtualRouter.VirtualRouterListener) +// 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 AWSAppMeshVirtualRouter_VirtualRouterListener struct { +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 *AWSAppMeshVirtualRouter_PortMapping `json:"PortMapping,omitempty"` + PortMapping *VirtualRouter_PortMapping `json:"PortMapping,omitempty"` // _deletionPolicy represents a CloudFormation DeletionPolicy _deletionPolicy policies.DeletionPolicy @@ -22,42 +24,42 @@ type AWSAppMeshVirtualRouter_VirtualRouterListener struct { } // AWSCloudFormationType returns the AWS CloudFormation resource type -func (r *AWSAppMeshVirtualRouter_VirtualRouterListener) AWSCloudFormationType() string { +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 *AWSAppMeshVirtualRouter_VirtualRouterListener) DependsOn() []string { +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 *AWSAppMeshVirtualRouter_VirtualRouterListener) SetDependsOn(dependencies []string) { +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 *AWSAppMeshVirtualRouter_VirtualRouterListener) Metadata() map[string]interface{} { +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 *AWSAppMeshVirtualRouter_VirtualRouterListener) SetMetadata(metadata map[string]interface{}) { +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 *AWSAppMeshVirtualRouter_VirtualRouterListener) DeletionPolicy() policies.DeletionPolicy { +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 *AWSAppMeshVirtualRouter_VirtualRouterListener) SetDeletionPolicy(policy policies.DeletionPolicy) { +func (r *VirtualRouter_VirtualRouterListener) SetDeletionPolicy(policy policies.DeletionPolicy) { r._deletionPolicy = policy } diff --git a/cloudformation/resources/aws-appmesh-virtualrouter_virtualrouterspec.go b/cloudformation/appmesh/aws-appmesh-virtualrouter_virtualrouterspec.go similarity index 67% rename from cloudformation/resources/aws-appmesh-virtualrouter_virtualrouterspec.go rename to cloudformation/appmesh/aws-appmesh-virtualrouter_virtualrouterspec.go index 2f40791918..1585841463 100644 --- a/cloudformation/resources/aws-appmesh-virtualrouter_virtualrouterspec.go +++ b/cloudformation/appmesh/aws-appmesh-virtualrouter_virtualrouterspec.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" +) -// AWSAppMeshVirtualRouter_VirtualRouterSpec AWS CloudFormation Resource (AWS::AppMesh::VirtualRouter.VirtualRouterSpec) +// 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 AWSAppMeshVirtualRouter_VirtualRouterSpec struct { +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 []AWSAppMeshVirtualRouter_VirtualRouterListener `json:"Listeners,omitempty"` + Listeners []VirtualRouter_VirtualRouterListener `json:"Listeners,omitempty"` // _deletionPolicy represents a CloudFormation DeletionPolicy _deletionPolicy policies.DeletionPolicy @@ -22,42 +24,42 @@ type AWSAppMeshVirtualRouter_VirtualRouterSpec struct { } // AWSCloudFormationType returns the AWS CloudFormation resource type -func (r *AWSAppMeshVirtualRouter_VirtualRouterSpec) AWSCloudFormationType() string { +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 *AWSAppMeshVirtualRouter_VirtualRouterSpec) DependsOn() []string { +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 *AWSAppMeshVirtualRouter_VirtualRouterSpec) SetDependsOn(dependencies []string) { +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 *AWSAppMeshVirtualRouter_VirtualRouterSpec) Metadata() map[string]interface{} { +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 *AWSAppMeshVirtualRouter_VirtualRouterSpec) SetMetadata(metadata map[string]interface{}) { +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 *AWSAppMeshVirtualRouter_VirtualRouterSpec) DeletionPolicy() policies.DeletionPolicy { +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 *AWSAppMeshVirtualRouter_VirtualRouterSpec) SetDeletionPolicy(policy policies.DeletionPolicy) { +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/resources/aws-appmesh-virtualservice_virtualnodeserviceprovider.go b/cloudformation/appmesh/aws-appmesh-virtualservice_virtualnodeserviceprovider.go similarity index 68% rename from cloudformation/resources/aws-appmesh-virtualservice_virtualnodeserviceprovider.go rename to cloudformation/appmesh/aws-appmesh-virtualservice_virtualnodeserviceprovider.go index d4047b6fa8..410ca705e1 100644 --- a/cloudformation/resources/aws-appmesh-virtualservice_virtualnodeserviceprovider.go +++ b/cloudformation/appmesh/aws-appmesh-virtualservice_virtualnodeserviceprovider.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" +) -// AWSAppMeshVirtualService_VirtualNodeServiceProvider AWS CloudFormation Resource (AWS::AppMesh::VirtualService.VirtualNodeServiceProvider) +// 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 AWSAppMeshVirtualService_VirtualNodeServiceProvider struct { +type VirtualService_VirtualNodeServiceProvider struct { // VirtualNodeName AWS CloudFormation Property // Required: true @@ -22,42 +24,42 @@ type AWSAppMeshVirtualService_VirtualNodeServiceProvider struct { } // AWSCloudFormationType returns the AWS CloudFormation resource type -func (r *AWSAppMeshVirtualService_VirtualNodeServiceProvider) AWSCloudFormationType() string { +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 *AWSAppMeshVirtualService_VirtualNodeServiceProvider) DependsOn() []string { +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 *AWSAppMeshVirtualService_VirtualNodeServiceProvider) SetDependsOn(dependencies []string) { +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 *AWSAppMeshVirtualService_VirtualNodeServiceProvider) Metadata() map[string]interface{} { +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 *AWSAppMeshVirtualService_VirtualNodeServiceProvider) SetMetadata(metadata map[string]interface{}) { +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 *AWSAppMeshVirtualService_VirtualNodeServiceProvider) DeletionPolicy() policies.DeletionPolicy { +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 *AWSAppMeshVirtualService_VirtualNodeServiceProvider) SetDeletionPolicy(policy policies.DeletionPolicy) { +func (r *VirtualService_VirtualNodeServiceProvider) SetDeletionPolicy(policy policies.DeletionPolicy) { r._deletionPolicy = policy } diff --git a/cloudformation/resources/aws-appmesh-virtualservice_virtualrouterserviceprovider.go b/cloudformation/appmesh/aws-appmesh-virtualservice_virtualrouterserviceprovider.go similarity index 68% rename from cloudformation/resources/aws-appmesh-virtualservice_virtualrouterserviceprovider.go rename to cloudformation/appmesh/aws-appmesh-virtualservice_virtualrouterserviceprovider.go index 11fcd4c821..0545117817 100644 --- a/cloudformation/resources/aws-appmesh-virtualservice_virtualrouterserviceprovider.go +++ b/cloudformation/appmesh/aws-appmesh-virtualservice_virtualrouterserviceprovider.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" +) -// AWSAppMeshVirtualService_VirtualRouterServiceProvider AWS CloudFormation Resource (AWS::AppMesh::VirtualService.VirtualRouterServiceProvider) +// 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 AWSAppMeshVirtualService_VirtualRouterServiceProvider struct { +type VirtualService_VirtualRouterServiceProvider struct { // VirtualRouterName AWS CloudFormation Property // Required: true @@ -22,42 +24,42 @@ type AWSAppMeshVirtualService_VirtualRouterServiceProvider struct { } // AWSCloudFormationType returns the AWS CloudFormation resource type -func (r *AWSAppMeshVirtualService_VirtualRouterServiceProvider) AWSCloudFormationType() string { +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 *AWSAppMeshVirtualService_VirtualRouterServiceProvider) DependsOn() []string { +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 *AWSAppMeshVirtualService_VirtualRouterServiceProvider) SetDependsOn(dependencies []string) { +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 *AWSAppMeshVirtualService_VirtualRouterServiceProvider) Metadata() map[string]interface{} { +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 *AWSAppMeshVirtualService_VirtualRouterServiceProvider) SetMetadata(metadata map[string]interface{}) { +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 *AWSAppMeshVirtualService_VirtualRouterServiceProvider) DeletionPolicy() policies.DeletionPolicy { +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 *AWSAppMeshVirtualService_VirtualRouterServiceProvider) SetDeletionPolicy(policy policies.DeletionPolicy) { +func (r *VirtualService_VirtualRouterServiceProvider) SetDeletionPolicy(policy policies.DeletionPolicy) { r._deletionPolicy = policy } diff --git a/cloudformation/resources/aws-appmesh-virtualservice_virtualserviceprovider.go b/cloudformation/appmesh/aws-appmesh-virtualservice_virtualserviceprovider.go similarity index 67% rename from cloudformation/resources/aws-appmesh-virtualservice_virtualserviceprovider.go rename to cloudformation/appmesh/aws-appmesh-virtualservice_virtualserviceprovider.go index 08ffda0050..87bf890a36 100644 --- a/cloudformation/resources/aws-appmesh-virtualservice_virtualserviceprovider.go +++ b/cloudformation/appmesh/aws-appmesh-virtualservice_virtualserviceprovider.go @@ -1,20 +1,22 @@ -package resources +package appmesh -import "github.com/awslabs/goformation/v2/cloudformation/policies" +import ( + "github.com/awslabs/goformation/v3/cloudformation/policies" +) -// AWSAppMeshVirtualService_VirtualServiceProvider AWS CloudFormation Resource (AWS::AppMesh::VirtualService.VirtualServiceProvider) +// 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 AWSAppMeshVirtualService_VirtualServiceProvider struct { +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 *AWSAppMeshVirtualService_VirtualNodeServiceProvider `json:"VirtualNode,omitempty"` + 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 *AWSAppMeshVirtualService_VirtualRouterServiceProvider `json:"VirtualRouter,omitempty"` + VirtualRouter *VirtualService_VirtualRouterServiceProvider `json:"VirtualRouter,omitempty"` // _deletionPolicy represents a CloudFormation DeletionPolicy _deletionPolicy policies.DeletionPolicy @@ -27,42 +29,42 @@ type AWSAppMeshVirtualService_VirtualServiceProvider struct { } // AWSCloudFormationType returns the AWS CloudFormation resource type -func (r *AWSAppMeshVirtualService_VirtualServiceProvider) AWSCloudFormationType() string { +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 *AWSAppMeshVirtualService_VirtualServiceProvider) DependsOn() []string { +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 *AWSAppMeshVirtualService_VirtualServiceProvider) SetDependsOn(dependencies []string) { +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 *AWSAppMeshVirtualService_VirtualServiceProvider) Metadata() map[string]interface{} { +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 *AWSAppMeshVirtualService_VirtualServiceProvider) SetMetadata(metadata map[string]interface{}) { +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 *AWSAppMeshVirtualService_VirtualServiceProvider) DeletionPolicy() policies.DeletionPolicy { +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 *AWSAppMeshVirtualService_VirtualServiceProvider) SetDeletionPolicy(policy policies.DeletionPolicy) { +func (r *VirtualService_VirtualServiceProvider) SetDeletionPolicy(policy policies.DeletionPolicy) { r._deletionPolicy = policy } diff --git a/cloudformation/resources/aws-appmesh-virtualservice_virtualservicespec.go b/cloudformation/appmesh/aws-appmesh-virtualservice_virtualservicespec.go similarity index 67% rename from cloudformation/resources/aws-appmesh-virtualservice_virtualservicespec.go rename to cloudformation/appmesh/aws-appmesh-virtualservice_virtualservicespec.go index 3b01b8c986..65e1c62e06 100644 --- a/cloudformation/resources/aws-appmesh-virtualservice_virtualservicespec.go +++ b/cloudformation/appmesh/aws-appmesh-virtualservice_virtualservicespec.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" +) -// AWSAppMeshVirtualService_VirtualServiceSpec AWS CloudFormation Resource (AWS::AppMesh::VirtualService.VirtualServiceSpec) +// 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 AWSAppMeshVirtualService_VirtualServiceSpec struct { +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 *AWSAppMeshVirtualService_VirtualServiceProvider `json:"Provider,omitempty"` + Provider *VirtualService_VirtualServiceProvider `json:"Provider,omitempty"` // _deletionPolicy represents a CloudFormation DeletionPolicy _deletionPolicy policies.DeletionPolicy @@ -22,42 +24,42 @@ type AWSAppMeshVirtualService_VirtualServiceSpec struct { } // AWSCloudFormationType returns the AWS CloudFormation resource type -func (r *AWSAppMeshVirtualService_VirtualServiceSpec) AWSCloudFormationType() string { +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 *AWSAppMeshVirtualService_VirtualServiceSpec) DependsOn() []string { +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 *AWSAppMeshVirtualService_VirtualServiceSpec) SetDependsOn(dependencies []string) { +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 *AWSAppMeshVirtualService_VirtualServiceSpec) Metadata() map[string]interface{} { +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 *AWSAppMeshVirtualService_VirtualServiceSpec) SetMetadata(metadata map[string]interface{}) { +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 *AWSAppMeshVirtualService_VirtualServiceSpec) DeletionPolicy() policies.DeletionPolicy { +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 *AWSAppMeshVirtualService_VirtualServiceSpec) SetDeletionPolicy(policy policies.DeletionPolicy) { +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/resources/aws-appstream-directoryconfig_serviceaccountcredentials.go b/cloudformation/appstream/aws-appstream-directoryconfig_serviceaccountcredentials.go similarity index 71% rename from cloudformation/resources/aws-appstream-directoryconfig_serviceaccountcredentials.go rename to cloudformation/appstream/aws-appstream-directoryconfig_serviceaccountcredentials.go index 5f3ee5d695..bd56cddf91 100644 --- a/cloudformation/resources/aws-appstream-directoryconfig_serviceaccountcredentials.go +++ b/cloudformation/appstream/aws-appstream-directoryconfig_serviceaccountcredentials.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" +) -// AWSAppStreamDirectoryConfig_ServiceAccountCredentials AWS CloudFormation Resource (AWS::AppStream::DirectoryConfig.ServiceAccountCredentials) +// 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 AWSAppStreamDirectoryConfig_ServiceAccountCredentials struct { +type DirectoryConfig_ServiceAccountCredentials struct { // AccountName AWS CloudFormation Property // Required: true @@ -27,42 +29,42 @@ type AWSAppStreamDirectoryConfig_ServiceAccountCredentials struct { } // AWSCloudFormationType returns the AWS CloudFormation resource type -func (r *AWSAppStreamDirectoryConfig_ServiceAccountCredentials) AWSCloudFormationType() string { +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 *AWSAppStreamDirectoryConfig_ServiceAccountCredentials) DependsOn() []string { +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 *AWSAppStreamDirectoryConfig_ServiceAccountCredentials) SetDependsOn(dependencies []string) { +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 *AWSAppStreamDirectoryConfig_ServiceAccountCredentials) Metadata() map[string]interface{} { +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 *AWSAppStreamDirectoryConfig_ServiceAccountCredentials) SetMetadata(metadata map[string]interface{}) { +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 *AWSAppStreamDirectoryConfig_ServiceAccountCredentials) DeletionPolicy() policies.DeletionPolicy { +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 *AWSAppStreamDirectoryConfig_ServiceAccountCredentials) SetDeletionPolicy(policy policies.DeletionPolicy) { +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/resources/aws-appstream-fleet_computecapacity.go b/cloudformation/appstream/aws-appstream-fleet_computecapacity.go similarity index 71% rename from cloudformation/resources/aws-appstream-fleet_computecapacity.go rename to cloudformation/appstream/aws-appstream-fleet_computecapacity.go index 8f04d065f6..64d9457f8e 100644 --- a/cloudformation/resources/aws-appstream-fleet_computecapacity.go +++ b/cloudformation/appstream/aws-appstream-fleet_computecapacity.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_ComputeCapacity AWS CloudFormation Resource (AWS::AppStream::Fleet.ComputeCapacity) +// 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 AWSAppStreamFleet_ComputeCapacity struct { +type Fleet_ComputeCapacity struct { // DesiredInstances AWS CloudFormation Property // Required: true @@ -22,42 +24,42 @@ type AWSAppStreamFleet_ComputeCapacity struct { } // AWSCloudFormationType returns the AWS CloudFormation resource type -func (r *AWSAppStreamFleet_ComputeCapacity) AWSCloudFormationType() string { +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 *AWSAppStreamFleet_ComputeCapacity) DependsOn() []string { +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 *AWSAppStreamFleet_ComputeCapacity) SetDependsOn(dependencies []string) { +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 *AWSAppStreamFleet_ComputeCapacity) Metadata() map[string]interface{} { +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 *AWSAppStreamFleet_ComputeCapacity) SetMetadata(metadata map[string]interface{}) { +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 *AWSAppStreamFleet_ComputeCapacity) DeletionPolicy() policies.DeletionPolicy { +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 *AWSAppStreamFleet_ComputeCapacity) SetDeletionPolicy(policy policies.DeletionPolicy) { +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/resources/aws-appstream-imagebuilder_domainjoininfo.go b/cloudformation/appstream/aws-appstream-imagebuilder_domainjoininfo.go similarity index 74% rename from cloudformation/resources/aws-appstream-imagebuilder_domainjoininfo.go rename to cloudformation/appstream/aws-appstream-imagebuilder_domainjoininfo.go index dc9e9891ac..d2cf6a21fe 100644 --- a/cloudformation/resources/aws-appstream-imagebuilder_domainjoininfo.go +++ b/cloudformation/appstream/aws-appstream-imagebuilder_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" +) -// AWSAppStreamImageBuilder_DomainJoinInfo AWS CloudFormation Resource (AWS::AppStream::ImageBuilder.DomainJoinInfo) +// 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 AWSAppStreamImageBuilder_DomainJoinInfo struct { +type ImageBuilder_DomainJoinInfo struct { // DirectoryName AWS CloudFormation Property // Required: false @@ -27,42 +29,42 @@ type AWSAppStreamImageBuilder_DomainJoinInfo struct { } // AWSCloudFormationType returns the AWS CloudFormation resource type -func (r *AWSAppStreamImageBuilder_DomainJoinInfo) AWSCloudFormationType() string { +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 *AWSAppStreamImageBuilder_DomainJoinInfo) DependsOn() []string { +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 *AWSAppStreamImageBuilder_DomainJoinInfo) SetDependsOn(dependencies []string) { +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 *AWSAppStreamImageBuilder_DomainJoinInfo) Metadata() map[string]interface{} { +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 *AWSAppStreamImageBuilder_DomainJoinInfo) SetMetadata(metadata map[string]interface{}) { +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 *AWSAppStreamImageBuilder_DomainJoinInfo) DeletionPolicy() policies.DeletionPolicy { +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 *AWSAppStreamImageBuilder_DomainJoinInfo) SetDeletionPolicy(policy policies.DeletionPolicy) { +func (r *ImageBuilder_DomainJoinInfo) SetDeletionPolicy(policy policies.DeletionPolicy) { r._deletionPolicy = policy } diff --git a/cloudformation/resources/aws-appstream-imagebuilder_vpcconfig.go b/cloudformation/appstream/aws-appstream-imagebuilder_vpcconfig.go similarity index 74% rename from cloudformation/resources/aws-appstream-imagebuilder_vpcconfig.go rename to cloudformation/appstream/aws-appstream-imagebuilder_vpcconfig.go index 7f2315a031..ebfebb6ca0 100644 --- a/cloudformation/resources/aws-appstream-imagebuilder_vpcconfig.go +++ b/cloudformation/appstream/aws-appstream-imagebuilder_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" +) -// AWSAppStreamImageBuilder_VpcConfig AWS CloudFormation Resource (AWS::AppStream::ImageBuilder.VpcConfig) +// 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 AWSAppStreamImageBuilder_VpcConfig struct { +type ImageBuilder_VpcConfig struct { // SecurityGroupIds AWS CloudFormation Property // Required: false @@ -27,42 +29,42 @@ type AWSAppStreamImageBuilder_VpcConfig struct { } // AWSCloudFormationType returns the AWS CloudFormation resource type -func (r *AWSAppStreamImageBuilder_VpcConfig) AWSCloudFormationType() string { +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 *AWSAppStreamImageBuilder_VpcConfig) DependsOn() []string { +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 *AWSAppStreamImageBuilder_VpcConfig) SetDependsOn(dependencies []string) { +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 *AWSAppStreamImageBuilder_VpcConfig) Metadata() map[string]interface{} { +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 *AWSAppStreamImageBuilder_VpcConfig) SetMetadata(metadata map[string]interface{}) { +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 *AWSAppStreamImageBuilder_VpcConfig) DeletionPolicy() policies.DeletionPolicy { +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 *AWSAppStreamImageBuilder_VpcConfig) SetDeletionPolicy(policy policies.DeletionPolicy) { +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/resources/aws-appstream-stack_applicationsettings.go b/cloudformation/appstream/aws-appstream-stack_applicationsettings.go similarity index 73% rename from cloudformation/resources/aws-appstream-stack_applicationsettings.go rename to cloudformation/appstream/aws-appstream-stack_applicationsettings.go index 95407c974b..dd167e1b26 100644 --- a/cloudformation/resources/aws-appstream-stack_applicationsettings.go +++ b/cloudformation/appstream/aws-appstream-stack_applicationsettings.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_ApplicationSettings AWS CloudFormation Resource (AWS::AppStream::Stack.ApplicationSettings) +// 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 AWSAppStreamStack_ApplicationSettings struct { +type Stack_ApplicationSettings struct { // Enabled AWS CloudFormation Property // Required: true @@ -27,42 +29,42 @@ type AWSAppStreamStack_ApplicationSettings struct { } // AWSCloudFormationType returns the AWS CloudFormation resource type -func (r *AWSAppStreamStack_ApplicationSettings) AWSCloudFormationType() string { +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 *AWSAppStreamStack_ApplicationSettings) DependsOn() []string { +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 *AWSAppStreamStack_ApplicationSettings) SetDependsOn(dependencies []string) { +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 *AWSAppStreamStack_ApplicationSettings) Metadata() map[string]interface{} { +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 *AWSAppStreamStack_ApplicationSettings) SetMetadata(metadata map[string]interface{}) { +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 *AWSAppStreamStack_ApplicationSettings) DeletionPolicy() policies.DeletionPolicy { +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 *AWSAppStreamStack_ApplicationSettings) SetDeletionPolicy(policy policies.DeletionPolicy) { +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/resources/aws-appstream-stack_usersetting.go b/cloudformation/appstream/aws-appstream-stack_usersetting.go similarity index 74% rename from cloudformation/resources/aws-appstream-stack_usersetting.go rename to cloudformation/appstream/aws-appstream-stack_usersetting.go index 901da5371d..208889a71f 100644 --- a/cloudformation/resources/aws-appstream-stack_usersetting.go +++ b/cloudformation/appstream/aws-appstream-stack_usersetting.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_UserSetting AWS CloudFormation Resource (AWS::AppStream::Stack.UserSetting) +// 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 AWSAppStreamStack_UserSetting struct { +type Stack_UserSetting struct { // Action AWS CloudFormation Property // Required: true @@ -27,42 +29,42 @@ type AWSAppStreamStack_UserSetting struct { } // AWSCloudFormationType returns the AWS CloudFormation resource type -func (r *AWSAppStreamStack_UserSetting) AWSCloudFormationType() string { +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 *AWSAppStreamStack_UserSetting) DependsOn() []string { +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 *AWSAppStreamStack_UserSetting) SetDependsOn(dependencies []string) { +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 *AWSAppStreamStack_UserSetting) Metadata() map[string]interface{} { +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 *AWSAppStreamStack_UserSetting) SetMetadata(metadata map[string]interface{}) { +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 *AWSAppStreamStack_UserSetting) DeletionPolicy() policies.DeletionPolicy { +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 *AWSAppStreamStack_UserSetting) SetDeletionPolicy(policy policies.DeletionPolicy) { +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/resources/aws-appsync-datasource_authorizationconfig.go b/cloudformation/appsync/aws-appsync-datasource_authorizationconfig.go similarity index 71% rename from cloudformation/resources/aws-appsync-datasource_authorizationconfig.go rename to cloudformation/appsync/aws-appsync-datasource_authorizationconfig.go index 99ca311258..98189d4752 100644 --- a/cloudformation/resources/aws-appsync-datasource_authorizationconfig.go +++ b/cloudformation/appsync/aws-appsync-datasource_authorizationconfig.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_AuthorizationConfig AWS CloudFormation Resource (AWS::AppSync::DataSource.AuthorizationConfig) +// 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 AWSAppSyncDataSource_AuthorizationConfig struct { +type DataSource_AuthorizationConfig struct { // AuthorizationType AWS CloudFormation Property // Required: true @@ -14,7 +16,7 @@ type AWSAppSyncDataSource_AuthorizationConfig struct { // 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"` + AwsIamConfig *DataSource_AwsIamConfig `json:"AwsIamConfig,omitempty"` // _deletionPolicy represents a CloudFormation DeletionPolicy _deletionPolicy policies.DeletionPolicy @@ -27,42 +29,42 @@ type AWSAppSyncDataSource_AuthorizationConfig struct { } // AWSCloudFormationType returns the AWS CloudFormation resource type -func (r *AWSAppSyncDataSource_AuthorizationConfig) AWSCloudFormationType() string { +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 *AWSAppSyncDataSource_AuthorizationConfig) DependsOn() []string { +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 *AWSAppSyncDataSource_AuthorizationConfig) SetDependsOn(dependencies []string) { +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 *AWSAppSyncDataSource_AuthorizationConfig) Metadata() map[string]interface{} { +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 *AWSAppSyncDataSource_AuthorizationConfig) SetMetadata(metadata map[string]interface{}) { +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 *AWSAppSyncDataSource_AuthorizationConfig) DeletionPolicy() policies.DeletionPolicy { +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 *AWSAppSyncDataSource_AuthorizationConfig) SetDeletionPolicy(policy policies.DeletionPolicy) { +func (r *DataSource_AuthorizationConfig) SetDeletionPolicy(policy policies.DeletionPolicy) { r._deletionPolicy = policy } diff --git a/cloudformation/resources/aws-appsync-datasource_awsiamconfig.go b/cloudformation/appsync/aws-appsync-datasource_awsiamconfig.go similarity index 74% rename from cloudformation/resources/aws-appsync-datasource_awsiamconfig.go rename to cloudformation/appsync/aws-appsync-datasource_awsiamconfig.go index e0e6af9aaa..aba9f0bd09 100644 --- a/cloudformation/resources/aws-appsync-datasource_awsiamconfig.go +++ b/cloudformation/appsync/aws-appsync-datasource_awsiamconfig.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_AwsIamConfig AWS CloudFormation Resource (AWS::AppSync::DataSource.AwsIamConfig) +// 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 AWSAppSyncDataSource_AwsIamConfig struct { +type DataSource_AwsIamConfig struct { // SigningRegion AWS CloudFormation Property // Required: false @@ -27,42 +29,42 @@ type AWSAppSyncDataSource_AwsIamConfig struct { } // AWSCloudFormationType returns the AWS CloudFormation resource type -func (r *AWSAppSyncDataSource_AwsIamConfig) AWSCloudFormationType() string { +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 *AWSAppSyncDataSource_AwsIamConfig) DependsOn() []string { +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 *AWSAppSyncDataSource_AwsIamConfig) SetDependsOn(dependencies []string) { +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 *AWSAppSyncDataSource_AwsIamConfig) Metadata() map[string]interface{} { +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 *AWSAppSyncDataSource_AwsIamConfig) SetMetadata(metadata map[string]interface{}) { +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 *AWSAppSyncDataSource_AwsIamConfig) DeletionPolicy() policies.DeletionPolicy { +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 *AWSAppSyncDataSource_AwsIamConfig) SetDeletionPolicy(policy policies.DeletionPolicy) { +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/resources/aws-appsync-datasource_elasticsearchconfig.go b/cloudformation/appsync/aws-appsync-datasource_elasticsearchconfig.go similarity index 72% rename from cloudformation/resources/aws-appsync-datasource_elasticsearchconfig.go rename to cloudformation/appsync/aws-appsync-datasource_elasticsearchconfig.go index 0af5b8d2cf..6960109033 100644 --- a/cloudformation/resources/aws-appsync-datasource_elasticsearchconfig.go +++ b/cloudformation/appsync/aws-appsync-datasource_elasticsearchconfig.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_ElasticsearchConfig AWS CloudFormation Resource (AWS::AppSync::DataSource.ElasticsearchConfig) +// 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 AWSAppSyncDataSource_ElasticsearchConfig struct { +type DataSource_ElasticsearchConfig struct { // AwsRegion AWS CloudFormation Property // Required: true @@ -27,42 +29,42 @@ type AWSAppSyncDataSource_ElasticsearchConfig struct { } // AWSCloudFormationType returns the AWS CloudFormation resource type -func (r *AWSAppSyncDataSource_ElasticsearchConfig) AWSCloudFormationType() string { +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 *AWSAppSyncDataSource_ElasticsearchConfig) DependsOn() []string { +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 *AWSAppSyncDataSource_ElasticsearchConfig) SetDependsOn(dependencies []string) { +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 *AWSAppSyncDataSource_ElasticsearchConfig) Metadata() map[string]interface{} { +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 *AWSAppSyncDataSource_ElasticsearchConfig) SetMetadata(metadata map[string]interface{}) { +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 *AWSAppSyncDataSource_ElasticsearchConfig) DeletionPolicy() policies.DeletionPolicy { +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 *AWSAppSyncDataSource_ElasticsearchConfig) SetDeletionPolicy(policy policies.DeletionPolicy) { +func (r *DataSource_ElasticsearchConfig) SetDeletionPolicy(policy policies.DeletionPolicy) { r._deletionPolicy = policy } diff --git a/cloudformation/resources/aws-appsync-datasource_httpconfig.go b/cloudformation/appsync/aws-appsync-datasource_httpconfig.go similarity index 71% rename from cloudformation/resources/aws-appsync-datasource_httpconfig.go rename to cloudformation/appsync/aws-appsync-datasource_httpconfig.go index ad17134ec4..1aec7c119c 100644 --- a/cloudformation/resources/aws-appsync-datasource_httpconfig.go +++ b/cloudformation/appsync/aws-appsync-datasource_httpconfig.go @@ -1,15 +1,17 @@ -package resources +package appsync -import "github.com/awslabs/goformation/v2/cloudformation/policies" +import ( + "github.com/awslabs/goformation/v3/cloudformation/policies" +) -// AWSAppSyncDataSource_HttpConfig AWS CloudFormation Resource (AWS::AppSync::DataSource.HttpConfig) +// 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 AWSAppSyncDataSource_HttpConfig struct { +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 *AWSAppSyncDataSource_AuthorizationConfig `json:"AuthorizationConfig,omitempty"` + AuthorizationConfig *DataSource_AuthorizationConfig `json:"AuthorizationConfig,omitempty"` // Endpoint AWS CloudFormation Property // Required: true @@ -27,42 +29,42 @@ type AWSAppSyncDataSource_HttpConfig struct { } // AWSCloudFormationType returns the AWS CloudFormation resource type -func (r *AWSAppSyncDataSource_HttpConfig) AWSCloudFormationType() string { +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 *AWSAppSyncDataSource_HttpConfig) DependsOn() []string { +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 *AWSAppSyncDataSource_HttpConfig) SetDependsOn(dependencies []string) { +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 *AWSAppSyncDataSource_HttpConfig) Metadata() map[string]interface{} { +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 *AWSAppSyncDataSource_HttpConfig) SetMetadata(metadata map[string]interface{}) { +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 *AWSAppSyncDataSource_HttpConfig) DeletionPolicy() policies.DeletionPolicy { +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 *AWSAppSyncDataSource_HttpConfig) SetDeletionPolicy(policy policies.DeletionPolicy) { +func (r *DataSource_HttpConfig) SetDeletionPolicy(policy policies.DeletionPolicy) { r._deletionPolicy = policy } diff --git a/cloudformation/resources/aws-appsync-datasource_lambdaconfig.go b/cloudformation/appsync/aws-appsync-datasource_lambdaconfig.go similarity index 72% rename from cloudformation/resources/aws-appsync-datasource_lambdaconfig.go rename to cloudformation/appsync/aws-appsync-datasource_lambdaconfig.go index cf8a2d8ceb..2d4e0c61bf 100644 --- a/cloudformation/resources/aws-appsync-datasource_lambdaconfig.go +++ b/cloudformation/appsync/aws-appsync-datasource_lambdaconfig.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_LambdaConfig AWS CloudFormation Resource (AWS::AppSync::DataSource.LambdaConfig) +// 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 AWSAppSyncDataSource_LambdaConfig struct { +type DataSource_LambdaConfig struct { // LambdaFunctionArn AWS CloudFormation Property // Required: true @@ -22,42 +24,42 @@ type AWSAppSyncDataSource_LambdaConfig struct { } // AWSCloudFormationType returns the AWS CloudFormation resource type -func (r *AWSAppSyncDataSource_LambdaConfig) AWSCloudFormationType() string { +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 *AWSAppSyncDataSource_LambdaConfig) DependsOn() []string { +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 *AWSAppSyncDataSource_LambdaConfig) SetDependsOn(dependencies []string) { +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 *AWSAppSyncDataSource_LambdaConfig) Metadata() map[string]interface{} { +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 *AWSAppSyncDataSource_LambdaConfig) SetMetadata(metadata map[string]interface{}) { +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 *AWSAppSyncDataSource_LambdaConfig) DeletionPolicy() policies.DeletionPolicy { +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 *AWSAppSyncDataSource_LambdaConfig) SetDeletionPolicy(policy policies.DeletionPolicy) { +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/resources/aws-appsync-datasource_relationaldatabaseconfig.go b/cloudformation/appsync/aws-appsync-datasource_relationaldatabaseconfig.go similarity index 70% rename from cloudformation/resources/aws-appsync-datasource_relationaldatabaseconfig.go rename to cloudformation/appsync/aws-appsync-datasource_relationaldatabaseconfig.go index 465b0de17d..a0e3b4832f 100644 --- a/cloudformation/resources/aws-appsync-datasource_relationaldatabaseconfig.go +++ b/cloudformation/appsync/aws-appsync-datasource_relationaldatabaseconfig.go @@ -1,15 +1,17 @@ -package resources +package appsync -import "github.com/awslabs/goformation/v2/cloudformation/policies" +import ( + "github.com/awslabs/goformation/v3/cloudformation/policies" +) -// AWSAppSyncDataSource_RelationalDatabaseConfig AWS CloudFormation Resource (AWS::AppSync::DataSource.RelationalDatabaseConfig) +// 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 AWSAppSyncDataSource_RelationalDatabaseConfig struct { +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 *AWSAppSyncDataSource_RdsHttpEndpointConfig `json:"RdsHttpEndpointConfig,omitempty"` + RdsHttpEndpointConfig *DataSource_RdsHttpEndpointConfig `json:"RdsHttpEndpointConfig,omitempty"` // RelationalDatabaseSourceType AWS CloudFormation Property // Required: true @@ -27,42 +29,42 @@ type AWSAppSyncDataSource_RelationalDatabaseConfig struct { } // AWSCloudFormationType returns the AWS CloudFormation resource type -func (r *AWSAppSyncDataSource_RelationalDatabaseConfig) AWSCloudFormationType() string { +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 *AWSAppSyncDataSource_RelationalDatabaseConfig) DependsOn() []string { +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 *AWSAppSyncDataSource_RelationalDatabaseConfig) SetDependsOn(dependencies []string) { +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 *AWSAppSyncDataSource_RelationalDatabaseConfig) Metadata() map[string]interface{} { +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 *AWSAppSyncDataSource_RelationalDatabaseConfig) SetMetadata(metadata map[string]interface{}) { +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 *AWSAppSyncDataSource_RelationalDatabaseConfig) DeletionPolicy() policies.DeletionPolicy { +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 *AWSAppSyncDataSource_RelationalDatabaseConfig) SetDeletionPolicy(policy policies.DeletionPolicy) { +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/resources/aws-appsync-graphqlapi_additionalauthenticationprovider.go b/cloudformation/appsync/aws-appsync-graphqlapi_additionalauthenticationprovider.go similarity index 69% rename from cloudformation/resources/aws-appsync-graphqlapi_additionalauthenticationprovider.go rename to cloudformation/appsync/aws-appsync-graphqlapi_additionalauthenticationprovider.go index 278e186f59..d282eee02f 100644 --- a/cloudformation/resources/aws-appsync-graphqlapi_additionalauthenticationprovider.go +++ b/cloudformation/appsync/aws-appsync-graphqlapi_additionalauthenticationprovider.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_AdditionalAuthenticationProvider AWS CloudFormation Resource (AWS::AppSync::GraphQLApi.AdditionalAuthenticationProvider) +// 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 AWSAppSyncGraphQLApi_AdditionalAuthenticationProvider struct { +type GraphQLApi_AdditionalAuthenticationProvider struct { // AuthenticationType AWS CloudFormation Property // Required: true @@ -14,12 +16,12 @@ type AWSAppSyncGraphQLApi_AdditionalAuthenticationProvider struct { // 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"` + 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 *AWSAppSyncGraphQLApi_CognitoUserPoolConfig `json:"UserPoolConfig,omitempty"` + UserPoolConfig *GraphQLApi_CognitoUserPoolConfig `json:"UserPoolConfig,omitempty"` // _deletionPolicy represents a CloudFormation DeletionPolicy _deletionPolicy policies.DeletionPolicy @@ -32,42 +34,42 @@ type AWSAppSyncGraphQLApi_AdditionalAuthenticationProvider struct { } // AWSCloudFormationType returns the AWS CloudFormation resource type -func (r *AWSAppSyncGraphQLApi_AdditionalAuthenticationProvider) AWSCloudFormationType() string { +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 *AWSAppSyncGraphQLApi_AdditionalAuthenticationProvider) DependsOn() []string { +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 *AWSAppSyncGraphQLApi_AdditionalAuthenticationProvider) SetDependsOn(dependencies []string) { +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 *AWSAppSyncGraphQLApi_AdditionalAuthenticationProvider) Metadata() map[string]interface{} { +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 *AWSAppSyncGraphQLApi_AdditionalAuthenticationProvider) SetMetadata(metadata map[string]interface{}) { +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 *AWSAppSyncGraphQLApi_AdditionalAuthenticationProvider) DeletionPolicy() policies.DeletionPolicy { +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 *AWSAppSyncGraphQLApi_AdditionalAuthenticationProvider) SetDeletionPolicy(policy policies.DeletionPolicy) { +func (r *GraphQLApi_AdditionalAuthenticationProvider) SetDeletionPolicy(policy policies.DeletionPolicy) { r._deletionPolicy = policy } diff --git a/cloudformation/resources/aws-appsync-graphqlapi_additionalauthenticationproviders.go b/cloudformation/appsync/aws-appsync-graphqlapi_additionalauthenticationproviders.go similarity index 64% rename from cloudformation/resources/aws-appsync-graphqlapi_additionalauthenticationproviders.go rename to cloudformation/appsync/aws-appsync-graphqlapi_additionalauthenticationproviders.go index bd09a26ec0..7932b96945 100644 --- a/cloudformation/resources/aws-appsync-graphqlapi_additionalauthenticationproviders.go +++ b/cloudformation/appsync/aws-appsync-graphqlapi_additionalauthenticationproviders.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_AdditionalAuthenticationProviders AWS CloudFormation Resource (AWS::AppSync::GraphQLApi.AdditionalAuthenticationProviders) +// 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 AWSAppSyncGraphQLApi_AdditionalAuthenticationProviders struct { +type GraphQLApi_AdditionalAuthenticationProviders struct { // _deletionPolicy represents a CloudFormation DeletionPolicy _deletionPolicy policies.DeletionPolicy @@ -17,42 +19,42 @@ type AWSAppSyncGraphQLApi_AdditionalAuthenticationProviders struct { } // AWSCloudFormationType returns the AWS CloudFormation resource type -func (r *AWSAppSyncGraphQLApi_AdditionalAuthenticationProviders) AWSCloudFormationType() string { +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 *AWSAppSyncGraphQLApi_AdditionalAuthenticationProviders) DependsOn() []string { +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 *AWSAppSyncGraphQLApi_AdditionalAuthenticationProviders) SetDependsOn(dependencies []string) { +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 *AWSAppSyncGraphQLApi_AdditionalAuthenticationProviders) Metadata() map[string]interface{} { +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 *AWSAppSyncGraphQLApi_AdditionalAuthenticationProviders) SetMetadata(metadata map[string]interface{}) { +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 *AWSAppSyncGraphQLApi_AdditionalAuthenticationProviders) DeletionPolicy() policies.DeletionPolicy { +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 *AWSAppSyncGraphQLApi_AdditionalAuthenticationProviders) SetDeletionPolicy(policy policies.DeletionPolicy) { +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/resources/aws-appsync-graphqlapi_tags.go b/cloudformation/appsync/aws-appsync-graphqlapi_tags.go similarity index 70% rename from cloudformation/resources/aws-appsync-graphqlapi_tags.go rename to cloudformation/appsync/aws-appsync-graphqlapi_tags.go index bac00aa3f6..226e840b73 100644 --- a/cloudformation/resources/aws-appsync-graphqlapi_tags.go +++ b/cloudformation/appsync/aws-appsync-graphqlapi_tags.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_Tags AWS CloudFormation Resource (AWS::AppSync::GraphQLApi.Tags) +// 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 AWSAppSyncGraphQLApi_Tags struct { +type GraphQLApi_Tags struct { // _deletionPolicy represents a CloudFormation DeletionPolicy _deletionPolicy policies.DeletionPolicy @@ -17,42 +19,42 @@ type AWSAppSyncGraphQLApi_Tags struct { } // AWSCloudFormationType returns the AWS CloudFormation resource type -func (r *AWSAppSyncGraphQLApi_Tags) AWSCloudFormationType() string { +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 *AWSAppSyncGraphQLApi_Tags) DependsOn() []string { +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 *AWSAppSyncGraphQLApi_Tags) SetDependsOn(dependencies []string) { +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 *AWSAppSyncGraphQLApi_Tags) Metadata() map[string]interface{} { +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 *AWSAppSyncGraphQLApi_Tags) SetMetadata(metadata map[string]interface{}) { +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 *AWSAppSyncGraphQLApi_Tags) DeletionPolicy() policies.DeletionPolicy { +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 *AWSAppSyncGraphQLApi_Tags) SetDeletionPolicy(policy policies.DeletionPolicy) { +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/resources/aws-appsync-resolver_pipelineconfig.go b/cloudformation/appsync/aws-appsync-resolver_pipelineconfig.go similarity index 71% rename from cloudformation/resources/aws-appsync-resolver_pipelineconfig.go rename to cloudformation/appsync/aws-appsync-resolver_pipelineconfig.go index 237018c8c2..1121e0be40 100644 --- a/cloudformation/resources/aws-appsync-resolver_pipelineconfig.go +++ b/cloudformation/appsync/aws-appsync-resolver_pipelineconfig.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" +) -// AWSAppSyncResolver_PipelineConfig AWS CloudFormation Resource (AWS::AppSync::Resolver.PipelineConfig) +// 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 AWSAppSyncResolver_PipelineConfig struct { +type Resolver_PipelineConfig struct { // Functions AWS CloudFormation Property // Required: false @@ -22,42 +24,42 @@ type AWSAppSyncResolver_PipelineConfig struct { } // AWSCloudFormationType returns the AWS CloudFormation resource type -func (r *AWSAppSyncResolver_PipelineConfig) AWSCloudFormationType() string { +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 *AWSAppSyncResolver_PipelineConfig) DependsOn() []string { +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 *AWSAppSyncResolver_PipelineConfig) SetDependsOn(dependencies []string) { +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 *AWSAppSyncResolver_PipelineConfig) Metadata() map[string]interface{} { +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 *AWSAppSyncResolver_PipelineConfig) SetMetadata(metadata map[string]interface{}) { +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 *AWSAppSyncResolver_PipelineConfig) DeletionPolicy() policies.DeletionPolicy { +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 *AWSAppSyncResolver_PipelineConfig) SetDeletionPolicy(policy policies.DeletionPolicy) { +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/resources/alexa-ask-skill_overrides.go b/cloudformation/ask/alexa-ask-skill_overrides.go similarity index 73% rename from cloudformation/resources/alexa-ask-skill_overrides.go rename to cloudformation/ask/alexa-ask-skill_overrides.go index 7e6dd21250..e10e7e6a69 100644 --- a/cloudformation/resources/alexa-ask-skill_overrides.go +++ b/cloudformation/ask/alexa-ask-skill_overrides.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_Overrides AWS CloudFormation Resource (Alexa::ASK::Skill.Overrides) +// 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 AlexaASKSkill_Overrides struct { +type Skill_Overrides struct { // Manifest AWS CloudFormation Property // Required: false @@ -22,42 +24,42 @@ type AlexaASKSkill_Overrides struct { } // AWSCloudFormationType returns the AWS CloudFormation resource type -func (r *AlexaASKSkill_Overrides) AWSCloudFormationType() string { +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 *AlexaASKSkill_Overrides) DependsOn() []string { +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 *AlexaASKSkill_Overrides) SetDependsOn(dependencies []string) { +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 *AlexaASKSkill_Overrides) Metadata() map[string]interface{} { +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 *AlexaASKSkill_Overrides) SetMetadata(metadata map[string]interface{}) { +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 *AlexaASKSkill_Overrides) DeletionPolicy() policies.DeletionPolicy { +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 *AlexaASKSkill_Overrides) SetDeletionPolicy(policy policies.DeletionPolicy) { +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/resources/aws-autoscaling-autoscalinggroup_launchtemplate.go b/cloudformation/autoscaling/aws-autoscaling-autoscalinggroup_launchtemplate.go similarity index 65% rename from cloudformation/resources/aws-autoscaling-autoscalinggroup_launchtemplate.go rename to cloudformation/autoscaling/aws-autoscaling-autoscalinggroup_launchtemplate.go index 603cfb24db..eacd9b6e68 100644 --- a/cloudformation/resources/aws-autoscaling-autoscalinggroup_launchtemplate.go +++ b/cloudformation/autoscaling/aws-autoscaling-autoscalinggroup_launchtemplate.go @@ -1,20 +1,22 @@ -package resources +package autoscaling -import "github.com/awslabs/goformation/v2/cloudformation/policies" +import ( + "github.com/awslabs/goformation/v3/cloudformation/policies" +) -// AWSAutoScalingAutoScalingGroup_LaunchTemplate AWS CloudFormation Resource (AWS::AutoScaling::AutoScalingGroup.LaunchTemplate) +// AutoScalingGroup_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 { +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 *AWSAutoScalingAutoScalingGroup_LaunchTemplateSpecification `json:"LaunchTemplateSpecification,omitempty"` + 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 []AWSAutoScalingAutoScalingGroup_LaunchTemplateOverrides `json:"Overrides,omitempty"` + Overrides []AutoScalingGroup_LaunchTemplateOverrides `json:"Overrides,omitempty"` // _deletionPolicy represents a CloudFormation DeletionPolicy _deletionPolicy policies.DeletionPolicy @@ -27,42 +29,42 @@ type AWSAutoScalingAutoScalingGroup_LaunchTemplate struct { } // AWSCloudFormationType returns the AWS CloudFormation resource type -func (r *AWSAutoScalingAutoScalingGroup_LaunchTemplate) AWSCloudFormationType() string { +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 *AWSAutoScalingAutoScalingGroup_LaunchTemplate) DependsOn() []string { +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 *AWSAutoScalingAutoScalingGroup_LaunchTemplate) SetDependsOn(dependencies []string) { +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 *AWSAutoScalingAutoScalingGroup_LaunchTemplate) Metadata() map[string]interface{} { +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 *AWSAutoScalingAutoScalingGroup_LaunchTemplate) SetMetadata(metadata map[string]interface{}) { +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 *AWSAutoScalingAutoScalingGroup_LaunchTemplate) DeletionPolicy() policies.DeletionPolicy { +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 *AWSAutoScalingAutoScalingGroup_LaunchTemplate) SetDeletionPolicy(policy policies.DeletionPolicy) { +func (r *AutoScalingGroup_LaunchTemplate) SetDeletionPolicy(policy policies.DeletionPolicy) { r._deletionPolicy = policy } diff --git a/cloudformation/resources/aws-autoscaling-autoscalinggroup_launchtemplateoverrides.go b/cloudformation/autoscaling/aws-autoscaling-autoscalinggroup_launchtemplateoverrides.go similarity index 67% rename from cloudformation/resources/aws-autoscaling-autoscalinggroup_launchtemplateoverrides.go rename to cloudformation/autoscaling/aws-autoscaling-autoscalinggroup_launchtemplateoverrides.go index 539ad7e767..396307f4cc 100644 --- a/cloudformation/resources/aws-autoscaling-autoscalinggroup_launchtemplateoverrides.go +++ b/cloudformation/autoscaling/aws-autoscaling-autoscalinggroup_launchtemplateoverrides.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_LaunchTemplateOverrides AWS CloudFormation Resource (AWS::AutoScaling::AutoScalingGroup.LaunchTemplateOverrides) +// AutoScalingGroup_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 { +type AutoScalingGroup_LaunchTemplateOverrides struct { // InstanceType AWS CloudFormation Property // Required: false @@ -22,42 +24,42 @@ type AWSAutoScalingAutoScalingGroup_LaunchTemplateOverrides struct { } // AWSCloudFormationType returns the AWS CloudFormation resource type -func (r *AWSAutoScalingAutoScalingGroup_LaunchTemplateOverrides) AWSCloudFormationType() string { +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 *AWSAutoScalingAutoScalingGroup_LaunchTemplateOverrides) DependsOn() []string { +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 *AWSAutoScalingAutoScalingGroup_LaunchTemplateOverrides) SetDependsOn(dependencies []string) { +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 *AWSAutoScalingAutoScalingGroup_LaunchTemplateOverrides) Metadata() map[string]interface{} { +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 *AWSAutoScalingAutoScalingGroup_LaunchTemplateOverrides) SetMetadata(metadata map[string]interface{}) { +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 *AWSAutoScalingAutoScalingGroup_LaunchTemplateOverrides) DeletionPolicy() policies.DeletionPolicy { +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 *AWSAutoScalingAutoScalingGroup_LaunchTemplateOverrides) SetDeletionPolicy(policy policies.DeletionPolicy) { +func (r *AutoScalingGroup_LaunchTemplateOverrides) SetDeletionPolicy(policy policies.DeletionPolicy) { r._deletionPolicy = policy } diff --git a/cloudformation/resources/aws-autoscaling-autoscalinggroup_launchtemplatespecification.go b/cloudformation/autoscaling/aws-autoscaling-autoscalinggroup_launchtemplatespecification.go similarity index 72% rename from cloudformation/resources/aws-autoscaling-autoscalinggroup_launchtemplatespecification.go rename to cloudformation/autoscaling/aws-autoscaling-autoscalinggroup_launchtemplatespecification.go index 10dddc6852..1740816f1c 100644 --- a/cloudformation/resources/aws-autoscaling-autoscalinggroup_launchtemplatespecification.go +++ b/cloudformation/autoscaling/aws-autoscaling-autoscalinggroup_launchtemplatespecification.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_LaunchTemplateSpecification AWS CloudFormation Resource (AWS::AutoScaling::AutoScalingGroup.LaunchTemplateSpecification) +// 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 AWSAutoScalingAutoScalingGroup_LaunchTemplateSpecification struct { +type AutoScalingGroup_LaunchTemplateSpecification struct { // LaunchTemplateId AWS CloudFormation Property // Required: false @@ -32,42 +34,42 @@ type AWSAutoScalingAutoScalingGroup_LaunchTemplateSpecification struct { } // AWSCloudFormationType returns the AWS CloudFormation resource type -func (r *AWSAutoScalingAutoScalingGroup_LaunchTemplateSpecification) AWSCloudFormationType() string { +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 *AWSAutoScalingAutoScalingGroup_LaunchTemplateSpecification) DependsOn() []string { +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 *AWSAutoScalingAutoScalingGroup_LaunchTemplateSpecification) SetDependsOn(dependencies []string) { +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 *AWSAutoScalingAutoScalingGroup_LaunchTemplateSpecification) Metadata() map[string]interface{} { +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 *AWSAutoScalingAutoScalingGroup_LaunchTemplateSpecification) SetMetadata(metadata map[string]interface{}) { +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 *AWSAutoScalingAutoScalingGroup_LaunchTemplateSpecification) DeletionPolicy() policies.DeletionPolicy { +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 *AWSAutoScalingAutoScalingGroup_LaunchTemplateSpecification) SetDeletionPolicy(policy policies.DeletionPolicy) { +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/resources/aws-autoscaling-autoscalinggroup_metricscollection.go b/cloudformation/autoscaling/aws-autoscaling-autoscalinggroup_metricscollection.go similarity index 70% rename from cloudformation/resources/aws-autoscaling-autoscalinggroup_metricscollection.go rename to cloudformation/autoscaling/aws-autoscaling-autoscalinggroup_metricscollection.go index efe42fda5f..49408274b9 100644 --- a/cloudformation/resources/aws-autoscaling-autoscalinggroup_metricscollection.go +++ b/cloudformation/autoscaling/aws-autoscaling-autoscalinggroup_metricscollection.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_MetricsCollection AWS CloudFormation Resource (AWS::AutoScaling::AutoScalingGroup.MetricsCollection) +// AutoScalingGroup_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 { +type AutoScalingGroup_MetricsCollection struct { // Granularity AWS CloudFormation Property // Required: true @@ -27,42 +29,42 @@ type AWSAutoScalingAutoScalingGroup_MetricsCollection struct { } // AWSCloudFormationType returns the AWS CloudFormation resource type -func (r *AWSAutoScalingAutoScalingGroup_MetricsCollection) AWSCloudFormationType() string { +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 *AWSAutoScalingAutoScalingGroup_MetricsCollection) DependsOn() []string { +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 *AWSAutoScalingAutoScalingGroup_MetricsCollection) SetDependsOn(dependencies []string) { +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 *AWSAutoScalingAutoScalingGroup_MetricsCollection) Metadata() map[string]interface{} { +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 *AWSAutoScalingAutoScalingGroup_MetricsCollection) SetMetadata(metadata map[string]interface{}) { +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 *AWSAutoScalingAutoScalingGroup_MetricsCollection) DeletionPolicy() policies.DeletionPolicy { +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 *AWSAutoScalingAutoScalingGroup_MetricsCollection) SetDeletionPolicy(policy policies.DeletionPolicy) { +func (r *AutoScalingGroup_MetricsCollection) SetDeletionPolicy(policy policies.DeletionPolicy) { r._deletionPolicy = policy } diff --git a/cloudformation/resources/aws-autoscaling-autoscalinggroup_mixedinstancespolicy.go b/cloudformation/autoscaling/aws-autoscaling-autoscalinggroup_mixedinstancespolicy.go similarity index 65% rename from cloudformation/resources/aws-autoscaling-autoscalinggroup_mixedinstancespolicy.go rename to cloudformation/autoscaling/aws-autoscaling-autoscalinggroup_mixedinstancespolicy.go index cf4de1bea8..d0f83162a3 100644 --- a/cloudformation/resources/aws-autoscaling-autoscalinggroup_mixedinstancespolicy.go +++ b/cloudformation/autoscaling/aws-autoscaling-autoscalinggroup_mixedinstancespolicy.go @@ -1,20 +1,22 @@ -package resources +package autoscaling -import "github.com/awslabs/goformation/v2/cloudformation/policies" +import ( + "github.com/awslabs/goformation/v3/cloudformation/policies" +) -// AWSAutoScalingAutoScalingGroup_MixedInstancesPolicy AWS CloudFormation Resource (AWS::AutoScaling::AutoScalingGroup.MixedInstancesPolicy) +// AutoScalingGroup_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 { +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 *AWSAutoScalingAutoScalingGroup_InstancesDistribution `json:"InstancesDistribution,omitempty"` + 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 *AWSAutoScalingAutoScalingGroup_LaunchTemplate `json:"LaunchTemplate,omitempty"` + LaunchTemplate *AutoScalingGroup_LaunchTemplate `json:"LaunchTemplate,omitempty"` // _deletionPolicy represents a CloudFormation DeletionPolicy _deletionPolicy policies.DeletionPolicy @@ -27,42 +29,42 @@ type AWSAutoScalingAutoScalingGroup_MixedInstancesPolicy struct { } // AWSCloudFormationType returns the AWS CloudFormation resource type -func (r *AWSAutoScalingAutoScalingGroup_MixedInstancesPolicy) AWSCloudFormationType() string { +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 *AWSAutoScalingAutoScalingGroup_MixedInstancesPolicy) DependsOn() []string { +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 *AWSAutoScalingAutoScalingGroup_MixedInstancesPolicy) SetDependsOn(dependencies []string) { +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 *AWSAutoScalingAutoScalingGroup_MixedInstancesPolicy) Metadata() map[string]interface{} { +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 *AWSAutoScalingAutoScalingGroup_MixedInstancesPolicy) SetMetadata(metadata map[string]interface{}) { +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 *AWSAutoScalingAutoScalingGroup_MixedInstancesPolicy) DeletionPolicy() policies.DeletionPolicy { +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 *AWSAutoScalingAutoScalingGroup_MixedInstancesPolicy) SetDeletionPolicy(policy policies.DeletionPolicy) { +func (r *AutoScalingGroup_MixedInstancesPolicy) SetDeletionPolicy(policy policies.DeletionPolicy) { r._deletionPolicy = policy } diff --git a/cloudformation/resources/aws-autoscaling-autoscalinggroup_notificationconfiguration.go b/cloudformation/autoscaling/aws-autoscaling-autoscalinggroup_notificationconfiguration.go similarity index 69% rename from cloudformation/resources/aws-autoscaling-autoscalinggroup_notificationconfiguration.go rename to cloudformation/autoscaling/aws-autoscaling-autoscalinggroup_notificationconfiguration.go index 4c8c968dc6..f40a4ad9d5 100644 --- a/cloudformation/resources/aws-autoscaling-autoscalinggroup_notificationconfiguration.go +++ b/cloudformation/autoscaling/aws-autoscaling-autoscalinggroup_notificationconfiguration.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_NotificationConfiguration AWS CloudFormation Resource (AWS::AutoScaling::AutoScalingGroup.NotificationConfiguration) +// AutoScalingGroup_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 { +type AutoScalingGroup_NotificationConfiguration struct { // NotificationTypes AWS CloudFormation Property // Required: false @@ -27,42 +29,42 @@ type AWSAutoScalingAutoScalingGroup_NotificationConfiguration struct { } // AWSCloudFormationType returns the AWS CloudFormation resource type -func (r *AWSAutoScalingAutoScalingGroup_NotificationConfiguration) AWSCloudFormationType() string { +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 *AWSAutoScalingAutoScalingGroup_NotificationConfiguration) DependsOn() []string { +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 *AWSAutoScalingAutoScalingGroup_NotificationConfiguration) SetDependsOn(dependencies []string) { +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 *AWSAutoScalingAutoScalingGroup_NotificationConfiguration) Metadata() map[string]interface{} { +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 *AWSAutoScalingAutoScalingGroup_NotificationConfiguration) SetMetadata(metadata map[string]interface{}) { +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 *AWSAutoScalingAutoScalingGroup_NotificationConfiguration) DeletionPolicy() policies.DeletionPolicy { +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 *AWSAutoScalingAutoScalingGroup_NotificationConfiguration) SetDeletionPolicy(policy policies.DeletionPolicy) { +func (r *AutoScalingGroup_NotificationConfiguration) SetDeletionPolicy(policy policies.DeletionPolicy) { r._deletionPolicy = policy } diff --git a/cloudformation/resources/aws-autoscaling-autoscalinggroup_tagproperty.go b/cloudformation/autoscaling/aws-autoscaling-autoscalinggroup_tagproperty.go similarity index 72% rename from cloudformation/resources/aws-autoscaling-autoscalinggroup_tagproperty.go rename to cloudformation/autoscaling/aws-autoscaling-autoscalinggroup_tagproperty.go index 78e01a7aff..1bf1929cd0 100644 --- a/cloudformation/resources/aws-autoscaling-autoscalinggroup_tagproperty.go +++ b/cloudformation/autoscaling/aws-autoscaling-autoscalinggroup_tagproperty.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_TagProperty AWS CloudFormation Resource (AWS::AutoScaling::AutoScalingGroup.TagProperty) +// AutoScalingGroup_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 { +type AutoScalingGroup_TagProperty struct { // Key AWS CloudFormation Property // Required: true @@ -32,42 +34,42 @@ type AWSAutoScalingAutoScalingGroup_TagProperty struct { } // AWSCloudFormationType returns the AWS CloudFormation resource type -func (r *AWSAutoScalingAutoScalingGroup_TagProperty) AWSCloudFormationType() string { +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 *AWSAutoScalingAutoScalingGroup_TagProperty) DependsOn() []string { +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 *AWSAutoScalingAutoScalingGroup_TagProperty) SetDependsOn(dependencies []string) { +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 *AWSAutoScalingAutoScalingGroup_TagProperty) Metadata() map[string]interface{} { +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 *AWSAutoScalingAutoScalingGroup_TagProperty) SetMetadata(metadata map[string]interface{}) { +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 *AWSAutoScalingAutoScalingGroup_TagProperty) DeletionPolicy() policies.DeletionPolicy { +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 *AWSAutoScalingAutoScalingGroup_TagProperty) SetDeletionPolicy(policy policies.DeletionPolicy) { +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/resources/aws-autoscaling-launchconfiguration_blockdevicemapping.go b/cloudformation/autoscaling/aws-autoscaling-launchconfiguration_blockdevicemapping.go similarity index 72% rename from cloudformation/resources/aws-autoscaling-launchconfiguration_blockdevicemapping.go rename to cloudformation/autoscaling/aws-autoscaling-launchconfiguration_blockdevicemapping.go index fabe095b18..fc50284262 100644 --- a/cloudformation/resources/aws-autoscaling-launchconfiguration_blockdevicemapping.go +++ b/cloudformation/autoscaling/aws-autoscaling-launchconfiguration_blockdevicemapping.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_BlockDeviceMapping AWS CloudFormation Resource (AWS::AutoScaling::LaunchConfiguration.BlockDeviceMapping) +// 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 AWSAutoScalingLaunchConfiguration_BlockDeviceMapping struct { +type LaunchConfiguration_BlockDeviceMapping struct { // DeviceName AWS CloudFormation Property // Required: true @@ -14,7 +16,7 @@ type AWSAutoScalingLaunchConfiguration_BlockDeviceMapping struct { // 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"` + Ebs *LaunchConfiguration_BlockDevice `json:"Ebs,omitempty"` // NoDevice AWS CloudFormation Property // Required: false @@ -37,42 +39,42 @@ type AWSAutoScalingLaunchConfiguration_BlockDeviceMapping struct { } // AWSCloudFormationType returns the AWS CloudFormation resource type -func (r *AWSAutoScalingLaunchConfiguration_BlockDeviceMapping) AWSCloudFormationType() string { +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 *AWSAutoScalingLaunchConfiguration_BlockDeviceMapping) DependsOn() []string { +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 *AWSAutoScalingLaunchConfiguration_BlockDeviceMapping) SetDependsOn(dependencies []string) { +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 *AWSAutoScalingLaunchConfiguration_BlockDeviceMapping) Metadata() map[string]interface{} { +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 *AWSAutoScalingLaunchConfiguration_BlockDeviceMapping) SetMetadata(metadata map[string]interface{}) { +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 *AWSAutoScalingLaunchConfiguration_BlockDeviceMapping) DeletionPolicy() policies.DeletionPolicy { +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 *AWSAutoScalingLaunchConfiguration_BlockDeviceMapping) SetDeletionPolicy(policy policies.DeletionPolicy) { +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/resources/aws-autoscaling-scalingpolicy_customizedmetricspecification.go b/cloudformation/autoscaling/aws-autoscaling-scalingpolicy_customizedmetricspecification.go similarity index 74% rename from cloudformation/resources/aws-autoscaling-scalingpolicy_customizedmetricspecification.go rename to cloudformation/autoscaling/aws-autoscaling-scalingpolicy_customizedmetricspecification.go index 76318193b0..82816ede4f 100644 --- a/cloudformation/resources/aws-autoscaling-scalingpolicy_customizedmetricspecification.go +++ b/cloudformation/autoscaling/aws-autoscaling-scalingpolicy_customizedmetricspecification.go @@ -1,15 +1,17 @@ -package resources +package autoscaling -import "github.com/awslabs/goformation/v2/cloudformation/policies" +import ( + "github.com/awslabs/goformation/v3/cloudformation/policies" +) -// AWSAutoScalingScalingPolicy_CustomizedMetricSpecification AWS CloudFormation Resource (AWS::AutoScaling::ScalingPolicy.CustomizedMetricSpecification) +// 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 AWSAutoScalingScalingPolicy_CustomizedMetricSpecification struct { +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 []AWSAutoScalingScalingPolicy_MetricDimension `json:"Dimensions,omitempty"` + Dimensions []ScalingPolicy_MetricDimension `json:"Dimensions,omitempty"` // MetricName AWS CloudFormation Property // Required: true @@ -42,42 +44,42 @@ type AWSAutoScalingScalingPolicy_CustomizedMetricSpecification struct { } // AWSCloudFormationType returns the AWS CloudFormation resource type -func (r *AWSAutoScalingScalingPolicy_CustomizedMetricSpecification) AWSCloudFormationType() string { +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 *AWSAutoScalingScalingPolicy_CustomizedMetricSpecification) DependsOn() []string { +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 *AWSAutoScalingScalingPolicy_CustomizedMetricSpecification) SetDependsOn(dependencies []string) { +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 *AWSAutoScalingScalingPolicy_CustomizedMetricSpecification) Metadata() map[string]interface{} { +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 *AWSAutoScalingScalingPolicy_CustomizedMetricSpecification) SetMetadata(metadata map[string]interface{}) { +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 *AWSAutoScalingScalingPolicy_CustomizedMetricSpecification) DeletionPolicy() policies.DeletionPolicy { +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 *AWSAutoScalingScalingPolicy_CustomizedMetricSpecification) SetDeletionPolicy(policy policies.DeletionPolicy) { +func (r *ScalingPolicy_CustomizedMetricSpecification) SetDeletionPolicy(policy policies.DeletionPolicy) { r._deletionPolicy = policy } diff --git a/cloudformation/resources/aws-autoscaling-scalingpolicy_metricdimension.go b/cloudformation/autoscaling/aws-autoscaling-scalingpolicy_metricdimension.go similarity index 72% rename from cloudformation/resources/aws-autoscaling-scalingpolicy_metricdimension.go rename to cloudformation/autoscaling/aws-autoscaling-scalingpolicy_metricdimension.go index 5fefa2f7ed..3d1824a859 100644 --- a/cloudformation/resources/aws-autoscaling-scalingpolicy_metricdimension.go +++ b/cloudformation/autoscaling/aws-autoscaling-scalingpolicy_metricdimension.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_MetricDimension AWS CloudFormation Resource (AWS::AutoScaling::ScalingPolicy.MetricDimension) +// 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 AWSAutoScalingScalingPolicy_MetricDimension struct { +type ScalingPolicy_MetricDimension struct { // Name AWS CloudFormation Property // Required: true @@ -27,42 +29,42 @@ type AWSAutoScalingScalingPolicy_MetricDimension struct { } // AWSCloudFormationType returns the AWS CloudFormation resource type -func (r *AWSAutoScalingScalingPolicy_MetricDimension) AWSCloudFormationType() string { +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 *AWSAutoScalingScalingPolicy_MetricDimension) DependsOn() []string { +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 *AWSAutoScalingScalingPolicy_MetricDimension) SetDependsOn(dependencies []string) { +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 *AWSAutoScalingScalingPolicy_MetricDimension) Metadata() map[string]interface{} { +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 *AWSAutoScalingScalingPolicy_MetricDimension) SetMetadata(metadata map[string]interface{}) { +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 *AWSAutoScalingScalingPolicy_MetricDimension) DeletionPolicy() policies.DeletionPolicy { +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 *AWSAutoScalingScalingPolicy_MetricDimension) SetDeletionPolicy(policy policies.DeletionPolicy) { +func (r *ScalingPolicy_MetricDimension) SetDeletionPolicy(policy policies.DeletionPolicy) { r._deletionPolicy = policy } diff --git a/cloudformation/resources/aws-autoscaling-scalingpolicy_predefinedmetricspecification.go b/cloudformation/autoscaling/aws-autoscaling-scalingpolicy_predefinedmetricspecification.go similarity index 70% rename from cloudformation/resources/aws-autoscaling-scalingpolicy_predefinedmetricspecification.go rename to cloudformation/autoscaling/aws-autoscaling-scalingpolicy_predefinedmetricspecification.go index ffbea063df..587475dccf 100644 --- a/cloudformation/resources/aws-autoscaling-scalingpolicy_predefinedmetricspecification.go +++ b/cloudformation/autoscaling/aws-autoscaling-scalingpolicy_predefinedmetricspecification.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_PredefinedMetricSpecification AWS CloudFormation Resource (AWS::AutoScaling::ScalingPolicy.PredefinedMetricSpecification) +// 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 AWSAutoScalingScalingPolicy_PredefinedMetricSpecification struct { +type ScalingPolicy_PredefinedMetricSpecification struct { // PredefinedMetricType AWS CloudFormation Property // Required: true @@ -27,42 +29,42 @@ type AWSAutoScalingScalingPolicy_PredefinedMetricSpecification struct { } // AWSCloudFormationType returns the AWS CloudFormation resource type -func (r *AWSAutoScalingScalingPolicy_PredefinedMetricSpecification) AWSCloudFormationType() string { +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 *AWSAutoScalingScalingPolicy_PredefinedMetricSpecification) DependsOn() []string { +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 *AWSAutoScalingScalingPolicy_PredefinedMetricSpecification) SetDependsOn(dependencies []string) { +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 *AWSAutoScalingScalingPolicy_PredefinedMetricSpecification) Metadata() map[string]interface{} { +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 *AWSAutoScalingScalingPolicy_PredefinedMetricSpecification) SetMetadata(metadata map[string]interface{}) { +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 *AWSAutoScalingScalingPolicy_PredefinedMetricSpecification) DeletionPolicy() policies.DeletionPolicy { +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 *AWSAutoScalingScalingPolicy_PredefinedMetricSpecification) SetDeletionPolicy(policy policies.DeletionPolicy) { +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/resources/aws-autoscaling-scalingpolicy_targettrackingconfiguration.go b/cloudformation/autoscaling/aws-autoscaling-scalingpolicy_targettrackingconfiguration.go similarity index 70% rename from cloudformation/resources/aws-autoscaling-scalingpolicy_targettrackingconfiguration.go rename to cloudformation/autoscaling/aws-autoscaling-scalingpolicy_targettrackingconfiguration.go index 6556f2ce58..b03407ca08 100644 --- a/cloudformation/resources/aws-autoscaling-scalingpolicy_targettrackingconfiguration.go +++ b/cloudformation/autoscaling/aws-autoscaling-scalingpolicy_targettrackingconfiguration.go @@ -1,15 +1,17 @@ -package resources +package autoscaling -import "github.com/awslabs/goformation/v2/cloudformation/policies" +import ( + "github.com/awslabs/goformation/v3/cloudformation/policies" +) -// AWSAutoScalingScalingPolicy_TargetTrackingConfiguration AWS CloudFormation Resource (AWS::AutoScaling::ScalingPolicy.TargetTrackingConfiguration) +// 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 AWSAutoScalingScalingPolicy_TargetTrackingConfiguration struct { +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 *AWSAutoScalingScalingPolicy_CustomizedMetricSpecification `json:"CustomizedMetricSpecification,omitempty"` + CustomizedMetricSpecification *ScalingPolicy_CustomizedMetricSpecification `json:"CustomizedMetricSpecification,omitempty"` // DisableScaleIn AWS CloudFormation Property // Required: false @@ -19,7 +21,7 @@ type AWSAutoScalingScalingPolicy_TargetTrackingConfiguration struct { // 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"` + PredefinedMetricSpecification *ScalingPolicy_PredefinedMetricSpecification `json:"PredefinedMetricSpecification,omitempty"` // TargetValue AWS CloudFormation Property // Required: true @@ -37,42 +39,42 @@ type AWSAutoScalingScalingPolicy_TargetTrackingConfiguration struct { } // AWSCloudFormationType returns the AWS CloudFormation resource type -func (r *AWSAutoScalingScalingPolicy_TargetTrackingConfiguration) AWSCloudFormationType() string { +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 *AWSAutoScalingScalingPolicy_TargetTrackingConfiguration) DependsOn() []string { +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 *AWSAutoScalingScalingPolicy_TargetTrackingConfiguration) SetDependsOn(dependencies []string) { +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 *AWSAutoScalingScalingPolicy_TargetTrackingConfiguration) Metadata() map[string]interface{} { +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 *AWSAutoScalingScalingPolicy_TargetTrackingConfiguration) SetMetadata(metadata map[string]interface{}) { +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 *AWSAutoScalingScalingPolicy_TargetTrackingConfiguration) DeletionPolicy() policies.DeletionPolicy { +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 *AWSAutoScalingScalingPolicy_TargetTrackingConfiguration) SetDeletionPolicy(policy policies.DeletionPolicy) { +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/resources/aws-autoscalingplans-scalingplan.go b/cloudformation/autoscalingplans/aws-autoscalingplans-scalingplan.go similarity index 74% rename from cloudformation/resources/aws-autoscalingplans-scalingplan.go rename to cloudformation/autoscalingplans/aws-autoscalingplans-scalingplan.go index 5e6bf2ab59..cbe856ca50 100644 --- a/cloudformation/resources/aws-autoscalingplans-scalingplan.go +++ b/cloudformation/autoscalingplans/aws-autoscalingplans-scalingplan.go @@ -1,25 +1,26 @@ -package resources +package autoscalingplans import ( "bytes" "encoding/json" "fmt" - "github.com/awslabs/goformation/v2/cloudformation/policies" + + "github.com/awslabs/goformation/v3/cloudformation/policies" ) -// AWSAutoScalingPlansScalingPlan AWS CloudFormation Resource (AWS::AutoScalingPlans::ScalingPlan) +// ScalingPlan AWS CloudFormation Resource (AWS::AutoScalingPlans::ScalingPlan) // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-autoscalingplans-scalingplan.html -type AWSAutoScalingPlansScalingPlan struct { +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 *AWSAutoScalingPlansScalingPlan_ApplicationSource `json:"ApplicationSource,omitempty"` + 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 []AWSAutoScalingPlansScalingPlan_ScalingInstruction `json:"ScalingInstructions,omitempty"` + ScalingInstructions []ScalingPlan_ScalingInstruction `json:"ScalingInstructions,omitempty"` // _deletionPolicy represents a CloudFormation DeletionPolicy _deletionPolicy policies.DeletionPolicy @@ -32,50 +33,50 @@ type AWSAutoScalingPlansScalingPlan struct { } // AWSCloudFormationType returns the AWS CloudFormation resource type -func (r *AWSAutoScalingPlansScalingPlan) AWSCloudFormationType() string { +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 *AWSAutoScalingPlansScalingPlan) DependsOn() []string { +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 *AWSAutoScalingPlansScalingPlan) SetDependsOn(dependencies []string) { +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 *AWSAutoScalingPlansScalingPlan) Metadata() map[string]interface{} { +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 *AWSAutoScalingPlansScalingPlan) SetMetadata(metadata map[string]interface{}) { +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 *AWSAutoScalingPlansScalingPlan) DeletionPolicy() policies.DeletionPolicy { +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 *AWSAutoScalingPlansScalingPlan) SetDeletionPolicy(policy policies.DeletionPolicy) { +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 AWSAutoScalingPlansScalingPlan) MarshalJSON() ([]byte, error) { - type Properties AWSAutoScalingPlansScalingPlan +func (r ScalingPlan) MarshalJSON() ([]byte, error) { + type Properties ScalingPlan return json.Marshal(&struct { Type string Properties Properties @@ -93,8 +94,8 @@ func (r AWSAutoScalingPlansScalingPlan) MarshalJSON() ([]byte, error) { // 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 +func (r *ScalingPlan) UnmarshalJSON(b []byte) error { + type Properties ScalingPlan res := &struct { Type string Properties *Properties @@ -113,7 +114,7 @@ func (r *AWSAutoScalingPlansScalingPlan) UnmarshalJSON(b []byte) error { // If the resource has no Properties set, it could be nil if res.Properties != nil { - *r = AWSAutoScalingPlansScalingPlan(*res.Properties) + *r = ScalingPlan(*res.Properties) } if res.DependsOn != nil { r._dependsOn = res.DependsOn diff --git a/cloudformation/resources/aws-autoscalingplans-scalingplan_applicationsource.go b/cloudformation/autoscalingplans/aws-autoscalingplans-scalingplan_applicationsource.go similarity index 69% rename from cloudformation/resources/aws-autoscalingplans-scalingplan_applicationsource.go rename to cloudformation/autoscalingplans/aws-autoscalingplans-scalingplan_applicationsource.go index e9843eb22c..510020e66c 100644 --- a/cloudformation/resources/aws-autoscalingplans-scalingplan_applicationsource.go +++ b/cloudformation/autoscalingplans/aws-autoscalingplans-scalingplan_applicationsource.go @@ -1,10 +1,12 @@ -package resources +package autoscalingplans -import "github.com/awslabs/goformation/v2/cloudformation/policies" +import ( + "github.com/awslabs/goformation/v3/cloudformation/policies" +) -// AWSAutoScalingPlansScalingPlan_ApplicationSource AWS CloudFormation Resource (AWS::AutoScalingPlans::ScalingPlan.ApplicationSource) +// 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 AWSAutoScalingPlansScalingPlan_ApplicationSource struct { +type ScalingPlan_ApplicationSource struct { // CloudFormationStackARN AWS CloudFormation Property // Required: false @@ -14,7 +16,7 @@ type AWSAutoScalingPlansScalingPlan_ApplicationSource struct { // 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"` + TagFilters []ScalingPlan_TagFilter `json:"TagFilters,omitempty"` // _deletionPolicy represents a CloudFormation DeletionPolicy _deletionPolicy policies.DeletionPolicy @@ -27,42 +29,42 @@ type AWSAutoScalingPlansScalingPlan_ApplicationSource struct { } // AWSCloudFormationType returns the AWS CloudFormation resource type -func (r *AWSAutoScalingPlansScalingPlan_ApplicationSource) AWSCloudFormationType() string { +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 *AWSAutoScalingPlansScalingPlan_ApplicationSource) DependsOn() []string { +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 *AWSAutoScalingPlansScalingPlan_ApplicationSource) SetDependsOn(dependencies []string) { +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 *AWSAutoScalingPlansScalingPlan_ApplicationSource) Metadata() map[string]interface{} { +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 *AWSAutoScalingPlansScalingPlan_ApplicationSource) SetMetadata(metadata map[string]interface{}) { +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 *AWSAutoScalingPlansScalingPlan_ApplicationSource) DeletionPolicy() policies.DeletionPolicy { +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 *AWSAutoScalingPlansScalingPlan_ApplicationSource) SetDeletionPolicy(policy policies.DeletionPolicy) { +func (r *ScalingPlan_ApplicationSource) SetDeletionPolicy(policy policies.DeletionPolicy) { r._deletionPolicy = policy } diff --git a/cloudformation/resources/aws-autoscalingplans-scalingplan_customizedloadmetricspecification.go b/cloudformation/autoscalingplans/aws-autoscalingplans-scalingplan_customizedloadmetricspecification.go similarity index 74% rename from cloudformation/resources/aws-autoscalingplans-scalingplan_customizedloadmetricspecification.go rename to cloudformation/autoscalingplans/aws-autoscalingplans-scalingplan_customizedloadmetricspecification.go index 2722ab4974..b77894dc26 100644 --- a/cloudformation/resources/aws-autoscalingplans-scalingplan_customizedloadmetricspecification.go +++ b/cloudformation/autoscalingplans/aws-autoscalingplans-scalingplan_customizedloadmetricspecification.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_CustomizedLoadMetricSpecification AWS CloudFormation Resource (AWS::AutoScalingPlans::ScalingPlan.CustomizedLoadMetricSpecification) +// 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 AWSAutoScalingPlansScalingPlan_CustomizedLoadMetricSpecification struct { +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 []AWSAutoScalingPlansScalingPlan_MetricDimension `json:"Dimensions,omitempty"` + Dimensions []ScalingPlan_MetricDimension `json:"Dimensions,omitempty"` // MetricName AWS CloudFormation Property // Required: true @@ -42,42 +44,42 @@ type AWSAutoScalingPlansScalingPlan_CustomizedLoadMetricSpecification struct { } // AWSCloudFormationType returns the AWS CloudFormation resource type -func (r *AWSAutoScalingPlansScalingPlan_CustomizedLoadMetricSpecification) AWSCloudFormationType() string { +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 *AWSAutoScalingPlansScalingPlan_CustomizedLoadMetricSpecification) DependsOn() []string { +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 *AWSAutoScalingPlansScalingPlan_CustomizedLoadMetricSpecification) SetDependsOn(dependencies []string) { +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 *AWSAutoScalingPlansScalingPlan_CustomizedLoadMetricSpecification) Metadata() map[string]interface{} { +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 *AWSAutoScalingPlansScalingPlan_CustomizedLoadMetricSpecification) SetMetadata(metadata map[string]interface{}) { +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 *AWSAutoScalingPlansScalingPlan_CustomizedLoadMetricSpecification) DeletionPolicy() policies.DeletionPolicy { +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 *AWSAutoScalingPlansScalingPlan_CustomizedLoadMetricSpecification) SetDeletionPolicy(policy policies.DeletionPolicy) { +func (r *ScalingPlan_CustomizedLoadMetricSpecification) SetDeletionPolicy(policy policies.DeletionPolicy) { r._deletionPolicy = policy } diff --git a/cloudformation/resources/aws-autoscalingplans-scalingplan_customizedscalingmetricspecification.go b/cloudformation/autoscalingplans/aws-autoscalingplans-scalingplan_customizedscalingmetricspecification.go similarity index 73% rename from cloudformation/resources/aws-autoscalingplans-scalingplan_customizedscalingmetricspecification.go rename to cloudformation/autoscalingplans/aws-autoscalingplans-scalingplan_customizedscalingmetricspecification.go index 10e5dade27..e580bcffcc 100644 --- a/cloudformation/resources/aws-autoscalingplans-scalingplan_customizedscalingmetricspecification.go +++ b/cloudformation/autoscalingplans/aws-autoscalingplans-scalingplan_customizedscalingmetricspecification.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_CustomizedScalingMetricSpecification AWS CloudFormation Resource (AWS::AutoScalingPlans::ScalingPlan.CustomizedScalingMetricSpecification) +// 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 AWSAutoScalingPlansScalingPlan_CustomizedScalingMetricSpecification struct { +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 []AWSAutoScalingPlansScalingPlan_MetricDimension `json:"Dimensions,omitempty"` + Dimensions []ScalingPlan_MetricDimension `json:"Dimensions,omitempty"` // MetricName AWS CloudFormation Property // Required: true @@ -42,42 +44,42 @@ type AWSAutoScalingPlansScalingPlan_CustomizedScalingMetricSpecification struct } // AWSCloudFormationType returns the AWS CloudFormation resource type -func (r *AWSAutoScalingPlansScalingPlan_CustomizedScalingMetricSpecification) AWSCloudFormationType() string { +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 *AWSAutoScalingPlansScalingPlan_CustomizedScalingMetricSpecification) DependsOn() []string { +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 *AWSAutoScalingPlansScalingPlan_CustomizedScalingMetricSpecification) SetDependsOn(dependencies []string) { +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 *AWSAutoScalingPlansScalingPlan_CustomizedScalingMetricSpecification) Metadata() map[string]interface{} { +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 *AWSAutoScalingPlansScalingPlan_CustomizedScalingMetricSpecification) SetMetadata(metadata map[string]interface{}) { +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 *AWSAutoScalingPlansScalingPlan_CustomizedScalingMetricSpecification) DeletionPolicy() policies.DeletionPolicy { +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 *AWSAutoScalingPlansScalingPlan_CustomizedScalingMetricSpecification) SetDeletionPolicy(policy policies.DeletionPolicy) { +func (r *ScalingPlan_CustomizedScalingMetricSpecification) SetDeletionPolicy(policy policies.DeletionPolicy) { r._deletionPolicy = policy } diff --git a/cloudformation/resources/aws-autoscalingplans-scalingplan_metricdimension.go b/cloudformation/autoscalingplans/aws-autoscalingplans-scalingplan_metricdimension.go similarity index 71% rename from cloudformation/resources/aws-autoscalingplans-scalingplan_metricdimension.go rename to cloudformation/autoscalingplans/aws-autoscalingplans-scalingplan_metricdimension.go index a5e890de78..accd19f43c 100644 --- a/cloudformation/resources/aws-autoscalingplans-scalingplan_metricdimension.go +++ b/cloudformation/autoscalingplans/aws-autoscalingplans-scalingplan_metricdimension.go @@ -1,10 +1,12 @@ -package resources +package autoscalingplans -import "github.com/awslabs/goformation/v2/cloudformation/policies" +import ( + "github.com/awslabs/goformation/v3/cloudformation/policies" +) -// AWSAutoScalingPlansScalingPlan_MetricDimension AWS CloudFormation Resource (AWS::AutoScalingPlans::ScalingPlan.MetricDimension) +// 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 AWSAutoScalingPlansScalingPlan_MetricDimension struct { +type ScalingPlan_MetricDimension struct { // Name AWS CloudFormation Property // Required: true @@ -27,42 +29,42 @@ type AWSAutoScalingPlansScalingPlan_MetricDimension struct { } // AWSCloudFormationType returns the AWS CloudFormation resource type -func (r *AWSAutoScalingPlansScalingPlan_MetricDimension) AWSCloudFormationType() string { +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 *AWSAutoScalingPlansScalingPlan_MetricDimension) DependsOn() []string { +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 *AWSAutoScalingPlansScalingPlan_MetricDimension) SetDependsOn(dependencies []string) { +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 *AWSAutoScalingPlansScalingPlan_MetricDimension) Metadata() map[string]interface{} { +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 *AWSAutoScalingPlansScalingPlan_MetricDimension) SetMetadata(metadata map[string]interface{}) { +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 *AWSAutoScalingPlansScalingPlan_MetricDimension) DeletionPolicy() policies.DeletionPolicy { +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 *AWSAutoScalingPlansScalingPlan_MetricDimension) SetDeletionPolicy(policy policies.DeletionPolicy) { +func (r *ScalingPlan_MetricDimension) SetDeletionPolicy(policy policies.DeletionPolicy) { r._deletionPolicy = policy } diff --git a/cloudformation/resources/aws-autoscalingplans-scalingplan_predefinedloadmetricspecification.go b/cloudformation/autoscalingplans/aws-autoscalingplans-scalingplan_predefinedloadmetricspecification.go similarity index 69% rename from cloudformation/resources/aws-autoscalingplans-scalingplan_predefinedloadmetricspecification.go rename to cloudformation/autoscalingplans/aws-autoscalingplans-scalingplan_predefinedloadmetricspecification.go index 9e227da2b6..f808edd6f7 100644 --- a/cloudformation/resources/aws-autoscalingplans-scalingplan_predefinedloadmetricspecification.go +++ b/cloudformation/autoscalingplans/aws-autoscalingplans-scalingplan_predefinedloadmetricspecification.go @@ -1,10 +1,12 @@ -package resources +package autoscalingplans -import "github.com/awslabs/goformation/v2/cloudformation/policies" +import ( + "github.com/awslabs/goformation/v3/cloudformation/policies" +) -// AWSAutoScalingPlansScalingPlan_PredefinedLoadMetricSpecification AWS CloudFormation Resource (AWS::AutoScalingPlans::ScalingPlan.PredefinedLoadMetricSpecification) +// 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 AWSAutoScalingPlansScalingPlan_PredefinedLoadMetricSpecification struct { +type ScalingPlan_PredefinedLoadMetricSpecification struct { // PredefinedLoadMetricType AWS CloudFormation Property // Required: true @@ -27,42 +29,42 @@ type AWSAutoScalingPlansScalingPlan_PredefinedLoadMetricSpecification struct { } // AWSCloudFormationType returns the AWS CloudFormation resource type -func (r *AWSAutoScalingPlansScalingPlan_PredefinedLoadMetricSpecification) AWSCloudFormationType() string { +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 *AWSAutoScalingPlansScalingPlan_PredefinedLoadMetricSpecification) DependsOn() []string { +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 *AWSAutoScalingPlansScalingPlan_PredefinedLoadMetricSpecification) SetDependsOn(dependencies []string) { +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 *AWSAutoScalingPlansScalingPlan_PredefinedLoadMetricSpecification) Metadata() map[string]interface{} { +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 *AWSAutoScalingPlansScalingPlan_PredefinedLoadMetricSpecification) SetMetadata(metadata map[string]interface{}) { +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 *AWSAutoScalingPlansScalingPlan_PredefinedLoadMetricSpecification) DeletionPolicy() policies.DeletionPolicy { +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 *AWSAutoScalingPlansScalingPlan_PredefinedLoadMetricSpecification) SetDeletionPolicy(policy policies.DeletionPolicy) { +func (r *ScalingPlan_PredefinedLoadMetricSpecification) SetDeletionPolicy(policy policies.DeletionPolicy) { r._deletionPolicy = policy } diff --git a/cloudformation/resources/aws-autoscalingplans-scalingplan_predefinedscalingmetricspecification.go b/cloudformation/autoscalingplans/aws-autoscalingplans-scalingplan_predefinedscalingmetricspecification.go similarity index 69% rename from cloudformation/resources/aws-autoscalingplans-scalingplan_predefinedscalingmetricspecification.go rename to cloudformation/autoscalingplans/aws-autoscalingplans-scalingplan_predefinedscalingmetricspecification.go index 7af29cdf83..6c5b58fdf6 100644 --- a/cloudformation/resources/aws-autoscalingplans-scalingplan_predefinedscalingmetricspecification.go +++ b/cloudformation/autoscalingplans/aws-autoscalingplans-scalingplan_predefinedscalingmetricspecification.go @@ -1,10 +1,12 @@ -package resources +package autoscalingplans -import "github.com/awslabs/goformation/v2/cloudformation/policies" +import ( + "github.com/awslabs/goformation/v3/cloudformation/policies" +) -// AWSAutoScalingPlansScalingPlan_PredefinedScalingMetricSpecification AWS CloudFormation Resource (AWS::AutoScalingPlans::ScalingPlan.PredefinedScalingMetricSpecification) +// 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 AWSAutoScalingPlansScalingPlan_PredefinedScalingMetricSpecification struct { +type ScalingPlan_PredefinedScalingMetricSpecification struct { // PredefinedScalingMetricType AWS CloudFormation Property // Required: true @@ -27,42 +29,42 @@ type AWSAutoScalingPlansScalingPlan_PredefinedScalingMetricSpecification struct } // AWSCloudFormationType returns the AWS CloudFormation resource type -func (r *AWSAutoScalingPlansScalingPlan_PredefinedScalingMetricSpecification) AWSCloudFormationType() string { +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 *AWSAutoScalingPlansScalingPlan_PredefinedScalingMetricSpecification) DependsOn() []string { +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 *AWSAutoScalingPlansScalingPlan_PredefinedScalingMetricSpecification) SetDependsOn(dependencies []string) { +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 *AWSAutoScalingPlansScalingPlan_PredefinedScalingMetricSpecification) Metadata() map[string]interface{} { +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 *AWSAutoScalingPlansScalingPlan_PredefinedScalingMetricSpecification) SetMetadata(metadata map[string]interface{}) { +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 *AWSAutoScalingPlansScalingPlan_PredefinedScalingMetricSpecification) DeletionPolicy() policies.DeletionPolicy { +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 *AWSAutoScalingPlansScalingPlan_PredefinedScalingMetricSpecification) SetDeletionPolicy(policy policies.DeletionPolicy) { +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/resources/aws-autoscalingplans-scalingplan_tagfilter.go b/cloudformation/autoscalingplans/aws-autoscalingplans-scalingplan_tagfilter.go similarity index 72% rename from cloudformation/resources/aws-autoscalingplans-scalingplan_tagfilter.go rename to cloudformation/autoscalingplans/aws-autoscalingplans-scalingplan_tagfilter.go index e588593d6d..cb5f066cc8 100644 --- a/cloudformation/resources/aws-autoscalingplans-scalingplan_tagfilter.go +++ b/cloudformation/autoscalingplans/aws-autoscalingplans-scalingplan_tagfilter.go @@ -1,10 +1,12 @@ -package resources +package autoscalingplans -import "github.com/awslabs/goformation/v2/cloudformation/policies" +import ( + "github.com/awslabs/goformation/v3/cloudformation/policies" +) -// AWSAutoScalingPlansScalingPlan_TagFilter AWS CloudFormation Resource (AWS::AutoScalingPlans::ScalingPlan.TagFilter) +// 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 AWSAutoScalingPlansScalingPlan_TagFilter struct { +type ScalingPlan_TagFilter struct { // Key AWS CloudFormation Property // Required: true @@ -27,42 +29,42 @@ type AWSAutoScalingPlansScalingPlan_TagFilter struct { } // AWSCloudFormationType returns the AWS CloudFormation resource type -func (r *AWSAutoScalingPlansScalingPlan_TagFilter) AWSCloudFormationType() string { +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 *AWSAutoScalingPlansScalingPlan_TagFilter) DependsOn() []string { +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 *AWSAutoScalingPlansScalingPlan_TagFilter) SetDependsOn(dependencies []string) { +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 *AWSAutoScalingPlansScalingPlan_TagFilter) Metadata() map[string]interface{} { +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 *AWSAutoScalingPlansScalingPlan_TagFilter) SetMetadata(metadata map[string]interface{}) { +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 *AWSAutoScalingPlansScalingPlan_TagFilter) DeletionPolicy() policies.DeletionPolicy { +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 *AWSAutoScalingPlansScalingPlan_TagFilter) SetDeletionPolicy(policy policies.DeletionPolicy) { +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/resources/aws-backup-backupplan_backupplanresourcetype.go b/cloudformation/backup/aws-backup-backupplan_backupplanresourcetype.go similarity index 70% rename from cloudformation/resources/aws-backup-backupplan_backupplanresourcetype.go rename to cloudformation/backup/aws-backup-backupplan_backupplanresourcetype.go index 3c48b52b45..c87a3ae13c 100644 --- a/cloudformation/resources/aws-backup-backupplan_backupplanresourcetype.go +++ b/cloudformation/backup/aws-backup-backupplan_backupplanresourcetype.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_BackupPlanResourceType AWS CloudFormation Resource (AWS::Backup::BackupPlan.BackupPlanResourceType) +// 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 AWSBackupBackupPlan_BackupPlanResourceType struct { +type BackupPlan_BackupPlanResourceType struct { // BackupPlanName AWS CloudFormation Property // Required: true @@ -14,7 +16,7 @@ type AWSBackupBackupPlan_BackupPlanResourceType struct { // 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"` + BackupPlanRule []BackupPlan_BackupRuleResourceType `json:"BackupPlanRule,omitempty"` // _deletionPolicy represents a CloudFormation DeletionPolicy _deletionPolicy policies.DeletionPolicy @@ -27,42 +29,42 @@ type AWSBackupBackupPlan_BackupPlanResourceType struct { } // AWSCloudFormationType returns the AWS CloudFormation resource type -func (r *AWSBackupBackupPlan_BackupPlanResourceType) AWSCloudFormationType() string { +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 *AWSBackupBackupPlan_BackupPlanResourceType) DependsOn() []string { +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 *AWSBackupBackupPlan_BackupPlanResourceType) SetDependsOn(dependencies []string) { +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 *AWSBackupBackupPlan_BackupPlanResourceType) Metadata() map[string]interface{} { +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 *AWSBackupBackupPlan_BackupPlanResourceType) SetMetadata(metadata map[string]interface{}) { +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 *AWSBackupBackupPlan_BackupPlanResourceType) DeletionPolicy() policies.DeletionPolicy { +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 *AWSBackupBackupPlan_BackupPlanResourceType) SetDeletionPolicy(policy policies.DeletionPolicy) { +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/resources/aws-backup-backupplan_lifecycleresourcetype.go b/cloudformation/backup/aws-backup-backupplan_lifecycleresourcetype.go similarity index 73% rename from cloudformation/resources/aws-backup-backupplan_lifecycleresourcetype.go rename to cloudformation/backup/aws-backup-backupplan_lifecycleresourcetype.go index 9be710e501..9e29e30a4c 100644 --- a/cloudformation/resources/aws-backup-backupplan_lifecycleresourcetype.go +++ b/cloudformation/backup/aws-backup-backupplan_lifecycleresourcetype.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_LifecycleResourceType AWS CloudFormation Resource (AWS::Backup::BackupPlan.LifecycleResourceType) +// 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 AWSBackupBackupPlan_LifecycleResourceType struct { +type BackupPlan_LifecycleResourceType struct { // DeleteAfterDays AWS CloudFormation Property // Required: false @@ -27,42 +29,42 @@ type AWSBackupBackupPlan_LifecycleResourceType struct { } // AWSCloudFormationType returns the AWS CloudFormation resource type -func (r *AWSBackupBackupPlan_LifecycleResourceType) AWSCloudFormationType() string { +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 *AWSBackupBackupPlan_LifecycleResourceType) DependsOn() []string { +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 *AWSBackupBackupPlan_LifecycleResourceType) SetDependsOn(dependencies []string) { +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 *AWSBackupBackupPlan_LifecycleResourceType) Metadata() map[string]interface{} { +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 *AWSBackupBackupPlan_LifecycleResourceType) SetMetadata(metadata map[string]interface{}) { +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 *AWSBackupBackupPlan_LifecycleResourceType) DeletionPolicy() policies.DeletionPolicy { +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 *AWSBackupBackupPlan_LifecycleResourceType) SetDeletionPolicy(policy policies.DeletionPolicy) { +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/resources/aws-backup-backupselection_backupselectionresourcetype.go b/cloudformation/backup/aws-backup-backupselection_backupselectionresourcetype.go similarity index 73% rename from cloudformation/resources/aws-backup-backupselection_backupselectionresourcetype.go rename to cloudformation/backup/aws-backup-backupselection_backupselectionresourcetype.go index 8d537e3f75..1967562126 100644 --- a/cloudformation/resources/aws-backup-backupselection_backupselectionresourcetype.go +++ b/cloudformation/backup/aws-backup-backupselection_backupselectionresourcetype.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" +) -// AWSBackupBackupSelection_BackupSelectionResourceType AWS CloudFormation Resource (AWS::Backup::BackupSelection.BackupSelectionResourceType) +// 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 AWSBackupBackupSelection_BackupSelectionResourceType struct { +type BackupSelection_BackupSelectionResourceType struct { // IamRoleArn AWS CloudFormation Property // Required: true @@ -14,7 +16,7 @@ type AWSBackupBackupSelection_BackupSelectionResourceType struct { // 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"` + ListOfTags []BackupSelection_ConditionResourceType `json:"ListOfTags,omitempty"` // Resources AWS CloudFormation Property // Required: false @@ -37,42 +39,42 @@ type AWSBackupBackupSelection_BackupSelectionResourceType struct { } // AWSCloudFormationType returns the AWS CloudFormation resource type -func (r *AWSBackupBackupSelection_BackupSelectionResourceType) AWSCloudFormationType() string { +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 *AWSBackupBackupSelection_BackupSelectionResourceType) DependsOn() []string { +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 *AWSBackupBackupSelection_BackupSelectionResourceType) SetDependsOn(dependencies []string) { +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 *AWSBackupBackupSelection_BackupSelectionResourceType) Metadata() map[string]interface{} { +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 *AWSBackupBackupSelection_BackupSelectionResourceType) SetMetadata(metadata map[string]interface{}) { +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 *AWSBackupBackupSelection_BackupSelectionResourceType) DeletionPolicy() policies.DeletionPolicy { +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 *AWSBackupBackupSelection_BackupSelectionResourceType) SetDeletionPolicy(policy policies.DeletionPolicy) { +func (r *BackupSelection_BackupSelectionResourceType) SetDeletionPolicy(policy policies.DeletionPolicy) { r._deletionPolicy = policy } diff --git a/cloudformation/resources/aws-backup-backupselection_conditionresourcetype.go b/cloudformation/backup/aws-backup-backupselection_conditionresourcetype.go similarity index 74% rename from cloudformation/resources/aws-backup-backupselection_conditionresourcetype.go rename to cloudformation/backup/aws-backup-backupselection_conditionresourcetype.go index aa1961f5b4..121209fc89 100644 --- a/cloudformation/resources/aws-backup-backupselection_conditionresourcetype.go +++ b/cloudformation/backup/aws-backup-backupselection_conditionresourcetype.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" +) -// AWSBackupBackupSelection_ConditionResourceType AWS CloudFormation Resource (AWS::Backup::BackupSelection.ConditionResourceType) +// 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 AWSBackupBackupSelection_ConditionResourceType struct { +type BackupSelection_ConditionResourceType struct { // ConditionKey AWS CloudFormation Property // Required: true @@ -32,42 +34,42 @@ type AWSBackupBackupSelection_ConditionResourceType struct { } // AWSCloudFormationType returns the AWS CloudFormation resource type -func (r *AWSBackupBackupSelection_ConditionResourceType) AWSCloudFormationType() string { +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 *AWSBackupBackupSelection_ConditionResourceType) DependsOn() []string { +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 *AWSBackupBackupSelection_ConditionResourceType) SetDependsOn(dependencies []string) { +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 *AWSBackupBackupSelection_ConditionResourceType) Metadata() map[string]interface{} { +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 *AWSBackupBackupSelection_ConditionResourceType) SetMetadata(metadata map[string]interface{}) { +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 *AWSBackupBackupSelection_ConditionResourceType) DeletionPolicy() policies.DeletionPolicy { +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 *AWSBackupBackupSelection_ConditionResourceType) SetDeletionPolicy(policy policies.DeletionPolicy) { +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/resources/aws-backup-backupvault_notificationobjecttype.go b/cloudformation/backup/aws-backup-backupvault_notificationobjecttype.go similarity index 72% rename from cloudformation/resources/aws-backup-backupvault_notificationobjecttype.go rename to cloudformation/backup/aws-backup-backupvault_notificationobjecttype.go index 34eb38f2fc..93611c5c1d 100644 --- a/cloudformation/resources/aws-backup-backupvault_notificationobjecttype.go +++ b/cloudformation/backup/aws-backup-backupvault_notificationobjecttype.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" +) -// AWSBackupBackupVault_NotificationObjectType AWS CloudFormation Resource (AWS::Backup::BackupVault.NotificationObjectType) +// 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 AWSBackupBackupVault_NotificationObjectType struct { +type BackupVault_NotificationObjectType struct { // BackupVaultEvents AWS CloudFormation Property // Required: true @@ -27,42 +29,42 @@ type AWSBackupBackupVault_NotificationObjectType struct { } // AWSCloudFormationType returns the AWS CloudFormation resource type -func (r *AWSBackupBackupVault_NotificationObjectType) AWSCloudFormationType() string { +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 *AWSBackupBackupVault_NotificationObjectType) DependsOn() []string { +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 *AWSBackupBackupVault_NotificationObjectType) SetDependsOn(dependencies []string) { +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 *AWSBackupBackupVault_NotificationObjectType) Metadata() map[string]interface{} { +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 *AWSBackupBackupVault_NotificationObjectType) SetMetadata(metadata map[string]interface{}) { +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 *AWSBackupBackupVault_NotificationObjectType) DeletionPolicy() policies.DeletionPolicy { +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 *AWSBackupBackupVault_NotificationObjectType) SetDeletionPolicy(policy policies.DeletionPolicy) { +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/resources/aws-batch-computeenvironment_launchtemplatespecification.go b/cloudformation/batch/aws-batch-computeenvironment_launchtemplatespecification.go similarity index 73% rename from cloudformation/resources/aws-batch-computeenvironment_launchtemplatespecification.go rename to cloudformation/batch/aws-batch-computeenvironment_launchtemplatespecification.go index 9797954eb3..4042da7b22 100644 --- a/cloudformation/resources/aws-batch-computeenvironment_launchtemplatespecification.go +++ b/cloudformation/batch/aws-batch-computeenvironment_launchtemplatespecification.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_LaunchTemplateSpecification AWS CloudFormation Resource (AWS::Batch::ComputeEnvironment.LaunchTemplateSpecification) +// 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 AWSBatchComputeEnvironment_LaunchTemplateSpecification struct { +type ComputeEnvironment_LaunchTemplateSpecification struct { // LaunchTemplateId AWS CloudFormation Property // Required: false @@ -32,42 +34,42 @@ type AWSBatchComputeEnvironment_LaunchTemplateSpecification struct { } // AWSCloudFormationType returns the AWS CloudFormation resource type -func (r *AWSBatchComputeEnvironment_LaunchTemplateSpecification) AWSCloudFormationType() string { +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 *AWSBatchComputeEnvironment_LaunchTemplateSpecification) DependsOn() []string { +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 *AWSBatchComputeEnvironment_LaunchTemplateSpecification) SetDependsOn(dependencies []string) { +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 *AWSBatchComputeEnvironment_LaunchTemplateSpecification) Metadata() map[string]interface{} { +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 *AWSBatchComputeEnvironment_LaunchTemplateSpecification) SetMetadata(metadata map[string]interface{}) { +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 *AWSBatchComputeEnvironment_LaunchTemplateSpecification) DeletionPolicy() policies.DeletionPolicy { +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 *AWSBatchComputeEnvironment_LaunchTemplateSpecification) SetDeletionPolicy(policy policies.DeletionPolicy) { +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/resources/aws-batch-jobdefinition_environment.go b/cloudformation/batch/aws-batch-jobdefinition_environment.go similarity index 73% rename from cloudformation/resources/aws-batch-jobdefinition_environment.go rename to cloudformation/batch/aws-batch-jobdefinition_environment.go index 713ba296a4..5de2ac8a45 100644 --- a/cloudformation/resources/aws-batch-jobdefinition_environment.go +++ b/cloudformation/batch/aws-batch-jobdefinition_environment.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_Environment AWS CloudFormation Resource (AWS::Batch::JobDefinition.Environment) +// 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 AWSBatchJobDefinition_Environment struct { +type JobDefinition_Environment struct { // Name AWS CloudFormation Property // Required: false @@ -27,42 +29,42 @@ type AWSBatchJobDefinition_Environment struct { } // AWSCloudFormationType returns the AWS CloudFormation resource type -func (r *AWSBatchJobDefinition_Environment) AWSCloudFormationType() string { +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 *AWSBatchJobDefinition_Environment) DependsOn() []string { +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 *AWSBatchJobDefinition_Environment) SetDependsOn(dependencies []string) { +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 *AWSBatchJobDefinition_Environment) Metadata() map[string]interface{} { +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 *AWSBatchJobDefinition_Environment) SetMetadata(metadata map[string]interface{}) { +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 *AWSBatchJobDefinition_Environment) DeletionPolicy() policies.DeletionPolicy { +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 *AWSBatchJobDefinition_Environment) SetDeletionPolicy(policy policies.DeletionPolicy) { +func (r *JobDefinition_Environment) SetDeletionPolicy(policy policies.DeletionPolicy) { r._deletionPolicy = policy } diff --git a/cloudformation/resources/aws-batch-jobdefinition_linuxparameters.go b/cloudformation/batch/aws-batch-jobdefinition_linuxparameters.go similarity index 69% rename from cloudformation/resources/aws-batch-jobdefinition_linuxparameters.go rename to cloudformation/batch/aws-batch-jobdefinition_linuxparameters.go index 96f255107d..8451fa1c76 100644 --- a/cloudformation/resources/aws-batch-jobdefinition_linuxparameters.go +++ b/cloudformation/batch/aws-batch-jobdefinition_linuxparameters.go @@ -1,15 +1,17 @@ -package resources +package batch -import "github.com/awslabs/goformation/v2/cloudformation/policies" +import ( + "github.com/awslabs/goformation/v3/cloudformation/policies" +) -// AWSBatchJobDefinition_LinuxParameters AWS CloudFormation Resource (AWS::Batch::JobDefinition.LinuxParameters) +// 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 AWSBatchJobDefinition_LinuxParameters struct { +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 []AWSBatchJobDefinition_Device `json:"Devices,omitempty"` + Devices []JobDefinition_Device `json:"Devices,omitempty"` // _deletionPolicy represents a CloudFormation DeletionPolicy _deletionPolicy policies.DeletionPolicy @@ -22,42 +24,42 @@ type AWSBatchJobDefinition_LinuxParameters struct { } // AWSCloudFormationType returns the AWS CloudFormation resource type -func (r *AWSBatchJobDefinition_LinuxParameters) AWSCloudFormationType() string { +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 *AWSBatchJobDefinition_LinuxParameters) DependsOn() []string { +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 *AWSBatchJobDefinition_LinuxParameters) SetDependsOn(dependencies []string) { +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 *AWSBatchJobDefinition_LinuxParameters) Metadata() map[string]interface{} { +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 *AWSBatchJobDefinition_LinuxParameters) SetMetadata(metadata map[string]interface{}) { +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 *AWSBatchJobDefinition_LinuxParameters) DeletionPolicy() policies.DeletionPolicy { +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 *AWSBatchJobDefinition_LinuxParameters) SetDeletionPolicy(policy policies.DeletionPolicy) { +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/resources/aws-batch-jobdefinition_nodeproperties.go b/cloudformation/batch/aws-batch-jobdefinition_nodeproperties.go similarity index 73% rename from cloudformation/resources/aws-batch-jobdefinition_nodeproperties.go rename to cloudformation/batch/aws-batch-jobdefinition_nodeproperties.go index cde843ec7d..d8278e7aaa 100644 --- a/cloudformation/resources/aws-batch-jobdefinition_nodeproperties.go +++ b/cloudformation/batch/aws-batch-jobdefinition_nodeproperties.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_NodeProperties AWS CloudFormation Resource (AWS::Batch::JobDefinition.NodeProperties) +// 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 AWSBatchJobDefinition_NodeProperties struct { +type JobDefinition_NodeProperties struct { // MainNode AWS CloudFormation Property // Required: true @@ -14,7 +16,7 @@ type AWSBatchJobDefinition_NodeProperties struct { // 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"` + NodeRangeProperties []JobDefinition_NodeRangeProperty `json:"NodeRangeProperties,omitempty"` // NumNodes AWS CloudFormation Property // Required: true @@ -32,42 +34,42 @@ type AWSBatchJobDefinition_NodeProperties struct { } // AWSCloudFormationType returns the AWS CloudFormation resource type -func (r *AWSBatchJobDefinition_NodeProperties) AWSCloudFormationType() string { +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 *AWSBatchJobDefinition_NodeProperties) DependsOn() []string { +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 *AWSBatchJobDefinition_NodeProperties) SetDependsOn(dependencies []string) { +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 *AWSBatchJobDefinition_NodeProperties) Metadata() map[string]interface{} { +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 *AWSBatchJobDefinition_NodeProperties) SetMetadata(metadata map[string]interface{}) { +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 *AWSBatchJobDefinition_NodeProperties) DeletionPolicy() policies.DeletionPolicy { +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 *AWSBatchJobDefinition_NodeProperties) SetDeletionPolicy(policy policies.DeletionPolicy) { +func (r *JobDefinition_NodeProperties) SetDeletionPolicy(policy policies.DeletionPolicy) { r._deletionPolicy = policy } diff --git a/cloudformation/resources/aws-batch-jobdefinition_noderangeproperty.go b/cloudformation/batch/aws-batch-jobdefinition_noderangeproperty.go similarity index 70% rename from cloudformation/resources/aws-batch-jobdefinition_noderangeproperty.go rename to cloudformation/batch/aws-batch-jobdefinition_noderangeproperty.go index 48a228037d..0a98e7edee 100644 --- a/cloudformation/resources/aws-batch-jobdefinition_noderangeproperty.go +++ b/cloudformation/batch/aws-batch-jobdefinition_noderangeproperty.go @@ -1,15 +1,17 @@ -package resources +package batch -import "github.com/awslabs/goformation/v2/cloudformation/policies" +import ( + "github.com/awslabs/goformation/v3/cloudformation/policies" +) -// AWSBatchJobDefinition_NodeRangeProperty AWS CloudFormation Resource (AWS::Batch::JobDefinition.NodeRangeProperty) +// 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 AWSBatchJobDefinition_NodeRangeProperty struct { +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 *AWSBatchJobDefinition_ContainerProperties `json:"Container,omitempty"` + Container *JobDefinition_ContainerProperties `json:"Container,omitempty"` // TargetNodes AWS CloudFormation Property // Required: true @@ -27,42 +29,42 @@ type AWSBatchJobDefinition_NodeRangeProperty struct { } // AWSCloudFormationType returns the AWS CloudFormation resource type -func (r *AWSBatchJobDefinition_NodeRangeProperty) AWSCloudFormationType() string { +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 *AWSBatchJobDefinition_NodeRangeProperty) DependsOn() []string { +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 *AWSBatchJobDefinition_NodeRangeProperty) SetDependsOn(dependencies []string) { +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 *AWSBatchJobDefinition_NodeRangeProperty) Metadata() map[string]interface{} { +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 *AWSBatchJobDefinition_NodeRangeProperty) SetMetadata(metadata map[string]interface{}) { +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 *AWSBatchJobDefinition_NodeRangeProperty) DeletionPolicy() policies.DeletionPolicy { +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 *AWSBatchJobDefinition_NodeRangeProperty) SetDeletionPolicy(policy policies.DeletionPolicy) { +func (r *JobDefinition_NodeRangeProperty) SetDeletionPolicy(policy policies.DeletionPolicy) { r._deletionPolicy = policy } diff --git a/cloudformation/resources/aws-batch-jobdefinition_resourcerequirement.go b/cloudformation/batch/aws-batch-jobdefinition_resourcerequirement.go similarity index 72% rename from cloudformation/resources/aws-batch-jobdefinition_resourcerequirement.go rename to cloudformation/batch/aws-batch-jobdefinition_resourcerequirement.go index 1d2d81455b..edbc448efd 100644 --- a/cloudformation/resources/aws-batch-jobdefinition_resourcerequirement.go +++ b/cloudformation/batch/aws-batch-jobdefinition_resourcerequirement.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_ResourceRequirement AWS CloudFormation Resource (AWS::Batch::JobDefinition.ResourceRequirement) +// 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 AWSBatchJobDefinition_ResourceRequirement struct { +type JobDefinition_ResourceRequirement struct { // Type AWS CloudFormation Property // Required: false @@ -27,42 +29,42 @@ type AWSBatchJobDefinition_ResourceRequirement struct { } // AWSCloudFormationType returns the AWS CloudFormation resource type -func (r *AWSBatchJobDefinition_ResourceRequirement) AWSCloudFormationType() string { +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 *AWSBatchJobDefinition_ResourceRequirement) DependsOn() []string { +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 *AWSBatchJobDefinition_ResourceRequirement) SetDependsOn(dependencies []string) { +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 *AWSBatchJobDefinition_ResourceRequirement) Metadata() map[string]interface{} { +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 *AWSBatchJobDefinition_ResourceRequirement) SetMetadata(metadata map[string]interface{}) { +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 *AWSBatchJobDefinition_ResourceRequirement) DeletionPolicy() policies.DeletionPolicy { +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 *AWSBatchJobDefinition_ResourceRequirement) SetDeletionPolicy(policy policies.DeletionPolicy) { +func (r *JobDefinition_ResourceRequirement) SetDeletionPolicy(policy policies.DeletionPolicy) { r._deletionPolicy = policy } diff --git a/cloudformation/resources/aws-batch-jobdefinition_retrystrategy.go b/cloudformation/batch/aws-batch-jobdefinition_retrystrategy.go similarity index 71% rename from cloudformation/resources/aws-batch-jobdefinition_retrystrategy.go rename to cloudformation/batch/aws-batch-jobdefinition_retrystrategy.go index 9892cf273a..5f06fbca06 100644 --- a/cloudformation/resources/aws-batch-jobdefinition_retrystrategy.go +++ b/cloudformation/batch/aws-batch-jobdefinition_retrystrategy.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_RetryStrategy AWS CloudFormation Resource (AWS::Batch::JobDefinition.RetryStrategy) +// 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 AWSBatchJobDefinition_RetryStrategy struct { +type JobDefinition_RetryStrategy struct { // Attempts AWS CloudFormation Property // Required: false @@ -22,42 +24,42 @@ type AWSBatchJobDefinition_RetryStrategy struct { } // AWSCloudFormationType returns the AWS CloudFormation resource type -func (r *AWSBatchJobDefinition_RetryStrategy) AWSCloudFormationType() string { +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 *AWSBatchJobDefinition_RetryStrategy) DependsOn() []string { +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 *AWSBatchJobDefinition_RetryStrategy) SetDependsOn(dependencies []string) { +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 *AWSBatchJobDefinition_RetryStrategy) Metadata() map[string]interface{} { +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 *AWSBatchJobDefinition_RetryStrategy) SetMetadata(metadata map[string]interface{}) { +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 *AWSBatchJobDefinition_RetryStrategy) DeletionPolicy() policies.DeletionPolicy { +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 *AWSBatchJobDefinition_RetryStrategy) SetDeletionPolicy(policy policies.DeletionPolicy) { +func (r *JobDefinition_RetryStrategy) SetDeletionPolicy(policy policies.DeletionPolicy) { r._deletionPolicy = policy } diff --git a/cloudformation/resources/aws-batch-jobdefinition_timeout.go b/cloudformation/batch/aws-batch-jobdefinition_timeout.go similarity index 73% rename from cloudformation/resources/aws-batch-jobdefinition_timeout.go rename to cloudformation/batch/aws-batch-jobdefinition_timeout.go index 8a6862170a..0bc80f6bcc 100644 --- a/cloudformation/resources/aws-batch-jobdefinition_timeout.go +++ b/cloudformation/batch/aws-batch-jobdefinition_timeout.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_Timeout AWS CloudFormation Resource (AWS::Batch::JobDefinition.Timeout) +// 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 AWSBatchJobDefinition_Timeout struct { +type JobDefinition_Timeout struct { // AttemptDurationSeconds AWS CloudFormation Property // Required: false @@ -22,42 +24,42 @@ type AWSBatchJobDefinition_Timeout struct { } // AWSCloudFormationType returns the AWS CloudFormation resource type -func (r *AWSBatchJobDefinition_Timeout) AWSCloudFormationType() string { +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 *AWSBatchJobDefinition_Timeout) DependsOn() []string { +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 *AWSBatchJobDefinition_Timeout) SetDependsOn(dependencies []string) { +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 *AWSBatchJobDefinition_Timeout) Metadata() map[string]interface{} { +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 *AWSBatchJobDefinition_Timeout) SetMetadata(metadata map[string]interface{}) { +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 *AWSBatchJobDefinition_Timeout) DeletionPolicy() policies.DeletionPolicy { +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 *AWSBatchJobDefinition_Timeout) SetDeletionPolicy(policy policies.DeletionPolicy) { +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/resources/aws-batch-jobdefinition_volumes.go b/cloudformation/batch/aws-batch-jobdefinition_volumes.go similarity index 72% rename from cloudformation/resources/aws-batch-jobdefinition_volumes.go rename to cloudformation/batch/aws-batch-jobdefinition_volumes.go index 13a11072eb..876c59c3e3 100644 --- a/cloudformation/resources/aws-batch-jobdefinition_volumes.go +++ b/cloudformation/batch/aws-batch-jobdefinition_volumes.go @@ -1,15 +1,17 @@ -package resources +package batch -import "github.com/awslabs/goformation/v2/cloudformation/policies" +import ( + "github.com/awslabs/goformation/v3/cloudformation/policies" +) -// AWSBatchJobDefinition_Volumes AWS CloudFormation Resource (AWS::Batch::JobDefinition.Volumes) +// 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 AWSBatchJobDefinition_Volumes struct { +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 *AWSBatchJobDefinition_VolumesHost `json:"Host,omitempty"` + Host *JobDefinition_VolumesHost `json:"Host,omitempty"` // Name AWS CloudFormation Property // Required: false @@ -27,42 +29,42 @@ type AWSBatchJobDefinition_Volumes struct { } // AWSCloudFormationType returns the AWS CloudFormation resource type -func (r *AWSBatchJobDefinition_Volumes) AWSCloudFormationType() string { +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 *AWSBatchJobDefinition_Volumes) DependsOn() []string { +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 *AWSBatchJobDefinition_Volumes) SetDependsOn(dependencies []string) { +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 *AWSBatchJobDefinition_Volumes) Metadata() map[string]interface{} { +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 *AWSBatchJobDefinition_Volumes) SetMetadata(metadata map[string]interface{}) { +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 *AWSBatchJobDefinition_Volumes) DeletionPolicy() policies.DeletionPolicy { +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 *AWSBatchJobDefinition_Volumes) SetDeletionPolicy(policy policies.DeletionPolicy) { +func (r *JobDefinition_Volumes) SetDeletionPolicy(policy policies.DeletionPolicy) { r._deletionPolicy = policy } diff --git a/cloudformation/resources/aws-batch-jobdefinition_volumeshost.go b/cloudformation/batch/aws-batch-jobdefinition_volumeshost.go similarity index 71% rename from cloudformation/resources/aws-batch-jobdefinition_volumeshost.go rename to cloudformation/batch/aws-batch-jobdefinition_volumeshost.go index 85fba32d27..6bb0753926 100644 --- a/cloudformation/resources/aws-batch-jobdefinition_volumeshost.go +++ b/cloudformation/batch/aws-batch-jobdefinition_volumeshost.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_VolumesHost AWS CloudFormation Resource (AWS::Batch::JobDefinition.VolumesHost) +// 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 AWSBatchJobDefinition_VolumesHost struct { +type JobDefinition_VolumesHost struct { // SourcePath AWS CloudFormation Property // Required: false @@ -22,42 +24,42 @@ type AWSBatchJobDefinition_VolumesHost struct { } // AWSCloudFormationType returns the AWS CloudFormation resource type -func (r *AWSBatchJobDefinition_VolumesHost) AWSCloudFormationType() string { +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 *AWSBatchJobDefinition_VolumesHost) DependsOn() []string { +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 *AWSBatchJobDefinition_VolumesHost) SetDependsOn(dependencies []string) { +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 *AWSBatchJobDefinition_VolumesHost) Metadata() map[string]interface{} { +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 *AWSBatchJobDefinition_VolumesHost) SetMetadata(metadata map[string]interface{}) { +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 *AWSBatchJobDefinition_VolumesHost) DeletionPolicy() policies.DeletionPolicy { +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 *AWSBatchJobDefinition_VolumesHost) SetDeletionPolicy(policy policies.DeletionPolicy) { +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/resources/aws-batch-jobqueue_computeenvironmentorder.go b/cloudformation/batch/aws-batch-jobqueue_computeenvironmentorder.go similarity index 72% rename from cloudformation/resources/aws-batch-jobqueue_computeenvironmentorder.go rename to cloudformation/batch/aws-batch-jobqueue_computeenvironmentorder.go index b765612a87..f725255616 100644 --- a/cloudformation/resources/aws-batch-jobqueue_computeenvironmentorder.go +++ b/cloudformation/batch/aws-batch-jobqueue_computeenvironmentorder.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" +) -// AWSBatchJobQueue_ComputeEnvironmentOrder AWS CloudFormation Resource (AWS::Batch::JobQueue.ComputeEnvironmentOrder) +// 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 AWSBatchJobQueue_ComputeEnvironmentOrder struct { +type JobQueue_ComputeEnvironmentOrder struct { // ComputeEnvironment AWS CloudFormation Property // Required: true @@ -27,42 +29,42 @@ type AWSBatchJobQueue_ComputeEnvironmentOrder struct { } // AWSCloudFormationType returns the AWS CloudFormation resource type -func (r *AWSBatchJobQueue_ComputeEnvironmentOrder) AWSCloudFormationType() string { +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 *AWSBatchJobQueue_ComputeEnvironmentOrder) DependsOn() []string { +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 *AWSBatchJobQueue_ComputeEnvironmentOrder) SetDependsOn(dependencies []string) { +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 *AWSBatchJobQueue_ComputeEnvironmentOrder) Metadata() map[string]interface{} { +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 *AWSBatchJobQueue_ComputeEnvironmentOrder) SetMetadata(metadata map[string]interface{}) { +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 *AWSBatchJobQueue_ComputeEnvironmentOrder) DeletionPolicy() policies.DeletionPolicy { +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 *AWSBatchJobQueue_ComputeEnvironmentOrder) SetDeletionPolicy(policy policies.DeletionPolicy) { +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/resources/aws-budgets-budget_notificationwithsubscribers.go b/cloudformation/budgets/aws-budgets-budget_notificationwithsubscribers.go similarity index 68% rename from cloudformation/resources/aws-budgets-budget_notificationwithsubscribers.go rename to cloudformation/budgets/aws-budgets-budget_notificationwithsubscribers.go index b553d2d496..8b01d2c002 100644 --- a/cloudformation/resources/aws-budgets-budget_notificationwithsubscribers.go +++ b/cloudformation/budgets/aws-budgets-budget_notificationwithsubscribers.go @@ -1,20 +1,22 @@ -package resources +package budgets -import "github.com/awslabs/goformation/v2/cloudformation/policies" +import ( + "github.com/awslabs/goformation/v3/cloudformation/policies" +) -// AWSBudgetsBudget_NotificationWithSubscribers AWS CloudFormation Resource (AWS::Budgets::Budget.NotificationWithSubscribers) +// 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 AWSBudgetsBudget_NotificationWithSubscribers struct { +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 *AWSBudgetsBudget_Notification `json:"Notification,omitempty"` + 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 []AWSBudgetsBudget_Subscriber `json:"Subscribers,omitempty"` + Subscribers []Budget_Subscriber `json:"Subscribers,omitempty"` // _deletionPolicy represents a CloudFormation DeletionPolicy _deletionPolicy policies.DeletionPolicy @@ -27,42 +29,42 @@ type AWSBudgetsBudget_NotificationWithSubscribers struct { } // AWSCloudFormationType returns the AWS CloudFormation resource type -func (r *AWSBudgetsBudget_NotificationWithSubscribers) AWSCloudFormationType() string { +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 *AWSBudgetsBudget_NotificationWithSubscribers) DependsOn() []string { +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 *AWSBudgetsBudget_NotificationWithSubscribers) SetDependsOn(dependencies []string) { +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 *AWSBudgetsBudget_NotificationWithSubscribers) Metadata() map[string]interface{} { +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 *AWSBudgetsBudget_NotificationWithSubscribers) SetMetadata(metadata map[string]interface{}) { +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 *AWSBudgetsBudget_NotificationWithSubscribers) DeletionPolicy() policies.DeletionPolicy { +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 *AWSBudgetsBudget_NotificationWithSubscribers) SetDeletionPolicy(policy policies.DeletionPolicy) { +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/resources/aws-certificatemanager-certificate_domainvalidationoption.go b/cloudformation/certificatemanager/aws-certificatemanager-certificate_domainvalidationoption.go similarity index 70% rename from cloudformation/resources/aws-certificatemanager-certificate_domainvalidationoption.go rename to cloudformation/certificatemanager/aws-certificatemanager-certificate_domainvalidationoption.go index 087455d4b0..9f235f362c 100644 --- a/cloudformation/resources/aws-certificatemanager-certificate_domainvalidationoption.go +++ b/cloudformation/certificatemanager/aws-certificatemanager-certificate_domainvalidationoption.go @@ -1,10 +1,12 @@ -package resources +package certificatemanager -import "github.com/awslabs/goformation/v2/cloudformation/policies" +import ( + "github.com/awslabs/goformation/v3/cloudformation/policies" +) -// AWSCertificateManagerCertificate_DomainValidationOption AWS CloudFormation Resource (AWS::CertificateManager::Certificate.DomainValidationOption) +// 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 AWSCertificateManagerCertificate_DomainValidationOption struct { +type Certificate_DomainValidationOption struct { // DomainName AWS CloudFormation Property // Required: true @@ -27,42 +29,42 @@ type AWSCertificateManagerCertificate_DomainValidationOption struct { } // AWSCloudFormationType returns the AWS CloudFormation resource type -func (r *AWSCertificateManagerCertificate_DomainValidationOption) AWSCloudFormationType() string { +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 *AWSCertificateManagerCertificate_DomainValidationOption) DependsOn() []string { +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 *AWSCertificateManagerCertificate_DomainValidationOption) SetDependsOn(dependencies []string) { +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 *AWSCertificateManagerCertificate_DomainValidationOption) Metadata() map[string]interface{} { +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 *AWSCertificateManagerCertificate_DomainValidationOption) SetMetadata(metadata map[string]interface{}) { +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 *AWSCertificateManagerCertificate_DomainValidationOption) DeletionPolicy() policies.DeletionPolicy { +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 *AWSCertificateManagerCertificate_DomainValidationOption) SetDeletionPolicy(policy policies.DeletionPolicy) { +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/resources/aws-cloud9-environmentec2_repository.go b/cloudformation/cloud9/aws-cloud9-environmentec2_repository.go similarity index 74% rename from cloudformation/resources/aws-cloud9-environmentec2_repository.go rename to cloudformation/cloud9/aws-cloud9-environmentec2_repository.go index 9984563a7a..98760f7d6d 100644 --- a/cloudformation/resources/aws-cloud9-environmentec2_repository.go +++ b/cloudformation/cloud9/aws-cloud9-environmentec2_repository.go @@ -1,10 +1,12 @@ -package resources +package cloud9 -import "github.com/awslabs/goformation/v2/cloudformation/policies" +import ( + "github.com/awslabs/goformation/v3/cloudformation/policies" +) -// AWSCloud9EnvironmentEC2_Repository AWS CloudFormation Resource (AWS::Cloud9::EnvironmentEC2.Repository) +// 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 AWSCloud9EnvironmentEC2_Repository struct { +type EnvironmentEC2_Repository struct { // PathComponent AWS CloudFormation Property // Required: true @@ -27,42 +29,42 @@ type AWSCloud9EnvironmentEC2_Repository struct { } // AWSCloudFormationType returns the AWS CloudFormation resource type -func (r *AWSCloud9EnvironmentEC2_Repository) AWSCloudFormationType() string { +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 *AWSCloud9EnvironmentEC2_Repository) DependsOn() []string { +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 *AWSCloud9EnvironmentEC2_Repository) SetDependsOn(dependencies []string) { +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 *AWSCloud9EnvironmentEC2_Repository) Metadata() map[string]interface{} { +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 *AWSCloud9EnvironmentEC2_Repository) SetMetadata(metadata map[string]interface{}) { +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 *AWSCloud9EnvironmentEC2_Repository) DeletionPolicy() policies.DeletionPolicy { +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 *AWSCloud9EnvironmentEC2_Repository) SetDeletionPolicy(policy policies.DeletionPolicy) { +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/resources/aws-cloudformation-waitconditionhandle.go b/cloudformation/cloudformation/aws-cloudformation-waitconditionhandle.go similarity index 74% rename from cloudformation/resources/aws-cloudformation-waitconditionhandle.go rename to cloudformation/cloudformation/aws-cloudformation-waitconditionhandle.go index d76eb283df..5400a34655 100644 --- a/cloudformation/resources/aws-cloudformation-waitconditionhandle.go +++ b/cloudformation/cloudformation/aws-cloudformation-waitconditionhandle.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" ) -// AWSCloudFormationWaitConditionHandle AWS CloudFormation Resource (AWS::CloudFormation::WaitConditionHandle) +// WaitConditionHandle AWS CloudFormation Resource (AWS::CloudFormation::WaitConditionHandle) // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-waitconditionhandle.html -type AWSCloudFormationWaitConditionHandle struct { +type WaitConditionHandle struct { // _deletionPolicy represents a CloudFormation DeletionPolicy _deletionPolicy policies.DeletionPolicy @@ -22,50 +23,50 @@ type AWSCloudFormationWaitConditionHandle struct { } // AWSCloudFormationType returns the AWS CloudFormation resource type -func (r *AWSCloudFormationWaitConditionHandle) AWSCloudFormationType() string { +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 *AWSCloudFormationWaitConditionHandle) DependsOn() []string { +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 *AWSCloudFormationWaitConditionHandle) SetDependsOn(dependencies []string) { +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 *AWSCloudFormationWaitConditionHandle) Metadata() map[string]interface{} { +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 *AWSCloudFormationWaitConditionHandle) SetMetadata(metadata map[string]interface{}) { +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 *AWSCloudFormationWaitConditionHandle) DeletionPolicy() policies.DeletionPolicy { +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 *AWSCloudFormationWaitConditionHandle) SetDeletionPolicy(policy policies.DeletionPolicy) { +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 AWSCloudFormationWaitConditionHandle) MarshalJSON() ([]byte, error) { - type Properties AWSCloudFormationWaitConditionHandle +func (r WaitConditionHandle) MarshalJSON() ([]byte, error) { + type Properties WaitConditionHandle return json.Marshal(&struct { Type string Properties Properties @@ -83,8 +84,8 @@ func (r AWSCloudFormationWaitConditionHandle) MarshalJSON() ([]byte, error) { // 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 +func (r *WaitConditionHandle) UnmarshalJSON(b []byte) error { + type Properties WaitConditionHandle res := &struct { Type string Properties *Properties @@ -103,7 +104,7 @@ func (r *AWSCloudFormationWaitConditionHandle) UnmarshalJSON(b []byte) error { // If the resource has no Properties set, it could be nil if res.Properties != nil { - *r = AWSCloudFormationWaitConditionHandle(*res.Properties) + *r = WaitConditionHandle(*res.Properties) } if res.DependsOn != nil { r._dependsOn = res.DependsOn 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/resources/aws-cloudfront-cloudfrontoriginaccessidentity.go b/cloudformation/cloudfront/aws-cloudfront-cloudfrontoriginaccessidentity.go similarity index 71% rename from cloudformation/resources/aws-cloudfront-cloudfrontoriginaccessidentity.go rename to cloudformation/cloudfront/aws-cloudfront-cloudfrontoriginaccessidentity.go index 84fd5c332b..cea01ce47e 100644 --- a/cloudformation/resources/aws-cloudfront-cloudfrontoriginaccessidentity.go +++ b/cloudformation/cloudfront/aws-cloudfront-cloudfrontoriginaccessidentity.go @@ -1,20 +1,21 @@ -package resources +package cloudfront import ( "bytes" "encoding/json" "fmt" - "github.com/awslabs/goformation/v2/cloudformation/policies" + + "github.com/awslabs/goformation/v3/cloudformation/policies" ) -// AWSCloudFrontCloudFrontOriginAccessIdentity AWS CloudFormation Resource (AWS::CloudFront::CloudFrontOriginAccessIdentity) +// CloudFrontOriginAccessIdentity AWS CloudFormation Resource (AWS::CloudFront::CloudFrontOriginAccessIdentity) // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-cloudfront-cloudfrontoriginaccessidentity.html -type AWSCloudFrontCloudFrontOriginAccessIdentity struct { +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 *AWSCloudFrontCloudFrontOriginAccessIdentity_CloudFrontOriginAccessIdentityConfig `json:"CloudFrontOriginAccessIdentityConfig,omitempty"` + CloudFrontOriginAccessIdentityConfig *CloudFrontOriginAccessIdentity_CloudFrontOriginAccessIdentityConfig `json:"CloudFrontOriginAccessIdentityConfig,omitempty"` // _deletionPolicy represents a CloudFormation DeletionPolicy _deletionPolicy policies.DeletionPolicy @@ -27,50 +28,50 @@ type AWSCloudFrontCloudFrontOriginAccessIdentity struct { } // AWSCloudFormationType returns the AWS CloudFormation resource type -func (r *AWSCloudFrontCloudFrontOriginAccessIdentity) AWSCloudFormationType() string { +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 *AWSCloudFrontCloudFrontOriginAccessIdentity) DependsOn() []string { +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 *AWSCloudFrontCloudFrontOriginAccessIdentity) SetDependsOn(dependencies []string) { +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 *AWSCloudFrontCloudFrontOriginAccessIdentity) Metadata() map[string]interface{} { +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 *AWSCloudFrontCloudFrontOriginAccessIdentity) SetMetadata(metadata map[string]interface{}) { +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 *AWSCloudFrontCloudFrontOriginAccessIdentity) DeletionPolicy() policies.DeletionPolicy { +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 *AWSCloudFrontCloudFrontOriginAccessIdentity) SetDeletionPolicy(policy policies.DeletionPolicy) { +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 AWSCloudFrontCloudFrontOriginAccessIdentity) MarshalJSON() ([]byte, error) { - type Properties AWSCloudFrontCloudFrontOriginAccessIdentity +func (r CloudFrontOriginAccessIdentity) MarshalJSON() ([]byte, error) { + type Properties CloudFrontOriginAccessIdentity return json.Marshal(&struct { Type string Properties Properties @@ -88,8 +89,8 @@ func (r AWSCloudFrontCloudFrontOriginAccessIdentity) 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 *AWSCloudFrontCloudFrontOriginAccessIdentity) UnmarshalJSON(b []byte) error { - type Properties AWSCloudFrontCloudFrontOriginAccessIdentity +func (r *CloudFrontOriginAccessIdentity) UnmarshalJSON(b []byte) error { + type Properties CloudFrontOriginAccessIdentity res := &struct { Type string Properties *Properties @@ -108,7 +109,7 @@ func (r *AWSCloudFrontCloudFrontOriginAccessIdentity) UnmarshalJSON(b []byte) er // If the resource has no Properties set, it could be nil if res.Properties != nil { - *r = AWSCloudFrontCloudFrontOriginAccessIdentity(*res.Properties) + *r = CloudFrontOriginAccessIdentity(*res.Properties) } if res.DependsOn != nil { r._dependsOn = res.DependsOn diff --git a/cloudformation/resources/aws-cloudfront-cloudfrontoriginaccessidentity_cloudfrontoriginaccessidentityconfig.go b/cloudformation/cloudfront/aws-cloudfront-cloudfrontoriginaccessidentity_cloudfrontoriginaccessidentityconfig.go similarity index 63% rename from cloudformation/resources/aws-cloudfront-cloudfrontoriginaccessidentity_cloudfrontoriginaccessidentityconfig.go rename to cloudformation/cloudfront/aws-cloudfront-cloudfrontoriginaccessidentity_cloudfrontoriginaccessidentityconfig.go index abfb1985eb..b8668d9668 100644 --- a/cloudformation/resources/aws-cloudfront-cloudfrontoriginaccessidentity_cloudfrontoriginaccessidentityconfig.go +++ b/cloudformation/cloudfront/aws-cloudfront-cloudfrontoriginaccessidentity_cloudfrontoriginaccessidentityconfig.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" +) -// AWSCloudFrontCloudFrontOriginAccessIdentity_CloudFrontOriginAccessIdentityConfig AWS CloudFormation Resource (AWS::CloudFront::CloudFrontOriginAccessIdentity.CloudFrontOriginAccessIdentityConfig) +// 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 AWSCloudFrontCloudFrontOriginAccessIdentity_CloudFrontOriginAccessIdentityConfig struct { +type CloudFrontOriginAccessIdentity_CloudFrontOriginAccessIdentityConfig struct { // Comment AWS CloudFormation Property // Required: true @@ -22,42 +24,42 @@ type AWSCloudFrontCloudFrontOriginAccessIdentity_CloudFrontOriginAccessIdentityC } // AWSCloudFormationType returns the AWS CloudFormation resource type -func (r *AWSCloudFrontCloudFrontOriginAccessIdentity_CloudFrontOriginAccessIdentityConfig) AWSCloudFormationType() string { +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 *AWSCloudFrontCloudFrontOriginAccessIdentity_CloudFrontOriginAccessIdentityConfig) DependsOn() []string { +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 *AWSCloudFrontCloudFrontOriginAccessIdentity_CloudFrontOriginAccessIdentityConfig) SetDependsOn(dependencies []string) { +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 *AWSCloudFrontCloudFrontOriginAccessIdentity_CloudFrontOriginAccessIdentityConfig) Metadata() map[string]interface{} { +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 *AWSCloudFrontCloudFrontOriginAccessIdentity_CloudFrontOriginAccessIdentityConfig) SetMetadata(metadata map[string]interface{}) { +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 *AWSCloudFrontCloudFrontOriginAccessIdentity_CloudFrontOriginAccessIdentityConfig) DeletionPolicy() policies.DeletionPolicy { +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 *AWSCloudFrontCloudFrontOriginAccessIdentity_CloudFrontOriginAccessIdentityConfig) SetDeletionPolicy(policy policies.DeletionPolicy) { +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/resources/aws-cloudfront-distribution_cookies.go b/cloudformation/cloudfront/aws-cloudfront-distribution_cookies.go similarity index 74% rename from cloudformation/resources/aws-cloudfront-distribution_cookies.go rename to cloudformation/cloudfront/aws-cloudfront-distribution_cookies.go index 5bb209c08c..d9e4f7df64 100644 --- a/cloudformation/resources/aws-cloudfront-distribution_cookies.go +++ b/cloudformation/cloudfront/aws-cloudfront-distribution_cookies.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_Cookies AWS CloudFormation Resource (AWS::CloudFront::Distribution.Cookies) +// 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 AWSCloudFrontDistribution_Cookies struct { +type Distribution_Cookies struct { // Forward AWS CloudFormation Property // Required: true @@ -27,42 +29,42 @@ type AWSCloudFrontDistribution_Cookies struct { } // AWSCloudFormationType returns the AWS CloudFormation resource type -func (r *AWSCloudFrontDistribution_Cookies) AWSCloudFormationType() string { +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 *AWSCloudFrontDistribution_Cookies) DependsOn() []string { +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 *AWSCloudFrontDistribution_Cookies) SetDependsOn(dependencies []string) { +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 *AWSCloudFrontDistribution_Cookies) Metadata() map[string]interface{} { +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 *AWSCloudFrontDistribution_Cookies) SetMetadata(metadata map[string]interface{}) { +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 *AWSCloudFrontDistribution_Cookies) DeletionPolicy() policies.DeletionPolicy { +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 *AWSCloudFrontDistribution_Cookies) SetDeletionPolicy(policy policies.DeletionPolicy) { +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/resources/aws-cloudfront-distribution_georestriction.go b/cloudformation/cloudfront/aws-cloudfront-distribution_georestriction.go similarity index 73% rename from cloudformation/resources/aws-cloudfront-distribution_georestriction.go rename to cloudformation/cloudfront/aws-cloudfront-distribution_georestriction.go index 0c54a41df6..ffd350840e 100644 --- a/cloudformation/resources/aws-cloudfront-distribution_georestriction.go +++ b/cloudformation/cloudfront/aws-cloudfront-distribution_georestriction.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_GeoRestriction AWS CloudFormation Resource (AWS::CloudFront::Distribution.GeoRestriction) +// 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 AWSCloudFrontDistribution_GeoRestriction struct { +type Distribution_GeoRestriction struct { // Locations AWS CloudFormation Property // Required: false @@ -27,42 +29,42 @@ type AWSCloudFrontDistribution_GeoRestriction struct { } // AWSCloudFormationType returns the AWS CloudFormation resource type -func (r *AWSCloudFrontDistribution_GeoRestriction) AWSCloudFormationType() string { +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 *AWSCloudFrontDistribution_GeoRestriction) DependsOn() []string { +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 *AWSCloudFrontDistribution_GeoRestriction) SetDependsOn(dependencies []string) { +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 *AWSCloudFrontDistribution_GeoRestriction) Metadata() map[string]interface{} { +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 *AWSCloudFrontDistribution_GeoRestriction) SetMetadata(metadata map[string]interface{}) { +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 *AWSCloudFrontDistribution_GeoRestriction) DeletionPolicy() policies.DeletionPolicy { +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 *AWSCloudFrontDistribution_GeoRestriction) SetDeletionPolicy(policy policies.DeletionPolicy) { +func (r *Distribution_GeoRestriction) SetDeletionPolicy(policy policies.DeletionPolicy) { r._deletionPolicy = policy } diff --git a/cloudformation/resources/aws-cloudfront-distribution_lambdafunctionassociation.go b/cloudformation/cloudfront/aws-cloudfront-distribution_lambdafunctionassociation.go similarity index 71% rename from cloudformation/resources/aws-cloudfront-distribution_lambdafunctionassociation.go rename to cloudformation/cloudfront/aws-cloudfront-distribution_lambdafunctionassociation.go index 71482d316a..993b4cada4 100644 --- a/cloudformation/resources/aws-cloudfront-distribution_lambdafunctionassociation.go +++ b/cloudformation/cloudfront/aws-cloudfront-distribution_lambdafunctionassociation.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_LambdaFunctionAssociation AWS CloudFormation Resource (AWS::CloudFront::Distribution.LambdaFunctionAssociation) +// 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 AWSCloudFrontDistribution_LambdaFunctionAssociation struct { +type Distribution_LambdaFunctionAssociation struct { // EventType AWS CloudFormation Property // Required: false @@ -27,42 +29,42 @@ type AWSCloudFrontDistribution_LambdaFunctionAssociation struct { } // AWSCloudFormationType returns the AWS CloudFormation resource type -func (r *AWSCloudFrontDistribution_LambdaFunctionAssociation) AWSCloudFormationType() string { +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 *AWSCloudFrontDistribution_LambdaFunctionAssociation) DependsOn() []string { +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 *AWSCloudFrontDistribution_LambdaFunctionAssociation) SetDependsOn(dependencies []string) { +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 *AWSCloudFrontDistribution_LambdaFunctionAssociation) Metadata() map[string]interface{} { +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 *AWSCloudFrontDistribution_LambdaFunctionAssociation) SetMetadata(metadata map[string]interface{}) { +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 *AWSCloudFrontDistribution_LambdaFunctionAssociation) DeletionPolicy() policies.DeletionPolicy { +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 *AWSCloudFrontDistribution_LambdaFunctionAssociation) SetDeletionPolicy(policy policies.DeletionPolicy) { +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/resources/aws-cloudfront-distribution_origincustomheader.go b/cloudformation/cloudfront/aws-cloudfront-distribution_origincustomheader.go similarity index 72% rename from cloudformation/resources/aws-cloudfront-distribution_origincustomheader.go rename to cloudformation/cloudfront/aws-cloudfront-distribution_origincustomheader.go index d634a16ab7..957b792515 100644 --- a/cloudformation/resources/aws-cloudfront-distribution_origincustomheader.go +++ b/cloudformation/cloudfront/aws-cloudfront-distribution_origincustomheader.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_OriginCustomHeader AWS CloudFormation Resource (AWS::CloudFront::Distribution.OriginCustomHeader) +// 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 AWSCloudFrontDistribution_OriginCustomHeader struct { +type Distribution_OriginCustomHeader struct { // HeaderName AWS CloudFormation Property // Required: true @@ -27,42 +29,42 @@ type AWSCloudFrontDistribution_OriginCustomHeader struct { } // AWSCloudFormationType returns the AWS CloudFormation resource type -func (r *AWSCloudFrontDistribution_OriginCustomHeader) AWSCloudFormationType() string { +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 *AWSCloudFrontDistribution_OriginCustomHeader) DependsOn() []string { +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 *AWSCloudFrontDistribution_OriginCustomHeader) SetDependsOn(dependencies []string) { +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 *AWSCloudFrontDistribution_OriginCustomHeader) Metadata() map[string]interface{} { +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 *AWSCloudFrontDistribution_OriginCustomHeader) SetMetadata(metadata map[string]interface{}) { +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 *AWSCloudFrontDistribution_OriginCustomHeader) DeletionPolicy() policies.DeletionPolicy { +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 *AWSCloudFrontDistribution_OriginCustomHeader) SetDeletionPolicy(policy policies.DeletionPolicy) { +func (r *Distribution_OriginCustomHeader) SetDeletionPolicy(policy policies.DeletionPolicy) { r._deletionPolicy = policy } diff --git a/cloudformation/resources/aws-cloudfront-distribution_restrictions.go b/cloudformation/cloudfront/aws-cloudfront-distribution_restrictions.go similarity index 68% rename from cloudformation/resources/aws-cloudfront-distribution_restrictions.go rename to cloudformation/cloudfront/aws-cloudfront-distribution_restrictions.go index e6beabb68f..515e78ec20 100644 --- a/cloudformation/resources/aws-cloudfront-distribution_restrictions.go +++ b/cloudformation/cloudfront/aws-cloudfront-distribution_restrictions.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_Restrictions AWS CloudFormation Resource (AWS::CloudFront::Distribution.Restrictions) +// 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 AWSCloudFrontDistribution_Restrictions struct { +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 *AWSCloudFrontDistribution_GeoRestriction `json:"GeoRestriction,omitempty"` + GeoRestriction *Distribution_GeoRestriction `json:"GeoRestriction,omitempty"` // _deletionPolicy represents a CloudFormation DeletionPolicy _deletionPolicy policies.DeletionPolicy @@ -22,42 +24,42 @@ type AWSCloudFrontDistribution_Restrictions struct { } // AWSCloudFormationType returns the AWS CloudFormation resource type -func (r *AWSCloudFrontDistribution_Restrictions) AWSCloudFormationType() string { +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 *AWSCloudFrontDistribution_Restrictions) DependsOn() []string { +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 *AWSCloudFrontDistribution_Restrictions) SetDependsOn(dependencies []string) { +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 *AWSCloudFrontDistribution_Restrictions) Metadata() map[string]interface{} { +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 *AWSCloudFrontDistribution_Restrictions) SetMetadata(metadata map[string]interface{}) { +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 *AWSCloudFrontDistribution_Restrictions) DeletionPolicy() policies.DeletionPolicy { +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 *AWSCloudFrontDistribution_Restrictions) SetDeletionPolicy(policy policies.DeletionPolicy) { +func (r *Distribution_Restrictions) SetDeletionPolicy(policy policies.DeletionPolicy) { r._deletionPolicy = policy } diff --git a/cloudformation/resources/aws-cloudfront-distribution_s3originconfig.go b/cloudformation/cloudfront/aws-cloudfront-distribution_s3originconfig.go similarity index 70% rename from cloudformation/resources/aws-cloudfront-distribution_s3originconfig.go rename to cloudformation/cloudfront/aws-cloudfront-distribution_s3originconfig.go index 274a0ffaa9..921eeb56f1 100644 --- a/cloudformation/resources/aws-cloudfront-distribution_s3originconfig.go +++ b/cloudformation/cloudfront/aws-cloudfront-distribution_s3originconfig.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_S3OriginConfig AWS CloudFormation Resource (AWS::CloudFront::Distribution.S3OriginConfig) +// 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 AWSCloudFrontDistribution_S3OriginConfig struct { +type Distribution_S3OriginConfig struct { // OriginAccessIdentity AWS CloudFormation Property // Required: false @@ -22,42 +24,42 @@ type AWSCloudFrontDistribution_S3OriginConfig struct { } // AWSCloudFormationType returns the AWS CloudFormation resource type -func (r *AWSCloudFrontDistribution_S3OriginConfig) AWSCloudFormationType() string { +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 *AWSCloudFrontDistribution_S3OriginConfig) DependsOn() []string { +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 *AWSCloudFrontDistribution_S3OriginConfig) SetDependsOn(dependencies []string) { +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 *AWSCloudFrontDistribution_S3OriginConfig) Metadata() map[string]interface{} { +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 *AWSCloudFrontDistribution_S3OriginConfig) SetMetadata(metadata map[string]interface{}) { +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 *AWSCloudFrontDistribution_S3OriginConfig) DeletionPolicy() policies.DeletionPolicy { +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 *AWSCloudFrontDistribution_S3OriginConfig) SetDeletionPolicy(policy policies.DeletionPolicy) { +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/resources/aws-cloudfront-streamingdistribution.go b/cloudformation/cloudfront/aws-cloudfront-streamingdistribution.go similarity index 74% rename from cloudformation/resources/aws-cloudfront-streamingdistribution.go rename to cloudformation/cloudfront/aws-cloudfront-streamingdistribution.go index b6bea4b175..f4b308f88d 100644 --- a/cloudformation/resources/aws-cloudfront-streamingdistribution.go +++ b/cloudformation/cloudfront/aws-cloudfront-streamingdistribution.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" ) -// AWSCloudFrontStreamingDistribution AWS CloudFormation Resource (AWS::CloudFront::StreamingDistribution) +// StreamingDistribution AWS CloudFormation Resource (AWS::CloudFront::StreamingDistribution) // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-cloudfront-streamingdistribution.html -type AWSCloudFrontStreamingDistribution struct { +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 *AWSCloudFrontStreamingDistribution_StreamingDistributionConfig `json:"StreamingDistributionConfig,omitempty"` + 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 []Tag `json:"Tags,omitempty"` + Tags []tags.Tag `json:"Tags,omitempty"` // _deletionPolicy represents a CloudFormation DeletionPolicy _deletionPolicy policies.DeletionPolicy @@ -32,50 +34,50 @@ type AWSCloudFrontStreamingDistribution struct { } // AWSCloudFormationType returns the AWS CloudFormation resource type -func (r *AWSCloudFrontStreamingDistribution) AWSCloudFormationType() string { +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 *AWSCloudFrontStreamingDistribution) DependsOn() []string { +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 *AWSCloudFrontStreamingDistribution) SetDependsOn(dependencies []string) { +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 *AWSCloudFrontStreamingDistribution) Metadata() map[string]interface{} { +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 *AWSCloudFrontStreamingDistribution) SetMetadata(metadata map[string]interface{}) { +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 *AWSCloudFrontStreamingDistribution) DeletionPolicy() policies.DeletionPolicy { +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 *AWSCloudFrontStreamingDistribution) SetDeletionPolicy(policy policies.DeletionPolicy) { +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 AWSCloudFrontStreamingDistribution) MarshalJSON() ([]byte, error) { - type Properties AWSCloudFrontStreamingDistribution +func (r StreamingDistribution) MarshalJSON() ([]byte, error) { + type Properties StreamingDistribution return json.Marshal(&struct { Type string Properties Properties @@ -93,8 +95,8 @@ func (r AWSCloudFrontStreamingDistribution) MarshalJSON() ([]byte, error) { // 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 +func (r *StreamingDistribution) UnmarshalJSON(b []byte) error { + type Properties StreamingDistribution res := &struct { Type string Properties *Properties @@ -113,7 +115,7 @@ func (r *AWSCloudFrontStreamingDistribution) UnmarshalJSON(b []byte) error { // If the resource has no Properties set, it could be nil if res.Properties != nil { - *r = AWSCloudFrontStreamingDistribution(*res.Properties) + *r = StreamingDistribution(*res.Properties) } if res.DependsOn != nil { r._dependsOn = res.DependsOn diff --git a/cloudformation/resources/aws-cloudfront-streamingdistribution_logging.go b/cloudformation/cloudfront/aws-cloudfront-streamingdistribution_logging.go similarity index 74% rename from cloudformation/resources/aws-cloudfront-streamingdistribution_logging.go rename to cloudformation/cloudfront/aws-cloudfront-streamingdistribution_logging.go index bd03e902ab..4f0f9c9c75 100644 --- a/cloudformation/resources/aws-cloudfront-streamingdistribution_logging.go +++ b/cloudformation/cloudfront/aws-cloudfront-streamingdistribution_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" +) -// AWSCloudFrontStreamingDistribution_Logging AWS CloudFormation Resource (AWS::CloudFront::StreamingDistribution.Logging) +// 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 AWSCloudFrontStreamingDistribution_Logging struct { +type StreamingDistribution_Logging struct { // Bucket AWS CloudFormation Property // Required: true @@ -32,42 +34,42 @@ type AWSCloudFrontStreamingDistribution_Logging struct { } // AWSCloudFormationType returns the AWS CloudFormation resource type -func (r *AWSCloudFrontStreamingDistribution_Logging) AWSCloudFormationType() string { +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 *AWSCloudFrontStreamingDistribution_Logging) DependsOn() []string { +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 *AWSCloudFrontStreamingDistribution_Logging) SetDependsOn(dependencies []string) { +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 *AWSCloudFrontStreamingDistribution_Logging) Metadata() map[string]interface{} { +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 *AWSCloudFrontStreamingDistribution_Logging) SetMetadata(metadata map[string]interface{}) { +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 *AWSCloudFrontStreamingDistribution_Logging) DeletionPolicy() policies.DeletionPolicy { +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 *AWSCloudFrontStreamingDistribution_Logging) SetDeletionPolicy(policy policies.DeletionPolicy) { +func (r *StreamingDistribution_Logging) SetDeletionPolicy(policy policies.DeletionPolicy) { r._deletionPolicy = policy } diff --git a/cloudformation/resources/aws-cloudfront-streamingdistribution_s3origin.go b/cloudformation/cloudfront/aws-cloudfront-streamingdistribution_s3origin.go similarity index 72% rename from cloudformation/resources/aws-cloudfront-streamingdistribution_s3origin.go rename to cloudformation/cloudfront/aws-cloudfront-streamingdistribution_s3origin.go index ea433f7b30..f6dda786b1 100644 --- a/cloudformation/resources/aws-cloudfront-streamingdistribution_s3origin.go +++ b/cloudformation/cloudfront/aws-cloudfront-streamingdistribution_s3origin.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" +) -// AWSCloudFrontStreamingDistribution_S3Origin AWS CloudFormation Resource (AWS::CloudFront::StreamingDistribution.S3Origin) +// 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 AWSCloudFrontStreamingDistribution_S3Origin struct { +type StreamingDistribution_S3Origin struct { // DomainName AWS CloudFormation Property // Required: true @@ -27,42 +29,42 @@ type AWSCloudFrontStreamingDistribution_S3Origin struct { } // AWSCloudFormationType returns the AWS CloudFormation resource type -func (r *AWSCloudFrontStreamingDistribution_S3Origin) AWSCloudFormationType() string { +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 *AWSCloudFrontStreamingDistribution_S3Origin) DependsOn() []string { +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 *AWSCloudFrontStreamingDistribution_S3Origin) SetDependsOn(dependencies []string) { +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 *AWSCloudFrontStreamingDistribution_S3Origin) Metadata() map[string]interface{} { +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 *AWSCloudFrontStreamingDistribution_S3Origin) SetMetadata(metadata map[string]interface{}) { +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 *AWSCloudFrontStreamingDistribution_S3Origin) DeletionPolicy() policies.DeletionPolicy { +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 *AWSCloudFrontStreamingDistribution_S3Origin) SetDeletionPolicy(policy policies.DeletionPolicy) { +func (r *StreamingDistribution_S3Origin) SetDeletionPolicy(policy policies.DeletionPolicy) { r._deletionPolicy = policy } diff --git a/cloudformation/resources/aws-cloudfront-streamingdistribution_streamingdistributionconfig.go b/cloudformation/cloudfront/aws-cloudfront-streamingdistribution_streamingdistributionconfig.go similarity index 74% rename from cloudformation/resources/aws-cloudfront-streamingdistribution_streamingdistributionconfig.go rename to cloudformation/cloudfront/aws-cloudfront-streamingdistribution_streamingdistributionconfig.go index f2b806c276..262dcf46ff 100644 --- a/cloudformation/resources/aws-cloudfront-streamingdistribution_streamingdistributionconfig.go +++ b/cloudformation/cloudfront/aws-cloudfront-streamingdistribution_streamingdistributionconfig.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" +) -// AWSCloudFrontStreamingDistribution_StreamingDistributionConfig AWS CloudFormation Resource (AWS::CloudFront::StreamingDistribution.StreamingDistributionConfig) +// 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 AWSCloudFrontStreamingDistribution_StreamingDistributionConfig struct { +type StreamingDistribution_StreamingDistributionConfig struct { // Aliases AWS CloudFormation Property // Required: false @@ -24,7 +26,7 @@ type AWSCloudFrontStreamingDistribution_StreamingDistributionConfig struct { // 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"` + Logging *StreamingDistribution_Logging `json:"Logging,omitempty"` // PriceClass AWS CloudFormation Property // Required: false @@ -34,12 +36,12 @@ type AWSCloudFrontStreamingDistribution_StreamingDistributionConfig struct { // 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"` + 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 *AWSCloudFrontStreamingDistribution_TrustedSigners `json:"TrustedSigners,omitempty"` + TrustedSigners *StreamingDistribution_TrustedSigners `json:"TrustedSigners,omitempty"` // _deletionPolicy represents a CloudFormation DeletionPolicy _deletionPolicy policies.DeletionPolicy @@ -52,42 +54,42 @@ type AWSCloudFrontStreamingDistribution_StreamingDistributionConfig struct { } // AWSCloudFormationType returns the AWS CloudFormation resource type -func (r *AWSCloudFrontStreamingDistribution_StreamingDistributionConfig) AWSCloudFormationType() string { +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 *AWSCloudFrontStreamingDistribution_StreamingDistributionConfig) DependsOn() []string { +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 *AWSCloudFrontStreamingDistribution_StreamingDistributionConfig) SetDependsOn(dependencies []string) { +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 *AWSCloudFrontStreamingDistribution_StreamingDistributionConfig) Metadata() map[string]interface{} { +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 *AWSCloudFrontStreamingDistribution_StreamingDistributionConfig) SetMetadata(metadata map[string]interface{}) { +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 *AWSCloudFrontStreamingDistribution_StreamingDistributionConfig) DeletionPolicy() policies.DeletionPolicy { +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 *AWSCloudFrontStreamingDistribution_StreamingDistributionConfig) SetDeletionPolicy(policy policies.DeletionPolicy) { +func (r *StreamingDistribution_StreamingDistributionConfig) SetDeletionPolicy(policy policies.DeletionPolicy) { r._deletionPolicy = policy } diff --git a/cloudformation/resources/aws-cloudfront-streamingdistribution_trustedsigners.go b/cloudformation/cloudfront/aws-cloudfront-streamingdistribution_trustedsigners.go similarity index 71% rename from cloudformation/resources/aws-cloudfront-streamingdistribution_trustedsigners.go rename to cloudformation/cloudfront/aws-cloudfront-streamingdistribution_trustedsigners.go index a1e58fd47e..df15e70f10 100644 --- a/cloudformation/resources/aws-cloudfront-streamingdistribution_trustedsigners.go +++ b/cloudformation/cloudfront/aws-cloudfront-streamingdistribution_trustedsigners.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" +) -// AWSCloudFrontStreamingDistribution_TrustedSigners AWS CloudFormation Resource (AWS::CloudFront::StreamingDistribution.TrustedSigners) +// 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 AWSCloudFrontStreamingDistribution_TrustedSigners struct { +type StreamingDistribution_TrustedSigners struct { // AwsAccountNumbers AWS CloudFormation Property // Required: false @@ -27,42 +29,42 @@ type AWSCloudFrontStreamingDistribution_TrustedSigners struct { } // AWSCloudFormationType returns the AWS CloudFormation resource type -func (r *AWSCloudFrontStreamingDistribution_TrustedSigners) AWSCloudFormationType() string { +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 *AWSCloudFrontStreamingDistribution_TrustedSigners) DependsOn() []string { +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 *AWSCloudFrontStreamingDistribution_TrustedSigners) SetDependsOn(dependencies []string) { +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 *AWSCloudFrontStreamingDistribution_TrustedSigners) Metadata() map[string]interface{} { +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 *AWSCloudFrontStreamingDistribution_TrustedSigners) SetMetadata(metadata map[string]interface{}) { +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 *AWSCloudFrontStreamingDistribution_TrustedSigners) DeletionPolicy() policies.DeletionPolicy { +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 *AWSCloudFrontStreamingDistribution_TrustedSigners) SetDeletionPolicy(policy policies.DeletionPolicy) { +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/resources/aws-cloudtrail-trail_dataresource.go b/cloudformation/cloudtrail/aws-cloudtrail-trail_dataresource.go similarity index 74% rename from cloudformation/resources/aws-cloudtrail-trail_dataresource.go rename to cloudformation/cloudtrail/aws-cloudtrail-trail_dataresource.go index 4886c1794d..8504cefca5 100644 --- a/cloudformation/resources/aws-cloudtrail-trail_dataresource.go +++ b/cloudformation/cloudtrail/aws-cloudtrail-trail_dataresource.go @@ -1,10 +1,12 @@ -package resources +package cloudtrail -import "github.com/awslabs/goformation/v2/cloudformation/policies" +import ( + "github.com/awslabs/goformation/v3/cloudformation/policies" +) -// AWSCloudTrailTrail_DataResource AWS CloudFormation Resource (AWS::CloudTrail::Trail.DataResource) +// 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 AWSCloudTrailTrail_DataResource struct { +type Trail_DataResource struct { // Type AWS CloudFormation Property // Required: true @@ -27,42 +29,42 @@ type AWSCloudTrailTrail_DataResource struct { } // AWSCloudFormationType returns the AWS CloudFormation resource type -func (r *AWSCloudTrailTrail_DataResource) AWSCloudFormationType() string { +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 *AWSCloudTrailTrail_DataResource) DependsOn() []string { +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 *AWSCloudTrailTrail_DataResource) SetDependsOn(dependencies []string) { +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 *AWSCloudTrailTrail_DataResource) Metadata() map[string]interface{} { +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 *AWSCloudTrailTrail_DataResource) SetMetadata(metadata map[string]interface{}) { +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 *AWSCloudTrailTrail_DataResource) DeletionPolicy() policies.DeletionPolicy { +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 *AWSCloudTrailTrail_DataResource) SetDeletionPolicy(policy policies.DeletionPolicy) { +func (r *Trail_DataResource) SetDeletionPolicy(policy policies.DeletionPolicy) { r._deletionPolicy = policy } diff --git a/cloudformation/resources/aws-cloudtrail-trail_eventselector.go b/cloudformation/cloudtrail/aws-cloudtrail-trail_eventselector.go similarity index 74% rename from cloudformation/resources/aws-cloudtrail-trail_eventselector.go rename to cloudformation/cloudtrail/aws-cloudtrail-trail_eventselector.go index 883f22e19a..7b93757dca 100644 --- a/cloudformation/resources/aws-cloudtrail-trail_eventselector.go +++ b/cloudformation/cloudtrail/aws-cloudtrail-trail_eventselector.go @@ -1,15 +1,17 @@ -package resources +package cloudtrail -import "github.com/awslabs/goformation/v2/cloudformation/policies" +import ( + "github.com/awslabs/goformation/v3/cloudformation/policies" +) -// AWSCloudTrailTrail_EventSelector AWS CloudFormation Resource (AWS::CloudTrail::Trail.EventSelector) +// 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 AWSCloudTrailTrail_EventSelector struct { +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 []AWSCloudTrailTrail_DataResource `json:"DataResources,omitempty"` + DataResources []Trail_DataResource `json:"DataResources,omitempty"` // IncludeManagementEvents AWS CloudFormation Property // Required: false @@ -32,42 +34,42 @@ type AWSCloudTrailTrail_EventSelector struct { } // AWSCloudFormationType returns the AWS CloudFormation resource type -func (r *AWSCloudTrailTrail_EventSelector) AWSCloudFormationType() string { +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 *AWSCloudTrailTrail_EventSelector) DependsOn() []string { +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 *AWSCloudTrailTrail_EventSelector) SetDependsOn(dependencies []string) { +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 *AWSCloudTrailTrail_EventSelector) Metadata() map[string]interface{} { +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 *AWSCloudTrailTrail_EventSelector) SetMetadata(metadata map[string]interface{}) { +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 *AWSCloudTrailTrail_EventSelector) DeletionPolicy() policies.DeletionPolicy { +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 *AWSCloudTrailTrail_EventSelector) SetDeletionPolicy(policy policies.DeletionPolicy) { +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/resources/aws-cloudwatch-alarm_dimension.go b/cloudformation/cloudwatch/aws-cloudwatch-alarm_dimension.go similarity index 74% rename from cloudformation/resources/aws-cloudwatch-alarm_dimension.go rename to cloudformation/cloudwatch/aws-cloudwatch-alarm_dimension.go index 447480e4fc..b0d85df192 100644 --- a/cloudformation/resources/aws-cloudwatch-alarm_dimension.go +++ b/cloudformation/cloudwatch/aws-cloudwatch-alarm_dimension.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_Dimension AWS CloudFormation Resource (AWS::CloudWatch::Alarm.Dimension) +// Alarm_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 { +type Alarm_Dimension struct { // Name AWS CloudFormation Property // Required: true @@ -27,42 +29,42 @@ type AWSCloudWatchAlarm_Dimension struct { } // AWSCloudFormationType returns the AWS CloudFormation resource type -func (r *AWSCloudWatchAlarm_Dimension) AWSCloudFormationType() string { +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 *AWSCloudWatchAlarm_Dimension) DependsOn() []string { +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 *AWSCloudWatchAlarm_Dimension) SetDependsOn(dependencies []string) { +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 *AWSCloudWatchAlarm_Dimension) Metadata() map[string]interface{} { +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 *AWSCloudWatchAlarm_Dimension) SetMetadata(metadata map[string]interface{}) { +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 *AWSCloudWatchAlarm_Dimension) DeletionPolicy() policies.DeletionPolicy { +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 *AWSCloudWatchAlarm_Dimension) SetDeletionPolicy(policy policies.DeletionPolicy) { +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/resources/aws-cloudwatch-anomalydetector_configuration.go b/cloudformation/cloudwatch/aws-cloudwatch-anomalydetector_configuration.go similarity index 70% rename from cloudformation/resources/aws-cloudwatch-anomalydetector_configuration.go rename to cloudformation/cloudwatch/aws-cloudwatch-anomalydetector_configuration.go index 2b32e1d100..fb6eb19c48 100644 --- a/cloudformation/resources/aws-cloudwatch-anomalydetector_configuration.go +++ b/cloudformation/cloudwatch/aws-cloudwatch-anomalydetector_configuration.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" +) -// AWSCloudWatchAnomalyDetector_Configuration AWS CloudFormation Resource (AWS::CloudWatch::AnomalyDetector.Configuration) +// 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 AWSCloudWatchAnomalyDetector_Configuration struct { +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 []AWSCloudWatchAnomalyDetector_Range `json:"ExcludedTimeRanges,omitempty"` + ExcludedTimeRanges []AnomalyDetector_Range `json:"ExcludedTimeRanges,omitempty"` // MetricTimeZone AWS CloudFormation Property // Required: false @@ -27,42 +29,42 @@ type AWSCloudWatchAnomalyDetector_Configuration struct { } // AWSCloudFormationType returns the AWS CloudFormation resource type -func (r *AWSCloudWatchAnomalyDetector_Configuration) AWSCloudFormationType() string { +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 *AWSCloudWatchAnomalyDetector_Configuration) DependsOn() []string { +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 *AWSCloudWatchAnomalyDetector_Configuration) SetDependsOn(dependencies []string) { +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 *AWSCloudWatchAnomalyDetector_Configuration) Metadata() map[string]interface{} { +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 *AWSCloudWatchAnomalyDetector_Configuration) SetMetadata(metadata map[string]interface{}) { +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 *AWSCloudWatchAnomalyDetector_Configuration) DeletionPolicy() policies.DeletionPolicy { +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 *AWSCloudWatchAnomalyDetector_Configuration) SetDeletionPolicy(policy policies.DeletionPolicy) { +func (r *AnomalyDetector_Configuration) SetDeletionPolicy(policy policies.DeletionPolicy) { r._deletionPolicy = policy } diff --git a/cloudformation/resources/aws-cloudwatch-anomalydetector_dimension.go b/cloudformation/cloudwatch/aws-cloudwatch-anomalydetector_dimension.go similarity index 72% rename from cloudformation/resources/aws-cloudwatch-anomalydetector_dimension.go rename to cloudformation/cloudwatch/aws-cloudwatch-anomalydetector_dimension.go index 71ff090c49..8380047d52 100644 --- a/cloudformation/resources/aws-cloudwatch-anomalydetector_dimension.go +++ b/cloudformation/cloudwatch/aws-cloudwatch-anomalydetector_dimension.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" +) -// AWSCloudWatchAnomalyDetector_Dimension AWS CloudFormation Resource (AWS::CloudWatch::AnomalyDetector.Dimension) +// 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 AWSCloudWatchAnomalyDetector_Dimension struct { +type AnomalyDetector_Dimension struct { // Name AWS CloudFormation Property // Required: true @@ -27,42 +29,42 @@ type AWSCloudWatchAnomalyDetector_Dimension struct { } // AWSCloudFormationType returns the AWS CloudFormation resource type -func (r *AWSCloudWatchAnomalyDetector_Dimension) AWSCloudFormationType() string { +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 *AWSCloudWatchAnomalyDetector_Dimension) DependsOn() []string { +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 *AWSCloudWatchAnomalyDetector_Dimension) SetDependsOn(dependencies []string) { +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 *AWSCloudWatchAnomalyDetector_Dimension) Metadata() map[string]interface{} { +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 *AWSCloudWatchAnomalyDetector_Dimension) SetMetadata(metadata map[string]interface{}) { +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 *AWSCloudWatchAnomalyDetector_Dimension) DeletionPolicy() policies.DeletionPolicy { +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 *AWSCloudWatchAnomalyDetector_Dimension) SetDeletionPolicy(policy policies.DeletionPolicy) { +func (r *AnomalyDetector_Dimension) SetDeletionPolicy(policy policies.DeletionPolicy) { r._deletionPolicy = policy } diff --git a/cloudformation/resources/aws-cloudwatch-anomalydetector_range.go b/cloudformation/cloudwatch/aws-cloudwatch-anomalydetector_range.go similarity index 73% rename from cloudformation/resources/aws-cloudwatch-anomalydetector_range.go rename to cloudformation/cloudwatch/aws-cloudwatch-anomalydetector_range.go index c034f2d497..a627d45f32 100644 --- a/cloudformation/resources/aws-cloudwatch-anomalydetector_range.go +++ b/cloudformation/cloudwatch/aws-cloudwatch-anomalydetector_range.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" +) -// AWSCloudWatchAnomalyDetector_Range AWS CloudFormation Resource (AWS::CloudWatch::AnomalyDetector.Range) +// 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 AWSCloudWatchAnomalyDetector_Range struct { +type AnomalyDetector_Range struct { // EndTime AWS CloudFormation Property // Required: true @@ -27,42 +29,42 @@ type AWSCloudWatchAnomalyDetector_Range struct { } // AWSCloudFormationType returns the AWS CloudFormation resource type -func (r *AWSCloudWatchAnomalyDetector_Range) AWSCloudFormationType() string { +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 *AWSCloudWatchAnomalyDetector_Range) DependsOn() []string { +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 *AWSCloudWatchAnomalyDetector_Range) SetDependsOn(dependencies []string) { +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 *AWSCloudWatchAnomalyDetector_Range) Metadata() map[string]interface{} { +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 *AWSCloudWatchAnomalyDetector_Range) SetMetadata(metadata map[string]interface{}) { +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 *AWSCloudWatchAnomalyDetector_Range) DeletionPolicy() policies.DeletionPolicy { +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 *AWSCloudWatchAnomalyDetector_Range) SetDeletionPolicy(policy policies.DeletionPolicy) { +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/resources/aws-codebuild-project_environmentvariable.go b/cloudformation/codebuild/aws-codebuild-project_environmentvariable.go similarity index 74% rename from cloudformation/resources/aws-codebuild-project_environmentvariable.go rename to cloudformation/codebuild/aws-codebuild-project_environmentvariable.go index f1be88a03b..91a1aa6a51 100644 --- a/cloudformation/resources/aws-codebuild-project_environmentvariable.go +++ b/cloudformation/codebuild/aws-codebuild-project_environmentvariable.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_EnvironmentVariable AWS CloudFormation Resource (AWS::CodeBuild::Project.EnvironmentVariable) +// 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 AWSCodeBuildProject_EnvironmentVariable struct { +type Project_EnvironmentVariable struct { // Name AWS CloudFormation Property // Required: true @@ -32,42 +34,42 @@ type AWSCodeBuildProject_EnvironmentVariable struct { } // AWSCloudFormationType returns the AWS CloudFormation resource type -func (r *AWSCodeBuildProject_EnvironmentVariable) AWSCloudFormationType() string { +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 *AWSCodeBuildProject_EnvironmentVariable) DependsOn() []string { +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 *AWSCodeBuildProject_EnvironmentVariable) SetDependsOn(dependencies []string) { +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 *AWSCodeBuildProject_EnvironmentVariable) Metadata() map[string]interface{} { +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 *AWSCodeBuildProject_EnvironmentVariable) SetMetadata(metadata map[string]interface{}) { +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 *AWSCodeBuildProject_EnvironmentVariable) DeletionPolicy() policies.DeletionPolicy { +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 *AWSCodeBuildProject_EnvironmentVariable) SetDeletionPolicy(policy policies.DeletionPolicy) { +func (r *Project_EnvironmentVariable) SetDeletionPolicy(policy policies.DeletionPolicy) { r._deletionPolicy = policy } diff --git a/cloudformation/resources/aws-codebuild-project_filtergroup.go b/cloudformation/codebuild/aws-codebuild-project_filtergroup.go similarity index 69% rename from cloudformation/resources/aws-codebuild-project_filtergroup.go rename to cloudformation/codebuild/aws-codebuild-project_filtergroup.go index cdbc8d823a..79ad11034c 100644 --- a/cloudformation/resources/aws-codebuild-project_filtergroup.go +++ b/cloudformation/codebuild/aws-codebuild-project_filtergroup.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_FilterGroup AWS CloudFormation Resource (AWS::CodeBuild::Project.FilterGroup) +// 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 AWSCodeBuildProject_FilterGroup struct { +type Project_FilterGroup struct { // _deletionPolicy represents a CloudFormation DeletionPolicy _deletionPolicy policies.DeletionPolicy @@ -17,42 +19,42 @@ type AWSCodeBuildProject_FilterGroup struct { } // AWSCloudFormationType returns the AWS CloudFormation resource type -func (r *AWSCodeBuildProject_FilterGroup) AWSCloudFormationType() string { +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 *AWSCodeBuildProject_FilterGroup) DependsOn() []string { +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 *AWSCodeBuildProject_FilterGroup) SetDependsOn(dependencies []string) { +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 *AWSCodeBuildProject_FilterGroup) Metadata() map[string]interface{} { +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 *AWSCodeBuildProject_FilterGroup) SetMetadata(metadata map[string]interface{}) { +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 *AWSCodeBuildProject_FilterGroup) DeletionPolicy() policies.DeletionPolicy { +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 *AWSCodeBuildProject_FilterGroup) SetDeletionPolicy(policy policies.DeletionPolicy) { +func (r *Project_FilterGroup) SetDeletionPolicy(policy policies.DeletionPolicy) { r._deletionPolicy = policy } diff --git a/cloudformation/resources/aws-codebuild-project_gitsubmodulesconfig.go b/cloudformation/codebuild/aws-codebuild-project_gitsubmodulesconfig.go similarity index 70% rename from cloudformation/resources/aws-codebuild-project_gitsubmodulesconfig.go rename to cloudformation/codebuild/aws-codebuild-project_gitsubmodulesconfig.go index 2186c9746f..078f9e63e3 100644 --- a/cloudformation/resources/aws-codebuild-project_gitsubmodulesconfig.go +++ b/cloudformation/codebuild/aws-codebuild-project_gitsubmodulesconfig.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_GitSubmodulesConfig AWS CloudFormation Resource (AWS::CodeBuild::Project.GitSubmodulesConfig) +// 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 AWSCodeBuildProject_GitSubmodulesConfig struct { +type Project_GitSubmodulesConfig struct { // FetchSubmodules AWS CloudFormation Property // Required: true @@ -22,42 +24,42 @@ type AWSCodeBuildProject_GitSubmodulesConfig struct { } // AWSCloudFormationType returns the AWS CloudFormation resource type -func (r *AWSCodeBuildProject_GitSubmodulesConfig) AWSCloudFormationType() string { +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 *AWSCodeBuildProject_GitSubmodulesConfig) DependsOn() []string { +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 *AWSCodeBuildProject_GitSubmodulesConfig) SetDependsOn(dependencies []string) { +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 *AWSCodeBuildProject_GitSubmodulesConfig) Metadata() map[string]interface{} { +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 *AWSCodeBuildProject_GitSubmodulesConfig) SetMetadata(metadata map[string]interface{}) { +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 *AWSCodeBuildProject_GitSubmodulesConfig) DeletionPolicy() policies.DeletionPolicy { +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 *AWSCodeBuildProject_GitSubmodulesConfig) SetDeletionPolicy(policy policies.DeletionPolicy) { +func (r *Project_GitSubmodulesConfig) SetDeletionPolicy(policy policies.DeletionPolicy) { r._deletionPolicy = policy } diff --git a/cloudformation/resources/aws-codebuild-project_logsconfig.go b/cloudformation/codebuild/aws-codebuild-project_logsconfig.go similarity index 70% rename from cloudformation/resources/aws-codebuild-project_logsconfig.go rename to cloudformation/codebuild/aws-codebuild-project_logsconfig.go index 8f625e363a..f1e54a6a93 100644 --- a/cloudformation/resources/aws-codebuild-project_logsconfig.go +++ b/cloudformation/codebuild/aws-codebuild-project_logsconfig.go @@ -1,20 +1,22 @@ -package resources +package codebuild -import "github.com/awslabs/goformation/v2/cloudformation/policies" +import ( + "github.com/awslabs/goformation/v3/cloudformation/policies" +) -// AWSCodeBuildProject_LogsConfig AWS CloudFormation Resource (AWS::CodeBuild::Project.LogsConfig) +// 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 AWSCodeBuildProject_LogsConfig struct { +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 *AWSCodeBuildProject_CloudWatchLogsConfig `json:"CloudWatchLogs,omitempty"` + 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 *AWSCodeBuildProject_S3LogsConfig `json:"S3Logs,omitempty"` + S3Logs *Project_S3LogsConfig `json:"S3Logs,omitempty"` // _deletionPolicy represents a CloudFormation DeletionPolicy _deletionPolicy policies.DeletionPolicy @@ -27,42 +29,42 @@ type AWSCodeBuildProject_LogsConfig struct { } // AWSCloudFormationType returns the AWS CloudFormation resource type -func (r *AWSCodeBuildProject_LogsConfig) AWSCloudFormationType() string { +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 *AWSCodeBuildProject_LogsConfig) DependsOn() []string { +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 *AWSCodeBuildProject_LogsConfig) SetDependsOn(dependencies []string) { +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 *AWSCodeBuildProject_LogsConfig) Metadata() map[string]interface{} { +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 *AWSCodeBuildProject_LogsConfig) SetMetadata(metadata map[string]interface{}) { +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 *AWSCodeBuildProject_LogsConfig) DeletionPolicy() policies.DeletionPolicy { +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 *AWSCodeBuildProject_LogsConfig) SetDeletionPolicy(policy policies.DeletionPolicy) { +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/resources/aws-codebuild-project_projectsourceversion.go b/cloudformation/codebuild/aws-codebuild-project_projectsourceversion.go similarity index 73% rename from cloudformation/resources/aws-codebuild-project_projectsourceversion.go rename to cloudformation/codebuild/aws-codebuild-project_projectsourceversion.go index 3e9e2b57c9..425f40bd7d 100644 --- a/cloudformation/resources/aws-codebuild-project_projectsourceversion.go +++ b/cloudformation/codebuild/aws-codebuild-project_projectsourceversion.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_ProjectSourceVersion AWS CloudFormation Resource (AWS::CodeBuild::Project.ProjectSourceVersion) +// 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 AWSCodeBuildProject_ProjectSourceVersion struct { +type Project_ProjectSourceVersion struct { // SourceIdentifier AWS CloudFormation Property // Required: true @@ -27,42 +29,42 @@ type AWSCodeBuildProject_ProjectSourceVersion struct { } // AWSCloudFormationType returns the AWS CloudFormation resource type -func (r *AWSCodeBuildProject_ProjectSourceVersion) AWSCloudFormationType() string { +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 *AWSCodeBuildProject_ProjectSourceVersion) DependsOn() []string { +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 *AWSCodeBuildProject_ProjectSourceVersion) SetDependsOn(dependencies []string) { +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 *AWSCodeBuildProject_ProjectSourceVersion) Metadata() map[string]interface{} { +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 *AWSCodeBuildProject_ProjectSourceVersion) SetMetadata(metadata map[string]interface{}) { +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 *AWSCodeBuildProject_ProjectSourceVersion) DeletionPolicy() policies.DeletionPolicy { +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 *AWSCodeBuildProject_ProjectSourceVersion) SetDeletionPolicy(policy policies.DeletionPolicy) { +func (r *Project_ProjectSourceVersion) SetDeletionPolicy(policy policies.DeletionPolicy) { r._deletionPolicy = policy } diff --git a/cloudformation/resources/aws-codebuild-project_projecttriggers.go b/cloudformation/codebuild/aws-codebuild-project_projecttriggers.go similarity index 71% rename from cloudformation/resources/aws-codebuild-project_projecttriggers.go rename to cloudformation/codebuild/aws-codebuild-project_projecttriggers.go index 25074e337f..cabf6f783f 100644 --- a/cloudformation/resources/aws-codebuild-project_projecttriggers.go +++ b/cloudformation/codebuild/aws-codebuild-project_projecttriggers.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_ProjectTriggers AWS CloudFormation Resource (AWS::CodeBuild::Project.ProjectTriggers) +// 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 AWSCodeBuildProject_ProjectTriggers struct { +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 []AWSCodeBuildProject_FilterGroup `json:"FilterGroups,omitempty"` + FilterGroups []Project_FilterGroup `json:"FilterGroups,omitempty"` // Webhook AWS CloudFormation Property // Required: false @@ -27,42 +29,42 @@ type AWSCodeBuildProject_ProjectTriggers struct { } // AWSCloudFormationType returns the AWS CloudFormation resource type -func (r *AWSCodeBuildProject_ProjectTriggers) AWSCloudFormationType() string { +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 *AWSCodeBuildProject_ProjectTriggers) DependsOn() []string { +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 *AWSCodeBuildProject_ProjectTriggers) SetDependsOn(dependencies []string) { +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 *AWSCodeBuildProject_ProjectTriggers) Metadata() map[string]interface{} { +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 *AWSCodeBuildProject_ProjectTriggers) SetMetadata(metadata map[string]interface{}) { +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 *AWSCodeBuildProject_ProjectTriggers) DeletionPolicy() policies.DeletionPolicy { +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 *AWSCodeBuildProject_ProjectTriggers) SetDeletionPolicy(policy policies.DeletionPolicy) { +func (r *Project_ProjectTriggers) SetDeletionPolicy(policy policies.DeletionPolicy) { r._deletionPolicy = policy } diff --git a/cloudformation/resources/aws-codebuild-project_registrycredential.go b/cloudformation/codebuild/aws-codebuild-project_registrycredential.go similarity index 73% rename from cloudformation/resources/aws-codebuild-project_registrycredential.go rename to cloudformation/codebuild/aws-codebuild-project_registrycredential.go index f6540038d0..473775aaca 100644 --- a/cloudformation/resources/aws-codebuild-project_registrycredential.go +++ b/cloudformation/codebuild/aws-codebuild-project_registrycredential.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_RegistryCredential AWS CloudFormation Resource (AWS::CodeBuild::Project.RegistryCredential) +// 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 AWSCodeBuildProject_RegistryCredential struct { +type Project_RegistryCredential struct { // Credential AWS CloudFormation Property // Required: true @@ -27,42 +29,42 @@ type AWSCodeBuildProject_RegistryCredential struct { } // AWSCloudFormationType returns the AWS CloudFormation resource type -func (r *AWSCodeBuildProject_RegistryCredential) AWSCloudFormationType() string { +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 *AWSCodeBuildProject_RegistryCredential) DependsOn() []string { +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 *AWSCodeBuildProject_RegistryCredential) SetDependsOn(dependencies []string) { +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 *AWSCodeBuildProject_RegistryCredential) Metadata() map[string]interface{} { +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 *AWSCodeBuildProject_RegistryCredential) SetMetadata(metadata map[string]interface{}) { +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 *AWSCodeBuildProject_RegistryCredential) DeletionPolicy() policies.DeletionPolicy { +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 *AWSCodeBuildProject_RegistryCredential) SetDeletionPolicy(policy policies.DeletionPolicy) { +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/resources/aws-codebuild-project_sourceauth.go b/cloudformation/codebuild/aws-codebuild-project_sourceauth.go similarity index 74% rename from cloudformation/resources/aws-codebuild-project_sourceauth.go rename to cloudformation/codebuild/aws-codebuild-project_sourceauth.go index 3a71a9e2c0..4f6866665e 100644 --- a/cloudformation/resources/aws-codebuild-project_sourceauth.go +++ b/cloudformation/codebuild/aws-codebuild-project_sourceauth.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_SourceAuth AWS CloudFormation Resource (AWS::CodeBuild::Project.SourceAuth) +// 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 AWSCodeBuildProject_SourceAuth struct { +type Project_SourceAuth struct { // Resource AWS CloudFormation Property // Required: false @@ -27,42 +29,42 @@ type AWSCodeBuildProject_SourceAuth struct { } // AWSCloudFormationType returns the AWS CloudFormation resource type -func (r *AWSCodeBuildProject_SourceAuth) AWSCloudFormationType() string { +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 *AWSCodeBuildProject_SourceAuth) DependsOn() []string { +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 *AWSCodeBuildProject_SourceAuth) SetDependsOn(dependencies []string) { +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 *AWSCodeBuildProject_SourceAuth) Metadata() map[string]interface{} { +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 *AWSCodeBuildProject_SourceAuth) SetMetadata(metadata map[string]interface{}) { +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 *AWSCodeBuildProject_SourceAuth) DeletionPolicy() policies.DeletionPolicy { +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 *AWSCodeBuildProject_SourceAuth) SetDeletionPolicy(policy policies.DeletionPolicy) { +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/resources/aws-codecommit-repository_code.go b/cloudformation/codecommit/aws-codecommit-repository_code.go similarity index 70% rename from cloudformation/resources/aws-codecommit-repository_code.go rename to cloudformation/codecommit/aws-codecommit-repository_code.go index a7ccc5731a..d1f97c2dc1 100644 --- a/cloudformation/resources/aws-codecommit-repository_code.go +++ b/cloudformation/codecommit/aws-codecommit-repository_code.go @@ -1,15 +1,17 @@ -package resources +package codecommit -import "github.com/awslabs/goformation/v2/cloudformation/policies" +import ( + "github.com/awslabs/goformation/v3/cloudformation/policies" +) -// AWSCodeCommitRepository_Code AWS CloudFormation Resource (AWS::CodeCommit::Repository.Code) +// 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 AWSCodeCommitRepository_Code struct { +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 *AWSCodeCommitRepository_S3 `json:"S3,omitempty"` + S3 *Repository_S3 `json:"S3,omitempty"` // _deletionPolicy represents a CloudFormation DeletionPolicy _deletionPolicy policies.DeletionPolicy @@ -22,42 +24,42 @@ type AWSCodeCommitRepository_Code struct { } // AWSCloudFormationType returns the AWS CloudFormation resource type -func (r *AWSCodeCommitRepository_Code) AWSCloudFormationType() string { +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 *AWSCodeCommitRepository_Code) DependsOn() []string { +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 *AWSCodeCommitRepository_Code) SetDependsOn(dependencies []string) { +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 *AWSCodeCommitRepository_Code) Metadata() map[string]interface{} { +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 *AWSCodeCommitRepository_Code) SetMetadata(metadata map[string]interface{}) { +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 *AWSCodeCommitRepository_Code) DeletionPolicy() policies.DeletionPolicy { +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 *AWSCodeCommitRepository_Code) SetDeletionPolicy(policy policies.DeletionPolicy) { +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/resources/aws-codedeploy-deploymentconfig_minimumhealthyhosts.go b/cloudformation/codedeploy/aws-codedeploy-deploymentconfig_minimumhealthyhosts.go similarity index 71% rename from cloudformation/resources/aws-codedeploy-deploymentconfig_minimumhealthyhosts.go rename to cloudformation/codedeploy/aws-codedeploy-deploymentconfig_minimumhealthyhosts.go index 26df2bbc84..162fe588fb 100644 --- a/cloudformation/resources/aws-codedeploy-deploymentconfig_minimumhealthyhosts.go +++ b/cloudformation/codedeploy/aws-codedeploy-deploymentconfig_minimumhealthyhosts.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" +) -// AWSCodeDeployDeploymentConfig_MinimumHealthyHosts AWS CloudFormation Resource (AWS::CodeDeploy::DeploymentConfig.MinimumHealthyHosts) +// 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 AWSCodeDeployDeploymentConfig_MinimumHealthyHosts struct { +type DeploymentConfig_MinimumHealthyHosts struct { // Type AWS CloudFormation Property // Required: true @@ -27,42 +29,42 @@ type AWSCodeDeployDeploymentConfig_MinimumHealthyHosts struct { } // AWSCloudFormationType returns the AWS CloudFormation resource type -func (r *AWSCodeDeployDeploymentConfig_MinimumHealthyHosts) AWSCloudFormationType() string { +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 *AWSCodeDeployDeploymentConfig_MinimumHealthyHosts) DependsOn() []string { +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 *AWSCodeDeployDeploymentConfig_MinimumHealthyHosts) SetDependsOn(dependencies []string) { +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 *AWSCodeDeployDeploymentConfig_MinimumHealthyHosts) Metadata() map[string]interface{} { +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 *AWSCodeDeployDeploymentConfig_MinimumHealthyHosts) SetMetadata(metadata map[string]interface{}) { +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 *AWSCodeDeployDeploymentConfig_MinimumHealthyHosts) DeletionPolicy() policies.DeletionPolicy { +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 *AWSCodeDeployDeploymentConfig_MinimumHealthyHosts) SetDeletionPolicy(policy policies.DeletionPolicy) { +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/resources/aws-codedeploy-deploymentgroup_alarm.go b/cloudformation/codedeploy/aws-codedeploy-deploymentgroup_alarm.go similarity index 71% rename from cloudformation/resources/aws-codedeploy-deploymentgroup_alarm.go rename to cloudformation/codedeploy/aws-codedeploy-deploymentgroup_alarm.go index bb15bd9630..06806feb99 100644 --- a/cloudformation/resources/aws-codedeploy-deploymentgroup_alarm.go +++ b/cloudformation/codedeploy/aws-codedeploy-deploymentgroup_alarm.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_Alarm AWS CloudFormation Resource (AWS::CodeDeploy::DeploymentGroup.Alarm) +// 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 AWSCodeDeployDeploymentGroup_Alarm struct { +type DeploymentGroup_Alarm struct { // Name AWS CloudFormation Property // Required: false @@ -22,42 +24,42 @@ type AWSCodeDeployDeploymentGroup_Alarm struct { } // AWSCloudFormationType returns the AWS CloudFormation resource type -func (r *AWSCodeDeployDeploymentGroup_Alarm) AWSCloudFormationType() string { +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 *AWSCodeDeployDeploymentGroup_Alarm) DependsOn() []string { +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 *AWSCodeDeployDeploymentGroup_Alarm) SetDependsOn(dependencies []string) { +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 *AWSCodeDeployDeploymentGroup_Alarm) Metadata() map[string]interface{} { +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 *AWSCodeDeployDeploymentGroup_Alarm) SetMetadata(metadata map[string]interface{}) { +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 *AWSCodeDeployDeploymentGroup_Alarm) DeletionPolicy() policies.DeletionPolicy { +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 *AWSCodeDeployDeploymentGroup_Alarm) SetDeletionPolicy(policy policies.DeletionPolicy) { +func (r *DeploymentGroup_Alarm) SetDeletionPolicy(policy policies.DeletionPolicy) { r._deletionPolicy = policy } diff --git a/cloudformation/resources/aws-codedeploy-deploymentgroup_alarmconfiguration.go b/cloudformation/codedeploy/aws-codedeploy-deploymentgroup_alarmconfiguration.go similarity index 72% rename from cloudformation/resources/aws-codedeploy-deploymentgroup_alarmconfiguration.go rename to cloudformation/codedeploy/aws-codedeploy-deploymentgroup_alarmconfiguration.go index 7d755105e3..9822dc8ceb 100644 --- a/cloudformation/resources/aws-codedeploy-deploymentgroup_alarmconfiguration.go +++ b/cloudformation/codedeploy/aws-codedeploy-deploymentgroup_alarmconfiguration.go @@ -1,15 +1,17 @@ -package resources +package codedeploy -import "github.com/awslabs/goformation/v2/cloudformation/policies" +import ( + "github.com/awslabs/goformation/v3/cloudformation/policies" +) -// AWSCodeDeployDeploymentGroup_AlarmConfiguration AWS CloudFormation Resource (AWS::CodeDeploy::DeploymentGroup.AlarmConfiguration) +// 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 AWSCodeDeployDeploymentGroup_AlarmConfiguration struct { +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 []AWSCodeDeployDeploymentGroup_Alarm `json:"Alarms,omitempty"` + Alarms []DeploymentGroup_Alarm `json:"Alarms,omitempty"` // Enabled AWS CloudFormation Property // Required: false @@ -32,42 +34,42 @@ type AWSCodeDeployDeploymentGroup_AlarmConfiguration struct { } // AWSCloudFormationType returns the AWS CloudFormation resource type -func (r *AWSCodeDeployDeploymentGroup_AlarmConfiguration) AWSCloudFormationType() string { +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 *AWSCodeDeployDeploymentGroup_AlarmConfiguration) DependsOn() []string { +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 *AWSCodeDeployDeploymentGroup_AlarmConfiguration) SetDependsOn(dependencies []string) { +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 *AWSCodeDeployDeploymentGroup_AlarmConfiguration) Metadata() map[string]interface{} { +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 *AWSCodeDeployDeploymentGroup_AlarmConfiguration) SetMetadata(metadata map[string]interface{}) { +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 *AWSCodeDeployDeploymentGroup_AlarmConfiguration) DeletionPolicy() policies.DeletionPolicy { +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 *AWSCodeDeployDeploymentGroup_AlarmConfiguration) SetDeletionPolicy(policy policies.DeletionPolicy) { +func (r *DeploymentGroup_AlarmConfiguration) SetDeletionPolicy(policy policies.DeletionPolicy) { r._deletionPolicy = policy } diff --git a/cloudformation/resources/aws-codedeploy-deploymentgroup_autorollbackconfiguration.go b/cloudformation/codedeploy/aws-codedeploy-deploymentgroup_autorollbackconfiguration.go similarity index 70% rename from cloudformation/resources/aws-codedeploy-deploymentgroup_autorollbackconfiguration.go rename to cloudformation/codedeploy/aws-codedeploy-deploymentgroup_autorollbackconfiguration.go index 825496e7b6..2c2d524c47 100644 --- a/cloudformation/resources/aws-codedeploy-deploymentgroup_autorollbackconfiguration.go +++ b/cloudformation/codedeploy/aws-codedeploy-deploymentgroup_autorollbackconfiguration.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_AutoRollbackConfiguration AWS CloudFormation Resource (AWS::CodeDeploy::DeploymentGroup.AutoRollbackConfiguration) +// 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 AWSCodeDeployDeploymentGroup_AutoRollbackConfiguration struct { +type DeploymentGroup_AutoRollbackConfiguration struct { // Enabled AWS CloudFormation Property // Required: false @@ -27,42 +29,42 @@ type AWSCodeDeployDeploymentGroup_AutoRollbackConfiguration struct { } // AWSCloudFormationType returns the AWS CloudFormation resource type -func (r *AWSCodeDeployDeploymentGroup_AutoRollbackConfiguration) AWSCloudFormationType() string { +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 *AWSCodeDeployDeploymentGroup_AutoRollbackConfiguration) DependsOn() []string { +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 *AWSCodeDeployDeploymentGroup_AutoRollbackConfiguration) SetDependsOn(dependencies []string) { +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 *AWSCodeDeployDeploymentGroup_AutoRollbackConfiguration) Metadata() map[string]interface{} { +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 *AWSCodeDeployDeploymentGroup_AutoRollbackConfiguration) SetMetadata(metadata map[string]interface{}) { +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 *AWSCodeDeployDeploymentGroup_AutoRollbackConfiguration) DeletionPolicy() policies.DeletionPolicy { +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 *AWSCodeDeployDeploymentGroup_AutoRollbackConfiguration) SetDeletionPolicy(policy policies.DeletionPolicy) { +func (r *DeploymentGroup_AutoRollbackConfiguration) SetDeletionPolicy(policy policies.DeletionPolicy) { r._deletionPolicy = policy } diff --git a/cloudformation/resources/aws-codedeploy-deploymentgroup_deployment.go b/cloudformation/codedeploy/aws-codedeploy-deploymentgroup_deployment.go similarity index 74% rename from cloudformation/resources/aws-codedeploy-deploymentgroup_deployment.go rename to cloudformation/codedeploy/aws-codedeploy-deploymentgroup_deployment.go index 07a0649b69..e11505529a 100644 --- a/cloudformation/resources/aws-codedeploy-deploymentgroup_deployment.go +++ b/cloudformation/codedeploy/aws-codedeploy-deploymentgroup_deployment.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_Deployment AWS CloudFormation Resource (AWS::CodeDeploy::DeploymentGroup.Deployment) +// 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 AWSCodeDeployDeploymentGroup_Deployment struct { +type DeploymentGroup_Deployment struct { // Description AWS CloudFormation Property // Required: false @@ -19,7 +21,7 @@ type AWSCodeDeployDeploymentGroup_Deployment struct { // 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"` + Revision *DeploymentGroup_RevisionLocation `json:"Revision,omitempty"` // _deletionPolicy represents a CloudFormation DeletionPolicy _deletionPolicy policies.DeletionPolicy @@ -32,42 +34,42 @@ type AWSCodeDeployDeploymentGroup_Deployment struct { } // AWSCloudFormationType returns the AWS CloudFormation resource type -func (r *AWSCodeDeployDeploymentGroup_Deployment) AWSCloudFormationType() string { +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 *AWSCodeDeployDeploymentGroup_Deployment) DependsOn() []string { +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 *AWSCodeDeployDeploymentGroup_Deployment) SetDependsOn(dependencies []string) { +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 *AWSCodeDeployDeploymentGroup_Deployment) Metadata() map[string]interface{} { +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 *AWSCodeDeployDeploymentGroup_Deployment) SetMetadata(metadata map[string]interface{}) { +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 *AWSCodeDeployDeploymentGroup_Deployment) DeletionPolicy() policies.DeletionPolicy { +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 *AWSCodeDeployDeploymentGroup_Deployment) SetDeletionPolicy(policy policies.DeletionPolicy) { +func (r *DeploymentGroup_Deployment) SetDeletionPolicy(policy policies.DeletionPolicy) { r._deletionPolicy = policy } diff --git a/cloudformation/resources/aws-codedeploy-deploymentgroup_deploymentstyle.go b/cloudformation/codedeploy/aws-codedeploy-deploymentgroup_deploymentstyle.go similarity index 72% rename from cloudformation/resources/aws-codedeploy-deploymentgroup_deploymentstyle.go rename to cloudformation/codedeploy/aws-codedeploy-deploymentgroup_deploymentstyle.go index 8a9d6be547..f1f5a4dc96 100644 --- a/cloudformation/resources/aws-codedeploy-deploymentgroup_deploymentstyle.go +++ b/cloudformation/codedeploy/aws-codedeploy-deploymentgroup_deploymentstyle.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_DeploymentStyle AWS CloudFormation Resource (AWS::CodeDeploy::DeploymentGroup.DeploymentStyle) +// 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 AWSCodeDeployDeploymentGroup_DeploymentStyle struct { +type DeploymentGroup_DeploymentStyle struct { // DeploymentOption AWS CloudFormation Property // Required: false @@ -27,42 +29,42 @@ type AWSCodeDeployDeploymentGroup_DeploymentStyle struct { } // AWSCloudFormationType returns the AWS CloudFormation resource type -func (r *AWSCodeDeployDeploymentGroup_DeploymentStyle) AWSCloudFormationType() string { +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 *AWSCodeDeployDeploymentGroup_DeploymentStyle) DependsOn() []string { +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 *AWSCodeDeployDeploymentGroup_DeploymentStyle) SetDependsOn(dependencies []string) { +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 *AWSCodeDeployDeploymentGroup_DeploymentStyle) Metadata() map[string]interface{} { +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 *AWSCodeDeployDeploymentGroup_DeploymentStyle) SetMetadata(metadata map[string]interface{}) { +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 *AWSCodeDeployDeploymentGroup_DeploymentStyle) DeletionPolicy() policies.DeletionPolicy { +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 *AWSCodeDeployDeploymentGroup_DeploymentStyle) SetDeletionPolicy(policy policies.DeletionPolicy) { +func (r *DeploymentGroup_DeploymentStyle) SetDeletionPolicy(policy policies.DeletionPolicy) { r._deletionPolicy = policy } diff --git a/cloudformation/resources/aws-codedeploy-deploymentgroup_ec2tagfilter.go b/cloudformation/codedeploy/aws-codedeploy-deploymentgroup_ec2tagfilter.go similarity index 74% rename from cloudformation/resources/aws-codedeploy-deploymentgroup_ec2tagfilter.go rename to cloudformation/codedeploy/aws-codedeploy-deploymentgroup_ec2tagfilter.go index 0a5d795a09..c202c439db 100644 --- a/cloudformation/resources/aws-codedeploy-deploymentgroup_ec2tagfilter.go +++ b/cloudformation/codedeploy/aws-codedeploy-deploymentgroup_ec2tagfilter.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_EC2TagFilter AWS CloudFormation Resource (AWS::CodeDeploy::DeploymentGroup.EC2TagFilter) +// 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 AWSCodeDeployDeploymentGroup_EC2TagFilter struct { +type DeploymentGroup_EC2TagFilter struct { // Key AWS CloudFormation Property // Required: false @@ -32,42 +34,42 @@ type AWSCodeDeployDeploymentGroup_EC2TagFilter struct { } // AWSCloudFormationType returns the AWS CloudFormation resource type -func (r *AWSCodeDeployDeploymentGroup_EC2TagFilter) AWSCloudFormationType() string { +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 *AWSCodeDeployDeploymentGroup_EC2TagFilter) DependsOn() []string { +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 *AWSCodeDeployDeploymentGroup_EC2TagFilter) SetDependsOn(dependencies []string) { +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 *AWSCodeDeployDeploymentGroup_EC2TagFilter) Metadata() map[string]interface{} { +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 *AWSCodeDeployDeploymentGroup_EC2TagFilter) SetMetadata(metadata map[string]interface{}) { +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 *AWSCodeDeployDeploymentGroup_EC2TagFilter) DeletionPolicy() policies.DeletionPolicy { +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 *AWSCodeDeployDeploymentGroup_EC2TagFilter) SetDeletionPolicy(policy policies.DeletionPolicy) { +func (r *DeploymentGroup_EC2TagFilter) SetDeletionPolicy(policy policies.DeletionPolicy) { r._deletionPolicy = policy } diff --git a/cloudformation/resources/aws-codedeploy-deploymentgroup_ec2tagset.go b/cloudformation/codedeploy/aws-codedeploy-deploymentgroup_ec2tagset.go similarity index 67% rename from cloudformation/resources/aws-codedeploy-deploymentgroup_ec2tagset.go rename to cloudformation/codedeploy/aws-codedeploy-deploymentgroup_ec2tagset.go index f8265dca8e..bbce5f0ebc 100644 --- a/cloudformation/resources/aws-codedeploy-deploymentgroup_ec2tagset.go +++ b/cloudformation/codedeploy/aws-codedeploy-deploymentgroup_ec2tagset.go @@ -1,15 +1,17 @@ -package resources +package codedeploy -import "github.com/awslabs/goformation/v2/cloudformation/policies" +import ( + "github.com/awslabs/goformation/v3/cloudformation/policies" +) -// AWSCodeDeployDeploymentGroup_EC2TagSet AWS CloudFormation Resource (AWS::CodeDeploy::DeploymentGroup.EC2TagSet) +// 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 AWSCodeDeployDeploymentGroup_EC2TagSet struct { +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 []AWSCodeDeployDeploymentGroup_EC2TagSetListObject `json:"Ec2TagSetList,omitempty"` + Ec2TagSetList []DeploymentGroup_EC2TagSetListObject `json:"Ec2TagSetList,omitempty"` // _deletionPolicy represents a CloudFormation DeletionPolicy _deletionPolicy policies.DeletionPolicy @@ -22,42 +24,42 @@ type AWSCodeDeployDeploymentGroup_EC2TagSet struct { } // AWSCloudFormationType returns the AWS CloudFormation resource type -func (r *AWSCodeDeployDeploymentGroup_EC2TagSet) AWSCloudFormationType() string { +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 *AWSCodeDeployDeploymentGroup_EC2TagSet) DependsOn() []string { +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 *AWSCodeDeployDeploymentGroup_EC2TagSet) SetDependsOn(dependencies []string) { +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 *AWSCodeDeployDeploymentGroup_EC2TagSet) Metadata() map[string]interface{} { +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 *AWSCodeDeployDeploymentGroup_EC2TagSet) SetMetadata(metadata map[string]interface{}) { +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 *AWSCodeDeployDeploymentGroup_EC2TagSet) DeletionPolicy() policies.DeletionPolicy { +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 *AWSCodeDeployDeploymentGroup_EC2TagSet) SetDeletionPolicy(policy policies.DeletionPolicy) { +func (r *DeploymentGroup_EC2TagSet) SetDeletionPolicy(policy policies.DeletionPolicy) { r._deletionPolicy = policy } diff --git a/cloudformation/resources/aws-codedeploy-deploymentgroup_ec2tagsetlistobject.go b/cloudformation/codedeploy/aws-codedeploy-deploymentgroup_ec2tagsetlistobject.go similarity index 66% rename from cloudformation/resources/aws-codedeploy-deploymentgroup_ec2tagsetlistobject.go rename to cloudformation/codedeploy/aws-codedeploy-deploymentgroup_ec2tagsetlistobject.go index ec6c4a3337..94db48d2d6 100644 --- a/cloudformation/resources/aws-codedeploy-deploymentgroup_ec2tagsetlistobject.go +++ b/cloudformation/codedeploy/aws-codedeploy-deploymentgroup_ec2tagsetlistobject.go @@ -1,15 +1,17 @@ -package resources +package codedeploy -import "github.com/awslabs/goformation/v2/cloudformation/policies" +import ( + "github.com/awslabs/goformation/v3/cloudformation/policies" +) -// AWSCodeDeployDeploymentGroup_EC2TagSetListObject AWS CloudFormation Resource (AWS::CodeDeploy::DeploymentGroup.EC2TagSetListObject) +// 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 AWSCodeDeployDeploymentGroup_EC2TagSetListObject struct { +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 []AWSCodeDeployDeploymentGroup_EC2TagFilter `json:"Ec2TagGroup,omitempty"` + Ec2TagGroup []DeploymentGroup_EC2TagFilter `json:"Ec2TagGroup,omitempty"` // _deletionPolicy represents a CloudFormation DeletionPolicy _deletionPolicy policies.DeletionPolicy @@ -22,42 +24,42 @@ type AWSCodeDeployDeploymentGroup_EC2TagSetListObject struct { } // AWSCloudFormationType returns the AWS CloudFormation resource type -func (r *AWSCodeDeployDeploymentGroup_EC2TagSetListObject) AWSCloudFormationType() string { +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 *AWSCodeDeployDeploymentGroup_EC2TagSetListObject) DependsOn() []string { +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 *AWSCodeDeployDeploymentGroup_EC2TagSetListObject) SetDependsOn(dependencies []string) { +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 *AWSCodeDeployDeploymentGroup_EC2TagSetListObject) Metadata() map[string]interface{} { +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 *AWSCodeDeployDeploymentGroup_EC2TagSetListObject) SetMetadata(metadata map[string]interface{}) { +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 *AWSCodeDeployDeploymentGroup_EC2TagSetListObject) DeletionPolicy() policies.DeletionPolicy { +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 *AWSCodeDeployDeploymentGroup_EC2TagSetListObject) SetDeletionPolicy(policy policies.DeletionPolicy) { +func (r *DeploymentGroup_EC2TagSetListObject) SetDeletionPolicy(policy policies.DeletionPolicy) { r._deletionPolicy = policy } diff --git a/cloudformation/resources/aws-codedeploy-deploymentgroup_elbinfo.go b/cloudformation/codedeploy/aws-codedeploy-deploymentgroup_elbinfo.go similarity index 70% rename from cloudformation/resources/aws-codedeploy-deploymentgroup_elbinfo.go rename to cloudformation/codedeploy/aws-codedeploy-deploymentgroup_elbinfo.go index 2ca268d070..928b0f3320 100644 --- a/cloudformation/resources/aws-codedeploy-deploymentgroup_elbinfo.go +++ b/cloudformation/codedeploy/aws-codedeploy-deploymentgroup_elbinfo.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_ELBInfo AWS CloudFormation Resource (AWS::CodeDeploy::DeploymentGroup.ELBInfo) +// 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 AWSCodeDeployDeploymentGroup_ELBInfo struct { +type DeploymentGroup_ELBInfo struct { // Name AWS CloudFormation Property // Required: false @@ -22,42 +24,42 @@ type AWSCodeDeployDeploymentGroup_ELBInfo struct { } // AWSCloudFormationType returns the AWS CloudFormation resource type -func (r *AWSCodeDeployDeploymentGroup_ELBInfo) AWSCloudFormationType() string { +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 *AWSCodeDeployDeploymentGroup_ELBInfo) DependsOn() []string { +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 *AWSCodeDeployDeploymentGroup_ELBInfo) SetDependsOn(dependencies []string) { +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 *AWSCodeDeployDeploymentGroup_ELBInfo) Metadata() map[string]interface{} { +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 *AWSCodeDeployDeploymentGroup_ELBInfo) SetMetadata(metadata map[string]interface{}) { +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 *AWSCodeDeployDeploymentGroup_ELBInfo) DeletionPolicy() policies.DeletionPolicy { +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 *AWSCodeDeployDeploymentGroup_ELBInfo) SetDeletionPolicy(policy policies.DeletionPolicy) { +func (r *DeploymentGroup_ELBInfo) SetDeletionPolicy(policy policies.DeletionPolicy) { r._deletionPolicy = policy } diff --git a/cloudformation/resources/aws-codedeploy-deploymentgroup_githublocation.go b/cloudformation/codedeploy/aws-codedeploy-deploymentgroup_githublocation.go similarity index 73% rename from cloudformation/resources/aws-codedeploy-deploymentgroup_githublocation.go rename to cloudformation/codedeploy/aws-codedeploy-deploymentgroup_githublocation.go index 9533ca0802..b089e6fbf7 100644 --- a/cloudformation/resources/aws-codedeploy-deploymentgroup_githublocation.go +++ b/cloudformation/codedeploy/aws-codedeploy-deploymentgroup_githublocation.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_GitHubLocation AWS CloudFormation Resource (AWS::CodeDeploy::DeploymentGroup.GitHubLocation) +// 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 AWSCodeDeployDeploymentGroup_GitHubLocation struct { +type DeploymentGroup_GitHubLocation struct { // CommitId AWS CloudFormation Property // Required: true @@ -27,42 +29,42 @@ type AWSCodeDeployDeploymentGroup_GitHubLocation struct { } // AWSCloudFormationType returns the AWS CloudFormation resource type -func (r *AWSCodeDeployDeploymentGroup_GitHubLocation) AWSCloudFormationType() string { +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 *AWSCodeDeployDeploymentGroup_GitHubLocation) DependsOn() []string { +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 *AWSCodeDeployDeploymentGroup_GitHubLocation) SetDependsOn(dependencies []string) { +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 *AWSCodeDeployDeploymentGroup_GitHubLocation) Metadata() map[string]interface{} { +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 *AWSCodeDeployDeploymentGroup_GitHubLocation) SetMetadata(metadata map[string]interface{}) { +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 *AWSCodeDeployDeploymentGroup_GitHubLocation) DeletionPolicy() policies.DeletionPolicy { +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 *AWSCodeDeployDeploymentGroup_GitHubLocation) SetDeletionPolicy(policy policies.DeletionPolicy) { +func (r *DeploymentGroup_GitHubLocation) SetDeletionPolicy(policy policies.DeletionPolicy) { r._deletionPolicy = policy } diff --git a/cloudformation/resources/aws-codedeploy-deploymentgroup_loadbalancerinfo.go b/cloudformation/codedeploy/aws-codedeploy-deploymentgroup_loadbalancerinfo.go similarity index 67% rename from cloudformation/resources/aws-codedeploy-deploymentgroup_loadbalancerinfo.go rename to cloudformation/codedeploy/aws-codedeploy-deploymentgroup_loadbalancerinfo.go index fedb966cd5..4ee9bf5ea0 100644 --- a/cloudformation/resources/aws-codedeploy-deploymentgroup_loadbalancerinfo.go +++ b/cloudformation/codedeploy/aws-codedeploy-deploymentgroup_loadbalancerinfo.go @@ -1,20 +1,22 @@ -package resources +package codedeploy -import "github.com/awslabs/goformation/v2/cloudformation/policies" +import ( + "github.com/awslabs/goformation/v3/cloudformation/policies" +) -// AWSCodeDeployDeploymentGroup_LoadBalancerInfo AWS CloudFormation Resource (AWS::CodeDeploy::DeploymentGroup.LoadBalancerInfo) +// 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 AWSCodeDeployDeploymentGroup_LoadBalancerInfo struct { +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 []AWSCodeDeployDeploymentGroup_ELBInfo `json:"ElbInfoList,omitempty"` + 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 []AWSCodeDeployDeploymentGroup_TargetGroupInfo `json:"TargetGroupInfoList,omitempty"` + TargetGroupInfoList []DeploymentGroup_TargetGroupInfo `json:"TargetGroupInfoList,omitempty"` // _deletionPolicy represents a CloudFormation DeletionPolicy _deletionPolicy policies.DeletionPolicy @@ -27,42 +29,42 @@ type AWSCodeDeployDeploymentGroup_LoadBalancerInfo struct { } // AWSCloudFormationType returns the AWS CloudFormation resource type -func (r *AWSCodeDeployDeploymentGroup_LoadBalancerInfo) AWSCloudFormationType() string { +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 *AWSCodeDeployDeploymentGroup_LoadBalancerInfo) DependsOn() []string { +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 *AWSCodeDeployDeploymentGroup_LoadBalancerInfo) SetDependsOn(dependencies []string) { +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 *AWSCodeDeployDeploymentGroup_LoadBalancerInfo) Metadata() map[string]interface{} { +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 *AWSCodeDeployDeploymentGroup_LoadBalancerInfo) SetMetadata(metadata map[string]interface{}) { +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 *AWSCodeDeployDeploymentGroup_LoadBalancerInfo) DeletionPolicy() policies.DeletionPolicy { +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 *AWSCodeDeployDeploymentGroup_LoadBalancerInfo) SetDeletionPolicy(policy policies.DeletionPolicy) { +func (r *DeploymentGroup_LoadBalancerInfo) SetDeletionPolicy(policy policies.DeletionPolicy) { r._deletionPolicy = policy } diff --git a/cloudformation/resources/aws-codedeploy-deploymentgroup_onpremisestagset.go b/cloudformation/codedeploy/aws-codedeploy-deploymentgroup_onpremisestagset.go similarity index 66% rename from cloudformation/resources/aws-codedeploy-deploymentgroup_onpremisestagset.go rename to cloudformation/codedeploy/aws-codedeploy-deploymentgroup_onpremisestagset.go index 871c9d7c95..4119bb1ef9 100644 --- a/cloudformation/resources/aws-codedeploy-deploymentgroup_onpremisestagset.go +++ b/cloudformation/codedeploy/aws-codedeploy-deploymentgroup_onpremisestagset.go @@ -1,15 +1,17 @@ -package resources +package codedeploy -import "github.com/awslabs/goformation/v2/cloudformation/policies" +import ( + "github.com/awslabs/goformation/v3/cloudformation/policies" +) -// AWSCodeDeployDeploymentGroup_OnPremisesTagSet AWS CloudFormation Resource (AWS::CodeDeploy::DeploymentGroup.OnPremisesTagSet) +// 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 AWSCodeDeployDeploymentGroup_OnPremisesTagSet struct { +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 []AWSCodeDeployDeploymentGroup_OnPremisesTagSetListObject `json:"OnPremisesTagSetList,omitempty"` + OnPremisesTagSetList []DeploymentGroup_OnPremisesTagSetListObject `json:"OnPremisesTagSetList,omitempty"` // _deletionPolicy represents a CloudFormation DeletionPolicy _deletionPolicy policies.DeletionPolicy @@ -22,42 +24,42 @@ type AWSCodeDeployDeploymentGroup_OnPremisesTagSet struct { } // AWSCloudFormationType returns the AWS CloudFormation resource type -func (r *AWSCodeDeployDeploymentGroup_OnPremisesTagSet) AWSCloudFormationType() string { +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 *AWSCodeDeployDeploymentGroup_OnPremisesTagSet) DependsOn() []string { +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 *AWSCodeDeployDeploymentGroup_OnPremisesTagSet) SetDependsOn(dependencies []string) { +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 *AWSCodeDeployDeploymentGroup_OnPremisesTagSet) Metadata() map[string]interface{} { +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 *AWSCodeDeployDeploymentGroup_OnPremisesTagSet) SetMetadata(metadata map[string]interface{}) { +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 *AWSCodeDeployDeploymentGroup_OnPremisesTagSet) DeletionPolicy() policies.DeletionPolicy { +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 *AWSCodeDeployDeploymentGroup_OnPremisesTagSet) SetDeletionPolicy(policy policies.DeletionPolicy) { +func (r *DeploymentGroup_OnPremisesTagSet) SetDeletionPolicy(policy policies.DeletionPolicy) { r._deletionPolicy = policy } diff --git a/cloudformation/resources/aws-codedeploy-deploymentgroup_onpremisestagsetlistobject.go b/cloudformation/codedeploy/aws-codedeploy-deploymentgroup_onpremisestagsetlistobject.go similarity index 65% rename from cloudformation/resources/aws-codedeploy-deploymentgroup_onpremisestagsetlistobject.go rename to cloudformation/codedeploy/aws-codedeploy-deploymentgroup_onpremisestagsetlistobject.go index bf9f4bc803..e91625f403 100644 --- a/cloudformation/resources/aws-codedeploy-deploymentgroup_onpremisestagsetlistobject.go +++ b/cloudformation/codedeploy/aws-codedeploy-deploymentgroup_onpremisestagsetlistobject.go @@ -1,15 +1,17 @@ -package resources +package codedeploy -import "github.com/awslabs/goformation/v2/cloudformation/policies" +import ( + "github.com/awslabs/goformation/v3/cloudformation/policies" +) -// AWSCodeDeployDeploymentGroup_OnPremisesTagSetListObject AWS CloudFormation Resource (AWS::CodeDeploy::DeploymentGroup.OnPremisesTagSetListObject) +// 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 AWSCodeDeployDeploymentGroup_OnPremisesTagSetListObject struct { +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 []AWSCodeDeployDeploymentGroup_TagFilter `json:"OnPremisesTagGroup,omitempty"` + OnPremisesTagGroup []DeploymentGroup_TagFilter `json:"OnPremisesTagGroup,omitempty"` // _deletionPolicy represents a CloudFormation DeletionPolicy _deletionPolicy policies.DeletionPolicy @@ -22,42 +24,42 @@ type AWSCodeDeployDeploymentGroup_OnPremisesTagSetListObject struct { } // AWSCloudFormationType returns the AWS CloudFormation resource type -func (r *AWSCodeDeployDeploymentGroup_OnPremisesTagSetListObject) AWSCloudFormationType() string { +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 *AWSCodeDeployDeploymentGroup_OnPremisesTagSetListObject) DependsOn() []string { +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 *AWSCodeDeployDeploymentGroup_OnPremisesTagSetListObject) SetDependsOn(dependencies []string) { +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 *AWSCodeDeployDeploymentGroup_OnPremisesTagSetListObject) Metadata() map[string]interface{} { +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 *AWSCodeDeployDeploymentGroup_OnPremisesTagSetListObject) SetMetadata(metadata map[string]interface{}) { +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 *AWSCodeDeployDeploymentGroup_OnPremisesTagSetListObject) DeletionPolicy() policies.DeletionPolicy { +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 *AWSCodeDeployDeploymentGroup_OnPremisesTagSetListObject) SetDeletionPolicy(policy policies.DeletionPolicy) { +func (r *DeploymentGroup_OnPremisesTagSetListObject) SetDeletionPolicy(policy policies.DeletionPolicy) { r._deletionPolicy = policy } diff --git a/cloudformation/resources/aws-codedeploy-deploymentgroup_revisionlocation.go b/cloudformation/codedeploy/aws-codedeploy-deploymentgroup_revisionlocation.go similarity index 70% rename from cloudformation/resources/aws-codedeploy-deploymentgroup_revisionlocation.go rename to cloudformation/codedeploy/aws-codedeploy-deploymentgroup_revisionlocation.go index d0a75603e4..31118b03ac 100644 --- a/cloudformation/resources/aws-codedeploy-deploymentgroup_revisionlocation.go +++ b/cloudformation/codedeploy/aws-codedeploy-deploymentgroup_revisionlocation.go @@ -1,15 +1,17 @@ -package resources +package codedeploy -import "github.com/awslabs/goformation/v2/cloudformation/policies" +import ( + "github.com/awslabs/goformation/v3/cloudformation/policies" +) -// AWSCodeDeployDeploymentGroup_RevisionLocation AWS CloudFormation Resource (AWS::CodeDeploy::DeploymentGroup.RevisionLocation) +// 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 AWSCodeDeployDeploymentGroup_RevisionLocation struct { +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 *AWSCodeDeployDeploymentGroup_GitHubLocation `json:"GitHubLocation,omitempty"` + GitHubLocation *DeploymentGroup_GitHubLocation `json:"GitHubLocation,omitempty"` // RevisionType AWS CloudFormation Property // Required: false @@ -19,7 +21,7 @@ type AWSCodeDeployDeploymentGroup_RevisionLocation struct { // 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"` + S3Location *DeploymentGroup_S3Location `json:"S3Location,omitempty"` // _deletionPolicy represents a CloudFormation DeletionPolicy _deletionPolicy policies.DeletionPolicy @@ -32,42 +34,42 @@ type AWSCodeDeployDeploymentGroup_RevisionLocation struct { } // AWSCloudFormationType returns the AWS CloudFormation resource type -func (r *AWSCodeDeployDeploymentGroup_RevisionLocation) AWSCloudFormationType() string { +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 *AWSCodeDeployDeploymentGroup_RevisionLocation) DependsOn() []string { +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 *AWSCodeDeployDeploymentGroup_RevisionLocation) SetDependsOn(dependencies []string) { +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 *AWSCodeDeployDeploymentGroup_RevisionLocation) Metadata() map[string]interface{} { +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 *AWSCodeDeployDeploymentGroup_RevisionLocation) SetMetadata(metadata map[string]interface{}) { +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 *AWSCodeDeployDeploymentGroup_RevisionLocation) DeletionPolicy() policies.DeletionPolicy { +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 *AWSCodeDeployDeploymentGroup_RevisionLocation) SetDeletionPolicy(policy policies.DeletionPolicy) { +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/resources/aws-codedeploy-deploymentgroup_targetgroupinfo.go b/cloudformation/codedeploy/aws-codedeploy-deploymentgroup_targetgroupinfo.go similarity index 69% rename from cloudformation/resources/aws-codedeploy-deploymentgroup_targetgroupinfo.go rename to cloudformation/codedeploy/aws-codedeploy-deploymentgroup_targetgroupinfo.go index 82453cde6a..c4fa5cc376 100644 --- a/cloudformation/resources/aws-codedeploy-deploymentgroup_targetgroupinfo.go +++ b/cloudformation/codedeploy/aws-codedeploy-deploymentgroup_targetgroupinfo.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_TargetGroupInfo AWS CloudFormation Resource (AWS::CodeDeploy::DeploymentGroup.TargetGroupInfo) +// 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 AWSCodeDeployDeploymentGroup_TargetGroupInfo struct { +type DeploymentGroup_TargetGroupInfo struct { // Name AWS CloudFormation Property // Required: false @@ -22,42 +24,42 @@ type AWSCodeDeployDeploymentGroup_TargetGroupInfo struct { } // AWSCloudFormationType returns the AWS CloudFormation resource type -func (r *AWSCodeDeployDeploymentGroup_TargetGroupInfo) AWSCloudFormationType() string { +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 *AWSCodeDeployDeploymentGroup_TargetGroupInfo) DependsOn() []string { +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 *AWSCodeDeployDeploymentGroup_TargetGroupInfo) SetDependsOn(dependencies []string) { +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 *AWSCodeDeployDeploymentGroup_TargetGroupInfo) Metadata() map[string]interface{} { +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 *AWSCodeDeployDeploymentGroup_TargetGroupInfo) SetMetadata(metadata map[string]interface{}) { +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 *AWSCodeDeployDeploymentGroup_TargetGroupInfo) DeletionPolicy() policies.DeletionPolicy { +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 *AWSCodeDeployDeploymentGroup_TargetGroupInfo) SetDeletionPolicy(policy policies.DeletionPolicy) { +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/resources/aws-codepipeline-customactiontype_artifactdetails.go b/cloudformation/codepipeline/aws-codepipeline-customactiontype_artifactdetails.go similarity index 71% rename from cloudformation/resources/aws-codepipeline-customactiontype_artifactdetails.go rename to cloudformation/codepipeline/aws-codepipeline-customactiontype_artifactdetails.go index e9b579c467..b694660993 100644 --- a/cloudformation/resources/aws-codepipeline-customactiontype_artifactdetails.go +++ b/cloudformation/codepipeline/aws-codepipeline-customactiontype_artifactdetails.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_ArtifactDetails AWS CloudFormation Resource (AWS::CodePipeline::CustomActionType.ArtifactDetails) +// 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 AWSCodePipelineCustomActionType_ArtifactDetails struct { +type CustomActionType_ArtifactDetails struct { // MaximumCount AWS CloudFormation Property // Required: true @@ -27,42 +29,42 @@ type AWSCodePipelineCustomActionType_ArtifactDetails struct { } // AWSCloudFormationType returns the AWS CloudFormation resource type -func (r *AWSCodePipelineCustomActionType_ArtifactDetails) AWSCloudFormationType() string { +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 *AWSCodePipelineCustomActionType_ArtifactDetails) DependsOn() []string { +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 *AWSCodePipelineCustomActionType_ArtifactDetails) SetDependsOn(dependencies []string) { +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 *AWSCodePipelineCustomActionType_ArtifactDetails) Metadata() map[string]interface{} { +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 *AWSCodePipelineCustomActionType_ArtifactDetails) SetMetadata(metadata map[string]interface{}) { +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 *AWSCodePipelineCustomActionType_ArtifactDetails) DeletionPolicy() policies.DeletionPolicy { +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 *AWSCodePipelineCustomActionType_ArtifactDetails) SetDeletionPolicy(policy policies.DeletionPolicy) { +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/resources/aws-codepipeline-pipeline_artifactstore.go b/cloudformation/codepipeline/aws-codepipeline-pipeline_artifactstore.go similarity index 73% rename from cloudformation/resources/aws-codepipeline-pipeline_artifactstore.go rename to cloudformation/codepipeline/aws-codepipeline-pipeline_artifactstore.go index 7e9dd37420..d27db97687 100644 --- a/cloudformation/resources/aws-codepipeline-pipeline_artifactstore.go +++ b/cloudformation/codepipeline/aws-codepipeline-pipeline_artifactstore.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_ArtifactStore AWS CloudFormation Resource (AWS::CodePipeline::Pipeline.ArtifactStore) +// 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 AWSCodePipelinePipeline_ArtifactStore struct { +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 *AWSCodePipelinePipeline_EncryptionKey `json:"EncryptionKey,omitempty"` + EncryptionKey *Pipeline_EncryptionKey `json:"EncryptionKey,omitempty"` // Location AWS CloudFormation Property // Required: true @@ -32,42 +34,42 @@ type AWSCodePipelinePipeline_ArtifactStore struct { } // AWSCloudFormationType returns the AWS CloudFormation resource type -func (r *AWSCodePipelinePipeline_ArtifactStore) AWSCloudFormationType() string { +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 *AWSCodePipelinePipeline_ArtifactStore) DependsOn() []string { +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 *AWSCodePipelinePipeline_ArtifactStore) SetDependsOn(dependencies []string) { +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 *AWSCodePipelinePipeline_ArtifactStore) Metadata() map[string]interface{} { +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 *AWSCodePipelinePipeline_ArtifactStore) SetMetadata(metadata map[string]interface{}) { +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 *AWSCodePipelinePipeline_ArtifactStore) DeletionPolicy() policies.DeletionPolicy { +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 *AWSCodePipelinePipeline_ArtifactStore) SetDeletionPolicy(policy policies.DeletionPolicy) { +func (r *Pipeline_ArtifactStore) SetDeletionPolicy(policy policies.DeletionPolicy) { r._deletionPolicy = policy } diff --git a/cloudformation/resources/aws-codepipeline-pipeline_artifactstoremap.go b/cloudformation/codepipeline/aws-codepipeline-pipeline_artifactstoremap.go similarity index 70% rename from cloudformation/resources/aws-codepipeline-pipeline_artifactstoremap.go rename to cloudformation/codepipeline/aws-codepipeline-pipeline_artifactstoremap.go index bf854e5caa..d252bda168 100644 --- a/cloudformation/resources/aws-codepipeline-pipeline_artifactstoremap.go +++ b/cloudformation/codepipeline/aws-codepipeline-pipeline_artifactstoremap.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_ArtifactStoreMap AWS CloudFormation Resource (AWS::CodePipeline::Pipeline.ArtifactStoreMap) +// 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 AWSCodePipelinePipeline_ArtifactStoreMap struct { +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 *AWSCodePipelinePipeline_ArtifactStore `json:"ArtifactStore,omitempty"` + ArtifactStore *Pipeline_ArtifactStore `json:"ArtifactStore,omitempty"` // Region AWS CloudFormation Property // Required: true @@ -27,42 +29,42 @@ type AWSCodePipelinePipeline_ArtifactStoreMap struct { } // AWSCloudFormationType returns the AWS CloudFormation resource type -func (r *AWSCodePipelinePipeline_ArtifactStoreMap) AWSCloudFormationType() string { +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 *AWSCodePipelinePipeline_ArtifactStoreMap) DependsOn() []string { +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 *AWSCodePipelinePipeline_ArtifactStoreMap) SetDependsOn(dependencies []string) { +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 *AWSCodePipelinePipeline_ArtifactStoreMap) Metadata() map[string]interface{} { +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 *AWSCodePipelinePipeline_ArtifactStoreMap) SetMetadata(metadata map[string]interface{}) { +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 *AWSCodePipelinePipeline_ArtifactStoreMap) DeletionPolicy() policies.DeletionPolicy { +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 *AWSCodePipelinePipeline_ArtifactStoreMap) SetDeletionPolicy(policy policies.DeletionPolicy) { +func (r *Pipeline_ArtifactStoreMap) SetDeletionPolicy(policy policies.DeletionPolicy) { r._deletionPolicy = policy } diff --git a/cloudformation/resources/aws-codepipeline-pipeline_blockerdeclaration.go b/cloudformation/codepipeline/aws-codepipeline-pipeline_blockerdeclaration.go similarity index 72% rename from cloudformation/resources/aws-codepipeline-pipeline_blockerdeclaration.go rename to cloudformation/codepipeline/aws-codepipeline-pipeline_blockerdeclaration.go index b273b5481f..60d693fd69 100644 --- a/cloudformation/resources/aws-codepipeline-pipeline_blockerdeclaration.go +++ b/cloudformation/codepipeline/aws-codepipeline-pipeline_blockerdeclaration.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_BlockerDeclaration AWS CloudFormation Resource (AWS::CodePipeline::Pipeline.BlockerDeclaration) +// 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 AWSCodePipelinePipeline_BlockerDeclaration struct { +type Pipeline_BlockerDeclaration struct { // Name AWS CloudFormation Property // Required: true @@ -27,42 +29,42 @@ type AWSCodePipelinePipeline_BlockerDeclaration struct { } // AWSCloudFormationType returns the AWS CloudFormation resource type -func (r *AWSCodePipelinePipeline_BlockerDeclaration) AWSCloudFormationType() string { +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 *AWSCodePipelinePipeline_BlockerDeclaration) DependsOn() []string { +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 *AWSCodePipelinePipeline_BlockerDeclaration) SetDependsOn(dependencies []string) { +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 *AWSCodePipelinePipeline_BlockerDeclaration) Metadata() map[string]interface{} { +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 *AWSCodePipelinePipeline_BlockerDeclaration) SetMetadata(metadata map[string]interface{}) { +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 *AWSCodePipelinePipeline_BlockerDeclaration) DeletionPolicy() policies.DeletionPolicy { +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 *AWSCodePipelinePipeline_BlockerDeclaration) SetDeletionPolicy(policy policies.DeletionPolicy) { +func (r *Pipeline_BlockerDeclaration) SetDeletionPolicy(policy policies.DeletionPolicy) { r._deletionPolicy = policy } diff --git a/cloudformation/resources/aws-codepipeline-pipeline_encryptionkey.go b/cloudformation/codepipeline/aws-codepipeline-pipeline_encryptionkey.go similarity index 73% rename from cloudformation/resources/aws-codepipeline-pipeline_encryptionkey.go rename to cloudformation/codepipeline/aws-codepipeline-pipeline_encryptionkey.go index 7bc8c4b70c..6118b3b6fb 100644 --- a/cloudformation/resources/aws-codepipeline-pipeline_encryptionkey.go +++ b/cloudformation/codepipeline/aws-codepipeline-pipeline_encryptionkey.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_EncryptionKey AWS CloudFormation Resource (AWS::CodePipeline::Pipeline.EncryptionKey) +// 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 AWSCodePipelinePipeline_EncryptionKey struct { +type Pipeline_EncryptionKey struct { // Id AWS CloudFormation Property // Required: true @@ -27,42 +29,42 @@ type AWSCodePipelinePipeline_EncryptionKey struct { } // AWSCloudFormationType returns the AWS CloudFormation resource type -func (r *AWSCodePipelinePipeline_EncryptionKey) AWSCloudFormationType() string { +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 *AWSCodePipelinePipeline_EncryptionKey) DependsOn() []string { +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 *AWSCodePipelinePipeline_EncryptionKey) SetDependsOn(dependencies []string) { +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 *AWSCodePipelinePipeline_EncryptionKey) Metadata() map[string]interface{} { +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 *AWSCodePipelinePipeline_EncryptionKey) SetMetadata(metadata map[string]interface{}) { +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 *AWSCodePipelinePipeline_EncryptionKey) DeletionPolicy() policies.DeletionPolicy { +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 *AWSCodePipelinePipeline_EncryptionKey) SetDeletionPolicy(policy policies.DeletionPolicy) { +func (r *Pipeline_EncryptionKey) SetDeletionPolicy(policy policies.DeletionPolicy) { r._deletionPolicy = policy } diff --git a/cloudformation/resources/aws-codepipeline-pipeline_inputartifact.go b/cloudformation/codepipeline/aws-codepipeline-pipeline_inputartifact.go similarity index 71% rename from cloudformation/resources/aws-codepipeline-pipeline_inputartifact.go rename to cloudformation/codepipeline/aws-codepipeline-pipeline_inputartifact.go index d8c191483b..a403bfcf25 100644 --- a/cloudformation/resources/aws-codepipeline-pipeline_inputartifact.go +++ b/cloudformation/codepipeline/aws-codepipeline-pipeline_inputartifact.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_InputArtifact AWS CloudFormation Resource (AWS::CodePipeline::Pipeline.InputArtifact) +// 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 AWSCodePipelinePipeline_InputArtifact struct { +type Pipeline_InputArtifact struct { // Name AWS CloudFormation Property // Required: true @@ -22,42 +24,42 @@ type AWSCodePipelinePipeline_InputArtifact struct { } // AWSCloudFormationType returns the AWS CloudFormation resource type -func (r *AWSCodePipelinePipeline_InputArtifact) AWSCloudFormationType() string { +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 *AWSCodePipelinePipeline_InputArtifact) DependsOn() []string { +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 *AWSCodePipelinePipeline_InputArtifact) SetDependsOn(dependencies []string) { +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 *AWSCodePipelinePipeline_InputArtifact) Metadata() map[string]interface{} { +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 *AWSCodePipelinePipeline_InputArtifact) SetMetadata(metadata map[string]interface{}) { +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 *AWSCodePipelinePipeline_InputArtifact) DeletionPolicy() policies.DeletionPolicy { +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 *AWSCodePipelinePipeline_InputArtifact) SetDeletionPolicy(policy policies.DeletionPolicy) { +func (r *Pipeline_InputArtifact) SetDeletionPolicy(policy policies.DeletionPolicy) { r._deletionPolicy = policy } diff --git a/cloudformation/resources/aws-codepipeline-pipeline_outputartifact.go b/cloudformation/codepipeline/aws-codepipeline-pipeline_outputartifact.go similarity index 70% rename from cloudformation/resources/aws-codepipeline-pipeline_outputartifact.go rename to cloudformation/codepipeline/aws-codepipeline-pipeline_outputartifact.go index a8f09a76af..abc37722d4 100644 --- a/cloudformation/resources/aws-codepipeline-pipeline_outputartifact.go +++ b/cloudformation/codepipeline/aws-codepipeline-pipeline_outputartifact.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_OutputArtifact AWS CloudFormation Resource (AWS::CodePipeline::Pipeline.OutputArtifact) +// 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 AWSCodePipelinePipeline_OutputArtifact struct { +type Pipeline_OutputArtifact struct { // Name AWS CloudFormation Property // Required: true @@ -22,42 +24,42 @@ type AWSCodePipelinePipeline_OutputArtifact struct { } // AWSCloudFormationType returns the AWS CloudFormation resource type -func (r *AWSCodePipelinePipeline_OutputArtifact) AWSCloudFormationType() string { +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 *AWSCodePipelinePipeline_OutputArtifact) DependsOn() []string { +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 *AWSCodePipelinePipeline_OutputArtifact) SetDependsOn(dependencies []string) { +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 *AWSCodePipelinePipeline_OutputArtifact) Metadata() map[string]interface{} { +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 *AWSCodePipelinePipeline_OutputArtifact) SetMetadata(metadata map[string]interface{}) { +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 *AWSCodePipelinePipeline_OutputArtifact) DeletionPolicy() policies.DeletionPolicy { +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 *AWSCodePipelinePipeline_OutputArtifact) SetDeletionPolicy(policy policies.DeletionPolicy) { +func (r *Pipeline_OutputArtifact) SetDeletionPolicy(policy policies.DeletionPolicy) { r._deletionPolicy = policy } diff --git a/cloudformation/resources/aws-codepipeline-pipeline_stagedeclaration.go b/cloudformation/codepipeline/aws-codepipeline-pipeline_stagedeclaration.go similarity index 70% rename from cloudformation/resources/aws-codepipeline-pipeline_stagedeclaration.go rename to cloudformation/codepipeline/aws-codepipeline-pipeline_stagedeclaration.go index 504a382a24..57fc6ab3ef 100644 --- a/cloudformation/resources/aws-codepipeline-pipeline_stagedeclaration.go +++ b/cloudformation/codepipeline/aws-codepipeline-pipeline_stagedeclaration.go @@ -1,20 +1,22 @@ -package resources +package codepipeline -import "github.com/awslabs/goformation/v2/cloudformation/policies" +import ( + "github.com/awslabs/goformation/v3/cloudformation/policies" +) -// AWSCodePipelinePipeline_StageDeclaration AWS CloudFormation Resource (AWS::CodePipeline::Pipeline.StageDeclaration) +// 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 AWSCodePipelinePipeline_StageDeclaration struct { +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 []AWSCodePipelinePipeline_ActionDeclaration `json:"Actions,omitempty"` + 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 []AWSCodePipelinePipeline_BlockerDeclaration `json:"Blockers,omitempty"` + Blockers []Pipeline_BlockerDeclaration `json:"Blockers,omitempty"` // Name AWS CloudFormation Property // Required: true @@ -32,42 +34,42 @@ type AWSCodePipelinePipeline_StageDeclaration struct { } // AWSCloudFormationType returns the AWS CloudFormation resource type -func (r *AWSCodePipelinePipeline_StageDeclaration) AWSCloudFormationType() string { +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 *AWSCodePipelinePipeline_StageDeclaration) DependsOn() []string { +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 *AWSCodePipelinePipeline_StageDeclaration) SetDependsOn(dependencies []string) { +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 *AWSCodePipelinePipeline_StageDeclaration) Metadata() map[string]interface{} { +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 *AWSCodePipelinePipeline_StageDeclaration) SetMetadata(metadata map[string]interface{}) { +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 *AWSCodePipelinePipeline_StageDeclaration) DeletionPolicy() policies.DeletionPolicy { +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 *AWSCodePipelinePipeline_StageDeclaration) SetDeletionPolicy(policy policies.DeletionPolicy) { +func (r *Pipeline_StageDeclaration) SetDeletionPolicy(policy policies.DeletionPolicy) { r._deletionPolicy = policy } diff --git a/cloudformation/resources/aws-codepipeline-pipeline_stagetransition.go b/cloudformation/codepipeline/aws-codepipeline-pipeline_stagetransition.go similarity index 73% rename from cloudformation/resources/aws-codepipeline-pipeline_stagetransition.go rename to cloudformation/codepipeline/aws-codepipeline-pipeline_stagetransition.go index c5a8e469cf..25974f72d7 100644 --- a/cloudformation/resources/aws-codepipeline-pipeline_stagetransition.go +++ b/cloudformation/codepipeline/aws-codepipeline-pipeline_stagetransition.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_StageTransition AWS CloudFormation Resource (AWS::CodePipeline::Pipeline.StageTransition) +// 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 AWSCodePipelinePipeline_StageTransition struct { +type Pipeline_StageTransition struct { // Reason AWS CloudFormation Property // Required: true @@ -27,42 +29,42 @@ type AWSCodePipelinePipeline_StageTransition struct { } // AWSCloudFormationType returns the AWS CloudFormation resource type -func (r *AWSCodePipelinePipeline_StageTransition) AWSCloudFormationType() string { +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 *AWSCodePipelinePipeline_StageTransition) DependsOn() []string { +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 *AWSCodePipelinePipeline_StageTransition) SetDependsOn(dependencies []string) { +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 *AWSCodePipelinePipeline_StageTransition) Metadata() map[string]interface{} { +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 *AWSCodePipelinePipeline_StageTransition) SetMetadata(metadata map[string]interface{}) { +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 *AWSCodePipelinePipeline_StageTransition) DeletionPolicy() policies.DeletionPolicy { +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 *AWSCodePipelinePipeline_StageTransition) SetDeletionPolicy(policy policies.DeletionPolicy) { +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/resources/aws-codepipeline-webhook_webhookauthconfiguration.go b/cloudformation/codepipeline/aws-codepipeline-webhook_webhookauthconfiguration.go similarity index 72% rename from cloudformation/resources/aws-codepipeline-webhook_webhookauthconfiguration.go rename to cloudformation/codepipeline/aws-codepipeline-webhook_webhookauthconfiguration.go index 33d4ca0aae..a158e80f5e 100644 --- a/cloudformation/resources/aws-codepipeline-webhook_webhookauthconfiguration.go +++ b/cloudformation/codepipeline/aws-codepipeline-webhook_webhookauthconfiguration.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" +) -// AWSCodePipelineWebhook_WebhookAuthConfiguration AWS CloudFormation Resource (AWS::CodePipeline::Webhook.WebhookAuthConfiguration) +// 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 AWSCodePipelineWebhook_WebhookAuthConfiguration struct { +type Webhook_WebhookAuthConfiguration struct { // AllowedIPRange AWS CloudFormation Property // Required: false @@ -27,42 +29,42 @@ type AWSCodePipelineWebhook_WebhookAuthConfiguration struct { } // AWSCloudFormationType returns the AWS CloudFormation resource type -func (r *AWSCodePipelineWebhook_WebhookAuthConfiguration) AWSCloudFormationType() string { +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 *AWSCodePipelineWebhook_WebhookAuthConfiguration) DependsOn() []string { +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 *AWSCodePipelineWebhook_WebhookAuthConfiguration) SetDependsOn(dependencies []string) { +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 *AWSCodePipelineWebhook_WebhookAuthConfiguration) Metadata() map[string]interface{} { +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 *AWSCodePipelineWebhook_WebhookAuthConfiguration) SetMetadata(metadata map[string]interface{}) { +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 *AWSCodePipelineWebhook_WebhookAuthConfiguration) DeletionPolicy() policies.DeletionPolicy { +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 *AWSCodePipelineWebhook_WebhookAuthConfiguration) SetDeletionPolicy(policy policies.DeletionPolicy) { +func (r *Webhook_WebhookAuthConfiguration) SetDeletionPolicy(policy policies.DeletionPolicy) { r._deletionPolicy = policy } diff --git a/cloudformation/resources/aws-codepipeline-webhook_webhookfilterrule.go b/cloudformation/codepipeline/aws-codepipeline-webhook_webhookfilterrule.go similarity index 72% rename from cloudformation/resources/aws-codepipeline-webhook_webhookfilterrule.go rename to cloudformation/codepipeline/aws-codepipeline-webhook_webhookfilterrule.go index fca0c34d3a..671f059ee3 100644 --- a/cloudformation/resources/aws-codepipeline-webhook_webhookfilterrule.go +++ b/cloudformation/codepipeline/aws-codepipeline-webhook_webhookfilterrule.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" +) -// AWSCodePipelineWebhook_WebhookFilterRule AWS CloudFormation Resource (AWS::CodePipeline::Webhook.WebhookFilterRule) +// 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 AWSCodePipelineWebhook_WebhookFilterRule struct { +type Webhook_WebhookFilterRule struct { // JsonPath AWS CloudFormation Property // Required: true @@ -27,42 +29,42 @@ type AWSCodePipelineWebhook_WebhookFilterRule struct { } // AWSCloudFormationType returns the AWS CloudFormation resource type -func (r *AWSCodePipelineWebhook_WebhookFilterRule) AWSCloudFormationType() string { +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 *AWSCodePipelineWebhook_WebhookFilterRule) DependsOn() []string { +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 *AWSCodePipelineWebhook_WebhookFilterRule) SetDependsOn(dependencies []string) { +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 *AWSCodePipelineWebhook_WebhookFilterRule) Metadata() map[string]interface{} { +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 *AWSCodePipelineWebhook_WebhookFilterRule) SetMetadata(metadata map[string]interface{}) { +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 *AWSCodePipelineWebhook_WebhookFilterRule) DeletionPolicy() policies.DeletionPolicy { +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 *AWSCodePipelineWebhook_WebhookFilterRule) SetDeletionPolicy(policy policies.DeletionPolicy) { +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/resources/aws-codestar-githubrepository_code.go b/cloudformation/codestar/aws-codestar-githubrepository_code.go similarity index 69% rename from cloudformation/resources/aws-codestar-githubrepository_code.go rename to cloudformation/codestar/aws-codestar-githubrepository_code.go index e1cbe7e4cd..d189bdbd6f 100644 --- a/cloudformation/resources/aws-codestar-githubrepository_code.go +++ b/cloudformation/codestar/aws-codestar-githubrepository_code.go @@ -1,15 +1,17 @@ -package resources +package codestar -import "github.com/awslabs/goformation/v2/cloudformation/policies" +import ( + "github.com/awslabs/goformation/v3/cloudformation/policies" +) -// AWSCodeStarGitHubRepository_Code AWS CloudFormation Resource (AWS::CodeStar::GitHubRepository.Code) +// 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 AWSCodeStarGitHubRepository_Code struct { +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 *AWSCodeStarGitHubRepository_S3 `json:"S3,omitempty"` + S3 *GitHubRepository_S3 `json:"S3,omitempty"` // _deletionPolicy represents a CloudFormation DeletionPolicy _deletionPolicy policies.DeletionPolicy @@ -22,42 +24,42 @@ type AWSCodeStarGitHubRepository_Code struct { } // AWSCloudFormationType returns the AWS CloudFormation resource type -func (r *AWSCodeStarGitHubRepository_Code) AWSCloudFormationType() string { +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 *AWSCodeStarGitHubRepository_Code) DependsOn() []string { +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 *AWSCodeStarGitHubRepository_Code) SetDependsOn(dependencies []string) { +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 *AWSCodeStarGitHubRepository_Code) Metadata() map[string]interface{} { +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 *AWSCodeStarGitHubRepository_Code) SetMetadata(metadata map[string]interface{}) { +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 *AWSCodeStarGitHubRepository_Code) DeletionPolicy() policies.DeletionPolicy { +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 *AWSCodeStarGitHubRepository_Code) SetDeletionPolicy(policy policies.DeletionPolicy) { +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/resources/aws-cognito-identitypool_cognitoidentityprovider.go b/cloudformation/cognito/aws-cognito-identitypool_cognitoidentityprovider.go similarity index 74% rename from cloudformation/resources/aws-cognito-identitypool_cognitoidentityprovider.go rename to cloudformation/cognito/aws-cognito-identitypool_cognitoidentityprovider.go index 833fba5598..507c57a243 100644 --- a/cloudformation/resources/aws-cognito-identitypool_cognitoidentityprovider.go +++ b/cloudformation/cognito/aws-cognito-identitypool_cognitoidentityprovider.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_CognitoIdentityProvider AWS CloudFormation Resource (AWS::Cognito::IdentityPool.CognitoIdentityProvider) +// 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 AWSCognitoIdentityPool_CognitoIdentityProvider struct { +type IdentityPool_CognitoIdentityProvider struct { // ClientId AWS CloudFormation Property // Required: false @@ -32,42 +34,42 @@ type AWSCognitoIdentityPool_CognitoIdentityProvider struct { } // AWSCloudFormationType returns the AWS CloudFormation resource type -func (r *AWSCognitoIdentityPool_CognitoIdentityProvider) AWSCloudFormationType() string { +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 *AWSCognitoIdentityPool_CognitoIdentityProvider) DependsOn() []string { +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 *AWSCognitoIdentityPool_CognitoIdentityProvider) SetDependsOn(dependencies []string) { +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 *AWSCognitoIdentityPool_CognitoIdentityProvider) Metadata() map[string]interface{} { +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 *AWSCognitoIdentityPool_CognitoIdentityProvider) SetMetadata(metadata map[string]interface{}) { +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 *AWSCognitoIdentityPool_CognitoIdentityProvider) DeletionPolicy() policies.DeletionPolicy { +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 *AWSCognitoIdentityPool_CognitoIdentityProvider) SetDeletionPolicy(policy policies.DeletionPolicy) { +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/resources/aws-cognito-identitypool_pushsync.go b/cloudformation/cognito/aws-cognito-identitypool_pushsync.go similarity index 74% rename from cloudformation/resources/aws-cognito-identitypool_pushsync.go rename to cloudformation/cognito/aws-cognito-identitypool_pushsync.go index a0ae450d3d..efa5168611 100644 --- a/cloudformation/resources/aws-cognito-identitypool_pushsync.go +++ b/cloudformation/cognito/aws-cognito-identitypool_pushsync.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_PushSync AWS CloudFormation Resource (AWS::Cognito::IdentityPool.PushSync) +// 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 AWSCognitoIdentityPool_PushSync struct { +type IdentityPool_PushSync struct { // ApplicationArns AWS CloudFormation Property // Required: false @@ -27,42 +29,42 @@ type AWSCognitoIdentityPool_PushSync struct { } // AWSCloudFormationType returns the AWS CloudFormation resource type -func (r *AWSCognitoIdentityPool_PushSync) AWSCloudFormationType() string { +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 *AWSCognitoIdentityPool_PushSync) DependsOn() []string { +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 *AWSCognitoIdentityPool_PushSync) SetDependsOn(dependencies []string) { +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 *AWSCognitoIdentityPool_PushSync) Metadata() map[string]interface{} { +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 *AWSCognitoIdentityPool_PushSync) SetMetadata(metadata map[string]interface{}) { +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 *AWSCognitoIdentityPool_PushSync) DeletionPolicy() policies.DeletionPolicy { +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 *AWSCognitoIdentityPool_PushSync) SetDeletionPolicy(policy policies.DeletionPolicy) { +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/resources/aws-cognito-identitypoolroleattachment_rolemapping.go b/cloudformation/cognito/aws-cognito-identitypoolroleattachment_rolemapping.go similarity index 74% rename from cloudformation/resources/aws-cognito-identitypoolroleattachment_rolemapping.go rename to cloudformation/cognito/aws-cognito-identitypoolroleattachment_rolemapping.go index 193eb381de..ffde2815a1 100644 --- a/cloudformation/resources/aws-cognito-identitypoolroleattachment_rolemapping.go +++ b/cloudformation/cognito/aws-cognito-identitypoolroleattachment_rolemapping.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_RoleMapping AWS CloudFormation Resource (AWS::Cognito::IdentityPoolRoleAttachment.RoleMapping) +// 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 AWSCognitoIdentityPoolRoleAttachment_RoleMapping struct { +type IdentityPoolRoleAttachment_RoleMapping struct { // AmbiguousRoleResolution AWS CloudFormation Property // Required: false @@ -19,7 +21,7 @@ type AWSCognitoIdentityPoolRoleAttachment_RoleMapping struct { // 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"` + RulesConfiguration *IdentityPoolRoleAttachment_RulesConfigurationType `json:"RulesConfiguration,omitempty"` // Type AWS CloudFormation Property // Required: true @@ -37,42 +39,42 @@ type AWSCognitoIdentityPoolRoleAttachment_RoleMapping struct { } // AWSCloudFormationType returns the AWS CloudFormation resource type -func (r *AWSCognitoIdentityPoolRoleAttachment_RoleMapping) AWSCloudFormationType() string { +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 *AWSCognitoIdentityPoolRoleAttachment_RoleMapping) DependsOn() []string { +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 *AWSCognitoIdentityPoolRoleAttachment_RoleMapping) SetDependsOn(dependencies []string) { +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 *AWSCognitoIdentityPoolRoleAttachment_RoleMapping) Metadata() map[string]interface{} { +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 *AWSCognitoIdentityPoolRoleAttachment_RoleMapping) SetMetadata(metadata map[string]interface{}) { +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 *AWSCognitoIdentityPoolRoleAttachment_RoleMapping) DeletionPolicy() policies.DeletionPolicy { +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 *AWSCognitoIdentityPoolRoleAttachment_RoleMapping) SetDeletionPolicy(policy policies.DeletionPolicy) { +func (r *IdentityPoolRoleAttachment_RoleMapping) SetDeletionPolicy(policy policies.DeletionPolicy) { r._deletionPolicy = policy } diff --git a/cloudformation/resources/aws-cognito-identitypoolroleattachment_rulesconfigurationtype.go b/cloudformation/cognito/aws-cognito-identitypoolroleattachment_rulesconfigurationtype.go similarity index 64% rename from cloudformation/resources/aws-cognito-identitypoolroleattachment_rulesconfigurationtype.go rename to cloudformation/cognito/aws-cognito-identitypoolroleattachment_rulesconfigurationtype.go index fbb50743e1..d05fe48555 100644 --- a/cloudformation/resources/aws-cognito-identitypoolroleattachment_rulesconfigurationtype.go +++ b/cloudformation/cognito/aws-cognito-identitypoolroleattachment_rulesconfigurationtype.go @@ -1,15 +1,17 @@ -package resources +package cognito -import "github.com/awslabs/goformation/v2/cloudformation/policies" +import ( + "github.com/awslabs/goformation/v3/cloudformation/policies" +) -// AWSCognitoIdentityPoolRoleAttachment_RulesConfigurationType AWS CloudFormation Resource (AWS::Cognito::IdentityPoolRoleAttachment.RulesConfigurationType) +// 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 AWSCognitoIdentityPoolRoleAttachment_RulesConfigurationType struct { +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 []AWSCognitoIdentityPoolRoleAttachment_MappingRule `json:"Rules,omitempty"` + Rules []IdentityPoolRoleAttachment_MappingRule `json:"Rules,omitempty"` // _deletionPolicy represents a CloudFormation DeletionPolicy _deletionPolicy policies.DeletionPolicy @@ -22,42 +24,42 @@ type AWSCognitoIdentityPoolRoleAttachment_RulesConfigurationType struct { } // AWSCloudFormationType returns the AWS CloudFormation resource type -func (r *AWSCognitoIdentityPoolRoleAttachment_RulesConfigurationType) AWSCloudFormationType() string { +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 *AWSCognitoIdentityPoolRoleAttachment_RulesConfigurationType) DependsOn() []string { +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 *AWSCognitoIdentityPoolRoleAttachment_RulesConfigurationType) SetDependsOn(dependencies []string) { +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 *AWSCognitoIdentityPoolRoleAttachment_RulesConfigurationType) Metadata() map[string]interface{} { +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 *AWSCognitoIdentityPoolRoleAttachment_RulesConfigurationType) SetMetadata(metadata map[string]interface{}) { +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 *AWSCognitoIdentityPoolRoleAttachment_RulesConfigurationType) DeletionPolicy() policies.DeletionPolicy { +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 *AWSCognitoIdentityPoolRoleAttachment_RulesConfigurationType) SetDeletionPolicy(policy policies.DeletionPolicy) { +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/resources/aws-cognito-userpool_admincreateuserconfig.go b/cloudformation/cognito/aws-cognito-userpool_admincreateuserconfig.go similarity index 73% rename from cloudformation/resources/aws-cognito-userpool_admincreateuserconfig.go rename to cloudformation/cognito/aws-cognito-userpool_admincreateuserconfig.go index 2fcde8abdf..e7b1c09cfc 100644 --- a/cloudformation/resources/aws-cognito-userpool_admincreateuserconfig.go +++ b/cloudformation/cognito/aws-cognito-userpool_admincreateuserconfig.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_AdminCreateUserConfig AWS CloudFormation Resource (AWS::Cognito::UserPool.AdminCreateUserConfig) +// 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 AWSCognitoUserPool_AdminCreateUserConfig struct { +type UserPool_AdminCreateUserConfig struct { // AllowAdminCreateUserOnly AWS CloudFormation Property // Required: false @@ -14,7 +16,7 @@ type AWSCognitoUserPool_AdminCreateUserConfig struct { // 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"` + InviteMessageTemplate *UserPool_InviteMessageTemplate `json:"InviteMessageTemplate,omitempty"` // UnusedAccountValidityDays AWS CloudFormation Property // Required: false @@ -32,42 +34,42 @@ type AWSCognitoUserPool_AdminCreateUserConfig struct { } // AWSCloudFormationType returns the AWS CloudFormation resource type -func (r *AWSCognitoUserPool_AdminCreateUserConfig) AWSCloudFormationType() string { +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 *AWSCognitoUserPool_AdminCreateUserConfig) DependsOn() []string { +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 *AWSCognitoUserPool_AdminCreateUserConfig) SetDependsOn(dependencies []string) { +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 *AWSCognitoUserPool_AdminCreateUserConfig) Metadata() map[string]interface{} { +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 *AWSCognitoUserPool_AdminCreateUserConfig) SetMetadata(metadata map[string]interface{}) { +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 *AWSCognitoUserPool_AdminCreateUserConfig) DeletionPolicy() policies.DeletionPolicy { +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 *AWSCognitoUserPool_AdminCreateUserConfig) SetDeletionPolicy(policy policies.DeletionPolicy) { +func (r *UserPool_AdminCreateUserConfig) SetDeletionPolicy(policy policies.DeletionPolicy) { r._deletionPolicy = policy } diff --git a/cloudformation/resources/aws-cognito-userpool_deviceconfiguration.go b/cloudformation/cognito/aws-cognito-userpool_deviceconfiguration.go similarity index 74% rename from cloudformation/resources/aws-cognito-userpool_deviceconfiguration.go rename to cloudformation/cognito/aws-cognito-userpool_deviceconfiguration.go index cae7412db9..8fa3348c41 100644 --- a/cloudformation/resources/aws-cognito-userpool_deviceconfiguration.go +++ b/cloudformation/cognito/aws-cognito-userpool_deviceconfiguration.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_DeviceConfiguration AWS CloudFormation Resource (AWS::Cognito::UserPool.DeviceConfiguration) +// 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 AWSCognitoUserPool_DeviceConfiguration struct { +type UserPool_DeviceConfiguration struct { // ChallengeRequiredOnNewDevice AWS CloudFormation Property // Required: false @@ -27,42 +29,42 @@ type AWSCognitoUserPool_DeviceConfiguration struct { } // AWSCloudFormationType returns the AWS CloudFormation resource type -func (r *AWSCognitoUserPool_DeviceConfiguration) AWSCloudFormationType() string { +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 *AWSCognitoUserPool_DeviceConfiguration) DependsOn() []string { +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 *AWSCognitoUserPool_DeviceConfiguration) SetDependsOn(dependencies []string) { +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 *AWSCognitoUserPool_DeviceConfiguration) Metadata() map[string]interface{} { +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 *AWSCognitoUserPool_DeviceConfiguration) SetMetadata(metadata map[string]interface{}) { +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 *AWSCognitoUserPool_DeviceConfiguration) DeletionPolicy() policies.DeletionPolicy { +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 *AWSCognitoUserPool_DeviceConfiguration) SetDeletionPolicy(policy policies.DeletionPolicy) { +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/resources/aws-cognito-userpool_numberattributeconstraints.go b/cloudformation/cognito/aws-cognito-userpool_numberattributeconstraints.go similarity index 72% rename from cloudformation/resources/aws-cognito-userpool_numberattributeconstraints.go rename to cloudformation/cognito/aws-cognito-userpool_numberattributeconstraints.go index 856ba0db3e..5eb1987ca7 100644 --- a/cloudformation/resources/aws-cognito-userpool_numberattributeconstraints.go +++ b/cloudformation/cognito/aws-cognito-userpool_numberattributeconstraints.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_NumberAttributeConstraints AWS CloudFormation Resource (AWS::Cognito::UserPool.NumberAttributeConstraints) +// 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 AWSCognitoUserPool_NumberAttributeConstraints struct { +type UserPool_NumberAttributeConstraints struct { // MaxValue AWS CloudFormation Property // Required: false @@ -27,42 +29,42 @@ type AWSCognitoUserPool_NumberAttributeConstraints struct { } // AWSCloudFormationType returns the AWS CloudFormation resource type -func (r *AWSCognitoUserPool_NumberAttributeConstraints) AWSCloudFormationType() string { +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 *AWSCognitoUserPool_NumberAttributeConstraints) DependsOn() []string { +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 *AWSCognitoUserPool_NumberAttributeConstraints) SetDependsOn(dependencies []string) { +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 *AWSCognitoUserPool_NumberAttributeConstraints) Metadata() map[string]interface{} { +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 *AWSCognitoUserPool_NumberAttributeConstraints) SetMetadata(metadata map[string]interface{}) { +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 *AWSCognitoUserPool_NumberAttributeConstraints) DeletionPolicy() policies.DeletionPolicy { +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 *AWSCognitoUserPool_NumberAttributeConstraints) SetDeletionPolicy(policy policies.DeletionPolicy) { +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/resources/aws-cognito-userpool_policies.go b/cloudformation/cognito/aws-cognito-userpool_policies.go similarity index 70% rename from cloudformation/resources/aws-cognito-userpool_policies.go rename to cloudformation/cognito/aws-cognito-userpool_policies.go index 7dfb51487e..54a2cfc48e 100644 --- a/cloudformation/resources/aws-cognito-userpool_policies.go +++ b/cloudformation/cognito/aws-cognito-userpool_policies.go @@ -1,15 +1,17 @@ -package resources +package cognito -import "github.com/awslabs/goformation/v2/cloudformation/policies" +import ( + "github.com/awslabs/goformation/v3/cloudformation/policies" +) -// AWSCognitoUserPool_Policies AWS CloudFormation Resource (AWS::Cognito::UserPool.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 AWSCognitoUserPool_Policies struct { +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 *AWSCognitoUserPool_PasswordPolicy `json:"PasswordPolicy,omitempty"` + PasswordPolicy *UserPool_PasswordPolicy `json:"PasswordPolicy,omitempty"` // _deletionPolicy represents a CloudFormation DeletionPolicy _deletionPolicy policies.DeletionPolicy @@ -22,42 +24,42 @@ type AWSCognitoUserPool_Policies struct { } // AWSCloudFormationType returns the AWS CloudFormation resource type -func (r *AWSCognitoUserPool_Policies) AWSCloudFormationType() string { +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 *AWSCognitoUserPool_Policies) DependsOn() []string { +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 *AWSCognitoUserPool_Policies) SetDependsOn(dependencies []string) { +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 *AWSCognitoUserPool_Policies) Metadata() map[string]interface{} { +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 *AWSCognitoUserPool_Policies) SetMetadata(metadata map[string]interface{}) { +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 *AWSCognitoUserPool_Policies) DeletionPolicy() policies.DeletionPolicy { +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 *AWSCognitoUserPool_Policies) SetDeletionPolicy(policy policies.DeletionPolicy) { +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/resources/aws-cognito-userpool_smsconfiguration.go b/cloudformation/cognito/aws-cognito-userpool_smsconfiguration.go similarity index 74% rename from cloudformation/resources/aws-cognito-userpool_smsconfiguration.go rename to cloudformation/cognito/aws-cognito-userpool_smsconfiguration.go index b4ead4085e..e9145f5436 100644 --- a/cloudformation/resources/aws-cognito-userpool_smsconfiguration.go +++ b/cloudformation/cognito/aws-cognito-userpool_smsconfiguration.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_SmsConfiguration AWS CloudFormation Resource (AWS::Cognito::UserPool.SmsConfiguration) +// 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 AWSCognitoUserPool_SmsConfiguration struct { +type UserPool_SmsConfiguration struct { // ExternalId AWS CloudFormation Property // Required: false @@ -27,42 +29,42 @@ type AWSCognitoUserPool_SmsConfiguration struct { } // AWSCloudFormationType returns the AWS CloudFormation resource type -func (r *AWSCognitoUserPool_SmsConfiguration) AWSCloudFormationType() string { +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 *AWSCognitoUserPool_SmsConfiguration) DependsOn() []string { +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 *AWSCognitoUserPool_SmsConfiguration) SetDependsOn(dependencies []string) { +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 *AWSCognitoUserPool_SmsConfiguration) Metadata() map[string]interface{} { +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 *AWSCognitoUserPool_SmsConfiguration) SetMetadata(metadata map[string]interface{}) { +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 *AWSCognitoUserPool_SmsConfiguration) DeletionPolicy() policies.DeletionPolicy { +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 *AWSCognitoUserPool_SmsConfiguration) SetDeletionPolicy(policy policies.DeletionPolicy) { +func (r *UserPool_SmsConfiguration) SetDeletionPolicy(policy policies.DeletionPolicy) { r._deletionPolicy = policy } diff --git a/cloudformation/resources/aws-cognito-userpool_stringattributeconstraints.go b/cloudformation/cognito/aws-cognito-userpool_stringattributeconstraints.go similarity index 72% rename from cloudformation/resources/aws-cognito-userpool_stringattributeconstraints.go rename to cloudformation/cognito/aws-cognito-userpool_stringattributeconstraints.go index c63b2403d4..97f4c71924 100644 --- a/cloudformation/resources/aws-cognito-userpool_stringattributeconstraints.go +++ b/cloudformation/cognito/aws-cognito-userpool_stringattributeconstraints.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_StringAttributeConstraints AWS CloudFormation Resource (AWS::Cognito::UserPool.StringAttributeConstraints) +// 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 AWSCognitoUserPool_StringAttributeConstraints struct { +type UserPool_StringAttributeConstraints struct { // MaxLength AWS CloudFormation Property // Required: false @@ -27,42 +29,42 @@ type AWSCognitoUserPool_StringAttributeConstraints struct { } // AWSCloudFormationType returns the AWS CloudFormation resource type -func (r *AWSCognitoUserPool_StringAttributeConstraints) AWSCloudFormationType() string { +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 *AWSCognitoUserPool_StringAttributeConstraints) DependsOn() []string { +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 *AWSCognitoUserPool_StringAttributeConstraints) SetDependsOn(dependencies []string) { +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 *AWSCognitoUserPool_StringAttributeConstraints) Metadata() map[string]interface{} { +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 *AWSCognitoUserPool_StringAttributeConstraints) SetMetadata(metadata map[string]interface{}) { +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 *AWSCognitoUserPool_StringAttributeConstraints) DeletionPolicy() policies.DeletionPolicy { +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 *AWSCognitoUserPool_StringAttributeConstraints) SetDeletionPolicy(policy policies.DeletionPolicy) { +func (r *UserPool_StringAttributeConstraints) SetDeletionPolicy(policy policies.DeletionPolicy) { r._deletionPolicy = policy } diff --git a/cloudformation/resources/aws-cognito-userpool_userpooladdons.go b/cloudformation/cognito/aws-cognito-userpool_userpooladdons.go similarity index 72% rename from cloudformation/resources/aws-cognito-userpool_userpooladdons.go rename to cloudformation/cognito/aws-cognito-userpool_userpooladdons.go index 4a3c30bf3b..43b510909b 100644 --- a/cloudformation/resources/aws-cognito-userpool_userpooladdons.go +++ b/cloudformation/cognito/aws-cognito-userpool_userpooladdons.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_UserPoolAddOns AWS CloudFormation Resource (AWS::Cognito::UserPool.UserPoolAddOns) +// 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 AWSCognitoUserPool_UserPoolAddOns struct { +type UserPool_UserPoolAddOns struct { // AdvancedSecurityMode AWS CloudFormation Property // Required: false @@ -22,42 +24,42 @@ type AWSCognitoUserPool_UserPoolAddOns struct { } // AWSCloudFormationType returns the AWS CloudFormation resource type -func (r *AWSCognitoUserPool_UserPoolAddOns) AWSCloudFormationType() string { +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 *AWSCognitoUserPool_UserPoolAddOns) DependsOn() []string { +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 *AWSCognitoUserPool_UserPoolAddOns) SetDependsOn(dependencies []string) { +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 *AWSCognitoUserPool_UserPoolAddOns) Metadata() map[string]interface{} { +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 *AWSCognitoUserPool_UserPoolAddOns) SetMetadata(metadata map[string]interface{}) { +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 *AWSCognitoUserPool_UserPoolAddOns) DeletionPolicy() policies.DeletionPolicy { +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 *AWSCognitoUserPool_UserPoolAddOns) SetDeletionPolicy(policy policies.DeletionPolicy) { +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/resources/aws-cognito-userpooldomain_customdomainconfigtype.go b/cloudformation/cognito/aws-cognito-userpooldomain_customdomainconfigtype.go similarity index 69% rename from cloudformation/resources/aws-cognito-userpooldomain_customdomainconfigtype.go rename to cloudformation/cognito/aws-cognito-userpooldomain_customdomainconfigtype.go index 3f96164e50..2e4f966f8c 100644 --- a/cloudformation/resources/aws-cognito-userpooldomain_customdomainconfigtype.go +++ b/cloudformation/cognito/aws-cognito-userpooldomain_customdomainconfigtype.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" +) -// AWSCognitoUserPoolDomain_CustomDomainConfigType AWS CloudFormation Resource (AWS::Cognito::UserPoolDomain.CustomDomainConfigType) +// 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 AWSCognitoUserPoolDomain_CustomDomainConfigType struct { +type UserPoolDomain_CustomDomainConfigType struct { // CertificateArn AWS CloudFormation Property // Required: false @@ -22,42 +24,42 @@ type AWSCognitoUserPoolDomain_CustomDomainConfigType struct { } // AWSCloudFormationType returns the AWS CloudFormation resource type -func (r *AWSCognitoUserPoolDomain_CustomDomainConfigType) AWSCloudFormationType() string { +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 *AWSCognitoUserPoolDomain_CustomDomainConfigType) DependsOn() []string { +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 *AWSCognitoUserPoolDomain_CustomDomainConfigType) SetDependsOn(dependencies []string) { +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 *AWSCognitoUserPoolDomain_CustomDomainConfigType) Metadata() map[string]interface{} { +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 *AWSCognitoUserPoolDomain_CustomDomainConfigType) SetMetadata(metadata map[string]interface{}) { +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 *AWSCognitoUserPoolDomain_CustomDomainConfigType) DeletionPolicy() policies.DeletionPolicy { +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 *AWSCognitoUserPoolDomain_CustomDomainConfigType) SetDeletionPolicy(policy policies.DeletionPolicy) { +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/resources/aws-cognito-userpoolresourceserver_resourceserverscopetype.go b/cloudformation/cognito/aws-cognito-userpoolresourceserver_resourceserverscopetype.go similarity index 70% rename from cloudformation/resources/aws-cognito-userpoolresourceserver_resourceserverscopetype.go rename to cloudformation/cognito/aws-cognito-userpoolresourceserver_resourceserverscopetype.go index 149dca45c4..d0a7a4963c 100644 --- a/cloudformation/resources/aws-cognito-userpoolresourceserver_resourceserverscopetype.go +++ b/cloudformation/cognito/aws-cognito-userpoolresourceserver_resourceserverscopetype.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" +) -// AWSCognitoUserPoolResourceServer_ResourceServerScopeType AWS CloudFormation Resource (AWS::Cognito::UserPoolResourceServer.ResourceServerScopeType) +// 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 AWSCognitoUserPoolResourceServer_ResourceServerScopeType struct { +type UserPoolResourceServer_ResourceServerScopeType struct { // ScopeDescription AWS CloudFormation Property // Required: true @@ -27,42 +29,42 @@ type AWSCognitoUserPoolResourceServer_ResourceServerScopeType struct { } // AWSCloudFormationType returns the AWS CloudFormation resource type -func (r *AWSCognitoUserPoolResourceServer_ResourceServerScopeType) AWSCloudFormationType() string { +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 *AWSCognitoUserPoolResourceServer_ResourceServerScopeType) DependsOn() []string { +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 *AWSCognitoUserPoolResourceServer_ResourceServerScopeType) SetDependsOn(dependencies []string) { +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 *AWSCognitoUserPoolResourceServer_ResourceServerScopeType) Metadata() map[string]interface{} { +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 *AWSCognitoUserPoolResourceServer_ResourceServerScopeType) SetMetadata(metadata map[string]interface{}) { +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 *AWSCognitoUserPoolResourceServer_ResourceServerScopeType) DeletionPolicy() policies.DeletionPolicy { +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 *AWSCognitoUserPoolResourceServer_ResourceServerScopeType) SetDeletionPolicy(policy policies.DeletionPolicy) { +func (r *UserPoolResourceServer_ResourceServerScopeType) SetDeletionPolicy(policy policies.DeletionPolicy) { r._deletionPolicy = policy } diff --git a/cloudformation/resources/aws-cognito-userpoolriskconfigurationattachment.go b/cloudformation/cognito/aws-cognito-userpoolriskconfigurationattachment.go similarity index 72% rename from cloudformation/resources/aws-cognito-userpoolriskconfigurationattachment.go rename to cloudformation/cognito/aws-cognito-userpoolriskconfigurationattachment.go index aa0d62bcd3..ff04dbb7be 100644 --- a/cloudformation/resources/aws-cognito-userpoolriskconfigurationattachment.go +++ b/cloudformation/cognito/aws-cognito-userpoolriskconfigurationattachment.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" ) -// AWSCognitoUserPoolRiskConfigurationAttachment AWS CloudFormation Resource (AWS::Cognito::UserPoolRiskConfigurationAttachment) +// UserPoolRiskConfigurationAttachment AWS CloudFormation Resource (AWS::Cognito::UserPoolRiskConfigurationAttachment) // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-cognito-userpoolriskconfigurationattachment.html -type AWSCognitoUserPoolRiskConfigurationAttachment struct { +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 *AWSCognitoUserPoolRiskConfigurationAttachment_AccountTakeoverRiskConfigurationType `json:"AccountTakeoverRiskConfiguration,omitempty"` + AccountTakeoverRiskConfiguration *UserPoolRiskConfigurationAttachment_AccountTakeoverRiskConfigurationType `json:"AccountTakeoverRiskConfiguration,omitempty"` // ClientId AWS CloudFormation Property // Required: true @@ -24,12 +25,12 @@ type AWSCognitoUserPoolRiskConfigurationAttachment struct { // 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"` + 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 *AWSCognitoUserPoolRiskConfigurationAttachment_RiskExceptionConfigurationType `json:"RiskExceptionConfiguration,omitempty"` + RiskExceptionConfiguration *UserPoolRiskConfigurationAttachment_RiskExceptionConfigurationType `json:"RiskExceptionConfiguration,omitempty"` // UserPoolId AWS CloudFormation Property // Required: true @@ -47,50 +48,50 @@ type AWSCognitoUserPoolRiskConfigurationAttachment struct { } // AWSCloudFormationType returns the AWS CloudFormation resource type -func (r *AWSCognitoUserPoolRiskConfigurationAttachment) AWSCloudFormationType() string { +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 *AWSCognitoUserPoolRiskConfigurationAttachment) DependsOn() []string { +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 *AWSCognitoUserPoolRiskConfigurationAttachment) SetDependsOn(dependencies []string) { +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 *AWSCognitoUserPoolRiskConfigurationAttachment) Metadata() map[string]interface{} { +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 *AWSCognitoUserPoolRiskConfigurationAttachment) SetMetadata(metadata map[string]interface{}) { +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 *AWSCognitoUserPoolRiskConfigurationAttachment) DeletionPolicy() policies.DeletionPolicy { +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 *AWSCognitoUserPoolRiskConfigurationAttachment) SetDeletionPolicy(policy policies.DeletionPolicy) { +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 AWSCognitoUserPoolRiskConfigurationAttachment) MarshalJSON() ([]byte, error) { - type Properties AWSCognitoUserPoolRiskConfigurationAttachment +func (r UserPoolRiskConfigurationAttachment) MarshalJSON() ([]byte, error) { + type Properties UserPoolRiskConfigurationAttachment return json.Marshal(&struct { Type string Properties Properties @@ -108,8 +109,8 @@ func (r AWSCognitoUserPoolRiskConfigurationAttachment) 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 *AWSCognitoUserPoolRiskConfigurationAttachment) UnmarshalJSON(b []byte) error { - type Properties AWSCognitoUserPoolRiskConfigurationAttachment +func (r *UserPoolRiskConfigurationAttachment) UnmarshalJSON(b []byte) error { + type Properties UserPoolRiskConfigurationAttachment res := &struct { Type string Properties *Properties @@ -128,7 +129,7 @@ func (r *AWSCognitoUserPoolRiskConfigurationAttachment) UnmarshalJSON(b []byte) // If the resource has no Properties set, it could be nil if res.Properties != nil { - *r = AWSCognitoUserPoolRiskConfigurationAttachment(*res.Properties) + *r = UserPoolRiskConfigurationAttachment(*res.Properties) } if res.DependsOn != nil { r._dependsOn = res.DependsOn diff --git a/cloudformation/resources/aws-cognito-userpoolriskconfigurationattachment_accounttakeoveractionstype.go b/cloudformation/cognito/aws-cognito-userpoolriskconfigurationattachment_accounttakeoveractionstype.go similarity index 64% rename from cloudformation/resources/aws-cognito-userpoolriskconfigurationattachment_accounttakeoveractionstype.go rename to cloudformation/cognito/aws-cognito-userpoolriskconfigurationattachment_accounttakeoveractionstype.go index edf68071a3..9f8b547e7e 100644 --- a/cloudformation/resources/aws-cognito-userpoolriskconfigurationattachment_accounttakeoveractionstype.go +++ b/cloudformation/cognito/aws-cognito-userpoolriskconfigurationattachment_accounttakeoveractionstype.go @@ -1,25 +1,27 @@ -package resources +package cognito -import "github.com/awslabs/goformation/v2/cloudformation/policies" +import ( + "github.com/awslabs/goformation/v3/cloudformation/policies" +) -// AWSCognitoUserPoolRiskConfigurationAttachment_AccountTakeoverActionsType AWS CloudFormation Resource (AWS::Cognito::UserPoolRiskConfigurationAttachment.AccountTakeoverActionsType) +// 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 AWSCognitoUserPoolRiskConfigurationAttachment_AccountTakeoverActionsType struct { +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 *AWSCognitoUserPoolRiskConfigurationAttachment_AccountTakeoverActionType `json:"HighAction,omitempty"` + 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 *AWSCognitoUserPoolRiskConfigurationAttachment_AccountTakeoverActionType `json:"LowAction,omitempty"` + 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 *AWSCognitoUserPoolRiskConfigurationAttachment_AccountTakeoverActionType `json:"MediumAction,omitempty"` + MediumAction *UserPoolRiskConfigurationAttachment_AccountTakeoverActionType `json:"MediumAction,omitempty"` // _deletionPolicy represents a CloudFormation DeletionPolicy _deletionPolicy policies.DeletionPolicy @@ -32,42 +34,42 @@ type AWSCognitoUserPoolRiskConfigurationAttachment_AccountTakeoverActionsType st } // AWSCloudFormationType returns the AWS CloudFormation resource type -func (r *AWSCognitoUserPoolRiskConfigurationAttachment_AccountTakeoverActionsType) AWSCloudFormationType() string { +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 *AWSCognitoUserPoolRiskConfigurationAttachment_AccountTakeoverActionsType) DependsOn() []string { +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 *AWSCognitoUserPoolRiskConfigurationAttachment_AccountTakeoverActionsType) SetDependsOn(dependencies []string) { +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 *AWSCognitoUserPoolRiskConfigurationAttachment_AccountTakeoverActionsType) Metadata() map[string]interface{} { +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 *AWSCognitoUserPoolRiskConfigurationAttachment_AccountTakeoverActionsType) SetMetadata(metadata map[string]interface{}) { +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 *AWSCognitoUserPoolRiskConfigurationAttachment_AccountTakeoverActionsType) DeletionPolicy() policies.DeletionPolicy { +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 *AWSCognitoUserPoolRiskConfigurationAttachment_AccountTakeoverActionsType) SetDeletionPolicy(policy policies.DeletionPolicy) { +func (r *UserPoolRiskConfigurationAttachment_AccountTakeoverActionsType) SetDeletionPolicy(policy policies.DeletionPolicy) { r._deletionPolicy = policy } diff --git a/cloudformation/resources/aws-cognito-userpoolriskconfigurationattachment_accounttakeoveractiontype.go b/cloudformation/cognito/aws-cognito-userpoolriskconfigurationattachment_accounttakeoveractiontype.go similarity index 68% rename from cloudformation/resources/aws-cognito-userpoolriskconfigurationattachment_accounttakeoveractiontype.go rename to cloudformation/cognito/aws-cognito-userpoolriskconfigurationattachment_accounttakeoveractiontype.go index df0ed0b2e5..96b827bfb3 100644 --- a/cloudformation/resources/aws-cognito-userpoolriskconfigurationattachment_accounttakeoveractiontype.go +++ b/cloudformation/cognito/aws-cognito-userpoolriskconfigurationattachment_accounttakeoveractiontype.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" +) -// AWSCognitoUserPoolRiskConfigurationAttachment_AccountTakeoverActionType AWS CloudFormation Resource (AWS::Cognito::UserPoolRiskConfigurationAttachment.AccountTakeoverActionType) +// 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 AWSCognitoUserPoolRiskConfigurationAttachment_AccountTakeoverActionType struct { +type UserPoolRiskConfigurationAttachment_AccountTakeoverActionType struct { // EventAction AWS CloudFormation Property // Required: true @@ -27,42 +29,42 @@ type AWSCognitoUserPoolRiskConfigurationAttachment_AccountTakeoverActionType str } // AWSCloudFormationType returns the AWS CloudFormation resource type -func (r *AWSCognitoUserPoolRiskConfigurationAttachment_AccountTakeoverActionType) AWSCloudFormationType() string { +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 *AWSCognitoUserPoolRiskConfigurationAttachment_AccountTakeoverActionType) DependsOn() []string { +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 *AWSCognitoUserPoolRiskConfigurationAttachment_AccountTakeoverActionType) SetDependsOn(dependencies []string) { +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 *AWSCognitoUserPoolRiskConfigurationAttachment_AccountTakeoverActionType) Metadata() map[string]interface{} { +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 *AWSCognitoUserPoolRiskConfigurationAttachment_AccountTakeoverActionType) SetMetadata(metadata map[string]interface{}) { +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 *AWSCognitoUserPoolRiskConfigurationAttachment_AccountTakeoverActionType) DeletionPolicy() policies.DeletionPolicy { +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 *AWSCognitoUserPoolRiskConfigurationAttachment_AccountTakeoverActionType) SetDeletionPolicy(policy policies.DeletionPolicy) { +func (r *UserPoolRiskConfigurationAttachment_AccountTakeoverActionType) SetDeletionPolicy(policy policies.DeletionPolicy) { r._deletionPolicy = policy } diff --git a/cloudformation/resources/aws-cognito-userpoolriskconfigurationattachment_accounttakeoverriskconfigurationtype.go b/cloudformation/cognito/aws-cognito-userpoolriskconfigurationattachment_accounttakeoverriskconfigurationtype.go similarity index 62% rename from cloudformation/resources/aws-cognito-userpoolriskconfigurationattachment_accounttakeoverriskconfigurationtype.go rename to cloudformation/cognito/aws-cognito-userpoolriskconfigurationattachment_accounttakeoverriskconfigurationtype.go index deb36a07a1..b261f000ea 100644 --- a/cloudformation/resources/aws-cognito-userpoolriskconfigurationattachment_accounttakeoverriskconfigurationtype.go +++ b/cloudformation/cognito/aws-cognito-userpoolriskconfigurationattachment_accounttakeoverriskconfigurationtype.go @@ -1,20 +1,22 @@ -package resources +package cognito -import "github.com/awslabs/goformation/v2/cloudformation/policies" +import ( + "github.com/awslabs/goformation/v3/cloudformation/policies" +) -// AWSCognitoUserPoolRiskConfigurationAttachment_AccountTakeoverRiskConfigurationType AWS CloudFormation Resource (AWS::Cognito::UserPoolRiskConfigurationAttachment.AccountTakeoverRiskConfigurationType) +// 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 AWSCognitoUserPoolRiskConfigurationAttachment_AccountTakeoverRiskConfigurationType struct { +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 *AWSCognitoUserPoolRiskConfigurationAttachment_AccountTakeoverActionsType `json:"Actions,omitempty"` + 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 *AWSCognitoUserPoolRiskConfigurationAttachment_NotifyConfigurationType `json:"NotifyConfiguration,omitempty"` + NotifyConfiguration *UserPoolRiskConfigurationAttachment_NotifyConfigurationType `json:"NotifyConfiguration,omitempty"` // _deletionPolicy represents a CloudFormation DeletionPolicy _deletionPolicy policies.DeletionPolicy @@ -27,42 +29,42 @@ type AWSCognitoUserPoolRiskConfigurationAttachment_AccountTakeoverRiskConfigurat } // AWSCloudFormationType returns the AWS CloudFormation resource type -func (r *AWSCognitoUserPoolRiskConfigurationAttachment_AccountTakeoverRiskConfigurationType) AWSCloudFormationType() string { +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 *AWSCognitoUserPoolRiskConfigurationAttachment_AccountTakeoverRiskConfigurationType) DependsOn() []string { +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 *AWSCognitoUserPoolRiskConfigurationAttachment_AccountTakeoverRiskConfigurationType) SetDependsOn(dependencies []string) { +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 *AWSCognitoUserPoolRiskConfigurationAttachment_AccountTakeoverRiskConfigurationType) Metadata() map[string]interface{} { +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 *AWSCognitoUserPoolRiskConfigurationAttachment_AccountTakeoverRiskConfigurationType) SetMetadata(metadata map[string]interface{}) { +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 *AWSCognitoUserPoolRiskConfigurationAttachment_AccountTakeoverRiskConfigurationType) DeletionPolicy() policies.DeletionPolicy { +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 *AWSCognitoUserPoolRiskConfigurationAttachment_AccountTakeoverRiskConfigurationType) SetDeletionPolicy(policy policies.DeletionPolicy) { +func (r *UserPoolRiskConfigurationAttachment_AccountTakeoverRiskConfigurationType) SetDeletionPolicy(policy policies.DeletionPolicy) { r._deletionPolicy = policy } diff --git a/cloudformation/resources/aws-cognito-userpoolriskconfigurationattachment_compromisedcredentialsactionstype.go b/cloudformation/cognito/aws-cognito-userpoolriskconfigurationattachment_compromisedcredentialsactionstype.go similarity index 63% rename from cloudformation/resources/aws-cognito-userpoolriskconfigurationattachment_compromisedcredentialsactionstype.go rename to cloudformation/cognito/aws-cognito-userpoolriskconfigurationattachment_compromisedcredentialsactionstype.go index 3faf785cc6..9990f94909 100644 --- a/cloudformation/resources/aws-cognito-userpoolriskconfigurationattachment_compromisedcredentialsactionstype.go +++ b/cloudformation/cognito/aws-cognito-userpoolriskconfigurationattachment_compromisedcredentialsactionstype.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" +) -// AWSCognitoUserPoolRiskConfigurationAttachment_CompromisedCredentialsActionsType AWS CloudFormation Resource (AWS::Cognito::UserPoolRiskConfigurationAttachment.CompromisedCredentialsActionsType) +// 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 AWSCognitoUserPoolRiskConfigurationAttachment_CompromisedCredentialsActionsType struct { +type UserPoolRiskConfigurationAttachment_CompromisedCredentialsActionsType struct { // EventAction AWS CloudFormation Property // Required: true @@ -22,42 +24,42 @@ type AWSCognitoUserPoolRiskConfigurationAttachment_CompromisedCredentialsActions } // AWSCloudFormationType returns the AWS CloudFormation resource type -func (r *AWSCognitoUserPoolRiskConfigurationAttachment_CompromisedCredentialsActionsType) AWSCloudFormationType() string { +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 *AWSCognitoUserPoolRiskConfigurationAttachment_CompromisedCredentialsActionsType) DependsOn() []string { +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 *AWSCognitoUserPoolRiskConfigurationAttachment_CompromisedCredentialsActionsType) SetDependsOn(dependencies []string) { +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 *AWSCognitoUserPoolRiskConfigurationAttachment_CompromisedCredentialsActionsType) Metadata() map[string]interface{} { +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 *AWSCognitoUserPoolRiskConfigurationAttachment_CompromisedCredentialsActionsType) SetMetadata(metadata map[string]interface{}) { +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 *AWSCognitoUserPoolRiskConfigurationAttachment_CompromisedCredentialsActionsType) DeletionPolicy() policies.DeletionPolicy { +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 *AWSCognitoUserPoolRiskConfigurationAttachment_CompromisedCredentialsActionsType) SetDeletionPolicy(policy policies.DeletionPolicy) { +func (r *UserPoolRiskConfigurationAttachment_CompromisedCredentialsActionsType) SetDeletionPolicy(policy policies.DeletionPolicy) { r._deletionPolicy = policy } diff --git a/cloudformation/resources/aws-cognito-userpoolriskconfigurationattachment_compromisedcredentialsriskconfigurationtype.go b/cloudformation/cognito/aws-cognito-userpoolriskconfigurationattachment_compromisedcredentialsriskconfigurationtype.go similarity index 63% rename from cloudformation/resources/aws-cognito-userpoolriskconfigurationattachment_compromisedcredentialsriskconfigurationtype.go rename to cloudformation/cognito/aws-cognito-userpoolriskconfigurationattachment_compromisedcredentialsriskconfigurationtype.go index 3bc775d031..543d7c02c6 100644 --- a/cloudformation/resources/aws-cognito-userpoolriskconfigurationattachment_compromisedcredentialsriskconfigurationtype.go +++ b/cloudformation/cognito/aws-cognito-userpoolriskconfigurationattachment_compromisedcredentialsriskconfigurationtype.go @@ -1,15 +1,17 @@ -package resources +package cognito -import "github.com/awslabs/goformation/v2/cloudformation/policies" +import ( + "github.com/awslabs/goformation/v3/cloudformation/policies" +) -// AWSCognitoUserPoolRiskConfigurationAttachment_CompromisedCredentialsRiskConfigurationType AWS CloudFormation Resource (AWS::Cognito::UserPoolRiskConfigurationAttachment.CompromisedCredentialsRiskConfigurationType) +// 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 AWSCognitoUserPoolRiskConfigurationAttachment_CompromisedCredentialsRiskConfigurationType struct { +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 *AWSCognitoUserPoolRiskConfigurationAttachment_CompromisedCredentialsActionsType `json:"Actions,omitempty"` + Actions *UserPoolRiskConfigurationAttachment_CompromisedCredentialsActionsType `json:"Actions,omitempty"` // EventFilter AWS CloudFormation Property // Required: false @@ -27,42 +29,42 @@ type AWSCognitoUserPoolRiskConfigurationAttachment_CompromisedCredentialsRiskCon } // AWSCloudFormationType returns the AWS CloudFormation resource type -func (r *AWSCognitoUserPoolRiskConfigurationAttachment_CompromisedCredentialsRiskConfigurationType) AWSCloudFormationType() string { +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 *AWSCognitoUserPoolRiskConfigurationAttachment_CompromisedCredentialsRiskConfigurationType) DependsOn() []string { +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 *AWSCognitoUserPoolRiskConfigurationAttachment_CompromisedCredentialsRiskConfigurationType) SetDependsOn(dependencies []string) { +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 *AWSCognitoUserPoolRiskConfigurationAttachment_CompromisedCredentialsRiskConfigurationType) Metadata() map[string]interface{} { +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 *AWSCognitoUserPoolRiskConfigurationAttachment_CompromisedCredentialsRiskConfigurationType) SetMetadata(metadata map[string]interface{}) { +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 *AWSCognitoUserPoolRiskConfigurationAttachment_CompromisedCredentialsRiskConfigurationType) DeletionPolicy() policies.DeletionPolicy { +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 *AWSCognitoUserPoolRiskConfigurationAttachment_CompromisedCredentialsRiskConfigurationType) SetDeletionPolicy(policy policies.DeletionPolicy) { +func (r *UserPoolRiskConfigurationAttachment_CompromisedCredentialsRiskConfigurationType) SetDeletionPolicy(policy policies.DeletionPolicy) { r._deletionPolicy = policy } diff --git a/cloudformation/resources/aws-cognito-userpoolriskconfigurationattachment_notifyconfigurationtype.go b/cloudformation/cognito/aws-cognito-userpoolriskconfigurationattachment_notifyconfigurationtype.go similarity index 71% rename from cloudformation/resources/aws-cognito-userpoolriskconfigurationattachment_notifyconfigurationtype.go rename to cloudformation/cognito/aws-cognito-userpoolriskconfigurationattachment_notifyconfigurationtype.go index bb58b767e7..0af2c240c8 100644 --- a/cloudformation/resources/aws-cognito-userpoolriskconfigurationattachment_notifyconfigurationtype.go +++ b/cloudformation/cognito/aws-cognito-userpoolriskconfigurationattachment_notifyconfigurationtype.go @@ -1,15 +1,17 @@ -package resources +package cognito -import "github.com/awslabs/goformation/v2/cloudformation/policies" +import ( + "github.com/awslabs/goformation/v3/cloudformation/policies" +) -// AWSCognitoUserPoolRiskConfigurationAttachment_NotifyConfigurationType AWS CloudFormation Resource (AWS::Cognito::UserPoolRiskConfigurationAttachment.NotifyConfigurationType) +// 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 AWSCognitoUserPoolRiskConfigurationAttachment_NotifyConfigurationType struct { +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 *AWSCognitoUserPoolRiskConfigurationAttachment_NotifyEmailType `json:"BlockEmail,omitempty"` + BlockEmail *UserPoolRiskConfigurationAttachment_NotifyEmailType `json:"BlockEmail,omitempty"` // From AWS CloudFormation Property // Required: false @@ -19,12 +21,12 @@ type AWSCognitoUserPoolRiskConfigurationAttachment_NotifyConfigurationType struc // 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"` + 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 *AWSCognitoUserPoolRiskConfigurationAttachment_NotifyEmailType `json:"NoActionEmail,omitempty"` + NoActionEmail *UserPoolRiskConfigurationAttachment_NotifyEmailType `json:"NoActionEmail,omitempty"` // ReplyTo AWS CloudFormation Property // Required: false @@ -47,42 +49,42 @@ type AWSCognitoUserPoolRiskConfigurationAttachment_NotifyConfigurationType struc } // AWSCloudFormationType returns the AWS CloudFormation resource type -func (r *AWSCognitoUserPoolRiskConfigurationAttachment_NotifyConfigurationType) AWSCloudFormationType() string { +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 *AWSCognitoUserPoolRiskConfigurationAttachment_NotifyConfigurationType) DependsOn() []string { +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 *AWSCognitoUserPoolRiskConfigurationAttachment_NotifyConfigurationType) SetDependsOn(dependencies []string) { +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 *AWSCognitoUserPoolRiskConfigurationAttachment_NotifyConfigurationType) Metadata() map[string]interface{} { +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 *AWSCognitoUserPoolRiskConfigurationAttachment_NotifyConfigurationType) SetMetadata(metadata map[string]interface{}) { +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 *AWSCognitoUserPoolRiskConfigurationAttachment_NotifyConfigurationType) DeletionPolicy() policies.DeletionPolicy { +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 *AWSCognitoUserPoolRiskConfigurationAttachment_NotifyConfigurationType) SetDeletionPolicy(policy policies.DeletionPolicy) { +func (r *UserPoolRiskConfigurationAttachment_NotifyConfigurationType) SetDeletionPolicy(policy policies.DeletionPolicy) { r._deletionPolicy = policy } diff --git a/cloudformation/resources/aws-cognito-userpoolriskconfigurationattachment_notifyemailtype.go b/cloudformation/cognito/aws-cognito-userpoolriskconfigurationattachment_notifyemailtype.go similarity index 72% rename from cloudformation/resources/aws-cognito-userpoolriskconfigurationattachment_notifyemailtype.go rename to cloudformation/cognito/aws-cognito-userpoolriskconfigurationattachment_notifyemailtype.go index c301c084d9..749b17b629 100644 --- a/cloudformation/resources/aws-cognito-userpoolriskconfigurationattachment_notifyemailtype.go +++ b/cloudformation/cognito/aws-cognito-userpoolriskconfigurationattachment_notifyemailtype.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" +) -// AWSCognitoUserPoolRiskConfigurationAttachment_NotifyEmailType AWS CloudFormation Resource (AWS::Cognito::UserPoolRiskConfigurationAttachment.NotifyEmailType) +// 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 AWSCognitoUserPoolRiskConfigurationAttachment_NotifyEmailType struct { +type UserPoolRiskConfigurationAttachment_NotifyEmailType struct { // HtmlBody AWS CloudFormation Property // Required: false @@ -32,42 +34,42 @@ type AWSCognitoUserPoolRiskConfigurationAttachment_NotifyEmailType struct { } // AWSCloudFormationType returns the AWS CloudFormation resource type -func (r *AWSCognitoUserPoolRiskConfigurationAttachment_NotifyEmailType) AWSCloudFormationType() string { +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 *AWSCognitoUserPoolRiskConfigurationAttachment_NotifyEmailType) DependsOn() []string { +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 *AWSCognitoUserPoolRiskConfigurationAttachment_NotifyEmailType) SetDependsOn(dependencies []string) { +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 *AWSCognitoUserPoolRiskConfigurationAttachment_NotifyEmailType) Metadata() map[string]interface{} { +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 *AWSCognitoUserPoolRiskConfigurationAttachment_NotifyEmailType) SetMetadata(metadata map[string]interface{}) { +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 *AWSCognitoUserPoolRiskConfigurationAttachment_NotifyEmailType) DeletionPolicy() policies.DeletionPolicy { +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 *AWSCognitoUserPoolRiskConfigurationAttachment_NotifyEmailType) SetDeletionPolicy(policy policies.DeletionPolicy) { +func (r *UserPoolRiskConfigurationAttachment_NotifyEmailType) SetDeletionPolicy(policy policies.DeletionPolicy) { r._deletionPolicy = policy } diff --git a/cloudformation/resources/aws-cognito-userpoolriskconfigurationattachment_riskexceptionconfigurationtype.go b/cloudformation/cognito/aws-cognito-userpoolriskconfigurationattachment_riskexceptionconfigurationtype.go similarity index 68% rename from cloudformation/resources/aws-cognito-userpoolriskconfigurationattachment_riskexceptionconfigurationtype.go rename to cloudformation/cognito/aws-cognito-userpoolriskconfigurationattachment_riskexceptionconfigurationtype.go index 137c1fde51..4ccbcceed5 100644 --- a/cloudformation/resources/aws-cognito-userpoolriskconfigurationattachment_riskexceptionconfigurationtype.go +++ b/cloudformation/cognito/aws-cognito-userpoolriskconfigurationattachment_riskexceptionconfigurationtype.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" +) -// AWSCognitoUserPoolRiskConfigurationAttachment_RiskExceptionConfigurationType AWS CloudFormation Resource (AWS::Cognito::UserPoolRiskConfigurationAttachment.RiskExceptionConfigurationType) +// 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 AWSCognitoUserPoolRiskConfigurationAttachment_RiskExceptionConfigurationType struct { +type UserPoolRiskConfigurationAttachment_RiskExceptionConfigurationType struct { // BlockedIPRangeList AWS CloudFormation Property // Required: false @@ -27,42 +29,42 @@ type AWSCognitoUserPoolRiskConfigurationAttachment_RiskExceptionConfigurationTyp } // AWSCloudFormationType returns the AWS CloudFormation resource type -func (r *AWSCognitoUserPoolRiskConfigurationAttachment_RiskExceptionConfigurationType) AWSCloudFormationType() string { +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 *AWSCognitoUserPoolRiskConfigurationAttachment_RiskExceptionConfigurationType) DependsOn() []string { +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 *AWSCognitoUserPoolRiskConfigurationAttachment_RiskExceptionConfigurationType) SetDependsOn(dependencies []string) { +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 *AWSCognitoUserPoolRiskConfigurationAttachment_RiskExceptionConfigurationType) Metadata() map[string]interface{} { +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 *AWSCognitoUserPoolRiskConfigurationAttachment_RiskExceptionConfigurationType) SetMetadata(metadata map[string]interface{}) { +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 *AWSCognitoUserPoolRiskConfigurationAttachment_RiskExceptionConfigurationType) DeletionPolicy() policies.DeletionPolicy { +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 *AWSCognitoUserPoolRiskConfigurationAttachment_RiskExceptionConfigurationType) SetDeletionPolicy(policy policies.DeletionPolicy) { +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/resources/aws-cognito-userpooluser_attributetype.go b/cloudformation/cognito/aws-cognito-userpooluser_attributetype.go similarity index 73% rename from cloudformation/resources/aws-cognito-userpooluser_attributetype.go rename to cloudformation/cognito/aws-cognito-userpooluser_attributetype.go index 453ef21338..1efffb532c 100644 --- a/cloudformation/resources/aws-cognito-userpooluser_attributetype.go +++ b/cloudformation/cognito/aws-cognito-userpooluser_attributetype.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" +) -// AWSCognitoUserPoolUser_AttributeType AWS CloudFormation Resource (AWS::Cognito::UserPoolUser.AttributeType) +// 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 AWSCognitoUserPoolUser_AttributeType struct { +type UserPoolUser_AttributeType struct { // Name AWS CloudFormation Property // Required: false @@ -27,42 +29,42 @@ type AWSCognitoUserPoolUser_AttributeType struct { } // AWSCloudFormationType returns the AWS CloudFormation resource type -func (r *AWSCognitoUserPoolUser_AttributeType) AWSCloudFormationType() string { +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 *AWSCognitoUserPoolUser_AttributeType) DependsOn() []string { +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 *AWSCognitoUserPoolUser_AttributeType) SetDependsOn(dependencies []string) { +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 *AWSCognitoUserPoolUser_AttributeType) Metadata() map[string]interface{} { +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 *AWSCognitoUserPoolUser_AttributeType) SetMetadata(metadata map[string]interface{}) { +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 *AWSCognitoUserPoolUser_AttributeType) DeletionPolicy() policies.DeletionPolicy { +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 *AWSCognitoUserPoolUser_AttributeType) SetDeletionPolicy(policy policies.DeletionPolicy) { +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/resources/aws-config-configurationaggregator_accountaggregationsource.go b/cloudformation/config/aws-config-configurationaggregator_accountaggregationsource.go similarity index 72% rename from cloudformation/resources/aws-config-configurationaggregator_accountaggregationsource.go rename to cloudformation/config/aws-config-configurationaggregator_accountaggregationsource.go index 183648e955..aec9b7e142 100644 --- a/cloudformation/resources/aws-config-configurationaggregator_accountaggregationsource.go +++ b/cloudformation/config/aws-config-configurationaggregator_accountaggregationsource.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" +) -// AWSConfigConfigurationAggregator_AccountAggregationSource AWS CloudFormation Resource (AWS::Config::ConfigurationAggregator.AccountAggregationSource) +// 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 AWSConfigConfigurationAggregator_AccountAggregationSource struct { +type ConfigurationAggregator_AccountAggregationSource struct { // AccountIds AWS CloudFormation Property // Required: true @@ -32,42 +34,42 @@ type AWSConfigConfigurationAggregator_AccountAggregationSource struct { } // AWSCloudFormationType returns the AWS CloudFormation resource type -func (r *AWSConfigConfigurationAggregator_AccountAggregationSource) AWSCloudFormationType() string { +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 *AWSConfigConfigurationAggregator_AccountAggregationSource) DependsOn() []string { +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 *AWSConfigConfigurationAggregator_AccountAggregationSource) SetDependsOn(dependencies []string) { +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 *AWSConfigConfigurationAggregator_AccountAggregationSource) Metadata() map[string]interface{} { +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 *AWSConfigConfigurationAggregator_AccountAggregationSource) SetMetadata(metadata map[string]interface{}) { +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 *AWSConfigConfigurationAggregator_AccountAggregationSource) DeletionPolicy() policies.DeletionPolicy { +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 *AWSConfigConfigurationAggregator_AccountAggregationSource) SetDeletionPolicy(policy policies.DeletionPolicy) { +func (r *ConfigurationAggregator_AccountAggregationSource) SetDeletionPolicy(policy policies.DeletionPolicy) { r._deletionPolicy = policy } diff --git a/cloudformation/resources/aws-config-configurationaggregator_organizationaggregationsource.go b/cloudformation/config/aws-config-configurationaggregator_organizationaggregationsource.go similarity index 72% rename from cloudformation/resources/aws-config-configurationaggregator_organizationaggregationsource.go rename to cloudformation/config/aws-config-configurationaggregator_organizationaggregationsource.go index 27a2851c1f..4a14a3c500 100644 --- a/cloudformation/resources/aws-config-configurationaggregator_organizationaggregationsource.go +++ b/cloudformation/config/aws-config-configurationaggregator_organizationaggregationsource.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" +) -// AWSConfigConfigurationAggregator_OrganizationAggregationSource AWS CloudFormation Resource (AWS::Config::ConfigurationAggregator.OrganizationAggregationSource) +// 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 AWSConfigConfigurationAggregator_OrganizationAggregationSource struct { +type ConfigurationAggregator_OrganizationAggregationSource struct { // AllAwsRegions AWS CloudFormation Property // Required: false @@ -32,42 +34,42 @@ type AWSConfigConfigurationAggregator_OrganizationAggregationSource struct { } // AWSCloudFormationType returns the AWS CloudFormation resource type -func (r *AWSConfigConfigurationAggregator_OrganizationAggregationSource) AWSCloudFormationType() string { +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 *AWSConfigConfigurationAggregator_OrganizationAggregationSource) DependsOn() []string { +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 *AWSConfigConfigurationAggregator_OrganizationAggregationSource) SetDependsOn(dependencies []string) { +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 *AWSConfigConfigurationAggregator_OrganizationAggregationSource) Metadata() map[string]interface{} { +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 *AWSConfigConfigurationAggregator_OrganizationAggregationSource) SetMetadata(metadata map[string]interface{}) { +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 *AWSConfigConfigurationAggregator_OrganizationAggregationSource) DeletionPolicy() policies.DeletionPolicy { +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 *AWSConfigConfigurationAggregator_OrganizationAggregationSource) SetDeletionPolicy(policy policies.DeletionPolicy) { +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/resources/aws-config-deliverychannel_configsnapshotdeliveryproperties.go b/cloudformation/config/aws-config-deliverychannel_configsnapshotdeliveryproperties.go similarity index 67% rename from cloudformation/resources/aws-config-deliverychannel_configsnapshotdeliveryproperties.go rename to cloudformation/config/aws-config-deliverychannel_configsnapshotdeliveryproperties.go index 62fe68aed5..54ab079aff 100644 --- a/cloudformation/resources/aws-config-deliverychannel_configsnapshotdeliveryproperties.go +++ b/cloudformation/config/aws-config-deliverychannel_configsnapshotdeliveryproperties.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" +) -// AWSConfigDeliveryChannel_ConfigSnapshotDeliveryProperties AWS CloudFormation Resource (AWS::Config::DeliveryChannel.ConfigSnapshotDeliveryProperties) +// 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 AWSConfigDeliveryChannel_ConfigSnapshotDeliveryProperties struct { +type DeliveryChannel_ConfigSnapshotDeliveryProperties struct { // DeliveryFrequency AWS CloudFormation Property // Required: false @@ -22,42 +24,42 @@ type AWSConfigDeliveryChannel_ConfigSnapshotDeliveryProperties struct { } // AWSCloudFormationType returns the AWS CloudFormation resource type -func (r *AWSConfigDeliveryChannel_ConfigSnapshotDeliveryProperties) AWSCloudFormationType() string { +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 *AWSConfigDeliveryChannel_ConfigSnapshotDeliveryProperties) DependsOn() []string { +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 *AWSConfigDeliveryChannel_ConfigSnapshotDeliveryProperties) SetDependsOn(dependencies []string) { +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 *AWSConfigDeliveryChannel_ConfigSnapshotDeliveryProperties) Metadata() map[string]interface{} { +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 *AWSConfigDeliveryChannel_ConfigSnapshotDeliveryProperties) SetMetadata(metadata map[string]interface{}) { +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 *AWSConfigDeliveryChannel_ConfigSnapshotDeliveryProperties) DeletionPolicy() policies.DeletionPolicy { +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 *AWSConfigDeliveryChannel_ConfigSnapshotDeliveryProperties) SetDeletionPolicy(policy policies.DeletionPolicy) { +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/resources/aws-config-remediationconfiguration_executioncontrols.go b/cloudformation/config/aws-config-remediationconfiguration_executioncontrols.go similarity index 65% rename from cloudformation/resources/aws-config-remediationconfiguration_executioncontrols.go rename to cloudformation/config/aws-config-remediationconfiguration_executioncontrols.go index 3074a74a3f..e1efb99ac9 100644 --- a/cloudformation/resources/aws-config-remediationconfiguration_executioncontrols.go +++ b/cloudformation/config/aws-config-remediationconfiguration_executioncontrols.go @@ -1,15 +1,17 @@ -package resources +package config -import "github.com/awslabs/goformation/v2/cloudformation/policies" +import ( + "github.com/awslabs/goformation/v3/cloudformation/policies" +) -// AWSConfigRemediationConfiguration_ExecutionControls AWS CloudFormation Resource (AWS::Config::RemediationConfiguration.ExecutionControls) +// 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 AWSConfigRemediationConfiguration_ExecutionControls struct { +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 *AWSConfigRemediationConfiguration_SsmControls `json:"SsmControls,omitempty"` + SsmControls *RemediationConfiguration_SsmControls `json:"SsmControls,omitempty"` // _deletionPolicy represents a CloudFormation DeletionPolicy _deletionPolicy policies.DeletionPolicy @@ -22,42 +24,42 @@ type AWSConfigRemediationConfiguration_ExecutionControls struct { } // AWSCloudFormationType returns the AWS CloudFormation resource type -func (r *AWSConfigRemediationConfiguration_ExecutionControls) AWSCloudFormationType() string { +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 *AWSConfigRemediationConfiguration_ExecutionControls) DependsOn() []string { +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 *AWSConfigRemediationConfiguration_ExecutionControls) SetDependsOn(dependencies []string) { +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 *AWSConfigRemediationConfiguration_ExecutionControls) Metadata() map[string]interface{} { +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 *AWSConfigRemediationConfiguration_ExecutionControls) SetMetadata(metadata map[string]interface{}) { +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 *AWSConfigRemediationConfiguration_ExecutionControls) DeletionPolicy() policies.DeletionPolicy { +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 *AWSConfigRemediationConfiguration_ExecutionControls) SetDeletionPolicy(policy policies.DeletionPolicy) { +func (r *RemediationConfiguration_ExecutionControls) SetDeletionPolicy(policy policies.DeletionPolicy) { r._deletionPolicy = policy } diff --git a/cloudformation/resources/aws-config-remediationconfiguration_remediationparametervalue.go b/cloudformation/config/aws-config-remediationconfiguration_remediationparametervalue.go similarity index 65% rename from cloudformation/resources/aws-config-remediationconfiguration_remediationparametervalue.go rename to cloudformation/config/aws-config-remediationconfiguration_remediationparametervalue.go index 16a517f97a..d835004af3 100644 --- a/cloudformation/resources/aws-config-remediationconfiguration_remediationparametervalue.go +++ b/cloudformation/config/aws-config-remediationconfiguration_remediationparametervalue.go @@ -1,20 +1,22 @@ -package resources +package config -import "github.com/awslabs/goformation/v2/cloudformation/policies" +import ( + "github.com/awslabs/goformation/v3/cloudformation/policies" +) -// AWSConfigRemediationConfiguration_RemediationParameterValue AWS CloudFormation Resource (AWS::Config::RemediationConfiguration.RemediationParameterValue) +// 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 AWSConfigRemediationConfiguration_RemediationParameterValue struct { +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 *AWSConfigRemediationConfiguration_ResourceValue `json:"ResourceValue,omitempty"` + 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 *AWSConfigRemediationConfiguration_StaticValue `json:"StaticValue,omitempty"` + StaticValue *RemediationConfiguration_StaticValue `json:"StaticValue,omitempty"` // _deletionPolicy represents a CloudFormation DeletionPolicy _deletionPolicy policies.DeletionPolicy @@ -27,42 +29,42 @@ type AWSConfigRemediationConfiguration_RemediationParameterValue struct { } // AWSCloudFormationType returns the AWS CloudFormation resource type -func (r *AWSConfigRemediationConfiguration_RemediationParameterValue) AWSCloudFormationType() string { +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 *AWSConfigRemediationConfiguration_RemediationParameterValue) DependsOn() []string { +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 *AWSConfigRemediationConfiguration_RemediationParameterValue) SetDependsOn(dependencies []string) { +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 *AWSConfigRemediationConfiguration_RemediationParameterValue) Metadata() map[string]interface{} { +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 *AWSConfigRemediationConfiguration_RemediationParameterValue) SetMetadata(metadata map[string]interface{}) { +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 *AWSConfigRemediationConfiguration_RemediationParameterValue) DeletionPolicy() policies.DeletionPolicy { +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 *AWSConfigRemediationConfiguration_RemediationParameterValue) SetDeletionPolicy(policy policies.DeletionPolicy) { +func (r *RemediationConfiguration_RemediationParameterValue) SetDeletionPolicy(policy policies.DeletionPolicy) { r._deletionPolicy = policy } diff --git a/cloudformation/resources/aws-config-remediationconfiguration_resourcevalue.go b/cloudformation/config/aws-config-remediationconfiguration_resourcevalue.go similarity index 68% rename from cloudformation/resources/aws-config-remediationconfiguration_resourcevalue.go rename to cloudformation/config/aws-config-remediationconfiguration_resourcevalue.go index 48fd3f8f8e..10e6fc7c1e 100644 --- a/cloudformation/resources/aws-config-remediationconfiguration_resourcevalue.go +++ b/cloudformation/config/aws-config-remediationconfiguration_resourcevalue.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" +) -// AWSConfigRemediationConfiguration_ResourceValue AWS CloudFormation Resource (AWS::Config::RemediationConfiguration.ResourceValue) +// 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 AWSConfigRemediationConfiguration_ResourceValue struct { +type RemediationConfiguration_ResourceValue struct { // Value AWS CloudFormation Property // Required: false @@ -22,42 +24,42 @@ type AWSConfigRemediationConfiguration_ResourceValue struct { } // AWSCloudFormationType returns the AWS CloudFormation resource type -func (r *AWSConfigRemediationConfiguration_ResourceValue) AWSCloudFormationType() string { +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 *AWSConfigRemediationConfiguration_ResourceValue) DependsOn() []string { +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 *AWSConfigRemediationConfiguration_ResourceValue) SetDependsOn(dependencies []string) { +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 *AWSConfigRemediationConfiguration_ResourceValue) Metadata() map[string]interface{} { +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 *AWSConfigRemediationConfiguration_ResourceValue) SetMetadata(metadata map[string]interface{}) { +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 *AWSConfigRemediationConfiguration_ResourceValue) DeletionPolicy() policies.DeletionPolicy { +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 *AWSConfigRemediationConfiguration_ResourceValue) SetDeletionPolicy(policy policies.DeletionPolicy) { +func (r *RemediationConfiguration_ResourceValue) SetDeletionPolicy(policy policies.DeletionPolicy) { r._deletionPolicy = policy } diff --git a/cloudformation/resources/aws-config-remediationconfiguration_ssmcontrols.go b/cloudformation/config/aws-config-remediationconfiguration_ssmcontrols.go similarity index 73% rename from cloudformation/resources/aws-config-remediationconfiguration_ssmcontrols.go rename to cloudformation/config/aws-config-remediationconfiguration_ssmcontrols.go index 67885289f8..d81965051d 100644 --- a/cloudformation/resources/aws-config-remediationconfiguration_ssmcontrols.go +++ b/cloudformation/config/aws-config-remediationconfiguration_ssmcontrols.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" +) -// AWSConfigRemediationConfiguration_SsmControls AWS CloudFormation Resource (AWS::Config::RemediationConfiguration.SsmControls) +// 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 AWSConfigRemediationConfiguration_SsmControls struct { +type RemediationConfiguration_SsmControls struct { // ConcurrentExecutionRatePercentage AWS CloudFormation Property // Required: false @@ -27,42 +29,42 @@ type AWSConfigRemediationConfiguration_SsmControls struct { } // AWSCloudFormationType returns the AWS CloudFormation resource type -func (r *AWSConfigRemediationConfiguration_SsmControls) AWSCloudFormationType() string { +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 *AWSConfigRemediationConfiguration_SsmControls) DependsOn() []string { +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 *AWSConfigRemediationConfiguration_SsmControls) SetDependsOn(dependencies []string) { +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 *AWSConfigRemediationConfiguration_SsmControls) Metadata() map[string]interface{} { +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 *AWSConfigRemediationConfiguration_SsmControls) SetMetadata(metadata map[string]interface{}) { +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 *AWSConfigRemediationConfiguration_SsmControls) DeletionPolicy() policies.DeletionPolicy { +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 *AWSConfigRemediationConfiguration_SsmControls) SetDeletionPolicy(policy policies.DeletionPolicy) { +func (r *RemediationConfiguration_SsmControls) SetDeletionPolicy(policy policies.DeletionPolicy) { r._deletionPolicy = policy } diff --git a/cloudformation/resources/aws-config-remediationconfiguration_staticvalue.go b/cloudformation/config/aws-config-remediationconfiguration_staticvalue.go similarity index 69% rename from cloudformation/resources/aws-config-remediationconfiguration_staticvalue.go rename to cloudformation/config/aws-config-remediationconfiguration_staticvalue.go index 3504679ae4..c9e706e7a5 100644 --- a/cloudformation/resources/aws-config-remediationconfiguration_staticvalue.go +++ b/cloudformation/config/aws-config-remediationconfiguration_staticvalue.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" +) -// AWSConfigRemediationConfiguration_StaticValue AWS CloudFormation Resource (AWS::Config::RemediationConfiguration.StaticValue) +// 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 AWSConfigRemediationConfiguration_StaticValue struct { +type RemediationConfiguration_StaticValue struct { // Values AWS CloudFormation Property // Required: false @@ -22,42 +24,42 @@ type AWSConfigRemediationConfiguration_StaticValue struct { } // AWSCloudFormationType returns the AWS CloudFormation resource type -func (r *AWSConfigRemediationConfiguration_StaticValue) AWSCloudFormationType() string { +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 *AWSConfigRemediationConfiguration_StaticValue) DependsOn() []string { +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 *AWSConfigRemediationConfiguration_StaticValue) SetDependsOn(dependencies []string) { +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 *AWSConfigRemediationConfiguration_StaticValue) Metadata() map[string]interface{} { +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 *AWSConfigRemediationConfiguration_StaticValue) SetMetadata(metadata map[string]interface{}) { +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 *AWSConfigRemediationConfiguration_StaticValue) DeletionPolicy() policies.DeletionPolicy { +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 *AWSConfigRemediationConfiguration_StaticValue) SetDeletionPolicy(policy policies.DeletionPolicy) { +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/resources/aws-datapipeline-pipeline_parameterattribute.go b/cloudformation/datapipeline/aws-datapipeline-pipeline_parameterattribute.go similarity index 72% rename from cloudformation/resources/aws-datapipeline-pipeline_parameterattribute.go rename to cloudformation/datapipeline/aws-datapipeline-pipeline_parameterattribute.go index 259f92c0fb..013fa19f7c 100644 --- a/cloudformation/resources/aws-datapipeline-pipeline_parameterattribute.go +++ b/cloudformation/datapipeline/aws-datapipeline-pipeline_parameterattribute.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_ParameterAttribute AWS CloudFormation Resource (AWS::DataPipeline::Pipeline.ParameterAttribute) +// 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 AWSDataPipelinePipeline_ParameterAttribute struct { +type Pipeline_ParameterAttribute struct { // Key AWS CloudFormation Property // Required: true @@ -27,42 +29,42 @@ type AWSDataPipelinePipeline_ParameterAttribute struct { } // AWSCloudFormationType returns the AWS CloudFormation resource type -func (r *AWSDataPipelinePipeline_ParameterAttribute) AWSCloudFormationType() string { +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 *AWSDataPipelinePipeline_ParameterAttribute) DependsOn() []string { +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 *AWSDataPipelinePipeline_ParameterAttribute) SetDependsOn(dependencies []string) { +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 *AWSDataPipelinePipeline_ParameterAttribute) Metadata() map[string]interface{} { +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 *AWSDataPipelinePipeline_ParameterAttribute) SetMetadata(metadata map[string]interface{}) { +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 *AWSDataPipelinePipeline_ParameterAttribute) DeletionPolicy() policies.DeletionPolicy { +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 *AWSDataPipelinePipeline_ParameterAttribute) SetDeletionPolicy(policy policies.DeletionPolicy) { +func (r *Pipeline_ParameterAttribute) SetDeletionPolicy(policy policies.DeletionPolicy) { r._deletionPolicy = policy } diff --git a/cloudformation/resources/aws-datapipeline-pipeline_parameterobject.go b/cloudformation/datapipeline/aws-datapipeline-pipeline_parameterobject.go similarity index 70% rename from cloudformation/resources/aws-datapipeline-pipeline_parameterobject.go rename to cloudformation/datapipeline/aws-datapipeline-pipeline_parameterobject.go index c3e63afdbb..0410616ed9 100644 --- a/cloudformation/resources/aws-datapipeline-pipeline_parameterobject.go +++ b/cloudformation/datapipeline/aws-datapipeline-pipeline_parameterobject.go @@ -1,15 +1,17 @@ -package resources +package datapipeline -import "github.com/awslabs/goformation/v2/cloudformation/policies" +import ( + "github.com/awslabs/goformation/v3/cloudformation/policies" +) -// AWSDataPipelinePipeline_ParameterObject AWS CloudFormation Resource (AWS::DataPipeline::Pipeline.ParameterObject) +// 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 AWSDataPipelinePipeline_ParameterObject struct { +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 []AWSDataPipelinePipeline_ParameterAttribute `json:"Attributes,omitempty"` + Attributes []Pipeline_ParameterAttribute `json:"Attributes,omitempty"` // Id AWS CloudFormation Property // Required: true @@ -27,42 +29,42 @@ type AWSDataPipelinePipeline_ParameterObject struct { } // AWSCloudFormationType returns the AWS CloudFormation resource type -func (r *AWSDataPipelinePipeline_ParameterObject) AWSCloudFormationType() string { +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 *AWSDataPipelinePipeline_ParameterObject) DependsOn() []string { +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 *AWSDataPipelinePipeline_ParameterObject) SetDependsOn(dependencies []string) { +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 *AWSDataPipelinePipeline_ParameterObject) Metadata() map[string]interface{} { +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 *AWSDataPipelinePipeline_ParameterObject) SetMetadata(metadata map[string]interface{}) { +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 *AWSDataPipelinePipeline_ParameterObject) DeletionPolicy() policies.DeletionPolicy { +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 *AWSDataPipelinePipeline_ParameterObject) SetDeletionPolicy(policy policies.DeletionPolicy) { +func (r *Pipeline_ParameterObject) SetDeletionPolicy(policy policies.DeletionPolicy) { r._deletionPolicy = policy } diff --git a/cloudformation/resources/aws-datapipeline-pipeline_parametervalue.go b/cloudformation/datapipeline/aws-datapipeline-pipeline_parametervalue.go similarity index 73% rename from cloudformation/resources/aws-datapipeline-pipeline_parametervalue.go rename to cloudformation/datapipeline/aws-datapipeline-pipeline_parametervalue.go index 269367ed61..f87d5b92f2 100644 --- a/cloudformation/resources/aws-datapipeline-pipeline_parametervalue.go +++ b/cloudformation/datapipeline/aws-datapipeline-pipeline_parametervalue.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_ParameterValue AWS CloudFormation Resource (AWS::DataPipeline::Pipeline.ParameterValue) +// 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 AWSDataPipelinePipeline_ParameterValue struct { +type Pipeline_ParameterValue struct { // Id AWS CloudFormation Property // Required: true @@ -27,42 +29,42 @@ type AWSDataPipelinePipeline_ParameterValue struct { } // AWSCloudFormationType returns the AWS CloudFormation resource type -func (r *AWSDataPipelinePipeline_ParameterValue) AWSCloudFormationType() string { +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 *AWSDataPipelinePipeline_ParameterValue) DependsOn() []string { +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 *AWSDataPipelinePipeline_ParameterValue) SetDependsOn(dependencies []string) { +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 *AWSDataPipelinePipeline_ParameterValue) Metadata() map[string]interface{} { +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 *AWSDataPipelinePipeline_ParameterValue) SetMetadata(metadata map[string]interface{}) { +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 *AWSDataPipelinePipeline_ParameterValue) DeletionPolicy() policies.DeletionPolicy { +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 *AWSDataPipelinePipeline_ParameterValue) SetDeletionPolicy(policy policies.DeletionPolicy) { +func (r *Pipeline_ParameterValue) SetDeletionPolicy(policy policies.DeletionPolicy) { r._deletionPolicy = policy } diff --git a/cloudformation/resources/aws-datapipeline-pipeline_pipelineobject.go b/cloudformation/datapipeline/aws-datapipeline-pipeline_pipelineobject.go similarity index 73% rename from cloudformation/resources/aws-datapipeline-pipeline_pipelineobject.go rename to cloudformation/datapipeline/aws-datapipeline-pipeline_pipelineobject.go index d6a2ef2ac8..22a64f5612 100644 --- a/cloudformation/resources/aws-datapipeline-pipeline_pipelineobject.go +++ b/cloudformation/datapipeline/aws-datapipeline-pipeline_pipelineobject.go @@ -1,15 +1,17 @@ -package resources +package datapipeline -import "github.com/awslabs/goformation/v2/cloudformation/policies" +import ( + "github.com/awslabs/goformation/v3/cloudformation/policies" +) -// AWSDataPipelinePipeline_PipelineObject AWS CloudFormation Resource (AWS::DataPipeline::Pipeline.PipelineObject) +// 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 AWSDataPipelinePipeline_PipelineObject struct { +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 []AWSDataPipelinePipeline_Field `json:"Fields,omitempty"` + Fields []Pipeline_Field `json:"Fields,omitempty"` // Id AWS CloudFormation Property // Required: true @@ -32,42 +34,42 @@ type AWSDataPipelinePipeline_PipelineObject struct { } // AWSCloudFormationType returns the AWS CloudFormation resource type -func (r *AWSDataPipelinePipeline_PipelineObject) AWSCloudFormationType() string { +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 *AWSDataPipelinePipeline_PipelineObject) DependsOn() []string { +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 *AWSDataPipelinePipeline_PipelineObject) SetDependsOn(dependencies []string) { +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 *AWSDataPipelinePipeline_PipelineObject) Metadata() map[string]interface{} { +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 *AWSDataPipelinePipeline_PipelineObject) SetMetadata(metadata map[string]interface{}) { +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 *AWSDataPipelinePipeline_PipelineObject) DeletionPolicy() policies.DeletionPolicy { +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 *AWSDataPipelinePipeline_PipelineObject) SetDeletionPolicy(policy policies.DeletionPolicy) { +func (r *Pipeline_PipelineObject) SetDeletionPolicy(policy policies.DeletionPolicy) { r._deletionPolicy = policy } diff --git a/cloudformation/resources/aws-datapipeline-pipeline_pipelinetag.go b/cloudformation/datapipeline/aws-datapipeline-pipeline_pipelinetag.go similarity index 73% rename from cloudformation/resources/aws-datapipeline-pipeline_pipelinetag.go rename to cloudformation/datapipeline/aws-datapipeline-pipeline_pipelinetag.go index 60b878b701..291ffa3347 100644 --- a/cloudformation/resources/aws-datapipeline-pipeline_pipelinetag.go +++ b/cloudformation/datapipeline/aws-datapipeline-pipeline_pipelinetag.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_PipelineTag AWS CloudFormation Resource (AWS::DataPipeline::Pipeline.PipelineTag) +// 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 AWSDataPipelinePipeline_PipelineTag struct { +type Pipeline_PipelineTag struct { // Key AWS CloudFormation Property // Required: true @@ -27,42 +29,42 @@ type AWSDataPipelinePipeline_PipelineTag struct { } // AWSCloudFormationType returns the AWS CloudFormation resource type -func (r *AWSDataPipelinePipeline_PipelineTag) AWSCloudFormationType() string { +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 *AWSDataPipelinePipeline_PipelineTag) DependsOn() []string { +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 *AWSDataPipelinePipeline_PipelineTag) SetDependsOn(dependencies []string) { +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 *AWSDataPipelinePipeline_PipelineTag) Metadata() map[string]interface{} { +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 *AWSDataPipelinePipeline_PipelineTag) SetMetadata(metadata map[string]interface{}) { +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 *AWSDataPipelinePipeline_PipelineTag) DeletionPolicy() policies.DeletionPolicy { +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 *AWSDataPipelinePipeline_PipelineTag) SetDeletionPolicy(policy policies.DeletionPolicy) { +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/resources/aws-dax-cluster_ssespecification.go b/cloudformation/dax/aws-dax-cluster_ssespecification.go similarity index 72% rename from cloudformation/resources/aws-dax-cluster_ssespecification.go rename to cloudformation/dax/aws-dax-cluster_ssespecification.go index db0e0fdeaf..4884a9b59f 100644 --- a/cloudformation/resources/aws-dax-cluster_ssespecification.go +++ b/cloudformation/dax/aws-dax-cluster_ssespecification.go @@ -1,10 +1,12 @@ -package resources +package dax -import "github.com/awslabs/goformation/v2/cloudformation/policies" +import ( + "github.com/awslabs/goformation/v3/cloudformation/policies" +) -// AWSDAXCluster_SSESpecification AWS CloudFormation Resource (AWS::DAX::Cluster.SSESpecification) +// 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 AWSDAXCluster_SSESpecification struct { +type Cluster_SSESpecification struct { // SSEEnabled AWS CloudFormation Property // Required: false @@ -22,42 +24,42 @@ type AWSDAXCluster_SSESpecification struct { } // AWSCloudFormationType returns the AWS CloudFormation resource type -func (r *AWSDAXCluster_SSESpecification) AWSCloudFormationType() string { +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 *AWSDAXCluster_SSESpecification) DependsOn() []string { +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 *AWSDAXCluster_SSESpecification) SetDependsOn(dependencies []string) { +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 *AWSDAXCluster_SSESpecification) Metadata() map[string]interface{} { +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 *AWSDAXCluster_SSESpecification) SetMetadata(metadata map[string]interface{}) { +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 *AWSDAXCluster_SSESpecification) DeletionPolicy() policies.DeletionPolicy { +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 *AWSDAXCluster_SSESpecification) SetDeletionPolicy(policy policies.DeletionPolicy) { +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/resources/aws-directoryservice-microsoftad_vpcsettings.go b/cloudformation/directoryservice/aws-directoryservice-microsoftad_vpcsettings.go similarity index 72% rename from cloudformation/resources/aws-directoryservice-microsoftad_vpcsettings.go rename to cloudformation/directoryservice/aws-directoryservice-microsoftad_vpcsettings.go index 3ac9474ba8..1d79bef908 100644 --- a/cloudformation/resources/aws-directoryservice-microsoftad_vpcsettings.go +++ b/cloudformation/directoryservice/aws-directoryservice-microsoftad_vpcsettings.go @@ -1,10 +1,12 @@ -package resources +package directoryservice -import "github.com/awslabs/goformation/v2/cloudformation/policies" +import ( + "github.com/awslabs/goformation/v3/cloudformation/policies" +) -// AWSDirectoryServiceMicrosoftAD_VpcSettings AWS CloudFormation Resource (AWS::DirectoryService::MicrosoftAD.VpcSettings) +// 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 AWSDirectoryServiceMicrosoftAD_VpcSettings struct { +type MicrosoftAD_VpcSettings struct { // SubnetIds AWS CloudFormation Property // Required: true @@ -27,42 +29,42 @@ type AWSDirectoryServiceMicrosoftAD_VpcSettings struct { } // AWSCloudFormationType returns the AWS CloudFormation resource type -func (r *AWSDirectoryServiceMicrosoftAD_VpcSettings) AWSCloudFormationType() string { +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 *AWSDirectoryServiceMicrosoftAD_VpcSettings) DependsOn() []string { +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 *AWSDirectoryServiceMicrosoftAD_VpcSettings) SetDependsOn(dependencies []string) { +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 *AWSDirectoryServiceMicrosoftAD_VpcSettings) Metadata() map[string]interface{} { +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 *AWSDirectoryServiceMicrosoftAD_VpcSettings) SetMetadata(metadata map[string]interface{}) { +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 *AWSDirectoryServiceMicrosoftAD_VpcSettings) DeletionPolicy() policies.DeletionPolicy { +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 *AWSDirectoryServiceMicrosoftAD_VpcSettings) SetDeletionPolicy(policy policies.DeletionPolicy) { +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/resources/aws-directoryservice-simplead_vpcsettings.go b/cloudformation/directoryservice/aws-directoryservice-simplead_vpcsettings.go similarity index 72% rename from cloudformation/resources/aws-directoryservice-simplead_vpcsettings.go rename to cloudformation/directoryservice/aws-directoryservice-simplead_vpcsettings.go index b8b20481ea..5795cb9ad5 100644 --- a/cloudformation/resources/aws-directoryservice-simplead_vpcsettings.go +++ b/cloudformation/directoryservice/aws-directoryservice-simplead_vpcsettings.go @@ -1,10 +1,12 @@ -package resources +package directoryservice -import "github.com/awslabs/goformation/v2/cloudformation/policies" +import ( + "github.com/awslabs/goformation/v3/cloudformation/policies" +) -// AWSDirectoryServiceSimpleAD_VpcSettings AWS CloudFormation Resource (AWS::DirectoryService::SimpleAD.VpcSettings) +// 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 AWSDirectoryServiceSimpleAD_VpcSettings struct { +type SimpleAD_VpcSettings struct { // SubnetIds AWS CloudFormation Property // Required: true @@ -27,42 +29,42 @@ type AWSDirectoryServiceSimpleAD_VpcSettings struct { } // AWSCloudFormationType returns the AWS CloudFormation resource type -func (r *AWSDirectoryServiceSimpleAD_VpcSettings) AWSCloudFormationType() string { +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 *AWSDirectoryServiceSimpleAD_VpcSettings) DependsOn() []string { +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 *AWSDirectoryServiceSimpleAD_VpcSettings) SetDependsOn(dependencies []string) { +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 *AWSDirectoryServiceSimpleAD_VpcSettings) Metadata() map[string]interface{} { +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 *AWSDirectoryServiceSimpleAD_VpcSettings) SetMetadata(metadata map[string]interface{}) { +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 *AWSDirectoryServiceSimpleAD_VpcSettings) DeletionPolicy() policies.DeletionPolicy { +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 *AWSDirectoryServiceSimpleAD_VpcSettings) SetDeletionPolicy(policy policies.DeletionPolicy) { +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/resources/aws-dlm-lifecyclepolicy_parameters.go b/cloudformation/dlm/aws-dlm-lifecyclepolicy_parameters.go similarity index 72% rename from cloudformation/resources/aws-dlm-lifecyclepolicy_parameters.go rename to cloudformation/dlm/aws-dlm-lifecyclepolicy_parameters.go index 105553db55..1688c7bb86 100644 --- a/cloudformation/resources/aws-dlm-lifecyclepolicy_parameters.go +++ b/cloudformation/dlm/aws-dlm-lifecyclepolicy_parameters.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_Parameters AWS CloudFormation Resource (AWS::DLM::LifecyclePolicy.Parameters) +// 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 AWSDLMLifecyclePolicy_Parameters struct { +type LifecyclePolicy_Parameters struct { // ExcludeBootVolume AWS CloudFormation Property // Required: false @@ -22,42 +24,42 @@ type AWSDLMLifecyclePolicy_Parameters struct { } // AWSCloudFormationType returns the AWS CloudFormation resource type -func (r *AWSDLMLifecyclePolicy_Parameters) AWSCloudFormationType() string { +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 *AWSDLMLifecyclePolicy_Parameters) DependsOn() []string { +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 *AWSDLMLifecyclePolicy_Parameters) SetDependsOn(dependencies []string) { +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 *AWSDLMLifecyclePolicy_Parameters) Metadata() map[string]interface{} { +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 *AWSDLMLifecyclePolicy_Parameters) SetMetadata(metadata map[string]interface{}) { +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 *AWSDLMLifecyclePolicy_Parameters) DeletionPolicy() policies.DeletionPolicy { +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 *AWSDLMLifecyclePolicy_Parameters) SetDeletionPolicy(policy policies.DeletionPolicy) { +func (r *LifecyclePolicy_Parameters) SetDeletionPolicy(policy policies.DeletionPolicy) { r._deletionPolicy = policy } diff --git a/cloudformation/resources/aws-dlm-lifecyclepolicy_policydetails.go b/cloudformation/dlm/aws-dlm-lifecyclepolicy_policydetails.go similarity index 74% rename from cloudformation/resources/aws-dlm-lifecyclepolicy_policydetails.go rename to cloudformation/dlm/aws-dlm-lifecyclepolicy_policydetails.go index a6f6ee9f10..dcfe3055e0 100644 --- a/cloudformation/resources/aws-dlm-lifecyclepolicy_policydetails.go +++ b/cloudformation/dlm/aws-dlm-lifecyclepolicy_policydetails.go @@ -1,15 +1,18 @@ -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_PolicyDetails AWS CloudFormation Resource (AWS::DLM::LifecyclePolicy.PolicyDetails) +// 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 AWSDLMLifecyclePolicy_PolicyDetails struct { +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 *AWSDLMLifecyclePolicy_Parameters `json:"Parameters,omitempty"` + Parameters *LifecyclePolicy_Parameters `json:"Parameters,omitempty"` // PolicyType AWS CloudFormation Property // Required: false @@ -24,12 +27,12 @@ type AWSDLMLifecyclePolicy_PolicyDetails struct { // 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"` + 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 []Tag `json:"TargetTags,omitempty"` + TargetTags []tags.Tag `json:"TargetTags,omitempty"` // _deletionPolicy represents a CloudFormation DeletionPolicy _deletionPolicy policies.DeletionPolicy @@ -42,42 +45,42 @@ type AWSDLMLifecyclePolicy_PolicyDetails struct { } // AWSCloudFormationType returns the AWS CloudFormation resource type -func (r *AWSDLMLifecyclePolicy_PolicyDetails) AWSCloudFormationType() string { +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 *AWSDLMLifecyclePolicy_PolicyDetails) DependsOn() []string { +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 *AWSDLMLifecyclePolicy_PolicyDetails) SetDependsOn(dependencies []string) { +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 *AWSDLMLifecyclePolicy_PolicyDetails) Metadata() map[string]interface{} { +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 *AWSDLMLifecyclePolicy_PolicyDetails) SetMetadata(metadata map[string]interface{}) { +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 *AWSDLMLifecyclePolicy_PolicyDetails) DeletionPolicy() policies.DeletionPolicy { +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 *AWSDLMLifecyclePolicy_PolicyDetails) SetDeletionPolicy(policy policies.DeletionPolicy) { +func (r *LifecyclePolicy_PolicyDetails) SetDeletionPolicy(policy policies.DeletionPolicy) { r._deletionPolicy = policy } diff --git a/cloudformation/resources/aws-dlm-lifecyclepolicy_retainrule.go b/cloudformation/dlm/aws-dlm-lifecyclepolicy_retainrule.go similarity index 71% rename from cloudformation/resources/aws-dlm-lifecyclepolicy_retainrule.go rename to cloudformation/dlm/aws-dlm-lifecyclepolicy_retainrule.go index 3c53c3c65b..20e8ff4fcd 100644 --- a/cloudformation/resources/aws-dlm-lifecyclepolicy_retainrule.go +++ b/cloudformation/dlm/aws-dlm-lifecyclepolicy_retainrule.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_RetainRule AWS CloudFormation Resource (AWS::DLM::LifecyclePolicy.RetainRule) +// 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 AWSDLMLifecyclePolicy_RetainRule struct { +type LifecyclePolicy_RetainRule struct { // Count AWS CloudFormation Property // Required: true @@ -22,42 +24,42 @@ type AWSDLMLifecyclePolicy_RetainRule struct { } // AWSCloudFormationType returns the AWS CloudFormation resource type -func (r *AWSDLMLifecyclePolicy_RetainRule) AWSCloudFormationType() string { +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 *AWSDLMLifecyclePolicy_RetainRule) DependsOn() []string { +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 *AWSDLMLifecyclePolicy_RetainRule) SetDependsOn(dependencies []string) { +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 *AWSDLMLifecyclePolicy_RetainRule) Metadata() map[string]interface{} { +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 *AWSDLMLifecyclePolicy_RetainRule) SetMetadata(metadata map[string]interface{}) { +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 *AWSDLMLifecyclePolicy_RetainRule) DeletionPolicy() policies.DeletionPolicy { +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 *AWSDLMLifecyclePolicy_RetainRule) SetDeletionPolicy(policy policies.DeletionPolicy) { +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/resources/aws-dms-endpoint_dynamodbsettings.go b/cloudformation/dms/aws-dms-endpoint_dynamodbsettings.go similarity index 72% rename from cloudformation/resources/aws-dms-endpoint_dynamodbsettings.go rename to cloudformation/dms/aws-dms-endpoint_dynamodbsettings.go index 27e4383edd..880c15b451 100644 --- a/cloudformation/resources/aws-dms-endpoint_dynamodbsettings.go +++ b/cloudformation/dms/aws-dms-endpoint_dynamodbsettings.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_DynamoDbSettings AWS CloudFormation Resource (AWS::DMS::Endpoint.DynamoDbSettings) +// 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 AWSDMSEndpoint_DynamoDbSettings struct { +type Endpoint_DynamoDbSettings struct { // ServiceAccessRoleArn AWS CloudFormation Property // Required: false @@ -22,42 +24,42 @@ type AWSDMSEndpoint_DynamoDbSettings struct { } // AWSCloudFormationType returns the AWS CloudFormation resource type -func (r *AWSDMSEndpoint_DynamoDbSettings) AWSCloudFormationType() string { +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 *AWSDMSEndpoint_DynamoDbSettings) DependsOn() []string { +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 *AWSDMSEndpoint_DynamoDbSettings) SetDependsOn(dependencies []string) { +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 *AWSDMSEndpoint_DynamoDbSettings) Metadata() map[string]interface{} { +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 *AWSDMSEndpoint_DynamoDbSettings) SetMetadata(metadata map[string]interface{}) { +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 *AWSDMSEndpoint_DynamoDbSettings) DeletionPolicy() policies.DeletionPolicy { +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 *AWSDMSEndpoint_DynamoDbSettings) SetDeletionPolicy(policy policies.DeletionPolicy) { +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/resources/aws-dynamodb-table_attributedefinition.go b/cloudformation/dynamodb/aws-dynamodb-table_attributedefinition.go similarity index 73% rename from cloudformation/resources/aws-dynamodb-table_attributedefinition.go rename to cloudformation/dynamodb/aws-dynamodb-table_attributedefinition.go index 8701d556c8..d58fdddc6b 100644 --- a/cloudformation/resources/aws-dynamodb-table_attributedefinition.go +++ b/cloudformation/dynamodb/aws-dynamodb-table_attributedefinition.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_AttributeDefinition AWS CloudFormation Resource (AWS::DynamoDB::Table.AttributeDefinition) +// Table_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 { +type Table_AttributeDefinition struct { // AttributeName AWS CloudFormation Property // Required: true @@ -27,42 +29,42 @@ type AWSDynamoDBTable_AttributeDefinition struct { } // AWSCloudFormationType returns the AWS CloudFormation resource type -func (r *AWSDynamoDBTable_AttributeDefinition) AWSCloudFormationType() string { +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 *AWSDynamoDBTable_AttributeDefinition) DependsOn() []string { +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 *AWSDynamoDBTable_AttributeDefinition) SetDependsOn(dependencies []string) { +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 *AWSDynamoDBTable_AttributeDefinition) Metadata() map[string]interface{} { +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 *AWSDynamoDBTable_AttributeDefinition) SetMetadata(metadata map[string]interface{}) { +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 *AWSDynamoDBTable_AttributeDefinition) DeletionPolicy() policies.DeletionPolicy { +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 *AWSDynamoDBTable_AttributeDefinition) SetDeletionPolicy(policy policies.DeletionPolicy) { +func (r *Table_AttributeDefinition) SetDeletionPolicy(policy policies.DeletionPolicy) { r._deletionPolicy = policy } diff --git a/cloudformation/resources/aws-dynamodb-table_globalsecondaryindex.go b/cloudformation/dynamodb/aws-dynamodb-table_globalsecondaryindex.go similarity index 70% rename from cloudformation/resources/aws-dynamodb-table_globalsecondaryindex.go rename to cloudformation/dynamodb/aws-dynamodb-table_globalsecondaryindex.go index 5562892446..3de88242d7 100644 --- a/cloudformation/resources/aws-dynamodb-table_globalsecondaryindex.go +++ b/cloudformation/dynamodb/aws-dynamodb-table_globalsecondaryindex.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_GlobalSecondaryIndex AWS CloudFormation Resource (AWS::DynamoDB::Table.GlobalSecondaryIndex) +// Table_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 { +type Table_GlobalSecondaryIndex struct { // IndexName AWS CloudFormation Property // Required: true @@ -14,17 +16,17 @@ type AWSDynamoDBTable_GlobalSecondaryIndex struct { // 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"` + 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 *AWSDynamoDBTable_Projection `json:"Projection,omitempty"` + 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 *AWSDynamoDBTable_ProvisionedThroughput `json:"ProvisionedThroughput,omitempty"` + ProvisionedThroughput *Table_ProvisionedThroughput `json:"ProvisionedThroughput,omitempty"` // _deletionPolicy represents a CloudFormation DeletionPolicy _deletionPolicy policies.DeletionPolicy @@ -37,42 +39,42 @@ type AWSDynamoDBTable_GlobalSecondaryIndex struct { } // AWSCloudFormationType returns the AWS CloudFormation resource type -func (r *AWSDynamoDBTable_GlobalSecondaryIndex) AWSCloudFormationType() string { +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 *AWSDynamoDBTable_GlobalSecondaryIndex) DependsOn() []string { +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 *AWSDynamoDBTable_GlobalSecondaryIndex) SetDependsOn(dependencies []string) { +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 *AWSDynamoDBTable_GlobalSecondaryIndex) Metadata() map[string]interface{} { +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 *AWSDynamoDBTable_GlobalSecondaryIndex) SetMetadata(metadata map[string]interface{}) { +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 *AWSDynamoDBTable_GlobalSecondaryIndex) DeletionPolicy() policies.DeletionPolicy { +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 *AWSDynamoDBTable_GlobalSecondaryIndex) SetDeletionPolicy(policy policies.DeletionPolicy) { +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/resources/aws-dynamodb-table_localsecondaryindex.go b/cloudformation/dynamodb/aws-dynamodb-table_localsecondaryindex.go similarity index 70% rename from cloudformation/resources/aws-dynamodb-table_localsecondaryindex.go rename to cloudformation/dynamodb/aws-dynamodb-table_localsecondaryindex.go index 268420d88a..37da416c7a 100644 --- a/cloudformation/resources/aws-dynamodb-table_localsecondaryindex.go +++ b/cloudformation/dynamodb/aws-dynamodb-table_localsecondaryindex.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_LocalSecondaryIndex AWS CloudFormation Resource (AWS::DynamoDB::Table.LocalSecondaryIndex) +// Table_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 { +type Table_LocalSecondaryIndex struct { // IndexName AWS CloudFormation Property // Required: true @@ -14,12 +16,12 @@ type AWSDynamoDBTable_LocalSecondaryIndex struct { // 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"` + 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 *AWSDynamoDBTable_Projection `json:"Projection,omitempty"` + Projection *Table_Projection `json:"Projection,omitempty"` // _deletionPolicy represents a CloudFormation DeletionPolicy _deletionPolicy policies.DeletionPolicy @@ -32,42 +34,42 @@ type AWSDynamoDBTable_LocalSecondaryIndex struct { } // AWSCloudFormationType returns the AWS CloudFormation resource type -func (r *AWSDynamoDBTable_LocalSecondaryIndex) AWSCloudFormationType() string { +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 *AWSDynamoDBTable_LocalSecondaryIndex) DependsOn() []string { +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 *AWSDynamoDBTable_LocalSecondaryIndex) SetDependsOn(dependencies []string) { +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 *AWSDynamoDBTable_LocalSecondaryIndex) Metadata() map[string]interface{} { +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 *AWSDynamoDBTable_LocalSecondaryIndex) SetMetadata(metadata map[string]interface{}) { +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 *AWSDynamoDBTable_LocalSecondaryIndex) DeletionPolicy() policies.DeletionPolicy { +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 *AWSDynamoDBTable_LocalSecondaryIndex) SetDeletionPolicy(policy policies.DeletionPolicy) { +func (r *Table_LocalSecondaryIndex) SetDeletionPolicy(policy policies.DeletionPolicy) { r._deletionPolicy = policy } diff --git a/cloudformation/resources/aws-dynamodb-table_pointintimerecoveryspecification.go b/cloudformation/dynamodb/aws-dynamodb-table_pointintimerecoveryspecification.go similarity index 69% rename from cloudformation/resources/aws-dynamodb-table_pointintimerecoveryspecification.go rename to cloudformation/dynamodb/aws-dynamodb-table_pointintimerecoveryspecification.go index cfbfd24776..b77a68f364 100644 --- a/cloudformation/resources/aws-dynamodb-table_pointintimerecoveryspecification.go +++ b/cloudformation/dynamodb/aws-dynamodb-table_pointintimerecoveryspecification.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_PointInTimeRecoverySpecification AWS CloudFormation Resource (AWS::DynamoDB::Table.PointInTimeRecoverySpecification) +// 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 AWSDynamoDBTable_PointInTimeRecoverySpecification struct { +type Table_PointInTimeRecoverySpecification struct { // PointInTimeRecoveryEnabled AWS CloudFormation Property // Required: false @@ -22,42 +24,42 @@ type AWSDynamoDBTable_PointInTimeRecoverySpecification struct { } // AWSCloudFormationType returns the AWS CloudFormation resource type -func (r *AWSDynamoDBTable_PointInTimeRecoverySpecification) AWSCloudFormationType() string { +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 *AWSDynamoDBTable_PointInTimeRecoverySpecification) DependsOn() []string { +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 *AWSDynamoDBTable_PointInTimeRecoverySpecification) SetDependsOn(dependencies []string) { +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 *AWSDynamoDBTable_PointInTimeRecoverySpecification) Metadata() map[string]interface{} { +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 *AWSDynamoDBTable_PointInTimeRecoverySpecification) SetMetadata(metadata map[string]interface{}) { +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 *AWSDynamoDBTable_PointInTimeRecoverySpecification) DeletionPolicy() policies.DeletionPolicy { +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 *AWSDynamoDBTable_PointInTimeRecoverySpecification) SetDeletionPolicy(policy policies.DeletionPolicy) { +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/resources/aws-dynamodb-table_provisionedthroughput.go b/cloudformation/dynamodb/aws-dynamodb-table_provisionedthroughput.go similarity index 73% rename from cloudformation/resources/aws-dynamodb-table_provisionedthroughput.go rename to cloudformation/dynamodb/aws-dynamodb-table_provisionedthroughput.go index f31eceeb37..098b4b9733 100644 --- a/cloudformation/resources/aws-dynamodb-table_provisionedthroughput.go +++ b/cloudformation/dynamodb/aws-dynamodb-table_provisionedthroughput.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_ProvisionedThroughput AWS CloudFormation Resource (AWS::DynamoDB::Table.ProvisionedThroughput) +// Table_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 { +type Table_ProvisionedThroughput struct { // ReadCapacityUnits AWS CloudFormation Property // Required: true @@ -27,42 +29,42 @@ type AWSDynamoDBTable_ProvisionedThroughput struct { } // AWSCloudFormationType returns the AWS CloudFormation resource type -func (r *AWSDynamoDBTable_ProvisionedThroughput) AWSCloudFormationType() string { +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 *AWSDynamoDBTable_ProvisionedThroughput) DependsOn() []string { +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 *AWSDynamoDBTable_ProvisionedThroughput) SetDependsOn(dependencies []string) { +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 *AWSDynamoDBTable_ProvisionedThroughput) Metadata() map[string]interface{} { +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 *AWSDynamoDBTable_ProvisionedThroughput) SetMetadata(metadata map[string]interface{}) { +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 *AWSDynamoDBTable_ProvisionedThroughput) DeletionPolicy() policies.DeletionPolicy { +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 *AWSDynamoDBTable_ProvisionedThroughput) SetDeletionPolicy(policy policies.DeletionPolicy) { +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/resources/aws-dynamodb-table_streamspecification.go b/cloudformation/dynamodb/aws-dynamodb-table_streamspecification.go similarity index 71% rename from cloudformation/resources/aws-dynamodb-table_streamspecification.go rename to cloudformation/dynamodb/aws-dynamodb-table_streamspecification.go index a65c76a53f..07737aee91 100644 --- a/cloudformation/resources/aws-dynamodb-table_streamspecification.go +++ b/cloudformation/dynamodb/aws-dynamodb-table_streamspecification.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_StreamSpecification AWS CloudFormation Resource (AWS::DynamoDB::Table.StreamSpecification) +// Table_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 { +type Table_StreamSpecification struct { // StreamViewType AWS CloudFormation Property // Required: true @@ -22,42 +24,42 @@ type AWSDynamoDBTable_StreamSpecification struct { } // AWSCloudFormationType returns the AWS CloudFormation resource type -func (r *AWSDynamoDBTable_StreamSpecification) AWSCloudFormationType() string { +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 *AWSDynamoDBTable_StreamSpecification) DependsOn() []string { +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 *AWSDynamoDBTable_StreamSpecification) SetDependsOn(dependencies []string) { +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 *AWSDynamoDBTable_StreamSpecification) Metadata() map[string]interface{} { +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 *AWSDynamoDBTable_StreamSpecification) SetMetadata(metadata map[string]interface{}) { +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 *AWSDynamoDBTable_StreamSpecification) DeletionPolicy() policies.DeletionPolicy { +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 *AWSDynamoDBTable_StreamSpecification) SetDeletionPolicy(policy policies.DeletionPolicy) { +func (r *Table_StreamSpecification) SetDeletionPolicy(policy policies.DeletionPolicy) { r._deletionPolicy = policy } diff --git a/cloudformation/resources/aws-dynamodb-table_timetolivespecification.go b/cloudformation/dynamodb/aws-dynamodb-table_timetolivespecification.go similarity index 72% rename from cloudformation/resources/aws-dynamodb-table_timetolivespecification.go rename to cloudformation/dynamodb/aws-dynamodb-table_timetolivespecification.go index 2dd6aa5861..14ef1853ea 100644 --- a/cloudformation/resources/aws-dynamodb-table_timetolivespecification.go +++ b/cloudformation/dynamodb/aws-dynamodb-table_timetolivespecification.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_TimeToLiveSpecification AWS CloudFormation Resource (AWS::DynamoDB::Table.TimeToLiveSpecification) +// Table_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 { +type Table_TimeToLiveSpecification struct { // AttributeName AWS CloudFormation Property // Required: true @@ -27,42 +29,42 @@ type AWSDynamoDBTable_TimeToLiveSpecification struct { } // AWSCloudFormationType returns the AWS CloudFormation resource type -func (r *AWSDynamoDBTable_TimeToLiveSpecification) AWSCloudFormationType() string { +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 *AWSDynamoDBTable_TimeToLiveSpecification) DependsOn() []string { +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 *AWSDynamoDBTable_TimeToLiveSpecification) SetDependsOn(dependencies []string) { +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 *AWSDynamoDBTable_TimeToLiveSpecification) Metadata() map[string]interface{} { +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 *AWSDynamoDBTable_TimeToLiveSpecification) SetMetadata(metadata map[string]interface{}) { +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 *AWSDynamoDBTable_TimeToLiveSpecification) DeletionPolicy() policies.DeletionPolicy { +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 *AWSDynamoDBTable_TimeToLiveSpecification) SetDeletionPolicy(policy policies.DeletionPolicy) { +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/resources/aws-ec2-capacityreservation_tagspecification.go b/cloudformation/ec2/aws-ec2-capacityreservation_tagspecification.go similarity index 71% rename from cloudformation/resources/aws-ec2-capacityreservation_tagspecification.go rename to cloudformation/ec2/aws-ec2-capacityreservation_tagspecification.go index e40ccc0391..2c1c1e4265 100644 --- a/cloudformation/resources/aws-ec2-capacityreservation_tagspecification.go +++ b/cloudformation/ec2/aws-ec2-capacityreservation_tagspecification.go @@ -1,10 +1,13 @@ -package resources +package ec2 -import "github.com/awslabs/goformation/v2/cloudformation/policies" +import ( + "github.com/awslabs/goformation/v3/cloudformation/policies" + "github.com/awslabs/goformation/v3/cloudformation/tags" +) -// AWSEC2CapacityReservation_TagSpecification AWS CloudFormation Resource (AWS::EC2::CapacityReservation.TagSpecification) +// 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 AWSEC2CapacityReservation_TagSpecification struct { +type CapacityReservation_TagSpecification struct { // ResourceType AWS CloudFormation Property // Required: false @@ -14,7 +17,7 @@ type AWSEC2CapacityReservation_TagSpecification struct { // 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"` + Tags []tags.Tag `json:"Tags,omitempty"` // _deletionPolicy represents a CloudFormation DeletionPolicy _deletionPolicy policies.DeletionPolicy @@ -27,42 +30,42 @@ type AWSEC2CapacityReservation_TagSpecification struct { } // AWSCloudFormationType returns the AWS CloudFormation resource type -func (r *AWSEC2CapacityReservation_TagSpecification) AWSCloudFormationType() string { +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 *AWSEC2CapacityReservation_TagSpecification) DependsOn() []string { +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 *AWSEC2CapacityReservation_TagSpecification) SetDependsOn(dependencies []string) { +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 *AWSEC2CapacityReservation_TagSpecification) Metadata() map[string]interface{} { +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 *AWSEC2CapacityReservation_TagSpecification) SetMetadata(metadata map[string]interface{}) { +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 *AWSEC2CapacityReservation_TagSpecification) DeletionPolicy() policies.DeletionPolicy { +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 *AWSEC2CapacityReservation_TagSpecification) SetDeletionPolicy(policy policies.DeletionPolicy) { +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/resources/aws-ec2-clientvpnendpoint_certificateauthenticationrequest.go b/cloudformation/ec2/aws-ec2-clientvpnendpoint_certificateauthenticationrequest.go similarity index 68% rename from cloudformation/resources/aws-ec2-clientvpnendpoint_certificateauthenticationrequest.go rename to cloudformation/ec2/aws-ec2-clientvpnendpoint_certificateauthenticationrequest.go index da7d4475f4..0545634095 100644 --- a/cloudformation/resources/aws-ec2-clientvpnendpoint_certificateauthenticationrequest.go +++ b/cloudformation/ec2/aws-ec2-clientvpnendpoint_certificateauthenticationrequest.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" +) -// AWSEC2ClientVpnEndpoint_CertificateAuthenticationRequest AWS CloudFormation Resource (AWS::EC2::ClientVpnEndpoint.CertificateAuthenticationRequest) +// 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 AWSEC2ClientVpnEndpoint_CertificateAuthenticationRequest struct { +type ClientVpnEndpoint_CertificateAuthenticationRequest struct { // ClientRootCertificateChainArn AWS CloudFormation Property // Required: true @@ -22,42 +24,42 @@ type AWSEC2ClientVpnEndpoint_CertificateAuthenticationRequest struct { } // AWSCloudFormationType returns the AWS CloudFormation resource type -func (r *AWSEC2ClientVpnEndpoint_CertificateAuthenticationRequest) AWSCloudFormationType() string { +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 *AWSEC2ClientVpnEndpoint_CertificateAuthenticationRequest) DependsOn() []string { +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 *AWSEC2ClientVpnEndpoint_CertificateAuthenticationRequest) SetDependsOn(dependencies []string) { +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 *AWSEC2ClientVpnEndpoint_CertificateAuthenticationRequest) Metadata() map[string]interface{} { +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 *AWSEC2ClientVpnEndpoint_CertificateAuthenticationRequest) SetMetadata(metadata map[string]interface{}) { +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 *AWSEC2ClientVpnEndpoint_CertificateAuthenticationRequest) DeletionPolicy() policies.DeletionPolicy { +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 *AWSEC2ClientVpnEndpoint_CertificateAuthenticationRequest) SetDeletionPolicy(policy policies.DeletionPolicy) { +func (r *ClientVpnEndpoint_CertificateAuthenticationRequest) SetDeletionPolicy(policy policies.DeletionPolicy) { r._deletionPolicy = policy } diff --git a/cloudformation/resources/aws-ec2-clientvpnendpoint_clientauthenticationrequest.go b/cloudformation/ec2/aws-ec2-clientvpnendpoint_clientauthenticationrequest.go similarity index 68% rename from cloudformation/resources/aws-ec2-clientvpnendpoint_clientauthenticationrequest.go rename to cloudformation/ec2/aws-ec2-clientvpnendpoint_clientauthenticationrequest.go index f12ff4b2b4..58d54d9bf7 100644 --- a/cloudformation/resources/aws-ec2-clientvpnendpoint_clientauthenticationrequest.go +++ b/cloudformation/ec2/aws-ec2-clientvpnendpoint_clientauthenticationrequest.go @@ -1,20 +1,22 @@ -package resources +package ec2 -import "github.com/awslabs/goformation/v2/cloudformation/policies" +import ( + "github.com/awslabs/goformation/v3/cloudformation/policies" +) -// AWSEC2ClientVpnEndpoint_ClientAuthenticationRequest AWS CloudFormation Resource (AWS::EC2::ClientVpnEndpoint.ClientAuthenticationRequest) +// 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 AWSEC2ClientVpnEndpoint_ClientAuthenticationRequest struct { +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 *AWSEC2ClientVpnEndpoint_DirectoryServiceAuthenticationRequest `json:"ActiveDirectory,omitempty"` + 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 *AWSEC2ClientVpnEndpoint_CertificateAuthenticationRequest `json:"MutualAuthentication,omitempty"` + MutualAuthentication *ClientVpnEndpoint_CertificateAuthenticationRequest `json:"MutualAuthentication,omitempty"` // Type AWS CloudFormation Property // Required: true @@ -32,42 +34,42 @@ type AWSEC2ClientVpnEndpoint_ClientAuthenticationRequest struct { } // AWSCloudFormationType returns the AWS CloudFormation resource type -func (r *AWSEC2ClientVpnEndpoint_ClientAuthenticationRequest) AWSCloudFormationType() string { +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 *AWSEC2ClientVpnEndpoint_ClientAuthenticationRequest) DependsOn() []string { +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 *AWSEC2ClientVpnEndpoint_ClientAuthenticationRequest) SetDependsOn(dependencies []string) { +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 *AWSEC2ClientVpnEndpoint_ClientAuthenticationRequest) Metadata() map[string]interface{} { +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 *AWSEC2ClientVpnEndpoint_ClientAuthenticationRequest) SetMetadata(metadata map[string]interface{}) { +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 *AWSEC2ClientVpnEndpoint_ClientAuthenticationRequest) DeletionPolicy() policies.DeletionPolicy { +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 *AWSEC2ClientVpnEndpoint_ClientAuthenticationRequest) SetDeletionPolicy(policy policies.DeletionPolicy) { +func (r *ClientVpnEndpoint_ClientAuthenticationRequest) SetDeletionPolicy(policy policies.DeletionPolicy) { r._deletionPolicy = policy } diff --git a/cloudformation/resources/aws-ec2-clientvpnendpoint_connectionlogoptions.go b/cloudformation/ec2/aws-ec2-clientvpnendpoint_connectionlogoptions.go similarity index 74% rename from cloudformation/resources/aws-ec2-clientvpnendpoint_connectionlogoptions.go rename to cloudformation/ec2/aws-ec2-clientvpnendpoint_connectionlogoptions.go index e1c17a15e2..44473a33a6 100644 --- a/cloudformation/resources/aws-ec2-clientvpnendpoint_connectionlogoptions.go +++ b/cloudformation/ec2/aws-ec2-clientvpnendpoint_connectionlogoptions.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" +) -// AWSEC2ClientVpnEndpoint_ConnectionLogOptions AWS CloudFormation Resource (AWS::EC2::ClientVpnEndpoint.ConnectionLogOptions) +// 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 AWSEC2ClientVpnEndpoint_ConnectionLogOptions struct { +type ClientVpnEndpoint_ConnectionLogOptions struct { // CloudwatchLogGroup AWS CloudFormation Property // Required: false @@ -32,42 +34,42 @@ type AWSEC2ClientVpnEndpoint_ConnectionLogOptions struct { } // AWSCloudFormationType returns the AWS CloudFormation resource type -func (r *AWSEC2ClientVpnEndpoint_ConnectionLogOptions) AWSCloudFormationType() string { +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 *AWSEC2ClientVpnEndpoint_ConnectionLogOptions) DependsOn() []string { +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 *AWSEC2ClientVpnEndpoint_ConnectionLogOptions) SetDependsOn(dependencies []string) { +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 *AWSEC2ClientVpnEndpoint_ConnectionLogOptions) Metadata() map[string]interface{} { +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 *AWSEC2ClientVpnEndpoint_ConnectionLogOptions) SetMetadata(metadata map[string]interface{}) { +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 *AWSEC2ClientVpnEndpoint_ConnectionLogOptions) DeletionPolicy() policies.DeletionPolicy { +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 *AWSEC2ClientVpnEndpoint_ConnectionLogOptions) SetDeletionPolicy(policy policies.DeletionPolicy) { +func (r *ClientVpnEndpoint_ConnectionLogOptions) SetDeletionPolicy(policy policies.DeletionPolicy) { r._deletionPolicy = policy } diff --git a/cloudformation/resources/aws-ec2-clientvpnendpoint_directoryserviceauthenticationrequest.go b/cloudformation/ec2/aws-ec2-clientvpnendpoint_directoryserviceauthenticationrequest.go similarity index 66% rename from cloudformation/resources/aws-ec2-clientvpnendpoint_directoryserviceauthenticationrequest.go rename to cloudformation/ec2/aws-ec2-clientvpnendpoint_directoryserviceauthenticationrequest.go index 7bf2631de9..cc8de3f4bd 100644 --- a/cloudformation/resources/aws-ec2-clientvpnendpoint_directoryserviceauthenticationrequest.go +++ b/cloudformation/ec2/aws-ec2-clientvpnendpoint_directoryserviceauthenticationrequest.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" +) -// AWSEC2ClientVpnEndpoint_DirectoryServiceAuthenticationRequest AWS CloudFormation Resource (AWS::EC2::ClientVpnEndpoint.DirectoryServiceAuthenticationRequest) +// 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 AWSEC2ClientVpnEndpoint_DirectoryServiceAuthenticationRequest struct { +type ClientVpnEndpoint_DirectoryServiceAuthenticationRequest struct { // DirectoryId AWS CloudFormation Property // Required: true @@ -22,42 +24,42 @@ type AWSEC2ClientVpnEndpoint_DirectoryServiceAuthenticationRequest struct { } // AWSCloudFormationType returns the AWS CloudFormation resource type -func (r *AWSEC2ClientVpnEndpoint_DirectoryServiceAuthenticationRequest) AWSCloudFormationType() string { +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 *AWSEC2ClientVpnEndpoint_DirectoryServiceAuthenticationRequest) DependsOn() []string { +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 *AWSEC2ClientVpnEndpoint_DirectoryServiceAuthenticationRequest) SetDependsOn(dependencies []string) { +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 *AWSEC2ClientVpnEndpoint_DirectoryServiceAuthenticationRequest) Metadata() map[string]interface{} { +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 *AWSEC2ClientVpnEndpoint_DirectoryServiceAuthenticationRequest) SetMetadata(metadata map[string]interface{}) { +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 *AWSEC2ClientVpnEndpoint_DirectoryServiceAuthenticationRequest) DeletionPolicy() policies.DeletionPolicy { +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 *AWSEC2ClientVpnEndpoint_DirectoryServiceAuthenticationRequest) SetDeletionPolicy(policy policies.DeletionPolicy) { +func (r *ClientVpnEndpoint_DirectoryServiceAuthenticationRequest) SetDeletionPolicy(policy policies.DeletionPolicy) { r._deletionPolicy = policy } diff --git a/cloudformation/resources/aws-ec2-clientvpnendpoint_tagspecification.go b/cloudformation/ec2/aws-ec2-clientvpnendpoint_tagspecification.go similarity index 71% rename from cloudformation/resources/aws-ec2-clientvpnendpoint_tagspecification.go rename to cloudformation/ec2/aws-ec2-clientvpnendpoint_tagspecification.go index ba27b173ef..43634d2143 100644 --- a/cloudformation/resources/aws-ec2-clientvpnendpoint_tagspecification.go +++ b/cloudformation/ec2/aws-ec2-clientvpnendpoint_tagspecification.go @@ -1,10 +1,13 @@ -package resources +package ec2 -import "github.com/awslabs/goformation/v2/cloudformation/policies" +import ( + "github.com/awslabs/goformation/v3/cloudformation/policies" + "github.com/awslabs/goformation/v3/cloudformation/tags" +) -// AWSEC2ClientVpnEndpoint_TagSpecification AWS CloudFormation Resource (AWS::EC2::ClientVpnEndpoint.TagSpecification) +// 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 AWSEC2ClientVpnEndpoint_TagSpecification struct { +type ClientVpnEndpoint_TagSpecification struct { // ResourceType AWS CloudFormation Property // Required: true @@ -14,7 +17,7 @@ type AWSEC2ClientVpnEndpoint_TagSpecification struct { // 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"` + Tags []tags.Tag `json:"Tags,omitempty"` // _deletionPolicy represents a CloudFormation DeletionPolicy _deletionPolicy policies.DeletionPolicy @@ -27,42 +30,42 @@ type AWSEC2ClientVpnEndpoint_TagSpecification struct { } // AWSCloudFormationType returns the AWS CloudFormation resource type -func (r *AWSEC2ClientVpnEndpoint_TagSpecification) AWSCloudFormationType() string { +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 *AWSEC2ClientVpnEndpoint_TagSpecification) DependsOn() []string { +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 *AWSEC2ClientVpnEndpoint_TagSpecification) SetDependsOn(dependencies []string) { +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 *AWSEC2ClientVpnEndpoint_TagSpecification) Metadata() map[string]interface{} { +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 *AWSEC2ClientVpnEndpoint_TagSpecification) SetMetadata(metadata map[string]interface{}) { +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 *AWSEC2ClientVpnEndpoint_TagSpecification) DeletionPolicy() policies.DeletionPolicy { +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 *AWSEC2ClientVpnEndpoint_TagSpecification) SetDeletionPolicy(policy policies.DeletionPolicy) { +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/resources/aws-ec2-ec2fleet_fleetlaunchtemplateconfigrequest.go b/cloudformation/ec2/aws-ec2-ec2fleet_fleetlaunchtemplateconfigrequest.go similarity index 66% rename from cloudformation/resources/aws-ec2-ec2fleet_fleetlaunchtemplateconfigrequest.go rename to cloudformation/ec2/aws-ec2-ec2fleet_fleetlaunchtemplateconfigrequest.go index cd648c379f..d09157bbcd 100644 --- a/cloudformation/resources/aws-ec2-ec2fleet_fleetlaunchtemplateconfigrequest.go +++ b/cloudformation/ec2/aws-ec2-ec2fleet_fleetlaunchtemplateconfigrequest.go @@ -1,20 +1,22 @@ -package resources +package ec2 -import "github.com/awslabs/goformation/v2/cloudformation/policies" +import ( + "github.com/awslabs/goformation/v3/cloudformation/policies" +) -// AWSEC2EC2Fleet_FleetLaunchTemplateConfigRequest AWS CloudFormation Resource (AWS::EC2::EC2Fleet.FleetLaunchTemplateConfigRequest) +// 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 AWSEC2EC2Fleet_FleetLaunchTemplateConfigRequest struct { +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 *AWSEC2EC2Fleet_FleetLaunchTemplateSpecificationRequest `json:"LaunchTemplateSpecification,omitempty"` + 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 []AWSEC2EC2Fleet_FleetLaunchTemplateOverridesRequest `json:"Overrides,omitempty"` + Overrides []EC2Fleet_FleetLaunchTemplateOverridesRequest `json:"Overrides,omitempty"` // _deletionPolicy represents a CloudFormation DeletionPolicy _deletionPolicy policies.DeletionPolicy @@ -27,42 +29,42 @@ type AWSEC2EC2Fleet_FleetLaunchTemplateConfigRequest struct { } // AWSCloudFormationType returns the AWS CloudFormation resource type -func (r *AWSEC2EC2Fleet_FleetLaunchTemplateConfigRequest) AWSCloudFormationType() string { +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 *AWSEC2EC2Fleet_FleetLaunchTemplateConfigRequest) DependsOn() []string { +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 *AWSEC2EC2Fleet_FleetLaunchTemplateConfigRequest) SetDependsOn(dependencies []string) { +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 *AWSEC2EC2Fleet_FleetLaunchTemplateConfigRequest) Metadata() map[string]interface{} { +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 *AWSEC2EC2Fleet_FleetLaunchTemplateConfigRequest) SetMetadata(metadata map[string]interface{}) { +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 *AWSEC2EC2Fleet_FleetLaunchTemplateConfigRequest) DeletionPolicy() policies.DeletionPolicy { +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 *AWSEC2EC2Fleet_FleetLaunchTemplateConfigRequest) SetDeletionPolicy(policy policies.DeletionPolicy) { +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/resources/aws-ec2-ec2fleet_fleetlaunchtemplatespecificationrequest.go b/cloudformation/ec2/aws-ec2-ec2fleet_fleetlaunchtemplatespecificationrequest.go similarity index 73% rename from cloudformation/resources/aws-ec2-ec2fleet_fleetlaunchtemplatespecificationrequest.go rename to cloudformation/ec2/aws-ec2-ec2fleet_fleetlaunchtemplatespecificationrequest.go index 3fdb4b30fc..baf582352b 100644 --- a/cloudformation/resources/aws-ec2-ec2fleet_fleetlaunchtemplatespecificationrequest.go +++ b/cloudformation/ec2/aws-ec2-ec2fleet_fleetlaunchtemplatespecificationrequest.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_FleetLaunchTemplateSpecificationRequest AWS CloudFormation Resource (AWS::EC2::EC2Fleet.FleetLaunchTemplateSpecificationRequest) +// 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 AWSEC2EC2Fleet_FleetLaunchTemplateSpecificationRequest struct { +type EC2Fleet_FleetLaunchTemplateSpecificationRequest struct { // LaunchTemplateId AWS CloudFormation Property // Required: false @@ -32,42 +34,42 @@ type AWSEC2EC2Fleet_FleetLaunchTemplateSpecificationRequest struct { } // AWSCloudFormationType returns the AWS CloudFormation resource type -func (r *AWSEC2EC2Fleet_FleetLaunchTemplateSpecificationRequest) AWSCloudFormationType() string { +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 *AWSEC2EC2Fleet_FleetLaunchTemplateSpecificationRequest) DependsOn() []string { +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 *AWSEC2EC2Fleet_FleetLaunchTemplateSpecificationRequest) SetDependsOn(dependencies []string) { +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 *AWSEC2EC2Fleet_FleetLaunchTemplateSpecificationRequest) Metadata() map[string]interface{} { +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 *AWSEC2EC2Fleet_FleetLaunchTemplateSpecificationRequest) SetMetadata(metadata map[string]interface{}) { +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 *AWSEC2EC2Fleet_FleetLaunchTemplateSpecificationRequest) DeletionPolicy() policies.DeletionPolicy { +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 *AWSEC2EC2Fleet_FleetLaunchTemplateSpecificationRequest) SetDeletionPolicy(policy policies.DeletionPolicy) { +func (r *EC2Fleet_FleetLaunchTemplateSpecificationRequest) SetDeletionPolicy(policy policies.DeletionPolicy) { r._deletionPolicy = policy } diff --git a/cloudformation/resources/aws-ec2-ec2fleet_ondemandoptionsrequest.go b/cloudformation/ec2/aws-ec2-ec2fleet_ondemandoptionsrequest.go similarity index 71% rename from cloudformation/resources/aws-ec2-ec2fleet_ondemandoptionsrequest.go rename to cloudformation/ec2/aws-ec2-ec2fleet_ondemandoptionsrequest.go index 71c6cfddab..c9c8568d79 100644 --- a/cloudformation/resources/aws-ec2-ec2fleet_ondemandoptionsrequest.go +++ b/cloudformation/ec2/aws-ec2-ec2fleet_ondemandoptionsrequest.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_OnDemandOptionsRequest AWS CloudFormation Resource (AWS::EC2::EC2Fleet.OnDemandOptionsRequest) +// 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 AWSEC2EC2Fleet_OnDemandOptionsRequest struct { +type EC2Fleet_OnDemandOptionsRequest struct { // AllocationStrategy AWS CloudFormation Property // Required: false @@ -22,42 +24,42 @@ type AWSEC2EC2Fleet_OnDemandOptionsRequest struct { } // AWSCloudFormationType returns the AWS CloudFormation resource type -func (r *AWSEC2EC2Fleet_OnDemandOptionsRequest) AWSCloudFormationType() string { +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 *AWSEC2EC2Fleet_OnDemandOptionsRequest) DependsOn() []string { +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 *AWSEC2EC2Fleet_OnDemandOptionsRequest) SetDependsOn(dependencies []string) { +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 *AWSEC2EC2Fleet_OnDemandOptionsRequest) Metadata() map[string]interface{} { +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 *AWSEC2EC2Fleet_OnDemandOptionsRequest) SetMetadata(metadata map[string]interface{}) { +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 *AWSEC2EC2Fleet_OnDemandOptionsRequest) DeletionPolicy() policies.DeletionPolicy { +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 *AWSEC2EC2Fleet_OnDemandOptionsRequest) SetDeletionPolicy(policy policies.DeletionPolicy) { +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/resources/aws-ec2-ec2fleet_tagspecification.go b/cloudformation/ec2/aws-ec2-ec2fleet_tagspecification.go similarity index 72% rename from cloudformation/resources/aws-ec2-ec2fleet_tagspecification.go rename to cloudformation/ec2/aws-ec2-ec2fleet_tagspecification.go index 7e6d88f964..2fc0670827 100644 --- a/cloudformation/resources/aws-ec2-ec2fleet_tagspecification.go +++ b/cloudformation/ec2/aws-ec2-ec2fleet_tagspecification.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_TagSpecification AWS CloudFormation Resource (AWS::EC2::EC2Fleet.TagSpecification) +// 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 AWSEC2EC2Fleet_TagSpecification struct { +type EC2Fleet_TagSpecification struct { // ResourceType AWS CloudFormation Property // Required: false @@ -14,7 +16,7 @@ type AWSEC2EC2Fleet_TagSpecification struct { // 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"` + Tags []EC2Fleet_TagRequest `json:"Tags,omitempty"` // _deletionPolicy represents a CloudFormation DeletionPolicy _deletionPolicy policies.DeletionPolicy @@ -27,42 +29,42 @@ type AWSEC2EC2Fleet_TagSpecification struct { } // AWSCloudFormationType returns the AWS CloudFormation resource type -func (r *AWSEC2EC2Fleet_TagSpecification) AWSCloudFormationType() string { +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 *AWSEC2EC2Fleet_TagSpecification) DependsOn() []string { +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 *AWSEC2EC2Fleet_TagSpecification) SetDependsOn(dependencies []string) { +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 *AWSEC2EC2Fleet_TagSpecification) Metadata() map[string]interface{} { +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 *AWSEC2EC2Fleet_TagSpecification) SetMetadata(metadata map[string]interface{}) { +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 *AWSEC2EC2Fleet_TagSpecification) DeletionPolicy() policies.DeletionPolicy { +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 *AWSEC2EC2Fleet_TagSpecification) SetDeletionPolicy(policy policies.DeletionPolicy) { +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/resources/aws-ec2-instance_associationparameter.go b/cloudformation/ec2/aws-ec2-instance_associationparameter.go similarity index 74% rename from cloudformation/resources/aws-ec2-instance_associationparameter.go rename to cloudformation/ec2/aws-ec2-instance_associationparameter.go index e5a1e5c81b..f06586ff46 100644 --- a/cloudformation/resources/aws-ec2-instance_associationparameter.go +++ b/cloudformation/ec2/aws-ec2-instance_associationparameter.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_AssociationParameter AWS CloudFormation Resource (AWS::EC2::Instance.AssociationParameter) +// 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 AWSEC2Instance_AssociationParameter struct { +type Instance_AssociationParameter struct { // Key AWS CloudFormation Property // Required: true @@ -27,42 +29,42 @@ type AWSEC2Instance_AssociationParameter struct { } // AWSCloudFormationType returns the AWS CloudFormation resource type -func (r *AWSEC2Instance_AssociationParameter) AWSCloudFormationType() string { +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 *AWSEC2Instance_AssociationParameter) DependsOn() []string { +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 *AWSEC2Instance_AssociationParameter) SetDependsOn(dependencies []string) { +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 *AWSEC2Instance_AssociationParameter) Metadata() map[string]interface{} { +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 *AWSEC2Instance_AssociationParameter) SetMetadata(metadata map[string]interface{}) { +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 *AWSEC2Instance_AssociationParameter) DeletionPolicy() policies.DeletionPolicy { +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 *AWSEC2Instance_AssociationParameter) SetDeletionPolicy(policy policies.DeletionPolicy) { +func (r *Instance_AssociationParameter) SetDeletionPolicy(policy policies.DeletionPolicy) { r._deletionPolicy = policy } diff --git a/cloudformation/resources/aws-ec2-instance_blockdevicemapping.go b/cloudformation/ec2/aws-ec2-instance_blockdevicemapping.go similarity index 74% rename from cloudformation/resources/aws-ec2-instance_blockdevicemapping.go rename to cloudformation/ec2/aws-ec2-instance_blockdevicemapping.go index 937b5a4df5..28929e6c6f 100644 --- a/cloudformation/resources/aws-ec2-instance_blockdevicemapping.go +++ b/cloudformation/ec2/aws-ec2-instance_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" +) -// AWSEC2Instance_BlockDeviceMapping AWS CloudFormation Resource (AWS::EC2::Instance.BlockDeviceMapping) +// 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 AWSEC2Instance_BlockDeviceMapping struct { +type Instance_BlockDeviceMapping struct { // DeviceName AWS CloudFormation Property // Required: true @@ -14,12 +16,12 @@ type AWSEC2Instance_BlockDeviceMapping struct { // 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"` + 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 *AWSEC2Instance_NoDevice `json:"NoDevice,omitempty"` + NoDevice *Instance_NoDevice `json:"NoDevice,omitempty"` // VirtualName AWS CloudFormation Property // Required: false @@ -37,42 +39,42 @@ type AWSEC2Instance_BlockDeviceMapping struct { } // AWSCloudFormationType returns the AWS CloudFormation resource type -func (r *AWSEC2Instance_BlockDeviceMapping) AWSCloudFormationType() string { +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 *AWSEC2Instance_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 *AWSEC2Instance_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 *AWSEC2Instance_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 *AWSEC2Instance_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 *AWSEC2Instance_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 *AWSEC2Instance_BlockDeviceMapping) SetDeletionPolicy(policy policies.DeletionPolicy) { +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/resources/aws-ec2-instance_creditspecification.go b/cloudformation/ec2/aws-ec2-instance_creditspecification.go similarity index 71% rename from cloudformation/resources/aws-ec2-instance_creditspecification.go rename to cloudformation/ec2/aws-ec2-instance_creditspecification.go index fcbecd909a..76b4601352 100644 --- a/cloudformation/resources/aws-ec2-instance_creditspecification.go +++ b/cloudformation/ec2/aws-ec2-instance_creditspecification.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_CreditSpecification AWS CloudFormation Resource (AWS::EC2::Instance.CreditSpecification) +// 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 AWSEC2Instance_CreditSpecification struct { +type Instance_CreditSpecification struct { // CPUCredits AWS CloudFormation Property // Required: false @@ -22,42 +24,42 @@ type AWSEC2Instance_CreditSpecification struct { } // AWSCloudFormationType returns the AWS CloudFormation resource type -func (r *AWSEC2Instance_CreditSpecification) AWSCloudFormationType() string { +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 *AWSEC2Instance_CreditSpecification) DependsOn() []string { +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 *AWSEC2Instance_CreditSpecification) SetDependsOn(dependencies []string) { +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 *AWSEC2Instance_CreditSpecification) Metadata() map[string]interface{} { +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 *AWSEC2Instance_CreditSpecification) SetMetadata(metadata map[string]interface{}) { +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 *AWSEC2Instance_CreditSpecification) DeletionPolicy() policies.DeletionPolicy { +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 *AWSEC2Instance_CreditSpecification) SetDeletionPolicy(policy policies.DeletionPolicy) { +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/resources/aws-ec2-instance_elasticgpuspecification.go b/cloudformation/ec2/aws-ec2-instance_elasticgpuspecification.go similarity index 70% rename from cloudformation/resources/aws-ec2-instance_elasticgpuspecification.go rename to cloudformation/ec2/aws-ec2-instance_elasticgpuspecification.go index ee82bd93d7..b8b6bff511 100644 --- a/cloudformation/resources/aws-ec2-instance_elasticgpuspecification.go +++ b/cloudformation/ec2/aws-ec2-instance_elasticgpuspecification.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_ElasticGpuSpecification AWS CloudFormation Resource (AWS::EC2::Instance.ElasticGpuSpecification) +// 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 AWSEC2Instance_ElasticGpuSpecification struct { +type Instance_ElasticGpuSpecification struct { // Type AWS CloudFormation Property // Required: true @@ -22,42 +24,42 @@ type AWSEC2Instance_ElasticGpuSpecification struct { } // AWSCloudFormationType returns the AWS CloudFormation resource type -func (r *AWSEC2Instance_ElasticGpuSpecification) AWSCloudFormationType() string { +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 *AWSEC2Instance_ElasticGpuSpecification) DependsOn() []string { +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 *AWSEC2Instance_ElasticGpuSpecification) SetDependsOn(dependencies []string) { +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 *AWSEC2Instance_ElasticGpuSpecification) Metadata() map[string]interface{} { +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 *AWSEC2Instance_ElasticGpuSpecification) SetMetadata(metadata map[string]interface{}) { +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 *AWSEC2Instance_ElasticGpuSpecification) DeletionPolicy() policies.DeletionPolicy { +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 *AWSEC2Instance_ElasticGpuSpecification) SetDeletionPolicy(policy policies.DeletionPolicy) { +func (r *Instance_ElasticGpuSpecification) SetDeletionPolicy(policy policies.DeletionPolicy) { r._deletionPolicy = policy } diff --git a/cloudformation/resources/aws-ec2-instance_elasticinferenceaccelerator.go b/cloudformation/ec2/aws-ec2-instance_elasticinferenceaccelerator.go similarity index 69% rename from cloudformation/resources/aws-ec2-instance_elasticinferenceaccelerator.go rename to cloudformation/ec2/aws-ec2-instance_elasticinferenceaccelerator.go index 0650ec0422..9063c47c24 100644 --- a/cloudformation/resources/aws-ec2-instance_elasticinferenceaccelerator.go +++ b/cloudformation/ec2/aws-ec2-instance_elasticinferenceaccelerator.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_ElasticInferenceAccelerator AWS CloudFormation Resource (AWS::EC2::Instance.ElasticInferenceAccelerator) +// 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 AWSEC2Instance_ElasticInferenceAccelerator struct { +type Instance_ElasticInferenceAccelerator struct { // Type AWS CloudFormation Property // Required: true @@ -22,42 +24,42 @@ type AWSEC2Instance_ElasticInferenceAccelerator struct { } // AWSCloudFormationType returns the AWS CloudFormation resource type -func (r *AWSEC2Instance_ElasticInferenceAccelerator) AWSCloudFormationType() string { +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 *AWSEC2Instance_ElasticInferenceAccelerator) DependsOn() []string { +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 *AWSEC2Instance_ElasticInferenceAccelerator) SetDependsOn(dependencies []string) { +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 *AWSEC2Instance_ElasticInferenceAccelerator) Metadata() map[string]interface{} { +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 *AWSEC2Instance_ElasticInferenceAccelerator) SetMetadata(metadata map[string]interface{}) { +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 *AWSEC2Instance_ElasticInferenceAccelerator) DeletionPolicy() policies.DeletionPolicy { +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 *AWSEC2Instance_ElasticInferenceAccelerator) SetDeletionPolicy(policy policies.DeletionPolicy) { +func (r *Instance_ElasticInferenceAccelerator) SetDeletionPolicy(policy policies.DeletionPolicy) { r._deletionPolicy = policy } diff --git a/cloudformation/resources/aws-ec2-instance_instanceipv6address.go b/cloudformation/ec2/aws-ec2-instance_instanceipv6address.go similarity index 71% rename from cloudformation/resources/aws-ec2-instance_instanceipv6address.go rename to cloudformation/ec2/aws-ec2-instance_instanceipv6address.go index 6f57aa3490..5b8dc5f61e 100644 --- a/cloudformation/resources/aws-ec2-instance_instanceipv6address.go +++ b/cloudformation/ec2/aws-ec2-instance_instanceipv6address.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_InstanceIpv6Address AWS CloudFormation Resource (AWS::EC2::Instance.InstanceIpv6Address) +// 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 AWSEC2Instance_InstanceIpv6Address struct { +type Instance_InstanceIpv6Address struct { // Ipv6Address AWS CloudFormation Property // Required: true @@ -22,42 +24,42 @@ type AWSEC2Instance_InstanceIpv6Address struct { } // AWSCloudFormationType returns the AWS CloudFormation resource type -func (r *AWSEC2Instance_InstanceIpv6Address) AWSCloudFormationType() string { +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 *AWSEC2Instance_InstanceIpv6Address) DependsOn() []string { +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 *AWSEC2Instance_InstanceIpv6Address) SetDependsOn(dependencies []string) { +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 *AWSEC2Instance_InstanceIpv6Address) Metadata() map[string]interface{} { +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 *AWSEC2Instance_InstanceIpv6Address) SetMetadata(metadata map[string]interface{}) { +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 *AWSEC2Instance_InstanceIpv6Address) DeletionPolicy() policies.DeletionPolicy { +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 *AWSEC2Instance_InstanceIpv6Address) SetDeletionPolicy(policy policies.DeletionPolicy) { +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/resources/aws-ec2-instance_licensespecification.go b/cloudformation/ec2/aws-ec2-instance_licensespecification.go similarity index 71% rename from cloudformation/resources/aws-ec2-instance_licensespecification.go rename to cloudformation/ec2/aws-ec2-instance_licensespecification.go index b960233b1a..61a90e1cc2 100644 --- a/cloudformation/resources/aws-ec2-instance_licensespecification.go +++ b/cloudformation/ec2/aws-ec2-instance_licensespecification.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_LicenseSpecification AWS CloudFormation Resource (AWS::EC2::Instance.LicenseSpecification) +// 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 AWSEC2Instance_LicenseSpecification struct { +type Instance_LicenseSpecification struct { // LicenseConfigurationArn AWS CloudFormation Property // Required: true @@ -22,42 +24,42 @@ type AWSEC2Instance_LicenseSpecification struct { } // AWSCloudFormationType returns the AWS CloudFormation resource type -func (r *AWSEC2Instance_LicenseSpecification) AWSCloudFormationType() string { +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 *AWSEC2Instance_LicenseSpecification) DependsOn() []string { +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 *AWSEC2Instance_LicenseSpecification) SetDependsOn(dependencies []string) { +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 *AWSEC2Instance_LicenseSpecification) Metadata() map[string]interface{} { +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 *AWSEC2Instance_LicenseSpecification) SetMetadata(metadata map[string]interface{}) { +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 *AWSEC2Instance_LicenseSpecification) DeletionPolicy() policies.DeletionPolicy { +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 *AWSEC2Instance_LicenseSpecification) SetDeletionPolicy(policy policies.DeletionPolicy) { +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/resources/aws-ec2-instance_nodevice.go b/cloudformation/ec2/aws-ec2-instance_nodevice.go similarity index 71% rename from cloudformation/resources/aws-ec2-instance_nodevice.go rename to cloudformation/ec2/aws-ec2-instance_nodevice.go index cf3a6b2644..ec53cbc0e1 100644 --- a/cloudformation/resources/aws-ec2-instance_nodevice.go +++ b/cloudformation/ec2/aws-ec2-instance_nodevice.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_NoDevice AWS CloudFormation Resource (AWS::EC2::Instance.NoDevice) +// 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 AWSEC2Instance_NoDevice struct { +type Instance_NoDevice struct { // _deletionPolicy represents a CloudFormation DeletionPolicy _deletionPolicy policies.DeletionPolicy @@ -17,42 +19,42 @@ type AWSEC2Instance_NoDevice struct { } // AWSCloudFormationType returns the AWS CloudFormation resource type -func (r *AWSEC2Instance_NoDevice) AWSCloudFormationType() string { +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 *AWSEC2Instance_NoDevice) DependsOn() []string { +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 *AWSEC2Instance_NoDevice) SetDependsOn(dependencies []string) { +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 *AWSEC2Instance_NoDevice) Metadata() map[string]interface{} { +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 *AWSEC2Instance_NoDevice) SetMetadata(metadata map[string]interface{}) { +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 *AWSEC2Instance_NoDevice) DeletionPolicy() policies.DeletionPolicy { +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 *AWSEC2Instance_NoDevice) SetDeletionPolicy(policy policies.DeletionPolicy) { +func (r *Instance_NoDevice) SetDeletionPolicy(policy policies.DeletionPolicy) { r._deletionPolicy = policy } diff --git a/cloudformation/resources/aws-ec2-instance_privateipaddressspecification.go b/cloudformation/ec2/aws-ec2-instance_privateipaddressspecification.go similarity index 72% rename from cloudformation/resources/aws-ec2-instance_privateipaddressspecification.go rename to cloudformation/ec2/aws-ec2-instance_privateipaddressspecification.go index eb105f077f..be7e10026c 100644 --- a/cloudformation/resources/aws-ec2-instance_privateipaddressspecification.go +++ b/cloudformation/ec2/aws-ec2-instance_privateipaddressspecification.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_PrivateIpAddressSpecification AWS CloudFormation Resource (AWS::EC2::Instance.PrivateIpAddressSpecification) +// 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 AWSEC2Instance_PrivateIpAddressSpecification struct { +type Instance_PrivateIpAddressSpecification struct { // Primary AWS CloudFormation Property // Required: true @@ -27,42 +29,42 @@ type AWSEC2Instance_PrivateIpAddressSpecification struct { } // AWSCloudFormationType returns the AWS CloudFormation resource type -func (r *AWSEC2Instance_PrivateIpAddressSpecification) AWSCloudFormationType() string { +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 *AWSEC2Instance_PrivateIpAddressSpecification) DependsOn() []string { +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 *AWSEC2Instance_PrivateIpAddressSpecification) SetDependsOn(dependencies []string) { +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 *AWSEC2Instance_PrivateIpAddressSpecification) Metadata() map[string]interface{} { +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 *AWSEC2Instance_PrivateIpAddressSpecification) SetMetadata(metadata map[string]interface{}) { +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 *AWSEC2Instance_PrivateIpAddressSpecification) DeletionPolicy() policies.DeletionPolicy { +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 *AWSEC2Instance_PrivateIpAddressSpecification) SetDeletionPolicy(policy policies.DeletionPolicy) { +func (r *Instance_PrivateIpAddressSpecification) SetDeletionPolicy(policy policies.DeletionPolicy) { r._deletionPolicy = policy } diff --git a/cloudformation/resources/aws-ec2-instance_ssmassociation.go b/cloudformation/ec2/aws-ec2-instance_ssmassociation.go similarity index 72% rename from cloudformation/resources/aws-ec2-instance_ssmassociation.go rename to cloudformation/ec2/aws-ec2-instance_ssmassociation.go index 73197d57af..8620e4bd98 100644 --- a/cloudformation/resources/aws-ec2-instance_ssmassociation.go +++ b/cloudformation/ec2/aws-ec2-instance_ssmassociation.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" +) -// AWSEC2Instance_SsmAssociation AWS CloudFormation Resource (AWS::EC2::Instance.SsmAssociation) +// 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 AWSEC2Instance_SsmAssociation struct { +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 []AWSEC2Instance_AssociationParameter `json:"AssociationParameters,omitempty"` + AssociationParameters []Instance_AssociationParameter `json:"AssociationParameters,omitempty"` // DocumentName AWS CloudFormation Property // Required: true @@ -27,42 +29,42 @@ type AWSEC2Instance_SsmAssociation struct { } // AWSCloudFormationType returns the AWS CloudFormation resource type -func (r *AWSEC2Instance_SsmAssociation) AWSCloudFormationType() string { +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 *AWSEC2Instance_SsmAssociation) DependsOn() []string { +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 *AWSEC2Instance_SsmAssociation) SetDependsOn(dependencies []string) { +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 *AWSEC2Instance_SsmAssociation) Metadata() map[string]interface{} { +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 *AWSEC2Instance_SsmAssociation) SetMetadata(metadata map[string]interface{}) { +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 *AWSEC2Instance_SsmAssociation) DeletionPolicy() policies.DeletionPolicy { +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 *AWSEC2Instance_SsmAssociation) SetDeletionPolicy(policy policies.DeletionPolicy) { +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/resources/aws-ec2-launchtemplate_capacityreservationpreference.go b/cloudformation/ec2/aws-ec2-launchtemplate_capacityreservationpreference.go similarity index 63% rename from cloudformation/resources/aws-ec2-launchtemplate_capacityreservationpreference.go rename to cloudformation/ec2/aws-ec2-launchtemplate_capacityreservationpreference.go index c02e118638..1197b3c7d5 100644 --- a/cloudformation/resources/aws-ec2-launchtemplate_capacityreservationpreference.go +++ b/cloudformation/ec2/aws-ec2-launchtemplate_capacityreservationpreference.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_CapacityReservationPreference AWS CloudFormation Resource (AWS::EC2::LaunchTemplate.CapacityReservationPreference) +// LaunchTemplate_CapacityReservationPreference AWS CloudFormation Resource (AWS::EC2::LaunchTemplate.CapacityReservationPreference) // See: -type AWSEC2LaunchTemplate_CapacityReservationPreference struct { +type LaunchTemplate_CapacityReservationPreference struct { // _deletionPolicy represents a CloudFormation DeletionPolicy _deletionPolicy policies.DeletionPolicy @@ -17,42 +19,42 @@ type AWSEC2LaunchTemplate_CapacityReservationPreference struct { } // AWSCloudFormationType returns the AWS CloudFormation resource type -func (r *AWSEC2LaunchTemplate_CapacityReservationPreference) AWSCloudFormationType() string { +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 *AWSEC2LaunchTemplate_CapacityReservationPreference) DependsOn() []string { +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 *AWSEC2LaunchTemplate_CapacityReservationPreference) SetDependsOn(dependencies []string) { +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 *AWSEC2LaunchTemplate_CapacityReservationPreference) Metadata() map[string]interface{} { +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 *AWSEC2LaunchTemplate_CapacityReservationPreference) SetMetadata(metadata map[string]interface{}) { +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 *AWSEC2LaunchTemplate_CapacityReservationPreference) DeletionPolicy() policies.DeletionPolicy { +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 *AWSEC2LaunchTemplate_CapacityReservationPreference) SetDeletionPolicy(policy policies.DeletionPolicy) { +func (r *LaunchTemplate_CapacityReservationPreference) SetDeletionPolicy(policy policies.DeletionPolicy) { r._deletionPolicy = policy } diff --git a/cloudformation/resources/aws-ec2-launchtemplate_capacityreservationspecification.go b/cloudformation/ec2/aws-ec2-launchtemplate_capacityreservationspecification.go similarity index 66% rename from cloudformation/resources/aws-ec2-launchtemplate_capacityreservationspecification.go rename to cloudformation/ec2/aws-ec2-launchtemplate_capacityreservationspecification.go index ca37fe3292..b3a28b3636 100644 --- a/cloudformation/resources/aws-ec2-launchtemplate_capacityreservationspecification.go +++ b/cloudformation/ec2/aws-ec2-launchtemplate_capacityreservationspecification.go @@ -1,20 +1,22 @@ -package resources +package ec2 -import "github.com/awslabs/goformation/v2/cloudformation/policies" +import ( + "github.com/awslabs/goformation/v3/cloudformation/policies" +) -// AWSEC2LaunchTemplate_CapacityReservationSpecification AWS CloudFormation Resource (AWS::EC2::LaunchTemplate.CapacityReservationSpecification) +// 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 AWSEC2LaunchTemplate_CapacityReservationSpecification struct { +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 *AWSEC2LaunchTemplate_CapacityReservationPreference `json:"CapacityReservationPreference,omitempty"` + 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 *AWSEC2LaunchTemplate_CapacityReservationTarget `json:"CapacityReservationTarget,omitempty"` + CapacityReservationTarget *LaunchTemplate_CapacityReservationTarget `json:"CapacityReservationTarget,omitempty"` // _deletionPolicy represents a CloudFormation DeletionPolicy _deletionPolicy policies.DeletionPolicy @@ -27,42 +29,42 @@ type AWSEC2LaunchTemplate_CapacityReservationSpecification struct { } // AWSCloudFormationType returns the AWS CloudFormation resource type -func (r *AWSEC2LaunchTemplate_CapacityReservationSpecification) AWSCloudFormationType() string { +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 *AWSEC2LaunchTemplate_CapacityReservationSpecification) DependsOn() []string { +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 *AWSEC2LaunchTemplate_CapacityReservationSpecification) SetDependsOn(dependencies []string) { +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 *AWSEC2LaunchTemplate_CapacityReservationSpecification) Metadata() map[string]interface{} { +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 *AWSEC2LaunchTemplate_CapacityReservationSpecification) SetMetadata(metadata map[string]interface{}) { +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 *AWSEC2LaunchTemplate_CapacityReservationSpecification) DeletionPolicy() policies.DeletionPolicy { +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 *AWSEC2LaunchTemplate_CapacityReservationSpecification) SetDeletionPolicy(policy policies.DeletionPolicy) { +func (r *LaunchTemplate_CapacityReservationSpecification) SetDeletionPolicy(policy policies.DeletionPolicy) { r._deletionPolicy = policy } diff --git a/cloudformation/resources/aws-ec2-launchtemplate_capacityreservationtarget.go b/cloudformation/ec2/aws-ec2-launchtemplate_capacityreservationtarget.go similarity index 69% rename from cloudformation/resources/aws-ec2-launchtemplate_capacityreservationtarget.go rename to cloudformation/ec2/aws-ec2-launchtemplate_capacityreservationtarget.go index 5ce4383fe1..67d081825f 100644 --- a/cloudformation/resources/aws-ec2-launchtemplate_capacityreservationtarget.go +++ b/cloudformation/ec2/aws-ec2-launchtemplate_capacityreservationtarget.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_CapacityReservationTarget AWS CloudFormation Resource (AWS::EC2::LaunchTemplate.CapacityReservationTarget) +// 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 AWSEC2LaunchTemplate_CapacityReservationTarget struct { +type LaunchTemplate_CapacityReservationTarget struct { // CapacityReservationId AWS CloudFormation Property // Required: false @@ -22,42 +24,42 @@ type AWSEC2LaunchTemplate_CapacityReservationTarget struct { } // AWSCloudFormationType returns the AWS CloudFormation resource type -func (r *AWSEC2LaunchTemplate_CapacityReservationTarget) AWSCloudFormationType() string { +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 *AWSEC2LaunchTemplate_CapacityReservationTarget) DependsOn() []string { +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 *AWSEC2LaunchTemplate_CapacityReservationTarget) SetDependsOn(dependencies []string) { +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 *AWSEC2LaunchTemplate_CapacityReservationTarget) Metadata() map[string]interface{} { +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 *AWSEC2LaunchTemplate_CapacityReservationTarget) SetMetadata(metadata map[string]interface{}) { +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 *AWSEC2LaunchTemplate_CapacityReservationTarget) DeletionPolicy() policies.DeletionPolicy { +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 *AWSEC2LaunchTemplate_CapacityReservationTarget) SetDeletionPolicy(policy policies.DeletionPolicy) { +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/resources/aws-ec2-launchtemplate_creditspecification.go b/cloudformation/ec2/aws-ec2-launchtemplate_creditspecification.go similarity index 70% rename from cloudformation/resources/aws-ec2-launchtemplate_creditspecification.go rename to cloudformation/ec2/aws-ec2-launchtemplate_creditspecification.go index 36885758b6..1f6841f430 100644 --- a/cloudformation/resources/aws-ec2-launchtemplate_creditspecification.go +++ b/cloudformation/ec2/aws-ec2-launchtemplate_creditspecification.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_CreditSpecification AWS CloudFormation Resource (AWS::EC2::LaunchTemplate.CreditSpecification) +// 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 AWSEC2LaunchTemplate_CreditSpecification struct { +type LaunchTemplate_CreditSpecification struct { // CpuCredits AWS CloudFormation Property // Required: false @@ -22,42 +24,42 @@ type AWSEC2LaunchTemplate_CreditSpecification struct { } // AWSCloudFormationType returns the AWS CloudFormation resource type -func (r *AWSEC2LaunchTemplate_CreditSpecification) AWSCloudFormationType() string { +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 *AWSEC2LaunchTemplate_CreditSpecification) DependsOn() []string { +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 *AWSEC2LaunchTemplate_CreditSpecification) SetDependsOn(dependencies []string) { +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 *AWSEC2LaunchTemplate_CreditSpecification) Metadata() map[string]interface{} { +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 *AWSEC2LaunchTemplate_CreditSpecification) SetMetadata(metadata map[string]interface{}) { +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 *AWSEC2LaunchTemplate_CreditSpecification) DeletionPolicy() policies.DeletionPolicy { +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 *AWSEC2LaunchTemplate_CreditSpecification) SetDeletionPolicy(policy policies.DeletionPolicy) { +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/resources/aws-ec2-launchtemplate_elasticgpuspecification.go b/cloudformation/ec2/aws-ec2-launchtemplate_elasticgpuspecification.go similarity index 69% rename from cloudformation/resources/aws-ec2-launchtemplate_elasticgpuspecification.go rename to cloudformation/ec2/aws-ec2-launchtemplate_elasticgpuspecification.go index 87e85d0fc9..0e5652d1e7 100644 --- a/cloudformation/resources/aws-ec2-launchtemplate_elasticgpuspecification.go +++ b/cloudformation/ec2/aws-ec2-launchtemplate_elasticgpuspecification.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_ElasticGpuSpecification AWS CloudFormation Resource (AWS::EC2::LaunchTemplate.ElasticGpuSpecification) +// 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 AWSEC2LaunchTemplate_ElasticGpuSpecification struct { +type LaunchTemplate_ElasticGpuSpecification struct { // Type AWS CloudFormation Property // Required: false @@ -22,42 +24,42 @@ type AWSEC2LaunchTemplate_ElasticGpuSpecification struct { } // AWSCloudFormationType returns the AWS CloudFormation resource type -func (r *AWSEC2LaunchTemplate_ElasticGpuSpecification) AWSCloudFormationType() string { +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 *AWSEC2LaunchTemplate_ElasticGpuSpecification) DependsOn() []string { +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 *AWSEC2LaunchTemplate_ElasticGpuSpecification) SetDependsOn(dependencies []string) { +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 *AWSEC2LaunchTemplate_ElasticGpuSpecification) Metadata() map[string]interface{} { +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 *AWSEC2LaunchTemplate_ElasticGpuSpecification) SetMetadata(metadata map[string]interface{}) { +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 *AWSEC2LaunchTemplate_ElasticGpuSpecification) DeletionPolicy() policies.DeletionPolicy { +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 *AWSEC2LaunchTemplate_ElasticGpuSpecification) SetDeletionPolicy(policy policies.DeletionPolicy) { +func (r *LaunchTemplate_ElasticGpuSpecification) SetDeletionPolicy(policy policies.DeletionPolicy) { r._deletionPolicy = policy } diff --git a/cloudformation/resources/aws-ec2-launchtemplate_hibernationoptions.go b/cloudformation/ec2/aws-ec2-launchtemplate_hibernationoptions.go similarity index 71% rename from cloudformation/resources/aws-ec2-launchtemplate_hibernationoptions.go rename to cloudformation/ec2/aws-ec2-launchtemplate_hibernationoptions.go index be98b64448..e74fabd8bd 100644 --- a/cloudformation/resources/aws-ec2-launchtemplate_hibernationoptions.go +++ b/cloudformation/ec2/aws-ec2-launchtemplate_hibernationoptions.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_HibernationOptions AWS CloudFormation Resource (AWS::EC2::LaunchTemplate.HibernationOptions) +// 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 AWSEC2LaunchTemplate_HibernationOptions struct { +type LaunchTemplate_HibernationOptions struct { // Configured AWS CloudFormation Property // Required: false @@ -22,42 +24,42 @@ type AWSEC2LaunchTemplate_HibernationOptions struct { } // AWSCloudFormationType returns the AWS CloudFormation resource type -func (r *AWSEC2LaunchTemplate_HibernationOptions) AWSCloudFormationType() string { +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 *AWSEC2LaunchTemplate_HibernationOptions) DependsOn() []string { +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 *AWSEC2LaunchTemplate_HibernationOptions) SetDependsOn(dependencies []string) { +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 *AWSEC2LaunchTemplate_HibernationOptions) Metadata() map[string]interface{} { +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 *AWSEC2LaunchTemplate_HibernationOptions) SetMetadata(metadata map[string]interface{}) { +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 *AWSEC2LaunchTemplate_HibernationOptions) DeletionPolicy() policies.DeletionPolicy { +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 *AWSEC2LaunchTemplate_HibernationOptions) SetDeletionPolicy(policy policies.DeletionPolicy) { +func (r *LaunchTemplate_HibernationOptions) SetDeletionPolicy(policy policies.DeletionPolicy) { r._deletionPolicy = policy } diff --git a/cloudformation/resources/aws-ec2-launchtemplate_iaminstanceprofile.go b/cloudformation/ec2/aws-ec2-launchtemplate_iaminstanceprofile.go similarity index 73% rename from cloudformation/resources/aws-ec2-launchtemplate_iaminstanceprofile.go rename to cloudformation/ec2/aws-ec2-launchtemplate_iaminstanceprofile.go index 2a287a721e..59bd5c46f2 100644 --- a/cloudformation/resources/aws-ec2-launchtemplate_iaminstanceprofile.go +++ b/cloudformation/ec2/aws-ec2-launchtemplate_iaminstanceprofile.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_IamInstanceProfile AWS CloudFormation Resource (AWS::EC2::LaunchTemplate.IamInstanceProfile) +// 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 AWSEC2LaunchTemplate_IamInstanceProfile struct { +type LaunchTemplate_IamInstanceProfile struct { // Arn AWS CloudFormation Property // Required: false @@ -27,42 +29,42 @@ type AWSEC2LaunchTemplate_IamInstanceProfile struct { } // AWSCloudFormationType returns the AWS CloudFormation resource type -func (r *AWSEC2LaunchTemplate_IamInstanceProfile) AWSCloudFormationType() string { +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 *AWSEC2LaunchTemplate_IamInstanceProfile) DependsOn() []string { +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 *AWSEC2LaunchTemplate_IamInstanceProfile) SetDependsOn(dependencies []string) { +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 *AWSEC2LaunchTemplate_IamInstanceProfile) Metadata() map[string]interface{} { +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 *AWSEC2LaunchTemplate_IamInstanceProfile) SetMetadata(metadata map[string]interface{}) { +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 *AWSEC2LaunchTemplate_IamInstanceProfile) DeletionPolicy() policies.DeletionPolicy { +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 *AWSEC2LaunchTemplate_IamInstanceProfile) SetDeletionPolicy(policy policies.DeletionPolicy) { +func (r *LaunchTemplate_IamInstanceProfile) SetDeletionPolicy(policy policies.DeletionPolicy) { r._deletionPolicy = policy } diff --git a/cloudformation/resources/aws-ec2-launchtemplate_instancemarketoptions.go b/cloudformation/ec2/aws-ec2-launchtemplate_instancemarketoptions.go similarity index 71% rename from cloudformation/resources/aws-ec2-launchtemplate_instancemarketoptions.go rename to cloudformation/ec2/aws-ec2-launchtemplate_instancemarketoptions.go index 78bcda2e10..201cc158af 100644 --- a/cloudformation/resources/aws-ec2-launchtemplate_instancemarketoptions.go +++ b/cloudformation/ec2/aws-ec2-launchtemplate_instancemarketoptions.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_InstanceMarketOptions AWS CloudFormation Resource (AWS::EC2::LaunchTemplate.InstanceMarketOptions) +// 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 AWSEC2LaunchTemplate_InstanceMarketOptions struct { +type LaunchTemplate_InstanceMarketOptions struct { // MarketType AWS CloudFormation Property // Required: false @@ -14,7 +16,7 @@ type AWSEC2LaunchTemplate_InstanceMarketOptions struct { // 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"` + SpotOptions *LaunchTemplate_SpotOptions `json:"SpotOptions,omitempty"` // _deletionPolicy represents a CloudFormation DeletionPolicy _deletionPolicy policies.DeletionPolicy @@ -27,42 +29,42 @@ type AWSEC2LaunchTemplate_InstanceMarketOptions struct { } // AWSCloudFormationType returns the AWS CloudFormation resource type -func (r *AWSEC2LaunchTemplate_InstanceMarketOptions) AWSCloudFormationType() string { +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 *AWSEC2LaunchTemplate_InstanceMarketOptions) DependsOn() []string { +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 *AWSEC2LaunchTemplate_InstanceMarketOptions) SetDependsOn(dependencies []string) { +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 *AWSEC2LaunchTemplate_InstanceMarketOptions) Metadata() map[string]interface{} { +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 *AWSEC2LaunchTemplate_InstanceMarketOptions) SetMetadata(metadata map[string]interface{}) { +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 *AWSEC2LaunchTemplate_InstanceMarketOptions) DeletionPolicy() policies.DeletionPolicy { +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 *AWSEC2LaunchTemplate_InstanceMarketOptions) SetDeletionPolicy(policy policies.DeletionPolicy) { +func (r *LaunchTemplate_InstanceMarketOptions) SetDeletionPolicy(policy policies.DeletionPolicy) { r._deletionPolicy = policy } diff --git a/cloudformation/resources/aws-ec2-launchtemplate_ipv6add.go b/cloudformation/ec2/aws-ec2-launchtemplate_ipv6add.go similarity index 72% rename from cloudformation/resources/aws-ec2-launchtemplate_ipv6add.go rename to cloudformation/ec2/aws-ec2-launchtemplate_ipv6add.go index 4368437e97..c779ac3305 100644 --- a/cloudformation/resources/aws-ec2-launchtemplate_ipv6add.go +++ b/cloudformation/ec2/aws-ec2-launchtemplate_ipv6add.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_Ipv6Add AWS CloudFormation Resource (AWS::EC2::LaunchTemplate.Ipv6Add) +// 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 AWSEC2LaunchTemplate_Ipv6Add struct { +type LaunchTemplate_Ipv6Add struct { // Ipv6Address AWS CloudFormation Property // Required: false @@ -22,42 +24,42 @@ type AWSEC2LaunchTemplate_Ipv6Add struct { } // AWSCloudFormationType returns the AWS CloudFormation resource type -func (r *AWSEC2LaunchTemplate_Ipv6Add) AWSCloudFormationType() string { +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 *AWSEC2LaunchTemplate_Ipv6Add) DependsOn() []string { +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 *AWSEC2LaunchTemplate_Ipv6Add) SetDependsOn(dependencies []string) { +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 *AWSEC2LaunchTemplate_Ipv6Add) Metadata() map[string]interface{} { +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 *AWSEC2LaunchTemplate_Ipv6Add) SetMetadata(metadata map[string]interface{}) { +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 *AWSEC2LaunchTemplate_Ipv6Add) DeletionPolicy() policies.DeletionPolicy { +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 *AWSEC2LaunchTemplate_Ipv6Add) SetDeletionPolicy(policy policies.DeletionPolicy) { +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/resources/aws-ec2-launchtemplate_launchtemplateelasticinferenceaccelerator.go b/cloudformation/ec2/aws-ec2-launchtemplate_launchtemplateelasticinferenceaccelerator.go similarity index 66% rename from cloudformation/resources/aws-ec2-launchtemplate_launchtemplateelasticinferenceaccelerator.go rename to cloudformation/ec2/aws-ec2-launchtemplate_launchtemplateelasticinferenceaccelerator.go index 7503424215..749b94fbcc 100644 --- a/cloudformation/resources/aws-ec2-launchtemplate_launchtemplateelasticinferenceaccelerator.go +++ b/cloudformation/ec2/aws-ec2-launchtemplate_launchtemplateelasticinferenceaccelerator.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_LaunchTemplateElasticInferenceAccelerator AWS CloudFormation Resource (AWS::EC2::LaunchTemplate.LaunchTemplateElasticInferenceAccelerator) +// 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 AWSEC2LaunchTemplate_LaunchTemplateElasticInferenceAccelerator struct { +type LaunchTemplate_LaunchTemplateElasticInferenceAccelerator struct { // Type AWS CloudFormation Property // Required: false @@ -22,42 +24,42 @@ type AWSEC2LaunchTemplate_LaunchTemplateElasticInferenceAccelerator struct { } // AWSCloudFormationType returns the AWS CloudFormation resource type -func (r *AWSEC2LaunchTemplate_LaunchTemplateElasticInferenceAccelerator) AWSCloudFormationType() string { +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 *AWSEC2LaunchTemplate_LaunchTemplateElasticInferenceAccelerator) DependsOn() []string { +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 *AWSEC2LaunchTemplate_LaunchTemplateElasticInferenceAccelerator) SetDependsOn(dependencies []string) { +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 *AWSEC2LaunchTemplate_LaunchTemplateElasticInferenceAccelerator) Metadata() map[string]interface{} { +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 *AWSEC2LaunchTemplate_LaunchTemplateElasticInferenceAccelerator) SetMetadata(metadata map[string]interface{}) { +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 *AWSEC2LaunchTemplate_LaunchTemplateElasticInferenceAccelerator) DeletionPolicy() policies.DeletionPolicy { +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 *AWSEC2LaunchTemplate_LaunchTemplateElasticInferenceAccelerator) SetDeletionPolicy(policy policies.DeletionPolicy) { +func (r *LaunchTemplate_LaunchTemplateElasticInferenceAccelerator) SetDeletionPolicy(policy policies.DeletionPolicy) { r._deletionPolicy = policy } diff --git a/cloudformation/resources/aws-ec2-launchtemplate_licensespecification.go b/cloudformation/ec2/aws-ec2-launchtemplate_licensespecification.go similarity index 70% rename from cloudformation/resources/aws-ec2-launchtemplate_licensespecification.go rename to cloudformation/ec2/aws-ec2-launchtemplate_licensespecification.go index ff34c20c19..0819de8dec 100644 --- a/cloudformation/resources/aws-ec2-launchtemplate_licensespecification.go +++ b/cloudformation/ec2/aws-ec2-launchtemplate_licensespecification.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_LicenseSpecification AWS CloudFormation Resource (AWS::EC2::LaunchTemplate.LicenseSpecification) +// 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 AWSEC2LaunchTemplate_LicenseSpecification struct { +type LaunchTemplate_LicenseSpecification struct { // LicenseConfigurationArn AWS CloudFormation Property // Required: false @@ -22,42 +24,42 @@ type AWSEC2LaunchTemplate_LicenseSpecification struct { } // AWSCloudFormationType returns the AWS CloudFormation resource type -func (r *AWSEC2LaunchTemplate_LicenseSpecification) AWSCloudFormationType() string { +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 *AWSEC2LaunchTemplate_LicenseSpecification) DependsOn() []string { +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 *AWSEC2LaunchTemplate_LicenseSpecification) SetDependsOn(dependencies []string) { +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 *AWSEC2LaunchTemplate_LicenseSpecification) Metadata() map[string]interface{} { +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 *AWSEC2LaunchTemplate_LicenseSpecification) SetMetadata(metadata map[string]interface{}) { +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 *AWSEC2LaunchTemplate_LicenseSpecification) DeletionPolicy() policies.DeletionPolicy { +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 *AWSEC2LaunchTemplate_LicenseSpecification) SetDeletionPolicy(policy policies.DeletionPolicy) { +func (r *LaunchTemplate_LicenseSpecification) SetDeletionPolicy(policy policies.DeletionPolicy) { r._deletionPolicy = policy } diff --git a/cloudformation/resources/aws-ec2-launchtemplate_monitoring.go b/cloudformation/ec2/aws-ec2-launchtemplate_monitoring.go similarity index 72% rename from cloudformation/resources/aws-ec2-launchtemplate_monitoring.go rename to cloudformation/ec2/aws-ec2-launchtemplate_monitoring.go index b597ec247b..e835d74eac 100644 --- a/cloudformation/resources/aws-ec2-launchtemplate_monitoring.go +++ b/cloudformation/ec2/aws-ec2-launchtemplate_monitoring.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_Monitoring AWS CloudFormation Resource (AWS::EC2::LaunchTemplate.Monitoring) +// 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 AWSEC2LaunchTemplate_Monitoring struct { +type LaunchTemplate_Monitoring struct { // Enabled AWS CloudFormation Property // Required: false @@ -22,42 +24,42 @@ type AWSEC2LaunchTemplate_Monitoring struct { } // AWSCloudFormationType returns the AWS CloudFormation resource type -func (r *AWSEC2LaunchTemplate_Monitoring) AWSCloudFormationType() string { +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 *AWSEC2LaunchTemplate_Monitoring) DependsOn() []string { +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 *AWSEC2LaunchTemplate_Monitoring) SetDependsOn(dependencies []string) { +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 *AWSEC2LaunchTemplate_Monitoring) Metadata() map[string]interface{} { +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 *AWSEC2LaunchTemplate_Monitoring) SetMetadata(metadata map[string]interface{}) { +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 *AWSEC2LaunchTemplate_Monitoring) DeletionPolicy() policies.DeletionPolicy { +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 *AWSEC2LaunchTemplate_Monitoring) SetDeletionPolicy(policy policies.DeletionPolicy) { +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/resources/aws-ec2-launchtemplate_privateipadd.go b/cloudformation/ec2/aws-ec2-launchtemplate_privateipadd.go similarity index 74% rename from cloudformation/resources/aws-ec2-launchtemplate_privateipadd.go rename to cloudformation/ec2/aws-ec2-launchtemplate_privateipadd.go index 9d41fd14f2..68fd1effe3 100644 --- a/cloudformation/resources/aws-ec2-launchtemplate_privateipadd.go +++ b/cloudformation/ec2/aws-ec2-launchtemplate_privateipadd.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_PrivateIpAdd AWS CloudFormation Resource (AWS::EC2::LaunchTemplate.PrivateIpAdd) +// 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 AWSEC2LaunchTemplate_PrivateIpAdd struct { +type LaunchTemplate_PrivateIpAdd struct { // Primary AWS CloudFormation Property // Required: false @@ -27,42 +29,42 @@ type AWSEC2LaunchTemplate_PrivateIpAdd struct { } // AWSCloudFormationType returns the AWS CloudFormation resource type -func (r *AWSEC2LaunchTemplate_PrivateIpAdd) AWSCloudFormationType() string { +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 *AWSEC2LaunchTemplate_PrivateIpAdd) DependsOn() []string { +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 *AWSEC2LaunchTemplate_PrivateIpAdd) SetDependsOn(dependencies []string) { +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 *AWSEC2LaunchTemplate_PrivateIpAdd) Metadata() map[string]interface{} { +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 *AWSEC2LaunchTemplate_PrivateIpAdd) SetMetadata(metadata map[string]interface{}) { +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 *AWSEC2LaunchTemplate_PrivateIpAdd) DeletionPolicy() policies.DeletionPolicy { +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 *AWSEC2LaunchTemplate_PrivateIpAdd) SetDeletionPolicy(policy policies.DeletionPolicy) { +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/resources/aws-ec2-launchtemplate_tagspecification.go b/cloudformation/ec2/aws-ec2-launchtemplate_tagspecification.go similarity index 72% rename from cloudformation/resources/aws-ec2-launchtemplate_tagspecification.go rename to cloudformation/ec2/aws-ec2-launchtemplate_tagspecification.go index 57c3d652cd..f3858a74c8 100644 --- a/cloudformation/resources/aws-ec2-launchtemplate_tagspecification.go +++ b/cloudformation/ec2/aws-ec2-launchtemplate_tagspecification.go @@ -1,10 +1,13 @@ -package resources +package ec2 -import "github.com/awslabs/goformation/v2/cloudformation/policies" +import ( + "github.com/awslabs/goformation/v3/cloudformation/policies" + "github.com/awslabs/goformation/v3/cloudformation/tags" +) -// AWSEC2LaunchTemplate_TagSpecification AWS CloudFormation Resource (AWS::EC2::LaunchTemplate.TagSpecification) +// 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 AWSEC2LaunchTemplate_TagSpecification struct { +type LaunchTemplate_TagSpecification struct { // ResourceType AWS CloudFormation Property // Required: false @@ -14,7 +17,7 @@ type AWSEC2LaunchTemplate_TagSpecification struct { // 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"` + Tags []tags.Tag `json:"Tags,omitempty"` // _deletionPolicy represents a CloudFormation DeletionPolicy _deletionPolicy policies.DeletionPolicy @@ -27,42 +30,42 @@ type AWSEC2LaunchTemplate_TagSpecification struct { } // AWSCloudFormationType returns the AWS CloudFormation resource type -func (r *AWSEC2LaunchTemplate_TagSpecification) AWSCloudFormationType() string { +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 *AWSEC2LaunchTemplate_TagSpecification) DependsOn() []string { +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 *AWSEC2LaunchTemplate_TagSpecification) SetDependsOn(dependencies []string) { +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 *AWSEC2LaunchTemplate_TagSpecification) Metadata() map[string]interface{} { +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 *AWSEC2LaunchTemplate_TagSpecification) SetMetadata(metadata map[string]interface{}) { +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 *AWSEC2LaunchTemplate_TagSpecification) DeletionPolicy() policies.DeletionPolicy { +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 *AWSEC2LaunchTemplate_TagSpecification) SetDeletionPolicy(policy policies.DeletionPolicy) { +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/resources/aws-ec2-networkaclentry_portrange.go b/cloudformation/ec2/aws-ec2-networkaclentry_portrange.go similarity index 74% rename from cloudformation/resources/aws-ec2-networkaclentry_portrange.go rename to cloudformation/ec2/aws-ec2-networkaclentry_portrange.go index 794b440a6b..0bb95f1458 100644 --- a/cloudformation/resources/aws-ec2-networkaclentry_portrange.go +++ b/cloudformation/ec2/aws-ec2-networkaclentry_portrange.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_PortRange AWS CloudFormation Resource (AWS::EC2::NetworkAclEntry.PortRange) +// 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 AWSEC2NetworkAclEntry_PortRange struct { +type NetworkAclEntry_PortRange struct { // From AWS CloudFormation Property // Required: false @@ -27,42 +29,42 @@ type AWSEC2NetworkAclEntry_PortRange struct { } // AWSCloudFormationType returns the AWS CloudFormation resource type -func (r *AWSEC2NetworkAclEntry_PortRange) AWSCloudFormationType() string { +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 *AWSEC2NetworkAclEntry_PortRange) DependsOn() []string { +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 *AWSEC2NetworkAclEntry_PortRange) SetDependsOn(dependencies []string) { +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 *AWSEC2NetworkAclEntry_PortRange) Metadata() map[string]interface{} { +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 *AWSEC2NetworkAclEntry_PortRange) SetMetadata(metadata map[string]interface{}) { +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 *AWSEC2NetworkAclEntry_PortRange) DeletionPolicy() policies.DeletionPolicy { +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 *AWSEC2NetworkAclEntry_PortRange) SetDeletionPolicy(policy policies.DeletionPolicy) { +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/resources/aws-ec2-networkinterface_instanceipv6address.go b/cloudformation/ec2/aws-ec2-networkinterface_instanceipv6address.go similarity index 69% rename from cloudformation/resources/aws-ec2-networkinterface_instanceipv6address.go rename to cloudformation/ec2/aws-ec2-networkinterface_instanceipv6address.go index 7a0bae4f0f..129557cd8c 100644 --- a/cloudformation/resources/aws-ec2-networkinterface_instanceipv6address.go +++ b/cloudformation/ec2/aws-ec2-networkinterface_instanceipv6address.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" +) -// AWSEC2NetworkInterface_InstanceIpv6Address AWS CloudFormation Resource (AWS::EC2::NetworkInterface.InstanceIpv6Address) +// 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 AWSEC2NetworkInterface_InstanceIpv6Address struct { +type NetworkInterface_InstanceIpv6Address struct { // Ipv6Address AWS CloudFormation Property // Required: true @@ -22,42 +24,42 @@ type AWSEC2NetworkInterface_InstanceIpv6Address struct { } // AWSCloudFormationType returns the AWS CloudFormation resource type -func (r *AWSEC2NetworkInterface_InstanceIpv6Address) AWSCloudFormationType() string { +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 *AWSEC2NetworkInterface_InstanceIpv6Address) DependsOn() []string { +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 *AWSEC2NetworkInterface_InstanceIpv6Address) SetDependsOn(dependencies []string) { +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 *AWSEC2NetworkInterface_InstanceIpv6Address) Metadata() map[string]interface{} { +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 *AWSEC2NetworkInterface_InstanceIpv6Address) SetMetadata(metadata map[string]interface{}) { +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 *AWSEC2NetworkInterface_InstanceIpv6Address) DeletionPolicy() policies.DeletionPolicy { +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 *AWSEC2NetworkInterface_InstanceIpv6Address) SetDeletionPolicy(policy policies.DeletionPolicy) { +func (r *NetworkInterface_InstanceIpv6Address) SetDeletionPolicy(policy policies.DeletionPolicy) { r._deletionPolicy = policy } diff --git a/cloudformation/resources/aws-ec2-networkinterface_privateipaddressspecification.go b/cloudformation/ec2/aws-ec2-networkinterface_privateipaddressspecification.go similarity index 70% rename from cloudformation/resources/aws-ec2-networkinterface_privateipaddressspecification.go rename to cloudformation/ec2/aws-ec2-networkinterface_privateipaddressspecification.go index 3328cb3ada..db3b2386fc 100644 --- a/cloudformation/resources/aws-ec2-networkinterface_privateipaddressspecification.go +++ b/cloudformation/ec2/aws-ec2-networkinterface_privateipaddressspecification.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" +) -// AWSEC2NetworkInterface_PrivateIpAddressSpecification AWS CloudFormation Resource (AWS::EC2::NetworkInterface.PrivateIpAddressSpecification) +// 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 AWSEC2NetworkInterface_PrivateIpAddressSpecification struct { +type NetworkInterface_PrivateIpAddressSpecification struct { // Primary AWS CloudFormation Property // Required: true @@ -27,42 +29,42 @@ type AWSEC2NetworkInterface_PrivateIpAddressSpecification struct { } // AWSCloudFormationType returns the AWS CloudFormation resource type -func (r *AWSEC2NetworkInterface_PrivateIpAddressSpecification) AWSCloudFormationType() string { +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 *AWSEC2NetworkInterface_PrivateIpAddressSpecification) DependsOn() []string { +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 *AWSEC2NetworkInterface_PrivateIpAddressSpecification) SetDependsOn(dependencies []string) { +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 *AWSEC2NetworkInterface_PrivateIpAddressSpecification) Metadata() map[string]interface{} { +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 *AWSEC2NetworkInterface_PrivateIpAddressSpecification) SetMetadata(metadata map[string]interface{}) { +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 *AWSEC2NetworkInterface_PrivateIpAddressSpecification) DeletionPolicy() policies.DeletionPolicy { +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 *AWSEC2NetworkInterface_PrivateIpAddressSpecification) SetDeletionPolicy(policy policies.DeletionPolicy) { +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/resources/aws-ec2-spotfleet_classicloadbalancer.go b/cloudformation/ec2/aws-ec2-spotfleet_classicloadbalancer.go similarity index 71% rename from cloudformation/resources/aws-ec2-spotfleet_classicloadbalancer.go rename to cloudformation/ec2/aws-ec2-spotfleet_classicloadbalancer.go index fae1f0d4a5..ef3228b11a 100644 --- a/cloudformation/resources/aws-ec2-spotfleet_classicloadbalancer.go +++ b/cloudformation/ec2/aws-ec2-spotfleet_classicloadbalancer.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_ClassicLoadBalancer AWS CloudFormation Resource (AWS::EC2::SpotFleet.ClassicLoadBalancer) +// 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 AWSEC2SpotFleet_ClassicLoadBalancer struct { +type SpotFleet_ClassicLoadBalancer struct { // Name AWS CloudFormation Property // Required: true @@ -22,42 +24,42 @@ type AWSEC2SpotFleet_ClassicLoadBalancer struct { } // AWSCloudFormationType returns the AWS CloudFormation resource type -func (r *AWSEC2SpotFleet_ClassicLoadBalancer) AWSCloudFormationType() string { +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 *AWSEC2SpotFleet_ClassicLoadBalancer) DependsOn() []string { +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 *AWSEC2SpotFleet_ClassicLoadBalancer) SetDependsOn(dependencies []string) { +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 *AWSEC2SpotFleet_ClassicLoadBalancer) Metadata() map[string]interface{} { +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 *AWSEC2SpotFleet_ClassicLoadBalancer) SetMetadata(metadata map[string]interface{}) { +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 *AWSEC2SpotFleet_ClassicLoadBalancer) DeletionPolicy() policies.DeletionPolicy { +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 *AWSEC2SpotFleet_ClassicLoadBalancer) SetDeletionPolicy(policy policies.DeletionPolicy) { +func (r *SpotFleet_ClassicLoadBalancer) SetDeletionPolicy(policy policies.DeletionPolicy) { r._deletionPolicy = policy } diff --git a/cloudformation/resources/aws-ec2-spotfleet_classicloadbalancersconfig.go b/cloudformation/ec2/aws-ec2-spotfleet_classicloadbalancersconfig.go similarity index 67% rename from cloudformation/resources/aws-ec2-spotfleet_classicloadbalancersconfig.go rename to cloudformation/ec2/aws-ec2-spotfleet_classicloadbalancersconfig.go index cbbe12e14e..550b35939a 100644 --- a/cloudformation/resources/aws-ec2-spotfleet_classicloadbalancersconfig.go +++ b/cloudformation/ec2/aws-ec2-spotfleet_classicloadbalancersconfig.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_ClassicLoadBalancersConfig AWS CloudFormation Resource (AWS::EC2::SpotFleet.ClassicLoadBalancersConfig) +// 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 AWSEC2SpotFleet_ClassicLoadBalancersConfig struct { +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 []AWSEC2SpotFleet_ClassicLoadBalancer `json:"ClassicLoadBalancers,omitempty"` + ClassicLoadBalancers []SpotFleet_ClassicLoadBalancer `json:"ClassicLoadBalancers,omitempty"` // _deletionPolicy represents a CloudFormation DeletionPolicy _deletionPolicy policies.DeletionPolicy @@ -22,42 +24,42 @@ type AWSEC2SpotFleet_ClassicLoadBalancersConfig struct { } // AWSCloudFormationType returns the AWS CloudFormation resource type -func (r *AWSEC2SpotFleet_ClassicLoadBalancersConfig) AWSCloudFormationType() string { +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 *AWSEC2SpotFleet_ClassicLoadBalancersConfig) DependsOn() []string { +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 *AWSEC2SpotFleet_ClassicLoadBalancersConfig) SetDependsOn(dependencies []string) { +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 *AWSEC2SpotFleet_ClassicLoadBalancersConfig) Metadata() map[string]interface{} { +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 *AWSEC2SpotFleet_ClassicLoadBalancersConfig) SetMetadata(metadata map[string]interface{}) { +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 *AWSEC2SpotFleet_ClassicLoadBalancersConfig) DeletionPolicy() policies.DeletionPolicy { +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 *AWSEC2SpotFleet_ClassicLoadBalancersConfig) SetDeletionPolicy(policy policies.DeletionPolicy) { +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/resources/aws-ec2-spotfleet_fleetlaunchtemplatespecification.go b/cloudformation/ec2/aws-ec2-spotfleet_fleetlaunchtemplatespecification.go similarity index 74% rename from cloudformation/resources/aws-ec2-spotfleet_fleetlaunchtemplatespecification.go rename to cloudformation/ec2/aws-ec2-spotfleet_fleetlaunchtemplatespecification.go index 533274060a..3e2f1e0d89 100644 --- a/cloudformation/resources/aws-ec2-spotfleet_fleetlaunchtemplatespecification.go +++ b/cloudformation/ec2/aws-ec2-spotfleet_fleetlaunchtemplatespecification.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_FleetLaunchTemplateSpecification AWS CloudFormation Resource (AWS::EC2::SpotFleet.FleetLaunchTemplateSpecification) +// 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 AWSEC2SpotFleet_FleetLaunchTemplateSpecification struct { +type SpotFleet_FleetLaunchTemplateSpecification struct { // LaunchTemplateId AWS CloudFormation Property // Required: false @@ -32,42 +34,42 @@ type AWSEC2SpotFleet_FleetLaunchTemplateSpecification struct { } // AWSCloudFormationType returns the AWS CloudFormation resource type -func (r *AWSEC2SpotFleet_FleetLaunchTemplateSpecification) AWSCloudFormationType() string { +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 *AWSEC2SpotFleet_FleetLaunchTemplateSpecification) DependsOn() []string { +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 *AWSEC2SpotFleet_FleetLaunchTemplateSpecification) SetDependsOn(dependencies []string) { +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 *AWSEC2SpotFleet_FleetLaunchTemplateSpecification) Metadata() map[string]interface{} { +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 *AWSEC2SpotFleet_FleetLaunchTemplateSpecification) SetMetadata(metadata map[string]interface{}) { +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 *AWSEC2SpotFleet_FleetLaunchTemplateSpecification) DeletionPolicy() policies.DeletionPolicy { +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 *AWSEC2SpotFleet_FleetLaunchTemplateSpecification) SetDeletionPolicy(policy policies.DeletionPolicy) { +func (r *SpotFleet_FleetLaunchTemplateSpecification) SetDeletionPolicy(policy policies.DeletionPolicy) { r._deletionPolicy = policy } diff --git a/cloudformation/resources/aws-ec2-spotfleet_groupidentifier.go b/cloudformation/ec2/aws-ec2-spotfleet_groupidentifier.go similarity index 72% rename from cloudformation/resources/aws-ec2-spotfleet_groupidentifier.go rename to cloudformation/ec2/aws-ec2-spotfleet_groupidentifier.go index 1f4e25eff2..73c1563057 100644 --- a/cloudformation/resources/aws-ec2-spotfleet_groupidentifier.go +++ b/cloudformation/ec2/aws-ec2-spotfleet_groupidentifier.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_GroupIdentifier AWS CloudFormation Resource (AWS::EC2::SpotFleet.GroupIdentifier) +// 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 AWSEC2SpotFleet_GroupIdentifier struct { +type SpotFleet_GroupIdentifier struct { // GroupId AWS CloudFormation Property // Required: true @@ -22,42 +24,42 @@ type AWSEC2SpotFleet_GroupIdentifier struct { } // AWSCloudFormationType returns the AWS CloudFormation resource type -func (r *AWSEC2SpotFleet_GroupIdentifier) AWSCloudFormationType() string { +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 *AWSEC2SpotFleet_GroupIdentifier) DependsOn() []string { +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 *AWSEC2SpotFleet_GroupIdentifier) SetDependsOn(dependencies []string) { +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 *AWSEC2SpotFleet_GroupIdentifier) Metadata() map[string]interface{} { +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 *AWSEC2SpotFleet_GroupIdentifier) SetMetadata(metadata map[string]interface{}) { +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 *AWSEC2SpotFleet_GroupIdentifier) DeletionPolicy() policies.DeletionPolicy { +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 *AWSEC2SpotFleet_GroupIdentifier) SetDeletionPolicy(policy policies.DeletionPolicy) { +func (r *SpotFleet_GroupIdentifier) SetDeletionPolicy(policy policies.DeletionPolicy) { r._deletionPolicy = policy } diff --git a/cloudformation/resources/aws-ec2-spotfleet_iaminstanceprofilespecification.go b/cloudformation/ec2/aws-ec2-spotfleet_iaminstanceprofilespecification.go similarity index 69% rename from cloudformation/resources/aws-ec2-spotfleet_iaminstanceprofilespecification.go rename to cloudformation/ec2/aws-ec2-spotfleet_iaminstanceprofilespecification.go index 4d944f61e2..7802fcb699 100644 --- a/cloudformation/resources/aws-ec2-spotfleet_iaminstanceprofilespecification.go +++ b/cloudformation/ec2/aws-ec2-spotfleet_iaminstanceprofilespecification.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_IamInstanceProfileSpecification AWS CloudFormation Resource (AWS::EC2::SpotFleet.IamInstanceProfileSpecification) +// 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 AWSEC2SpotFleet_IamInstanceProfileSpecification struct { +type SpotFleet_IamInstanceProfileSpecification struct { // Arn AWS CloudFormation Property // Required: false @@ -22,42 +24,42 @@ type AWSEC2SpotFleet_IamInstanceProfileSpecification struct { } // AWSCloudFormationType returns the AWS CloudFormation resource type -func (r *AWSEC2SpotFleet_IamInstanceProfileSpecification) AWSCloudFormationType() string { +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 *AWSEC2SpotFleet_IamInstanceProfileSpecification) DependsOn() []string { +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 *AWSEC2SpotFleet_IamInstanceProfileSpecification) SetDependsOn(dependencies []string) { +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 *AWSEC2SpotFleet_IamInstanceProfileSpecification) Metadata() map[string]interface{} { +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 *AWSEC2SpotFleet_IamInstanceProfileSpecification) SetMetadata(metadata map[string]interface{}) { +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 *AWSEC2SpotFleet_IamInstanceProfileSpecification) DeletionPolicy() policies.DeletionPolicy { +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 *AWSEC2SpotFleet_IamInstanceProfileSpecification) SetDeletionPolicy(policy policies.DeletionPolicy) { +func (r *SpotFleet_IamInstanceProfileSpecification) SetDeletionPolicy(policy policies.DeletionPolicy) { r._deletionPolicy = policy } diff --git a/cloudformation/resources/aws-ec2-spotfleet_instanceipv6address.go b/cloudformation/ec2/aws-ec2-spotfleet_instanceipv6address.go similarity index 71% rename from cloudformation/resources/aws-ec2-spotfleet_instanceipv6address.go rename to cloudformation/ec2/aws-ec2-spotfleet_instanceipv6address.go index d139bdaaa5..3b4e477896 100644 --- a/cloudformation/resources/aws-ec2-spotfleet_instanceipv6address.go +++ b/cloudformation/ec2/aws-ec2-spotfleet_instanceipv6address.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_InstanceIpv6Address AWS CloudFormation Resource (AWS::EC2::SpotFleet.InstanceIpv6Address) +// 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 AWSEC2SpotFleet_InstanceIpv6Address struct { +type SpotFleet_InstanceIpv6Address struct { // Ipv6Address AWS CloudFormation Property // Required: true @@ -22,42 +24,42 @@ type AWSEC2SpotFleet_InstanceIpv6Address struct { } // AWSCloudFormationType returns the AWS CloudFormation resource type -func (r *AWSEC2SpotFleet_InstanceIpv6Address) AWSCloudFormationType() string { +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 *AWSEC2SpotFleet_InstanceIpv6Address) DependsOn() []string { +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 *AWSEC2SpotFleet_InstanceIpv6Address) SetDependsOn(dependencies []string) { +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 *AWSEC2SpotFleet_InstanceIpv6Address) Metadata() map[string]interface{} { +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 *AWSEC2SpotFleet_InstanceIpv6Address) SetMetadata(metadata map[string]interface{}) { +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 *AWSEC2SpotFleet_InstanceIpv6Address) DeletionPolicy() policies.DeletionPolicy { +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 *AWSEC2SpotFleet_InstanceIpv6Address) SetDeletionPolicy(policy policies.DeletionPolicy) { +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/resources/aws-ec2-spotfleet_launchtemplateconfig.go b/cloudformation/ec2/aws-ec2-spotfleet_launchtemplateconfig.go similarity index 68% rename from cloudformation/resources/aws-ec2-spotfleet_launchtemplateconfig.go rename to cloudformation/ec2/aws-ec2-spotfleet_launchtemplateconfig.go index 968c21c441..897c799fcc 100644 --- a/cloudformation/resources/aws-ec2-spotfleet_launchtemplateconfig.go +++ b/cloudformation/ec2/aws-ec2-spotfleet_launchtemplateconfig.go @@ -1,20 +1,22 @@ -package resources +package ec2 -import "github.com/awslabs/goformation/v2/cloudformation/policies" +import ( + "github.com/awslabs/goformation/v3/cloudformation/policies" +) -// AWSEC2SpotFleet_LaunchTemplateConfig AWS CloudFormation Resource (AWS::EC2::SpotFleet.LaunchTemplateConfig) +// 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 AWSEC2SpotFleet_LaunchTemplateConfig struct { +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 *AWSEC2SpotFleet_FleetLaunchTemplateSpecification `json:"LaunchTemplateSpecification,omitempty"` + 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 []AWSEC2SpotFleet_LaunchTemplateOverrides `json:"Overrides,omitempty"` + Overrides []SpotFleet_LaunchTemplateOverrides `json:"Overrides,omitempty"` // _deletionPolicy represents a CloudFormation DeletionPolicy _deletionPolicy policies.DeletionPolicy @@ -27,42 +29,42 @@ type AWSEC2SpotFleet_LaunchTemplateConfig struct { } // AWSCloudFormationType returns the AWS CloudFormation resource type -func (r *AWSEC2SpotFleet_LaunchTemplateConfig) AWSCloudFormationType() string { +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 *AWSEC2SpotFleet_LaunchTemplateConfig) DependsOn() []string { +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 *AWSEC2SpotFleet_LaunchTemplateConfig) SetDependsOn(dependencies []string) { +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 *AWSEC2SpotFleet_LaunchTemplateConfig) Metadata() map[string]interface{} { +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 *AWSEC2SpotFleet_LaunchTemplateConfig) SetMetadata(metadata map[string]interface{}) { +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 *AWSEC2SpotFleet_LaunchTemplateConfig) DeletionPolicy() policies.DeletionPolicy { +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 *AWSEC2SpotFleet_LaunchTemplateConfig) SetDeletionPolicy(policy policies.DeletionPolicy) { +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/resources/aws-ec2-spotfleet_loadbalancersconfig.go b/cloudformation/ec2/aws-ec2-spotfleet_loadbalancersconfig.go similarity index 68% rename from cloudformation/resources/aws-ec2-spotfleet_loadbalancersconfig.go rename to cloudformation/ec2/aws-ec2-spotfleet_loadbalancersconfig.go index 08c83bb740..38bde751e8 100644 --- a/cloudformation/resources/aws-ec2-spotfleet_loadbalancersconfig.go +++ b/cloudformation/ec2/aws-ec2-spotfleet_loadbalancersconfig.go @@ -1,20 +1,22 @@ -package resources +package ec2 -import "github.com/awslabs/goformation/v2/cloudformation/policies" +import ( + "github.com/awslabs/goformation/v3/cloudformation/policies" +) -// AWSEC2SpotFleet_LoadBalancersConfig AWS CloudFormation Resource (AWS::EC2::SpotFleet.LoadBalancersConfig) +// 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 AWSEC2SpotFleet_LoadBalancersConfig struct { +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 *AWSEC2SpotFleet_ClassicLoadBalancersConfig `json:"ClassicLoadBalancersConfig,omitempty"` + 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 *AWSEC2SpotFleet_TargetGroupsConfig `json:"TargetGroupsConfig,omitempty"` + TargetGroupsConfig *SpotFleet_TargetGroupsConfig `json:"TargetGroupsConfig,omitempty"` // _deletionPolicy represents a CloudFormation DeletionPolicy _deletionPolicy policies.DeletionPolicy @@ -27,42 +29,42 @@ type AWSEC2SpotFleet_LoadBalancersConfig struct { } // AWSCloudFormationType returns the AWS CloudFormation resource type -func (r *AWSEC2SpotFleet_LoadBalancersConfig) AWSCloudFormationType() string { +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 *AWSEC2SpotFleet_LoadBalancersConfig) DependsOn() []string { +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 *AWSEC2SpotFleet_LoadBalancersConfig) SetDependsOn(dependencies []string) { +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 *AWSEC2SpotFleet_LoadBalancersConfig) Metadata() map[string]interface{} { +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 *AWSEC2SpotFleet_LoadBalancersConfig) SetMetadata(metadata map[string]interface{}) { +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 *AWSEC2SpotFleet_LoadBalancersConfig) DeletionPolicy() policies.DeletionPolicy { +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 *AWSEC2SpotFleet_LoadBalancersConfig) SetDeletionPolicy(policy policies.DeletionPolicy) { +func (r *SpotFleet_LoadBalancersConfig) SetDeletionPolicy(policy policies.DeletionPolicy) { r._deletionPolicy = policy } diff --git a/cloudformation/resources/aws-ec2-spotfleet_privateipaddressspecification.go b/cloudformation/ec2/aws-ec2-spotfleet_privateipaddressspecification.go similarity index 73% rename from cloudformation/resources/aws-ec2-spotfleet_privateipaddressspecification.go rename to cloudformation/ec2/aws-ec2-spotfleet_privateipaddressspecification.go index f94abfbc6f..546508ec5f 100644 --- a/cloudformation/resources/aws-ec2-spotfleet_privateipaddressspecification.go +++ b/cloudformation/ec2/aws-ec2-spotfleet_privateipaddressspecification.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_PrivateIpAddressSpecification AWS CloudFormation Resource (AWS::EC2::SpotFleet.PrivateIpAddressSpecification) +// 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 AWSEC2SpotFleet_PrivateIpAddressSpecification struct { +type SpotFleet_PrivateIpAddressSpecification struct { // Primary AWS CloudFormation Property // Required: false @@ -27,42 +29,42 @@ type AWSEC2SpotFleet_PrivateIpAddressSpecification struct { } // AWSCloudFormationType returns the AWS CloudFormation resource type -func (r *AWSEC2SpotFleet_PrivateIpAddressSpecification) AWSCloudFormationType() string { +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 *AWSEC2SpotFleet_PrivateIpAddressSpecification) DependsOn() []string { +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 *AWSEC2SpotFleet_PrivateIpAddressSpecification) SetDependsOn(dependencies []string) { +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 *AWSEC2SpotFleet_PrivateIpAddressSpecification) Metadata() map[string]interface{} { +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 *AWSEC2SpotFleet_PrivateIpAddressSpecification) SetMetadata(metadata map[string]interface{}) { +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 *AWSEC2SpotFleet_PrivateIpAddressSpecification) DeletionPolicy() policies.DeletionPolicy { +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 *AWSEC2SpotFleet_PrivateIpAddressSpecification) SetDeletionPolicy(policy policies.DeletionPolicy) { +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/resources/aws-ec2-spotfleet_spotfleetmonitoring.go b/cloudformation/ec2/aws-ec2-spotfleet_spotfleetmonitoring.go similarity index 71% rename from cloudformation/resources/aws-ec2-spotfleet_spotfleetmonitoring.go rename to cloudformation/ec2/aws-ec2-spotfleet_spotfleetmonitoring.go index b2716ae5fb..f48ba7a6aa 100644 --- a/cloudformation/resources/aws-ec2-spotfleet_spotfleetmonitoring.go +++ b/cloudformation/ec2/aws-ec2-spotfleet_spotfleetmonitoring.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_SpotFleetMonitoring AWS CloudFormation Resource (AWS::EC2::SpotFleet.SpotFleetMonitoring) +// 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 AWSEC2SpotFleet_SpotFleetMonitoring struct { +type SpotFleet_SpotFleetMonitoring struct { // Enabled AWS CloudFormation Property // Required: false @@ -22,42 +24,42 @@ type AWSEC2SpotFleet_SpotFleetMonitoring struct { } // AWSCloudFormationType returns the AWS CloudFormation resource type -func (r *AWSEC2SpotFleet_SpotFleetMonitoring) AWSCloudFormationType() string { +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 *AWSEC2SpotFleet_SpotFleetMonitoring) DependsOn() []string { +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 *AWSEC2SpotFleet_SpotFleetMonitoring) SetDependsOn(dependencies []string) { +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 *AWSEC2SpotFleet_SpotFleetMonitoring) Metadata() map[string]interface{} { +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 *AWSEC2SpotFleet_SpotFleetMonitoring) SetMetadata(metadata map[string]interface{}) { +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 *AWSEC2SpotFleet_SpotFleetMonitoring) DeletionPolicy() policies.DeletionPolicy { +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 *AWSEC2SpotFleet_SpotFleetMonitoring) SetDeletionPolicy(policy policies.DeletionPolicy) { +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/resources/aws-ec2-spotfleet_spotfleettagspecification.go b/cloudformation/ec2/aws-ec2-spotfleet_spotfleettagspecification.go similarity index 72% rename from cloudformation/resources/aws-ec2-spotfleet_spotfleettagspecification.go rename to cloudformation/ec2/aws-ec2-spotfleet_spotfleettagspecification.go index a885280113..2631321436 100644 --- a/cloudformation/resources/aws-ec2-spotfleet_spotfleettagspecification.go +++ b/cloudformation/ec2/aws-ec2-spotfleet_spotfleettagspecification.go @@ -1,10 +1,13 @@ -package resources +package ec2 -import "github.com/awslabs/goformation/v2/cloudformation/policies" +import ( + "github.com/awslabs/goformation/v3/cloudformation/policies" + "github.com/awslabs/goformation/v3/cloudformation/tags" +) -// AWSEC2SpotFleet_SpotFleetTagSpecification AWS CloudFormation Resource (AWS::EC2::SpotFleet.SpotFleetTagSpecification) +// 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 AWSEC2SpotFleet_SpotFleetTagSpecification struct { +type SpotFleet_SpotFleetTagSpecification struct { // ResourceType AWS CloudFormation Property // Required: false @@ -14,7 +17,7 @@ type AWSEC2SpotFleet_SpotFleetTagSpecification struct { // 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"` + Tags []tags.Tag `json:"Tags,omitempty"` // _deletionPolicy represents a CloudFormation DeletionPolicy _deletionPolicy policies.DeletionPolicy @@ -27,42 +30,42 @@ type AWSEC2SpotFleet_SpotFleetTagSpecification struct { } // AWSCloudFormationType returns the AWS CloudFormation resource type -func (r *AWSEC2SpotFleet_SpotFleetTagSpecification) AWSCloudFormationType() string { +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 *AWSEC2SpotFleet_SpotFleetTagSpecification) DependsOn() []string { +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 *AWSEC2SpotFleet_SpotFleetTagSpecification) SetDependsOn(dependencies []string) { +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 *AWSEC2SpotFleet_SpotFleetTagSpecification) Metadata() map[string]interface{} { +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 *AWSEC2SpotFleet_SpotFleetTagSpecification) SetMetadata(metadata map[string]interface{}) { +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 *AWSEC2SpotFleet_SpotFleetTagSpecification) DeletionPolicy() policies.DeletionPolicy { +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 *AWSEC2SpotFleet_SpotFleetTagSpecification) SetDeletionPolicy(policy policies.DeletionPolicy) { +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/resources/aws-ec2-spotfleet_targetgroup.go b/cloudformation/ec2/aws-ec2-spotfleet_targetgroup.go similarity index 72% rename from cloudformation/resources/aws-ec2-spotfleet_targetgroup.go rename to cloudformation/ec2/aws-ec2-spotfleet_targetgroup.go index 2bbfe94f68..e895d7e241 100644 --- a/cloudformation/resources/aws-ec2-spotfleet_targetgroup.go +++ b/cloudformation/ec2/aws-ec2-spotfleet_targetgroup.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_TargetGroup AWS CloudFormation Resource (AWS::EC2::SpotFleet.TargetGroup) +// 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 AWSEC2SpotFleet_TargetGroup struct { +type SpotFleet_TargetGroup struct { // Arn AWS CloudFormation Property // Required: true @@ -22,42 +24,42 @@ type AWSEC2SpotFleet_TargetGroup struct { } // AWSCloudFormationType returns the AWS CloudFormation resource type -func (r *AWSEC2SpotFleet_TargetGroup) AWSCloudFormationType() string { +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 *AWSEC2SpotFleet_TargetGroup) DependsOn() []string { +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 *AWSEC2SpotFleet_TargetGroup) SetDependsOn(dependencies []string) { +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 *AWSEC2SpotFleet_TargetGroup) Metadata() map[string]interface{} { +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 *AWSEC2SpotFleet_TargetGroup) SetMetadata(metadata map[string]interface{}) { +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 *AWSEC2SpotFleet_TargetGroup) DeletionPolicy() policies.DeletionPolicy { +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 *AWSEC2SpotFleet_TargetGroup) SetDeletionPolicy(policy policies.DeletionPolicy) { +func (r *SpotFleet_TargetGroup) SetDeletionPolicy(policy policies.DeletionPolicy) { r._deletionPolicy = policy } diff --git a/cloudformation/resources/aws-ec2-spotfleet_targetgroupsconfig.go b/cloudformation/ec2/aws-ec2-spotfleet_targetgroupsconfig.go similarity index 69% rename from cloudformation/resources/aws-ec2-spotfleet_targetgroupsconfig.go rename to cloudformation/ec2/aws-ec2-spotfleet_targetgroupsconfig.go index c4d7c15784..5c269ed3e7 100644 --- a/cloudformation/resources/aws-ec2-spotfleet_targetgroupsconfig.go +++ b/cloudformation/ec2/aws-ec2-spotfleet_targetgroupsconfig.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_TargetGroupsConfig AWS CloudFormation Resource (AWS::EC2::SpotFleet.TargetGroupsConfig) +// 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 AWSEC2SpotFleet_TargetGroupsConfig struct { +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 []AWSEC2SpotFleet_TargetGroup `json:"TargetGroups,omitempty"` + TargetGroups []SpotFleet_TargetGroup `json:"TargetGroups,omitempty"` // _deletionPolicy represents a CloudFormation DeletionPolicy _deletionPolicy policies.DeletionPolicy @@ -22,42 +24,42 @@ type AWSEC2SpotFleet_TargetGroupsConfig struct { } // AWSCloudFormationType returns the AWS CloudFormation resource type -func (r *AWSEC2SpotFleet_TargetGroupsConfig) AWSCloudFormationType() string { +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 *AWSEC2SpotFleet_TargetGroupsConfig) DependsOn() []string { +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 *AWSEC2SpotFleet_TargetGroupsConfig) SetDependsOn(dependencies []string) { +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 *AWSEC2SpotFleet_TargetGroupsConfig) Metadata() map[string]interface{} { +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 *AWSEC2SpotFleet_TargetGroupsConfig) SetMetadata(metadata map[string]interface{}) { +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 *AWSEC2SpotFleet_TargetGroupsConfig) DeletionPolicy() policies.DeletionPolicy { +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 *AWSEC2SpotFleet_TargetGroupsConfig) SetDeletionPolicy(policy policies.DeletionPolicy) { +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/resources/aws-ec2-trafficmirrorfilterrule_trafficmirrorportrange.go b/cloudformation/ec2/aws-ec2-trafficmirrorfilterrule_trafficmirrorportrange.go similarity index 70% rename from cloudformation/resources/aws-ec2-trafficmirrorfilterrule_trafficmirrorportrange.go rename to cloudformation/ec2/aws-ec2-trafficmirrorfilterrule_trafficmirrorportrange.go index 873ce148aa..8905340f27 100644 --- a/cloudformation/resources/aws-ec2-trafficmirrorfilterrule_trafficmirrorportrange.go +++ b/cloudformation/ec2/aws-ec2-trafficmirrorfilterrule_trafficmirrorportrange.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" +) -// AWSEC2TrafficMirrorFilterRule_TrafficMirrorPortRange AWS CloudFormation Resource (AWS::EC2::TrafficMirrorFilterRule.TrafficMirrorPortRange) +// 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 AWSEC2TrafficMirrorFilterRule_TrafficMirrorPortRange struct { +type TrafficMirrorFilterRule_TrafficMirrorPortRange struct { // FromPort AWS CloudFormation Property // Required: true @@ -27,42 +29,42 @@ type AWSEC2TrafficMirrorFilterRule_TrafficMirrorPortRange struct { } // AWSCloudFormationType returns the AWS CloudFormation resource type -func (r *AWSEC2TrafficMirrorFilterRule_TrafficMirrorPortRange) AWSCloudFormationType() string { +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 *AWSEC2TrafficMirrorFilterRule_TrafficMirrorPortRange) DependsOn() []string { +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 *AWSEC2TrafficMirrorFilterRule_TrafficMirrorPortRange) SetDependsOn(dependencies []string) { +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 *AWSEC2TrafficMirrorFilterRule_TrafficMirrorPortRange) Metadata() map[string]interface{} { +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 *AWSEC2TrafficMirrorFilterRule_TrafficMirrorPortRange) SetMetadata(metadata map[string]interface{}) { +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 *AWSEC2TrafficMirrorFilterRule_TrafficMirrorPortRange) DeletionPolicy() policies.DeletionPolicy { +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 *AWSEC2TrafficMirrorFilterRule_TrafficMirrorPortRange) SetDeletionPolicy(policy policies.DeletionPolicy) { +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/resources/aws-ec2-vpnconnection_vpntunneloptionsspecification.go b/cloudformation/ec2/aws-ec2-vpnconnection_vpntunneloptionsspecification.go similarity index 71% rename from cloudformation/resources/aws-ec2-vpnconnection_vpntunneloptionsspecification.go rename to cloudformation/ec2/aws-ec2-vpnconnection_vpntunneloptionsspecification.go index 1ae463be2a..0f9759d099 100644 --- a/cloudformation/resources/aws-ec2-vpnconnection_vpntunneloptionsspecification.go +++ b/cloudformation/ec2/aws-ec2-vpnconnection_vpntunneloptionsspecification.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" +) -// AWSEC2VPNConnection_VpnTunnelOptionsSpecification AWS CloudFormation Resource (AWS::EC2::VPNConnection.VpnTunnelOptionsSpecification) +// 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 AWSEC2VPNConnection_VpnTunnelOptionsSpecification struct { +type VPNConnection_VpnTunnelOptionsSpecification struct { // PreSharedKey AWS CloudFormation Property // Required: false @@ -27,42 +29,42 @@ type AWSEC2VPNConnection_VpnTunnelOptionsSpecification struct { } // AWSCloudFormationType returns the AWS CloudFormation resource type -func (r *AWSEC2VPNConnection_VpnTunnelOptionsSpecification) AWSCloudFormationType() string { +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 *AWSEC2VPNConnection_VpnTunnelOptionsSpecification) DependsOn() []string { +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 *AWSEC2VPNConnection_VpnTunnelOptionsSpecification) SetDependsOn(dependencies []string) { +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 *AWSEC2VPNConnection_VpnTunnelOptionsSpecification) Metadata() map[string]interface{} { +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 *AWSEC2VPNConnection_VpnTunnelOptionsSpecification) SetMetadata(metadata map[string]interface{}) { +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 *AWSEC2VPNConnection_VpnTunnelOptionsSpecification) DeletionPolicy() policies.DeletionPolicy { +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 *AWSEC2VPNConnection_VpnTunnelOptionsSpecification) SetDeletionPolicy(policy policies.DeletionPolicy) { +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/resources/aws-ecr-repository_lifecyclepolicy.go b/cloudformation/ecr/aws-ecr-repository_lifecyclepolicy.go similarity index 74% rename from cloudformation/resources/aws-ecr-repository_lifecyclepolicy.go rename to cloudformation/ecr/aws-ecr-repository_lifecyclepolicy.go index 320ba7565b..9c9540db29 100644 --- a/cloudformation/resources/aws-ecr-repository_lifecyclepolicy.go +++ b/cloudformation/ecr/aws-ecr-repository_lifecyclepolicy.go @@ -1,10 +1,12 @@ -package resources +package ecr -import "github.com/awslabs/goformation/v2/cloudformation/policies" +import ( + "github.com/awslabs/goformation/v3/cloudformation/policies" +) -// AWSECRRepository_LifecyclePolicy AWS CloudFormation Resource (AWS::ECR::Repository.LifecyclePolicy) +// 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 AWSECRRepository_LifecyclePolicy struct { +type Repository_LifecyclePolicy struct { // LifecyclePolicyText AWS CloudFormation Property // Required: false @@ -27,42 +29,42 @@ type AWSECRRepository_LifecyclePolicy struct { } // AWSCloudFormationType returns the AWS CloudFormation resource type -func (r *AWSECRRepository_LifecyclePolicy) AWSCloudFormationType() string { +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 *AWSECRRepository_LifecyclePolicy) DependsOn() []string { +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 *AWSECRRepository_LifecyclePolicy) SetDependsOn(dependencies []string) { +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 *AWSECRRepository_LifecyclePolicy) Metadata() map[string]interface{} { +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 *AWSECRRepository_LifecyclePolicy) SetMetadata(metadata map[string]interface{}) { +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 *AWSECRRepository_LifecyclePolicy) DeletionPolicy() policies.DeletionPolicy { +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 *AWSECRRepository_LifecyclePolicy) SetDeletionPolicy(policy policies.DeletionPolicy) { +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/resources/aws-ecs-service_deploymentconfiguration.go b/cloudformation/ecs/aws-ecs-service_deploymentconfiguration.go similarity index 73% rename from cloudformation/resources/aws-ecs-service_deploymentconfiguration.go rename to cloudformation/ecs/aws-ecs-service_deploymentconfiguration.go index def218e178..9dbd904b16 100644 --- a/cloudformation/resources/aws-ecs-service_deploymentconfiguration.go +++ b/cloudformation/ecs/aws-ecs-service_deploymentconfiguration.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_DeploymentConfiguration AWS CloudFormation Resource (AWS::ECS::Service.DeploymentConfiguration) +// 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 AWSECSService_DeploymentConfiguration struct { +type Service_DeploymentConfiguration struct { // MaximumPercent AWS CloudFormation Property // Required: false @@ -27,42 +29,42 @@ type AWSECSService_DeploymentConfiguration struct { } // AWSCloudFormationType returns the AWS CloudFormation resource type -func (r *AWSECSService_DeploymentConfiguration) AWSCloudFormationType() string { +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 *AWSECSService_DeploymentConfiguration) DependsOn() []string { +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 *AWSECSService_DeploymentConfiguration) SetDependsOn(dependencies []string) { +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 *AWSECSService_DeploymentConfiguration) Metadata() map[string]interface{} { +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 *AWSECSService_DeploymentConfiguration) SetMetadata(metadata map[string]interface{}) { +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 *AWSECSService_DeploymentConfiguration) DeletionPolicy() policies.DeletionPolicy { +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 *AWSECSService_DeploymentConfiguration) SetDeletionPolicy(policy policies.DeletionPolicy) { +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/resources/aws-ecs-service_networkconfiguration.go b/cloudformation/ecs/aws-ecs-service_networkconfiguration.go similarity index 68% rename from cloudformation/resources/aws-ecs-service_networkconfiguration.go rename to cloudformation/ecs/aws-ecs-service_networkconfiguration.go index 5beff2350b..7fe3ef449a 100644 --- a/cloudformation/resources/aws-ecs-service_networkconfiguration.go +++ b/cloudformation/ecs/aws-ecs-service_networkconfiguration.go @@ -1,15 +1,17 @@ -package resources +package ecs -import "github.com/awslabs/goformation/v2/cloudformation/policies" +import ( + "github.com/awslabs/goformation/v3/cloudformation/policies" +) -// AWSECSService_NetworkConfiguration AWS CloudFormation Resource (AWS::ECS::Service.NetworkConfiguration) +// 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 AWSECSService_NetworkConfiguration struct { +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 *AWSECSService_AwsVpcConfiguration `json:"AwsvpcConfiguration,omitempty"` + AwsvpcConfiguration *Service_AwsVpcConfiguration `json:"AwsvpcConfiguration,omitempty"` // _deletionPolicy represents a CloudFormation DeletionPolicy _deletionPolicy policies.DeletionPolicy @@ -22,42 +24,42 @@ type AWSECSService_NetworkConfiguration struct { } // AWSCloudFormationType returns the AWS CloudFormation resource type -func (r *AWSECSService_NetworkConfiguration) AWSCloudFormationType() string { +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 *AWSECSService_NetworkConfiguration) DependsOn() []string { +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 *AWSECSService_NetworkConfiguration) SetDependsOn(dependencies []string) { +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 *AWSECSService_NetworkConfiguration) Metadata() map[string]interface{} { +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 *AWSECSService_NetworkConfiguration) SetMetadata(metadata map[string]interface{}) { +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 *AWSECSService_NetworkConfiguration) DeletionPolicy() policies.DeletionPolicy { +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 *AWSECSService_NetworkConfiguration) SetDeletionPolicy(policy policies.DeletionPolicy) { +func (r *Service_NetworkConfiguration) SetDeletionPolicy(policy policies.DeletionPolicy) { r._deletionPolicy = policy } diff --git a/cloudformation/resources/aws-ecs-service_placementconstraint.go b/cloudformation/ecs/aws-ecs-service_placementconstraint.go similarity index 74% rename from cloudformation/resources/aws-ecs-service_placementconstraint.go rename to cloudformation/ecs/aws-ecs-service_placementconstraint.go index 145bb0ac9a..bb85f7e7f3 100644 --- a/cloudformation/resources/aws-ecs-service_placementconstraint.go +++ b/cloudformation/ecs/aws-ecs-service_placementconstraint.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_PlacementConstraint AWS CloudFormation Resource (AWS::ECS::Service.PlacementConstraint) +// 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 AWSECSService_PlacementConstraint struct { +type Service_PlacementConstraint struct { // Expression AWS CloudFormation Property // Required: false @@ -27,42 +29,42 @@ type AWSECSService_PlacementConstraint struct { } // AWSCloudFormationType returns the AWS CloudFormation resource type -func (r *AWSECSService_PlacementConstraint) AWSCloudFormationType() string { +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 *AWSECSService_PlacementConstraint) DependsOn() []string { +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 *AWSECSService_PlacementConstraint) SetDependsOn(dependencies []string) { +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 *AWSECSService_PlacementConstraint) Metadata() map[string]interface{} { +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 *AWSECSService_PlacementConstraint) SetMetadata(metadata map[string]interface{}) { +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 *AWSECSService_PlacementConstraint) DeletionPolicy() policies.DeletionPolicy { +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 *AWSECSService_PlacementConstraint) SetDeletionPolicy(policy policies.DeletionPolicy) { +func (r *Service_PlacementConstraint) SetDeletionPolicy(policy policies.DeletionPolicy) { r._deletionPolicy = policy } diff --git a/cloudformation/resources/aws-ecs-service_placementstrategy.go b/cloudformation/ecs/aws-ecs-service_placementstrategy.go similarity index 74% rename from cloudformation/resources/aws-ecs-service_placementstrategy.go rename to cloudformation/ecs/aws-ecs-service_placementstrategy.go index 7a011f4050..a05e933485 100644 --- a/cloudformation/resources/aws-ecs-service_placementstrategy.go +++ b/cloudformation/ecs/aws-ecs-service_placementstrategy.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_PlacementStrategy AWS CloudFormation Resource (AWS::ECS::Service.PlacementStrategy) +// 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 AWSECSService_PlacementStrategy struct { +type Service_PlacementStrategy struct { // Field AWS CloudFormation Property // Required: false @@ -27,42 +29,42 @@ type AWSECSService_PlacementStrategy struct { } // AWSCloudFormationType returns the AWS CloudFormation resource type -func (r *AWSECSService_PlacementStrategy) AWSCloudFormationType() string { +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 *AWSECSService_PlacementStrategy) DependsOn() []string { +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 *AWSECSService_PlacementStrategy) SetDependsOn(dependencies []string) { +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 *AWSECSService_PlacementStrategy) Metadata() map[string]interface{} { +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 *AWSECSService_PlacementStrategy) SetMetadata(metadata map[string]interface{}) { +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 *AWSECSService_PlacementStrategy) DeletionPolicy() policies.DeletionPolicy { +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 *AWSECSService_PlacementStrategy) SetDeletionPolicy(policy policies.DeletionPolicy) { +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/resources/aws-ecs-taskdefinition_containerdependency.go b/cloudformation/ecs/aws-ecs-taskdefinition_containerdependency.go similarity index 73% rename from cloudformation/resources/aws-ecs-taskdefinition_containerdependency.go rename to cloudformation/ecs/aws-ecs-taskdefinition_containerdependency.go index 56a22bb498..459595cee3 100644 --- a/cloudformation/resources/aws-ecs-taskdefinition_containerdependency.go +++ b/cloudformation/ecs/aws-ecs-taskdefinition_containerdependency.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_ContainerDependency AWS CloudFormation Resource (AWS::ECS::TaskDefinition.ContainerDependency) +// 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 AWSECSTaskDefinition_ContainerDependency struct { +type TaskDefinition_ContainerDependency struct { // Condition AWS CloudFormation Property // Required: true @@ -27,42 +29,42 @@ type AWSECSTaskDefinition_ContainerDependency struct { } // AWSCloudFormationType returns the AWS CloudFormation resource type -func (r *AWSECSTaskDefinition_ContainerDependency) AWSCloudFormationType() string { +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 *AWSECSTaskDefinition_ContainerDependency) DependsOn() []string { +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 *AWSECSTaskDefinition_ContainerDependency) SetDependsOn(dependencies []string) { +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 *AWSECSTaskDefinition_ContainerDependency) Metadata() map[string]interface{} { +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 *AWSECSTaskDefinition_ContainerDependency) SetMetadata(metadata map[string]interface{}) { +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 *AWSECSTaskDefinition_ContainerDependency) DeletionPolicy() policies.DeletionPolicy { +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 *AWSECSTaskDefinition_ContainerDependency) SetDeletionPolicy(policy policies.DeletionPolicy) { +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/resources/aws-ecs-taskdefinition_hostvolumeproperties.go b/cloudformation/ecs/aws-ecs-taskdefinition_hostvolumeproperties.go similarity index 69% rename from cloudformation/resources/aws-ecs-taskdefinition_hostvolumeproperties.go rename to cloudformation/ecs/aws-ecs-taskdefinition_hostvolumeproperties.go index 9af9a0d937..0d57508091 100644 --- a/cloudformation/resources/aws-ecs-taskdefinition_hostvolumeproperties.go +++ b/cloudformation/ecs/aws-ecs-taskdefinition_hostvolumeproperties.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_HostVolumeProperties AWS CloudFormation Resource (AWS::ECS::TaskDefinition.HostVolumeProperties) +// 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 AWSECSTaskDefinition_HostVolumeProperties struct { +type TaskDefinition_HostVolumeProperties struct { // SourcePath AWS CloudFormation Property // Required: false @@ -22,42 +24,42 @@ type AWSECSTaskDefinition_HostVolumeProperties struct { } // AWSCloudFormationType returns the AWS CloudFormation resource type -func (r *AWSECSTaskDefinition_HostVolumeProperties) AWSCloudFormationType() string { +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 *AWSECSTaskDefinition_HostVolumeProperties) DependsOn() []string { +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 *AWSECSTaskDefinition_HostVolumeProperties) SetDependsOn(dependencies []string) { +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 *AWSECSTaskDefinition_HostVolumeProperties) Metadata() map[string]interface{} { +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 *AWSECSTaskDefinition_HostVolumeProperties) SetMetadata(metadata map[string]interface{}) { +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 *AWSECSTaskDefinition_HostVolumeProperties) DeletionPolicy() policies.DeletionPolicy { +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 *AWSECSTaskDefinition_HostVolumeProperties) SetDeletionPolicy(policy policies.DeletionPolicy) { +func (r *TaskDefinition_HostVolumeProperties) SetDeletionPolicy(policy policies.DeletionPolicy) { r._deletionPolicy = policy } diff --git a/cloudformation/resources/aws-ecs-taskdefinition_kernelcapabilities.go b/cloudformation/ecs/aws-ecs-taskdefinition_kernelcapabilities.go similarity index 72% rename from cloudformation/resources/aws-ecs-taskdefinition_kernelcapabilities.go rename to cloudformation/ecs/aws-ecs-taskdefinition_kernelcapabilities.go index 33052c74b5..43bc4aff9c 100644 --- a/cloudformation/resources/aws-ecs-taskdefinition_kernelcapabilities.go +++ b/cloudformation/ecs/aws-ecs-taskdefinition_kernelcapabilities.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_KernelCapabilities AWS CloudFormation Resource (AWS::ECS::TaskDefinition.KernelCapabilities) +// 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 AWSECSTaskDefinition_KernelCapabilities struct { +type TaskDefinition_KernelCapabilities struct { // Add AWS CloudFormation Property // Required: false @@ -27,42 +29,42 @@ type AWSECSTaskDefinition_KernelCapabilities struct { } // AWSCloudFormationType returns the AWS CloudFormation resource type -func (r *AWSECSTaskDefinition_KernelCapabilities) AWSCloudFormationType() string { +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 *AWSECSTaskDefinition_KernelCapabilities) DependsOn() []string { +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 *AWSECSTaskDefinition_KernelCapabilities) SetDependsOn(dependencies []string) { +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 *AWSECSTaskDefinition_KernelCapabilities) Metadata() map[string]interface{} { +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 *AWSECSTaskDefinition_KernelCapabilities) SetMetadata(metadata map[string]interface{}) { +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 *AWSECSTaskDefinition_KernelCapabilities) DeletionPolicy() policies.DeletionPolicy { +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 *AWSECSTaskDefinition_KernelCapabilities) SetDeletionPolicy(policy policies.DeletionPolicy) { +func (r *TaskDefinition_KernelCapabilities) SetDeletionPolicy(policy policies.DeletionPolicy) { r._deletionPolicy = policy } diff --git a/cloudformation/resources/aws-ecs-taskdefinition_keyvaluepair.go b/cloudformation/ecs/aws-ecs-taskdefinition_keyvaluepair.go similarity index 74% rename from cloudformation/resources/aws-ecs-taskdefinition_keyvaluepair.go rename to cloudformation/ecs/aws-ecs-taskdefinition_keyvaluepair.go index 8edb858c17..1b12d9bd6b 100644 --- a/cloudformation/resources/aws-ecs-taskdefinition_keyvaluepair.go +++ b/cloudformation/ecs/aws-ecs-taskdefinition_keyvaluepair.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_KeyValuePair AWS CloudFormation Resource (AWS::ECS::TaskDefinition.KeyValuePair) +// 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 AWSECSTaskDefinition_KeyValuePair struct { +type TaskDefinition_KeyValuePair struct { // Name AWS CloudFormation Property // Required: false @@ -27,42 +29,42 @@ type AWSECSTaskDefinition_KeyValuePair struct { } // AWSCloudFormationType returns the AWS CloudFormation resource type -func (r *AWSECSTaskDefinition_KeyValuePair) AWSCloudFormationType() string { +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 *AWSECSTaskDefinition_KeyValuePair) DependsOn() []string { +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 *AWSECSTaskDefinition_KeyValuePair) SetDependsOn(dependencies []string) { +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 *AWSECSTaskDefinition_KeyValuePair) Metadata() map[string]interface{} { +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 *AWSECSTaskDefinition_KeyValuePair) SetMetadata(metadata map[string]interface{}) { +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 *AWSECSTaskDefinition_KeyValuePair) DeletionPolicy() policies.DeletionPolicy { +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 *AWSECSTaskDefinition_KeyValuePair) SetDeletionPolicy(policy policies.DeletionPolicy) { +func (r *TaskDefinition_KeyValuePair) SetDeletionPolicy(policy policies.DeletionPolicy) { r._deletionPolicy = policy } diff --git a/cloudformation/resources/aws-ecs-taskdefinition_linuxparameters.go b/cloudformation/ecs/aws-ecs-taskdefinition_linuxparameters.go similarity index 74% rename from cloudformation/resources/aws-ecs-taskdefinition_linuxparameters.go rename to cloudformation/ecs/aws-ecs-taskdefinition_linuxparameters.go index 21ae551219..fcacdfc7b7 100644 --- a/cloudformation/resources/aws-ecs-taskdefinition_linuxparameters.go +++ b/cloudformation/ecs/aws-ecs-taskdefinition_linuxparameters.go @@ -1,20 +1,22 @@ -package resources +package ecs -import "github.com/awslabs/goformation/v2/cloudformation/policies" +import ( + "github.com/awslabs/goformation/v3/cloudformation/policies" +) -// AWSECSTaskDefinition_LinuxParameters AWS CloudFormation Resource (AWS::ECS::TaskDefinition.LinuxParameters) +// 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 AWSECSTaskDefinition_LinuxParameters struct { +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 *AWSECSTaskDefinition_KernelCapabilities `json:"Capabilities,omitempty"` + 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 []AWSECSTaskDefinition_Device `json:"Devices,omitempty"` + Devices []TaskDefinition_Device `json:"Devices,omitempty"` // InitProcessEnabled AWS CloudFormation Property // Required: false @@ -29,7 +31,7 @@ type AWSECSTaskDefinition_LinuxParameters struct { // 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"` + Tmpfs []TaskDefinition_Tmpfs `json:"Tmpfs,omitempty"` // _deletionPolicy represents a CloudFormation DeletionPolicy _deletionPolicy policies.DeletionPolicy @@ -42,42 +44,42 @@ type AWSECSTaskDefinition_LinuxParameters struct { } // AWSCloudFormationType returns the AWS CloudFormation resource type -func (r *AWSECSTaskDefinition_LinuxParameters) AWSCloudFormationType() string { +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 *AWSECSTaskDefinition_LinuxParameters) DependsOn() []string { +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 *AWSECSTaskDefinition_LinuxParameters) SetDependsOn(dependencies []string) { +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 *AWSECSTaskDefinition_LinuxParameters) Metadata() map[string]interface{} { +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 *AWSECSTaskDefinition_LinuxParameters) SetMetadata(metadata map[string]interface{}) { +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 *AWSECSTaskDefinition_LinuxParameters) DeletionPolicy() policies.DeletionPolicy { +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 *AWSECSTaskDefinition_LinuxParameters) SetDeletionPolicy(policy policies.DeletionPolicy) { +func (r *TaskDefinition_LinuxParameters) SetDeletionPolicy(policy policies.DeletionPolicy) { r._deletionPolicy = policy } diff --git a/cloudformation/resources/aws-ecs-taskdefinition_logconfiguration.go b/cloudformation/ecs/aws-ecs-taskdefinition_logconfiguration.go similarity index 74% rename from cloudformation/resources/aws-ecs-taskdefinition_logconfiguration.go rename to cloudformation/ecs/aws-ecs-taskdefinition_logconfiguration.go index 927bf61af8..68af506ab8 100644 --- a/cloudformation/resources/aws-ecs-taskdefinition_logconfiguration.go +++ b/cloudformation/ecs/aws-ecs-taskdefinition_logconfiguration.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_LogConfiguration AWS CloudFormation Resource (AWS::ECS::TaskDefinition.LogConfiguration) +// 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 AWSECSTaskDefinition_LogConfiguration struct { +type TaskDefinition_LogConfiguration struct { // LogDriver AWS CloudFormation Property // Required: true @@ -19,7 +21,7 @@ type AWSECSTaskDefinition_LogConfiguration struct { // 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"` + SecretOptions []TaskDefinition_Secret `json:"SecretOptions,omitempty"` // _deletionPolicy represents a CloudFormation DeletionPolicy _deletionPolicy policies.DeletionPolicy @@ -32,42 +34,42 @@ type AWSECSTaskDefinition_LogConfiguration struct { } // AWSCloudFormationType returns the AWS CloudFormation resource type -func (r *AWSECSTaskDefinition_LogConfiguration) AWSCloudFormationType() string { +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 *AWSECSTaskDefinition_LogConfiguration) DependsOn() []string { +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 *AWSECSTaskDefinition_LogConfiguration) SetDependsOn(dependencies []string) { +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 *AWSECSTaskDefinition_LogConfiguration) Metadata() map[string]interface{} { +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 *AWSECSTaskDefinition_LogConfiguration) SetMetadata(metadata map[string]interface{}) { +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 *AWSECSTaskDefinition_LogConfiguration) DeletionPolicy() policies.DeletionPolicy { +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 *AWSECSTaskDefinition_LogConfiguration) SetDeletionPolicy(policy policies.DeletionPolicy) { +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/resources/aws-ecs-taskdefinition_proxyconfiguration.go b/cloudformation/ecs/aws-ecs-taskdefinition_proxyconfiguration.go similarity index 72% rename from cloudformation/resources/aws-ecs-taskdefinition_proxyconfiguration.go rename to cloudformation/ecs/aws-ecs-taskdefinition_proxyconfiguration.go index 9059acd781..07e14767b7 100644 --- a/cloudformation/resources/aws-ecs-taskdefinition_proxyconfiguration.go +++ b/cloudformation/ecs/aws-ecs-taskdefinition_proxyconfiguration.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_ProxyConfiguration AWS CloudFormation Resource (AWS::ECS::TaskDefinition.ProxyConfiguration) +// 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 AWSECSTaskDefinition_ProxyConfiguration struct { +type TaskDefinition_ProxyConfiguration struct { // ContainerName AWS CloudFormation Property // Required: true @@ -14,7 +16,7 @@ type AWSECSTaskDefinition_ProxyConfiguration struct { // 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"` + ProxyConfigurationProperties []TaskDefinition_KeyValuePair `json:"ProxyConfigurationProperties,omitempty"` // Type AWS CloudFormation Property // Required: false @@ -32,42 +34,42 @@ type AWSECSTaskDefinition_ProxyConfiguration struct { } // AWSCloudFormationType returns the AWS CloudFormation resource type -func (r *AWSECSTaskDefinition_ProxyConfiguration) AWSCloudFormationType() string { +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 *AWSECSTaskDefinition_ProxyConfiguration) DependsOn() []string { +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 *AWSECSTaskDefinition_ProxyConfiguration) SetDependsOn(dependencies []string) { +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 *AWSECSTaskDefinition_ProxyConfiguration) Metadata() map[string]interface{} { +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 *AWSECSTaskDefinition_ProxyConfiguration) SetMetadata(metadata map[string]interface{}) { +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 *AWSECSTaskDefinition_ProxyConfiguration) DeletionPolicy() policies.DeletionPolicy { +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 *AWSECSTaskDefinition_ProxyConfiguration) SetDeletionPolicy(policy policies.DeletionPolicy) { +func (r *TaskDefinition_ProxyConfiguration) SetDeletionPolicy(policy policies.DeletionPolicy) { r._deletionPolicy = policy } diff --git a/cloudformation/resources/aws-ecs-taskdefinition_repositorycredentials.go b/cloudformation/ecs/aws-ecs-taskdefinition_repositorycredentials.go similarity index 70% rename from cloudformation/resources/aws-ecs-taskdefinition_repositorycredentials.go rename to cloudformation/ecs/aws-ecs-taskdefinition_repositorycredentials.go index c3a4cea179..8dc7342dc8 100644 --- a/cloudformation/resources/aws-ecs-taskdefinition_repositorycredentials.go +++ b/cloudformation/ecs/aws-ecs-taskdefinition_repositorycredentials.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_RepositoryCredentials AWS CloudFormation Resource (AWS::ECS::TaskDefinition.RepositoryCredentials) +// 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 AWSECSTaskDefinition_RepositoryCredentials struct { +type TaskDefinition_RepositoryCredentials struct { // CredentialsParameter AWS CloudFormation Property // Required: false @@ -22,42 +24,42 @@ type AWSECSTaskDefinition_RepositoryCredentials struct { } // AWSCloudFormationType returns the AWS CloudFormation resource type -func (r *AWSECSTaskDefinition_RepositoryCredentials) AWSCloudFormationType() string { +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 *AWSECSTaskDefinition_RepositoryCredentials) DependsOn() []string { +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 *AWSECSTaskDefinition_RepositoryCredentials) SetDependsOn(dependencies []string) { +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 *AWSECSTaskDefinition_RepositoryCredentials) Metadata() map[string]interface{} { +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 *AWSECSTaskDefinition_RepositoryCredentials) SetMetadata(metadata map[string]interface{}) { +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 *AWSECSTaskDefinition_RepositoryCredentials) DeletionPolicy() policies.DeletionPolicy { +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 *AWSECSTaskDefinition_RepositoryCredentials) SetDeletionPolicy(policy policies.DeletionPolicy) { +func (r *TaskDefinition_RepositoryCredentials) SetDeletionPolicy(policy policies.DeletionPolicy) { r._deletionPolicy = policy } diff --git a/cloudformation/resources/aws-ecs-taskdefinition_resourcerequirement.go b/cloudformation/ecs/aws-ecs-taskdefinition_resourcerequirement.go similarity index 72% rename from cloudformation/resources/aws-ecs-taskdefinition_resourcerequirement.go rename to cloudformation/ecs/aws-ecs-taskdefinition_resourcerequirement.go index 1bf5004248..0c7bf0ae95 100644 --- a/cloudformation/resources/aws-ecs-taskdefinition_resourcerequirement.go +++ b/cloudformation/ecs/aws-ecs-taskdefinition_resourcerequirement.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_ResourceRequirement AWS CloudFormation Resource (AWS::ECS::TaskDefinition.ResourceRequirement) +// 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 AWSECSTaskDefinition_ResourceRequirement struct { +type TaskDefinition_ResourceRequirement struct { // Type AWS CloudFormation Property // Required: true @@ -27,42 +29,42 @@ type AWSECSTaskDefinition_ResourceRequirement struct { } // AWSCloudFormationType returns the AWS CloudFormation resource type -func (r *AWSECSTaskDefinition_ResourceRequirement) AWSCloudFormationType() string { +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 *AWSECSTaskDefinition_ResourceRequirement) DependsOn() []string { +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 *AWSECSTaskDefinition_ResourceRequirement) SetDependsOn(dependencies []string) { +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 *AWSECSTaskDefinition_ResourceRequirement) Metadata() map[string]interface{} { +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 *AWSECSTaskDefinition_ResourceRequirement) SetMetadata(metadata map[string]interface{}) { +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 *AWSECSTaskDefinition_ResourceRequirement) DeletionPolicy() policies.DeletionPolicy { +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 *AWSECSTaskDefinition_ResourceRequirement) SetDeletionPolicy(policy policies.DeletionPolicy) { +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/resources/aws-ecs-taskdefinition_systemcontrol.go b/cloudformation/ecs/aws-ecs-taskdefinition_systemcontrol.go similarity index 73% rename from cloudformation/resources/aws-ecs-taskdefinition_systemcontrol.go rename to cloudformation/ecs/aws-ecs-taskdefinition_systemcontrol.go index be47940a75..f2b5cce2e9 100644 --- a/cloudformation/resources/aws-ecs-taskdefinition_systemcontrol.go +++ b/cloudformation/ecs/aws-ecs-taskdefinition_systemcontrol.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_SystemControl AWS CloudFormation Resource (AWS::ECS::TaskDefinition.SystemControl) +// 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 AWSECSTaskDefinition_SystemControl struct { +type TaskDefinition_SystemControl struct { // Namespace AWS CloudFormation Property // Required: true @@ -27,42 +29,42 @@ type AWSECSTaskDefinition_SystemControl struct { } // AWSCloudFormationType returns the AWS CloudFormation resource type -func (r *AWSECSTaskDefinition_SystemControl) AWSCloudFormationType() string { +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 *AWSECSTaskDefinition_SystemControl) DependsOn() []string { +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 *AWSECSTaskDefinition_SystemControl) SetDependsOn(dependencies []string) { +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 *AWSECSTaskDefinition_SystemControl) Metadata() map[string]interface{} { +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 *AWSECSTaskDefinition_SystemControl) SetMetadata(metadata map[string]interface{}) { +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 *AWSECSTaskDefinition_SystemControl) DeletionPolicy() policies.DeletionPolicy { +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 *AWSECSTaskDefinition_SystemControl) SetDeletionPolicy(policy policies.DeletionPolicy) { +func (r *TaskDefinition_SystemControl) SetDeletionPolicy(policy policies.DeletionPolicy) { r._deletionPolicy = policy } diff --git a/cloudformation/resources/aws-ecs-taskdefinition_taskdefinitionplacementconstraint.go b/cloudformation/ecs/aws-ecs-taskdefinition_taskdefinitionplacementconstraint.go similarity index 70% rename from cloudformation/resources/aws-ecs-taskdefinition_taskdefinitionplacementconstraint.go rename to cloudformation/ecs/aws-ecs-taskdefinition_taskdefinitionplacementconstraint.go index 2c269b7b2a..e6e084e5c6 100644 --- a/cloudformation/resources/aws-ecs-taskdefinition_taskdefinitionplacementconstraint.go +++ b/cloudformation/ecs/aws-ecs-taskdefinition_taskdefinitionplacementconstraint.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_TaskDefinitionPlacementConstraint AWS CloudFormation Resource (AWS::ECS::TaskDefinition.TaskDefinitionPlacementConstraint) +// 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 AWSECSTaskDefinition_TaskDefinitionPlacementConstraint struct { +type TaskDefinition_TaskDefinitionPlacementConstraint struct { // Expression AWS CloudFormation Property // Required: false @@ -27,42 +29,42 @@ type AWSECSTaskDefinition_TaskDefinitionPlacementConstraint struct { } // AWSCloudFormationType returns the AWS CloudFormation resource type -func (r *AWSECSTaskDefinition_TaskDefinitionPlacementConstraint) AWSCloudFormationType() string { +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 *AWSECSTaskDefinition_TaskDefinitionPlacementConstraint) DependsOn() []string { +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 *AWSECSTaskDefinition_TaskDefinitionPlacementConstraint) SetDependsOn(dependencies []string) { +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 *AWSECSTaskDefinition_TaskDefinitionPlacementConstraint) Metadata() map[string]interface{} { +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 *AWSECSTaskDefinition_TaskDefinitionPlacementConstraint) SetMetadata(metadata map[string]interface{}) { +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 *AWSECSTaskDefinition_TaskDefinitionPlacementConstraint) DeletionPolicy() policies.DeletionPolicy { +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 *AWSECSTaskDefinition_TaskDefinitionPlacementConstraint) SetDeletionPolicy(policy policies.DeletionPolicy) { +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/resources/aws-ecs-taskdefinition_volume.go b/cloudformation/ecs/aws-ecs-taskdefinition_volume.go similarity index 72% rename from cloudformation/resources/aws-ecs-taskdefinition_volume.go rename to cloudformation/ecs/aws-ecs-taskdefinition_volume.go index 6b73979916..4479172434 100644 --- a/cloudformation/resources/aws-ecs-taskdefinition_volume.go +++ b/cloudformation/ecs/aws-ecs-taskdefinition_volume.go @@ -1,20 +1,22 @@ -package resources +package ecs -import "github.com/awslabs/goformation/v2/cloudformation/policies" +import ( + "github.com/awslabs/goformation/v3/cloudformation/policies" +) -// AWSECSTaskDefinition_Volume AWS CloudFormation Resource (AWS::ECS::TaskDefinition.Volume) +// 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 AWSECSTaskDefinition_Volume struct { +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 *AWSECSTaskDefinition_DockerVolumeConfiguration `json:"DockerVolumeConfiguration,omitempty"` + 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 *AWSECSTaskDefinition_HostVolumeProperties `json:"Host,omitempty"` + Host *TaskDefinition_HostVolumeProperties `json:"Host,omitempty"` // Name AWS CloudFormation Property // Required: false @@ -32,42 +34,42 @@ type AWSECSTaskDefinition_Volume struct { } // AWSCloudFormationType returns the AWS CloudFormation resource type -func (r *AWSECSTaskDefinition_Volume) AWSCloudFormationType() string { +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 *AWSECSTaskDefinition_Volume) DependsOn() []string { +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 *AWSECSTaskDefinition_Volume) SetDependsOn(dependencies []string) { +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 *AWSECSTaskDefinition_Volume) Metadata() map[string]interface{} { +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 *AWSECSTaskDefinition_Volume) SetMetadata(metadata map[string]interface{}) { +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 *AWSECSTaskDefinition_Volume) DeletionPolicy() policies.DeletionPolicy { +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 *AWSECSTaskDefinition_Volume) SetDeletionPolicy(policy policies.DeletionPolicy) { +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/resources/aws-efs-filesystem_elasticfilesystemtag.go b/cloudformation/efs/aws-efs-filesystem_elasticfilesystemtag.go similarity index 72% rename from cloudformation/resources/aws-efs-filesystem_elasticfilesystemtag.go rename to cloudformation/efs/aws-efs-filesystem_elasticfilesystemtag.go index 60f878d1de..606b457a87 100644 --- a/cloudformation/resources/aws-efs-filesystem_elasticfilesystemtag.go +++ b/cloudformation/efs/aws-efs-filesystem_elasticfilesystemtag.go @@ -1,10 +1,12 @@ -package resources +package efs -import "github.com/awslabs/goformation/v2/cloudformation/policies" +import ( + "github.com/awslabs/goformation/v3/cloudformation/policies" +) -// AWSEFSFileSystem_ElasticFileSystemTag AWS CloudFormation Resource (AWS::EFS::FileSystem.ElasticFileSystemTag) +// 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 AWSEFSFileSystem_ElasticFileSystemTag struct { +type FileSystem_ElasticFileSystemTag struct { // Key AWS CloudFormation Property // Required: true @@ -27,42 +29,42 @@ type AWSEFSFileSystem_ElasticFileSystemTag struct { } // AWSCloudFormationType returns the AWS CloudFormation resource type -func (r *AWSEFSFileSystem_ElasticFileSystemTag) AWSCloudFormationType() string { +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 *AWSEFSFileSystem_ElasticFileSystemTag) DependsOn() []string { +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 *AWSEFSFileSystem_ElasticFileSystemTag) SetDependsOn(dependencies []string) { +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 *AWSEFSFileSystem_ElasticFileSystemTag) Metadata() map[string]interface{} { +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 *AWSEFSFileSystem_ElasticFileSystemTag) SetMetadata(metadata map[string]interface{}) { +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 *AWSEFSFileSystem_ElasticFileSystemTag) DeletionPolicy() policies.DeletionPolicy { +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 *AWSEFSFileSystem_ElasticFileSystemTag) SetDeletionPolicy(policy policies.DeletionPolicy) { +func (r *FileSystem_ElasticFileSystemTag) SetDeletionPolicy(policy policies.DeletionPolicy) { r._deletionPolicy = policy } diff --git a/cloudformation/resources/aws-efs-filesystem_lifecyclepolicy.go b/cloudformation/efs/aws-efs-filesystem_lifecyclepolicy.go similarity index 72% rename from cloudformation/resources/aws-efs-filesystem_lifecyclepolicy.go rename to cloudformation/efs/aws-efs-filesystem_lifecyclepolicy.go index 2d5751090e..7b78786a07 100644 --- a/cloudformation/resources/aws-efs-filesystem_lifecyclepolicy.go +++ b/cloudformation/efs/aws-efs-filesystem_lifecyclepolicy.go @@ -1,10 +1,12 @@ -package resources +package efs -import "github.com/awslabs/goformation/v2/cloudformation/policies" +import ( + "github.com/awslabs/goformation/v3/cloudformation/policies" +) -// AWSEFSFileSystem_LifecyclePolicy AWS CloudFormation Resource (AWS::EFS::FileSystem.LifecyclePolicy) +// 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 AWSEFSFileSystem_LifecyclePolicy struct { +type FileSystem_LifecyclePolicy struct { // TransitionToIA AWS CloudFormation Property // Required: true @@ -22,42 +24,42 @@ type AWSEFSFileSystem_LifecyclePolicy struct { } // AWSCloudFormationType returns the AWS CloudFormation resource type -func (r *AWSEFSFileSystem_LifecyclePolicy) AWSCloudFormationType() string { +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 *AWSEFSFileSystem_LifecyclePolicy) DependsOn() []string { +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 *AWSEFSFileSystem_LifecyclePolicy) SetDependsOn(dependencies []string) { +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 *AWSEFSFileSystem_LifecyclePolicy) Metadata() map[string]interface{} { +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 *AWSEFSFileSystem_LifecyclePolicy) SetMetadata(metadata map[string]interface{}) { +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 *AWSEFSFileSystem_LifecyclePolicy) DeletionPolicy() policies.DeletionPolicy { +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 *AWSEFSFileSystem_LifecyclePolicy) SetDeletionPolicy(policy policies.DeletionPolicy) { +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/resources/aws-eks-cluster_resourcesvpcconfig.go b/cloudformation/eks/aws-eks-cluster_resourcesvpcconfig.go similarity index 74% rename from cloudformation/resources/aws-eks-cluster_resourcesvpcconfig.go rename to cloudformation/eks/aws-eks-cluster_resourcesvpcconfig.go index 19e6f2d76d..bdecf7178d 100644 --- a/cloudformation/resources/aws-eks-cluster_resourcesvpcconfig.go +++ b/cloudformation/eks/aws-eks-cluster_resourcesvpcconfig.go @@ -1,10 +1,12 @@ -package resources +package eks -import "github.com/awslabs/goformation/v2/cloudformation/policies" +import ( + "github.com/awslabs/goformation/v3/cloudformation/policies" +) -// AWSEKSCluster_ResourcesVpcConfig AWS CloudFormation Resource (AWS::EKS::Cluster.ResourcesVpcConfig) +// 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 AWSEKSCluster_ResourcesVpcConfig struct { +type Cluster_ResourcesVpcConfig struct { // SecurityGroupIds AWS CloudFormation Property // Required: false @@ -27,42 +29,42 @@ type AWSEKSCluster_ResourcesVpcConfig struct { } // AWSCloudFormationType returns the AWS CloudFormation resource type -func (r *AWSEKSCluster_ResourcesVpcConfig) AWSCloudFormationType() string { +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 *AWSEKSCluster_ResourcesVpcConfig) DependsOn() []string { +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 *AWSEKSCluster_ResourcesVpcConfig) SetDependsOn(dependencies []string) { +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 *AWSEKSCluster_ResourcesVpcConfig) Metadata() map[string]interface{} { +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 *AWSEKSCluster_ResourcesVpcConfig) SetMetadata(metadata map[string]interface{}) { +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 *AWSEKSCluster_ResourcesVpcConfig) DeletionPolicy() policies.DeletionPolicy { +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 *AWSEKSCluster_ResourcesVpcConfig) SetDeletionPolicy(policy policies.DeletionPolicy) { +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/resources/aws-elasticbeanstalk-application_applicationresourcelifecycleconfig.go b/cloudformation/elasticbeanstalk/aws-elasticbeanstalk-application_applicationresourcelifecycleconfig.go similarity index 66% rename from cloudformation/resources/aws-elasticbeanstalk-application_applicationresourcelifecycleconfig.go rename to cloudformation/elasticbeanstalk/aws-elasticbeanstalk-application_applicationresourcelifecycleconfig.go index d5a05d3b12..c2be270faf 100644 --- a/cloudformation/resources/aws-elasticbeanstalk-application_applicationresourcelifecycleconfig.go +++ b/cloudformation/elasticbeanstalk/aws-elasticbeanstalk-application_applicationresourcelifecycleconfig.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_ApplicationResourceLifecycleConfig AWS CloudFormation Resource (AWS::ElasticBeanstalk::Application.ApplicationResourceLifecycleConfig) +// 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 AWSElasticBeanstalkApplication_ApplicationResourceLifecycleConfig struct { +type Application_ApplicationResourceLifecycleConfig struct { // ServiceRole AWS CloudFormation Property // Required: false @@ -14,7 +16,7 @@ type AWSElasticBeanstalkApplication_ApplicationResourceLifecycleConfig struct { // 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"` + VersionLifecycleConfig *Application_ApplicationVersionLifecycleConfig `json:"VersionLifecycleConfig,omitempty"` // _deletionPolicy represents a CloudFormation DeletionPolicy _deletionPolicy policies.DeletionPolicy @@ -27,42 +29,42 @@ type AWSElasticBeanstalkApplication_ApplicationResourceLifecycleConfig struct { } // AWSCloudFormationType returns the AWS CloudFormation resource type -func (r *AWSElasticBeanstalkApplication_ApplicationResourceLifecycleConfig) AWSCloudFormationType() string { +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 *AWSElasticBeanstalkApplication_ApplicationResourceLifecycleConfig) DependsOn() []string { +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 *AWSElasticBeanstalkApplication_ApplicationResourceLifecycleConfig) SetDependsOn(dependencies []string) { +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 *AWSElasticBeanstalkApplication_ApplicationResourceLifecycleConfig) Metadata() map[string]interface{} { +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 *AWSElasticBeanstalkApplication_ApplicationResourceLifecycleConfig) SetMetadata(metadata map[string]interface{}) { +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 *AWSElasticBeanstalkApplication_ApplicationResourceLifecycleConfig) DeletionPolicy() policies.DeletionPolicy { +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 *AWSElasticBeanstalkApplication_ApplicationResourceLifecycleConfig) SetDeletionPolicy(policy policies.DeletionPolicy) { +func (r *Application_ApplicationResourceLifecycleConfig) SetDeletionPolicy(policy policies.DeletionPolicy) { r._deletionPolicy = policy } diff --git a/cloudformation/resources/aws-elasticbeanstalk-application_applicationversionlifecycleconfig.go b/cloudformation/elasticbeanstalk/aws-elasticbeanstalk-application_applicationversionlifecycleconfig.go similarity index 65% rename from cloudformation/resources/aws-elasticbeanstalk-application_applicationversionlifecycleconfig.go rename to cloudformation/elasticbeanstalk/aws-elasticbeanstalk-application_applicationversionlifecycleconfig.go index e15517f046..7a1df0945e 100644 --- a/cloudformation/resources/aws-elasticbeanstalk-application_applicationversionlifecycleconfig.go +++ b/cloudformation/elasticbeanstalk/aws-elasticbeanstalk-application_applicationversionlifecycleconfig.go @@ -1,20 +1,22 @@ -package resources +package elasticbeanstalk -import "github.com/awslabs/goformation/v2/cloudformation/policies" +import ( + "github.com/awslabs/goformation/v3/cloudformation/policies" +) -// AWSElasticBeanstalkApplication_ApplicationVersionLifecycleConfig AWS CloudFormation Resource (AWS::ElasticBeanstalk::Application.ApplicationVersionLifecycleConfig) +// 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 AWSElasticBeanstalkApplication_ApplicationVersionLifecycleConfig struct { +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 *AWSElasticBeanstalkApplication_MaxAgeRule `json:"MaxAgeRule,omitempty"` + 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 *AWSElasticBeanstalkApplication_MaxCountRule `json:"MaxCountRule,omitempty"` + MaxCountRule *Application_MaxCountRule `json:"MaxCountRule,omitempty"` // _deletionPolicy represents a CloudFormation DeletionPolicy _deletionPolicy policies.DeletionPolicy @@ -27,42 +29,42 @@ type AWSElasticBeanstalkApplication_ApplicationVersionLifecycleConfig struct { } // AWSCloudFormationType returns the AWS CloudFormation resource type -func (r *AWSElasticBeanstalkApplication_ApplicationVersionLifecycleConfig) AWSCloudFormationType() string { +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 *AWSElasticBeanstalkApplication_ApplicationVersionLifecycleConfig) DependsOn() []string { +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 *AWSElasticBeanstalkApplication_ApplicationVersionLifecycleConfig) SetDependsOn(dependencies []string) { +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 *AWSElasticBeanstalkApplication_ApplicationVersionLifecycleConfig) Metadata() map[string]interface{} { +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 *AWSElasticBeanstalkApplication_ApplicationVersionLifecycleConfig) SetMetadata(metadata map[string]interface{}) { +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 *AWSElasticBeanstalkApplication_ApplicationVersionLifecycleConfig) DeletionPolicy() policies.DeletionPolicy { +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 *AWSElasticBeanstalkApplication_ApplicationVersionLifecycleConfig) SetDeletionPolicy(policy policies.DeletionPolicy) { +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/resources/aws-elasticbeanstalk-application_maxcountrule.go b/cloudformation/elasticbeanstalk/aws-elasticbeanstalk-application_maxcountrule.go similarity index 74% rename from cloudformation/resources/aws-elasticbeanstalk-application_maxcountrule.go rename to cloudformation/elasticbeanstalk/aws-elasticbeanstalk-application_maxcountrule.go index cecef14752..724b6cd2b5 100644 --- a/cloudformation/resources/aws-elasticbeanstalk-application_maxcountrule.go +++ b/cloudformation/elasticbeanstalk/aws-elasticbeanstalk-application_maxcountrule.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_MaxCountRule AWS CloudFormation Resource (AWS::ElasticBeanstalk::Application.MaxCountRule) +// 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 AWSElasticBeanstalkApplication_MaxCountRule struct { +type Application_MaxCountRule struct { // DeleteSourceFromS3 AWS CloudFormation Property // Required: false @@ -32,42 +34,42 @@ type AWSElasticBeanstalkApplication_MaxCountRule struct { } // AWSCloudFormationType returns the AWS CloudFormation resource type -func (r *AWSElasticBeanstalkApplication_MaxCountRule) AWSCloudFormationType() string { +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 *AWSElasticBeanstalkApplication_MaxCountRule) DependsOn() []string { +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 *AWSElasticBeanstalkApplication_MaxCountRule) SetDependsOn(dependencies []string) { +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 *AWSElasticBeanstalkApplication_MaxCountRule) Metadata() map[string]interface{} { +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 *AWSElasticBeanstalkApplication_MaxCountRule) SetMetadata(metadata map[string]interface{}) { +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 *AWSElasticBeanstalkApplication_MaxCountRule) DeletionPolicy() policies.DeletionPolicy { +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 *AWSElasticBeanstalkApplication_MaxCountRule) SetDeletionPolicy(policy policies.DeletionPolicy) { +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/resources/aws-elasticbeanstalk-applicationversion_sourcebundle.go b/cloudformation/elasticbeanstalk/aws-elasticbeanstalk-applicationversion_sourcebundle.go similarity index 70% rename from cloudformation/resources/aws-elasticbeanstalk-applicationversion_sourcebundle.go rename to cloudformation/elasticbeanstalk/aws-elasticbeanstalk-applicationversion_sourcebundle.go index 5e8b778501..d81ac8cbde 100644 --- a/cloudformation/resources/aws-elasticbeanstalk-applicationversion_sourcebundle.go +++ b/cloudformation/elasticbeanstalk/aws-elasticbeanstalk-applicationversion_sourcebundle.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" +) -// AWSElasticBeanstalkApplicationVersion_SourceBundle AWS CloudFormation Resource (AWS::ElasticBeanstalk::ApplicationVersion.SourceBundle) +// ApplicationVersion_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 { +type ApplicationVersion_SourceBundle struct { // S3Bucket AWS CloudFormation Property // Required: true @@ -27,42 +29,42 @@ type AWSElasticBeanstalkApplicationVersion_SourceBundle struct { } // AWSCloudFormationType returns the AWS CloudFormation resource type -func (r *AWSElasticBeanstalkApplicationVersion_SourceBundle) AWSCloudFormationType() string { +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 *AWSElasticBeanstalkApplicationVersion_SourceBundle) DependsOn() []string { +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 *AWSElasticBeanstalkApplicationVersion_SourceBundle) SetDependsOn(dependencies []string) { +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 *AWSElasticBeanstalkApplicationVersion_SourceBundle) Metadata() map[string]interface{} { +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 *AWSElasticBeanstalkApplicationVersion_SourceBundle) SetMetadata(metadata map[string]interface{}) { +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 *AWSElasticBeanstalkApplicationVersion_SourceBundle) DeletionPolicy() policies.DeletionPolicy { +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 *AWSElasticBeanstalkApplicationVersion_SourceBundle) SetDeletionPolicy(policy policies.DeletionPolicy) { +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/resources/aws-elasticbeanstalk-configurationtemplate_configurationoptionsetting.go b/cloudformation/elasticbeanstalk/aws-elasticbeanstalk-configurationtemplate_configurationoptionsetting.go similarity index 73% rename from cloudformation/resources/aws-elasticbeanstalk-configurationtemplate_configurationoptionsetting.go rename to cloudformation/elasticbeanstalk/aws-elasticbeanstalk-configurationtemplate_configurationoptionsetting.go index 1fa57ba465..f4d0868097 100644 --- a/cloudformation/resources/aws-elasticbeanstalk-configurationtemplate_configurationoptionsetting.go +++ b/cloudformation/elasticbeanstalk/aws-elasticbeanstalk-configurationtemplate_configurationoptionsetting.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" +) -// AWSElasticBeanstalkConfigurationTemplate_ConfigurationOptionSetting AWS CloudFormation Resource (AWS::ElasticBeanstalk::ConfigurationTemplate.ConfigurationOptionSetting) +// 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 AWSElasticBeanstalkConfigurationTemplate_ConfigurationOptionSetting struct { +type ConfigurationTemplate_ConfigurationOptionSetting struct { // Namespace AWS CloudFormation Property // Required: true @@ -37,42 +39,42 @@ type AWSElasticBeanstalkConfigurationTemplate_ConfigurationOptionSetting struct } // AWSCloudFormationType returns the AWS CloudFormation resource type -func (r *AWSElasticBeanstalkConfigurationTemplate_ConfigurationOptionSetting) AWSCloudFormationType() string { +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 *AWSElasticBeanstalkConfigurationTemplate_ConfigurationOptionSetting) DependsOn() []string { +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 *AWSElasticBeanstalkConfigurationTemplate_ConfigurationOptionSetting) SetDependsOn(dependencies []string) { +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 *AWSElasticBeanstalkConfigurationTemplate_ConfigurationOptionSetting) Metadata() map[string]interface{} { +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 *AWSElasticBeanstalkConfigurationTemplate_ConfigurationOptionSetting) SetMetadata(metadata map[string]interface{}) { +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 *AWSElasticBeanstalkConfigurationTemplate_ConfigurationOptionSetting) DeletionPolicy() policies.DeletionPolicy { +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 *AWSElasticBeanstalkConfigurationTemplate_ConfigurationOptionSetting) SetDeletionPolicy(policy policies.DeletionPolicy) { +func (r *ConfigurationTemplate_ConfigurationOptionSetting) SetDeletionPolicy(policy policies.DeletionPolicy) { r._deletionPolicy = policy } diff --git a/cloudformation/resources/aws-elasticbeanstalk-configurationtemplate_sourceconfiguration.go b/cloudformation/elasticbeanstalk/aws-elasticbeanstalk-configurationtemplate_sourceconfiguration.go similarity index 70% rename from cloudformation/resources/aws-elasticbeanstalk-configurationtemplate_sourceconfiguration.go rename to cloudformation/elasticbeanstalk/aws-elasticbeanstalk-configurationtemplate_sourceconfiguration.go index f298b3249e..4aa783af6c 100644 --- a/cloudformation/resources/aws-elasticbeanstalk-configurationtemplate_sourceconfiguration.go +++ b/cloudformation/elasticbeanstalk/aws-elasticbeanstalk-configurationtemplate_sourceconfiguration.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" +) -// AWSElasticBeanstalkConfigurationTemplate_SourceConfiguration AWS CloudFormation Resource (AWS::ElasticBeanstalk::ConfigurationTemplate.SourceConfiguration) +// 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 AWSElasticBeanstalkConfigurationTemplate_SourceConfiguration struct { +type ConfigurationTemplate_SourceConfiguration struct { // ApplicationName AWS CloudFormation Property // Required: true @@ -27,42 +29,42 @@ type AWSElasticBeanstalkConfigurationTemplate_SourceConfiguration struct { } // AWSCloudFormationType returns the AWS CloudFormation resource type -func (r *AWSElasticBeanstalkConfigurationTemplate_SourceConfiguration) AWSCloudFormationType() string { +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 *AWSElasticBeanstalkConfigurationTemplate_SourceConfiguration) DependsOn() []string { +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 *AWSElasticBeanstalkConfigurationTemplate_SourceConfiguration) SetDependsOn(dependencies []string) { +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 *AWSElasticBeanstalkConfigurationTemplate_SourceConfiguration) Metadata() map[string]interface{} { +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 *AWSElasticBeanstalkConfigurationTemplate_SourceConfiguration) SetMetadata(metadata map[string]interface{}) { +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 *AWSElasticBeanstalkConfigurationTemplate_SourceConfiguration) DeletionPolicy() policies.DeletionPolicy { +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 *AWSElasticBeanstalkConfigurationTemplate_SourceConfiguration) SetDeletionPolicy(policy policies.DeletionPolicy) { +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/resources/aws-elasticloadbalancing-loadbalancer_accessloggingpolicy.go b/cloudformation/elasticloadbalancing/aws-elasticloadbalancing-loadbalancer_accessloggingpolicy.go similarity index 73% rename from cloudformation/resources/aws-elasticloadbalancing-loadbalancer_accessloggingpolicy.go rename to cloudformation/elasticloadbalancing/aws-elasticloadbalancing-loadbalancer_accessloggingpolicy.go index 97a676671b..285c6cb3f5 100644 --- a/cloudformation/resources/aws-elasticloadbalancing-loadbalancer_accessloggingpolicy.go +++ b/cloudformation/elasticloadbalancing/aws-elasticloadbalancing-loadbalancer_accessloggingpolicy.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_AccessLoggingPolicy AWS CloudFormation Resource (AWS::ElasticLoadBalancing::LoadBalancer.AccessLoggingPolicy) +// 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 AWSElasticLoadBalancingLoadBalancer_AccessLoggingPolicy struct { +type LoadBalancer_AccessLoggingPolicy struct { // EmitInterval AWS CloudFormation Property // Required: false @@ -37,42 +39,42 @@ type AWSElasticLoadBalancingLoadBalancer_AccessLoggingPolicy struct { } // AWSCloudFormationType returns the AWS CloudFormation resource type -func (r *AWSElasticLoadBalancingLoadBalancer_AccessLoggingPolicy) AWSCloudFormationType() string { +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 *AWSElasticLoadBalancingLoadBalancer_AccessLoggingPolicy) DependsOn() []string { +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 *AWSElasticLoadBalancingLoadBalancer_AccessLoggingPolicy) SetDependsOn(dependencies []string) { +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 *AWSElasticLoadBalancingLoadBalancer_AccessLoggingPolicy) Metadata() map[string]interface{} { +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 *AWSElasticLoadBalancingLoadBalancer_AccessLoggingPolicy) SetMetadata(metadata map[string]interface{}) { +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 *AWSElasticLoadBalancingLoadBalancer_AccessLoggingPolicy) DeletionPolicy() policies.DeletionPolicy { +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 *AWSElasticLoadBalancingLoadBalancer_AccessLoggingPolicy) SetDeletionPolicy(policy policies.DeletionPolicy) { +func (r *LoadBalancer_AccessLoggingPolicy) SetDeletionPolicy(policy policies.DeletionPolicy) { r._deletionPolicy = policy } diff --git a/cloudformation/resources/aws-elasticloadbalancing-loadbalancer_appcookiestickinesspolicy.go b/cloudformation/elasticloadbalancing/aws-elasticloadbalancing-loadbalancer_appcookiestickinesspolicy.go similarity index 68% rename from cloudformation/resources/aws-elasticloadbalancing-loadbalancer_appcookiestickinesspolicy.go rename to cloudformation/elasticloadbalancing/aws-elasticloadbalancing-loadbalancer_appcookiestickinesspolicy.go index ae752b8249..88daee6c65 100644 --- a/cloudformation/resources/aws-elasticloadbalancing-loadbalancer_appcookiestickinesspolicy.go +++ b/cloudformation/elasticloadbalancing/aws-elasticloadbalancing-loadbalancer_appcookiestickinesspolicy.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_AppCookieStickinessPolicy AWS CloudFormation Resource (AWS::ElasticLoadBalancing::LoadBalancer.AppCookieStickinessPolicy) +// 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 AWSElasticLoadBalancingLoadBalancer_AppCookieStickinessPolicy struct { +type LoadBalancer_AppCookieStickinessPolicy struct { // CookieName AWS CloudFormation Property // Required: true @@ -27,42 +29,42 @@ type AWSElasticLoadBalancingLoadBalancer_AppCookieStickinessPolicy struct { } // AWSCloudFormationType returns the AWS CloudFormation resource type -func (r *AWSElasticLoadBalancingLoadBalancer_AppCookieStickinessPolicy) AWSCloudFormationType() string { +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 *AWSElasticLoadBalancingLoadBalancer_AppCookieStickinessPolicy) DependsOn() []string { +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 *AWSElasticLoadBalancingLoadBalancer_AppCookieStickinessPolicy) SetDependsOn(dependencies []string) { +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 *AWSElasticLoadBalancingLoadBalancer_AppCookieStickinessPolicy) Metadata() map[string]interface{} { +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 *AWSElasticLoadBalancingLoadBalancer_AppCookieStickinessPolicy) SetMetadata(metadata map[string]interface{}) { +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 *AWSElasticLoadBalancingLoadBalancer_AppCookieStickinessPolicy) DeletionPolicy() policies.DeletionPolicy { +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 *AWSElasticLoadBalancingLoadBalancer_AppCookieStickinessPolicy) SetDeletionPolicy(policy policies.DeletionPolicy) { +func (r *LoadBalancer_AppCookieStickinessPolicy) SetDeletionPolicy(policy policies.DeletionPolicy) { r._deletionPolicy = policy } diff --git a/cloudformation/resources/aws-elasticloadbalancing-loadbalancer_connectiondrainingpolicy.go b/cloudformation/elasticloadbalancing/aws-elasticloadbalancing-loadbalancer_connectiondrainingpolicy.go similarity index 68% rename from cloudformation/resources/aws-elasticloadbalancing-loadbalancer_connectiondrainingpolicy.go rename to cloudformation/elasticloadbalancing/aws-elasticloadbalancing-loadbalancer_connectiondrainingpolicy.go index 5c48842fa0..91adf8cc13 100644 --- a/cloudformation/resources/aws-elasticloadbalancing-loadbalancer_connectiondrainingpolicy.go +++ b/cloudformation/elasticloadbalancing/aws-elasticloadbalancing-loadbalancer_connectiondrainingpolicy.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_ConnectionDrainingPolicy AWS CloudFormation Resource (AWS::ElasticLoadBalancing::LoadBalancer.ConnectionDrainingPolicy) +// 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 AWSElasticLoadBalancingLoadBalancer_ConnectionDrainingPolicy struct { +type LoadBalancer_ConnectionDrainingPolicy struct { // Enabled AWS CloudFormation Property // Required: true @@ -27,42 +29,42 @@ type AWSElasticLoadBalancingLoadBalancer_ConnectionDrainingPolicy struct { } // AWSCloudFormationType returns the AWS CloudFormation resource type -func (r *AWSElasticLoadBalancingLoadBalancer_ConnectionDrainingPolicy) AWSCloudFormationType() string { +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 *AWSElasticLoadBalancingLoadBalancer_ConnectionDrainingPolicy) DependsOn() []string { +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 *AWSElasticLoadBalancingLoadBalancer_ConnectionDrainingPolicy) SetDependsOn(dependencies []string) { +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 *AWSElasticLoadBalancingLoadBalancer_ConnectionDrainingPolicy) Metadata() map[string]interface{} { +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 *AWSElasticLoadBalancingLoadBalancer_ConnectionDrainingPolicy) SetMetadata(metadata map[string]interface{}) { +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 *AWSElasticLoadBalancingLoadBalancer_ConnectionDrainingPolicy) DeletionPolicy() policies.DeletionPolicy { +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 *AWSElasticLoadBalancingLoadBalancer_ConnectionDrainingPolicy) SetDeletionPolicy(policy policies.DeletionPolicy) { +func (r *LoadBalancer_ConnectionDrainingPolicy) SetDeletionPolicy(policy policies.DeletionPolicy) { r._deletionPolicy = policy } diff --git a/cloudformation/resources/aws-elasticloadbalancing-loadbalancer_connectionsettings.go b/cloudformation/elasticloadbalancing/aws-elasticloadbalancing-loadbalancer_connectionsettings.go similarity index 66% rename from cloudformation/resources/aws-elasticloadbalancing-loadbalancer_connectionsettings.go rename to cloudformation/elasticloadbalancing/aws-elasticloadbalancing-loadbalancer_connectionsettings.go index a702467f43..ab54c195e1 100644 --- a/cloudformation/resources/aws-elasticloadbalancing-loadbalancer_connectionsettings.go +++ b/cloudformation/elasticloadbalancing/aws-elasticloadbalancing-loadbalancer_connectionsettings.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_ConnectionSettings AWS CloudFormation Resource (AWS::ElasticLoadBalancing::LoadBalancer.ConnectionSettings) +// 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 AWSElasticLoadBalancingLoadBalancer_ConnectionSettings struct { +type LoadBalancer_ConnectionSettings struct { // IdleTimeout AWS CloudFormation Property // Required: true @@ -22,42 +24,42 @@ type AWSElasticLoadBalancingLoadBalancer_ConnectionSettings struct { } // AWSCloudFormationType returns the AWS CloudFormation resource type -func (r *AWSElasticLoadBalancingLoadBalancer_ConnectionSettings) AWSCloudFormationType() string { +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 *AWSElasticLoadBalancingLoadBalancer_ConnectionSettings) DependsOn() []string { +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 *AWSElasticLoadBalancingLoadBalancer_ConnectionSettings) SetDependsOn(dependencies []string) { +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 *AWSElasticLoadBalancingLoadBalancer_ConnectionSettings) Metadata() map[string]interface{} { +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 *AWSElasticLoadBalancingLoadBalancer_ConnectionSettings) SetMetadata(metadata map[string]interface{}) { +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 *AWSElasticLoadBalancingLoadBalancer_ConnectionSettings) DeletionPolicy() policies.DeletionPolicy { +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 *AWSElasticLoadBalancingLoadBalancer_ConnectionSettings) SetDeletionPolicy(policy policies.DeletionPolicy) { +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/resources/aws-elasticloadbalancing-loadbalancer_lbcookiestickinesspolicy.go b/cloudformation/elasticloadbalancing/aws-elasticloadbalancing-loadbalancer_lbcookiestickinesspolicy.go similarity index 69% rename from cloudformation/resources/aws-elasticloadbalancing-loadbalancer_lbcookiestickinesspolicy.go rename to cloudformation/elasticloadbalancing/aws-elasticloadbalancing-loadbalancer_lbcookiestickinesspolicy.go index 04a2abc5b6..740b1e5611 100644 --- a/cloudformation/resources/aws-elasticloadbalancing-loadbalancer_lbcookiestickinesspolicy.go +++ b/cloudformation/elasticloadbalancing/aws-elasticloadbalancing-loadbalancer_lbcookiestickinesspolicy.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_LBCookieStickinessPolicy AWS CloudFormation Resource (AWS::ElasticLoadBalancing::LoadBalancer.LBCookieStickinessPolicy) +// 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 AWSElasticLoadBalancingLoadBalancer_LBCookieStickinessPolicy struct { +type LoadBalancer_LBCookieStickinessPolicy struct { // CookieExpirationPeriod AWS CloudFormation Property // Required: false @@ -27,42 +29,42 @@ type AWSElasticLoadBalancingLoadBalancer_LBCookieStickinessPolicy struct { } // AWSCloudFormationType returns the AWS CloudFormation resource type -func (r *AWSElasticLoadBalancingLoadBalancer_LBCookieStickinessPolicy) AWSCloudFormationType() string { +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 *AWSElasticLoadBalancingLoadBalancer_LBCookieStickinessPolicy) DependsOn() []string { +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 *AWSElasticLoadBalancingLoadBalancer_LBCookieStickinessPolicy) SetDependsOn(dependencies []string) { +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 *AWSElasticLoadBalancingLoadBalancer_LBCookieStickinessPolicy) Metadata() map[string]interface{} { +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 *AWSElasticLoadBalancingLoadBalancer_LBCookieStickinessPolicy) SetMetadata(metadata map[string]interface{}) { +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 *AWSElasticLoadBalancingLoadBalancer_LBCookieStickinessPolicy) DeletionPolicy() policies.DeletionPolicy { +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 *AWSElasticLoadBalancingLoadBalancer_LBCookieStickinessPolicy) SetDeletionPolicy(policy policies.DeletionPolicy) { +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/resources/aws-elasticloadbalancingv2-listener_action.go b/cloudformation/elasticloadbalancingv2/aws-elasticloadbalancingv2-listener_action.go similarity index 73% rename from cloudformation/resources/aws-elasticloadbalancingv2-listener_action.go rename to cloudformation/elasticloadbalancingv2/aws-elasticloadbalancingv2-listener_action.go index 2081a70de4..706d047588 100644 --- a/cloudformation/resources/aws-elasticloadbalancingv2-listener_action.go +++ b/cloudformation/elasticloadbalancingv2/aws-elasticloadbalancingv2-listener_action.go @@ -1,25 +1,27 @@ -package resources +package elasticloadbalancingv2 -import "github.com/awslabs/goformation/v2/cloudformation/policies" +import ( + "github.com/awslabs/goformation/v3/cloudformation/policies" +) -// AWSElasticLoadBalancingV2Listener_Action AWS CloudFormation Resource (AWS::ElasticLoadBalancingV2::Listener.Action) +// 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 AWSElasticLoadBalancingV2Listener_Action struct { +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 *AWSElasticLoadBalancingV2Listener_AuthenticateCognitoConfig `json:"AuthenticateCognitoConfig,omitempty"` + 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 *AWSElasticLoadBalancingV2Listener_AuthenticateOidcConfig `json:"AuthenticateOidcConfig,omitempty"` + 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 *AWSElasticLoadBalancingV2Listener_FixedResponseConfig `json:"FixedResponseConfig,omitempty"` + FixedResponseConfig *Listener_FixedResponseConfig `json:"FixedResponseConfig,omitempty"` // Order AWS CloudFormation Property // Required: false @@ -29,7 +31,7 @@ type AWSElasticLoadBalancingV2Listener_Action struct { // 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"` + RedirectConfig *Listener_RedirectConfig `json:"RedirectConfig,omitempty"` // TargetGroupArn AWS CloudFormation Property // Required: false @@ -52,42 +54,42 @@ type AWSElasticLoadBalancingV2Listener_Action struct { } // AWSCloudFormationType returns the AWS CloudFormation resource type -func (r *AWSElasticLoadBalancingV2Listener_Action) AWSCloudFormationType() string { +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 *AWSElasticLoadBalancingV2Listener_Action) DependsOn() []string { +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 *AWSElasticLoadBalancingV2Listener_Action) SetDependsOn(dependencies []string) { +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 *AWSElasticLoadBalancingV2Listener_Action) Metadata() map[string]interface{} { +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 *AWSElasticLoadBalancingV2Listener_Action) SetMetadata(metadata map[string]interface{}) { +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 *AWSElasticLoadBalancingV2Listener_Action) DeletionPolicy() policies.DeletionPolicy { +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 *AWSElasticLoadBalancingV2Listener_Action) SetDeletionPolicy(policy policies.DeletionPolicy) { +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/resources/aws-elasticloadbalancingv2-listener_certificate.go b/cloudformation/elasticloadbalancingv2/aws-elasticloadbalancingv2-listener_certificate.go similarity index 69% rename from cloudformation/resources/aws-elasticloadbalancingv2-listener_certificate.go rename to cloudformation/elasticloadbalancingv2/aws-elasticloadbalancingv2-listener_certificate.go index af99ba4993..ed458acb75 100644 --- a/cloudformation/resources/aws-elasticloadbalancingv2-listener_certificate.go +++ b/cloudformation/elasticloadbalancingv2/aws-elasticloadbalancingv2-listener_certificate.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_Certificate AWS CloudFormation Resource (AWS::ElasticLoadBalancingV2::Listener.Certificate) +// 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 AWSElasticLoadBalancingV2Listener_Certificate struct { +type Listener_Certificate struct { // CertificateArn AWS CloudFormation Property // Required: false @@ -22,42 +24,42 @@ type AWSElasticLoadBalancingV2Listener_Certificate struct { } // AWSCloudFormationType returns the AWS CloudFormation resource type -func (r *AWSElasticLoadBalancingV2Listener_Certificate) AWSCloudFormationType() string { +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 *AWSElasticLoadBalancingV2Listener_Certificate) DependsOn() []string { +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 *AWSElasticLoadBalancingV2Listener_Certificate) SetDependsOn(dependencies []string) { +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 *AWSElasticLoadBalancingV2Listener_Certificate) Metadata() map[string]interface{} { +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 *AWSElasticLoadBalancingV2Listener_Certificate) SetMetadata(metadata map[string]interface{}) { +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 *AWSElasticLoadBalancingV2Listener_Certificate) DeletionPolicy() policies.DeletionPolicy { +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 *AWSElasticLoadBalancingV2Listener_Certificate) SetDeletionPolicy(policy policies.DeletionPolicy) { +func (r *Listener_Certificate) SetDeletionPolicy(policy policies.DeletionPolicy) { r._deletionPolicy = policy } diff --git a/cloudformation/resources/aws-elasticloadbalancingv2-listener_fixedresponseconfig.go b/cloudformation/elasticloadbalancingv2/aws-elasticloadbalancingv2-listener_fixedresponseconfig.go similarity index 73% rename from cloudformation/resources/aws-elasticloadbalancingv2-listener_fixedresponseconfig.go rename to cloudformation/elasticloadbalancingv2/aws-elasticloadbalancingv2-listener_fixedresponseconfig.go index 1bbef4564d..173d27654b 100644 --- a/cloudformation/resources/aws-elasticloadbalancingv2-listener_fixedresponseconfig.go +++ b/cloudformation/elasticloadbalancingv2/aws-elasticloadbalancingv2-listener_fixedresponseconfig.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_FixedResponseConfig AWS CloudFormation Resource (AWS::ElasticLoadBalancingV2::Listener.FixedResponseConfig) +// 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 AWSElasticLoadBalancingV2Listener_FixedResponseConfig struct { +type Listener_FixedResponseConfig struct { // ContentType AWS CloudFormation Property // Required: false @@ -32,42 +34,42 @@ type AWSElasticLoadBalancingV2Listener_FixedResponseConfig struct { } // AWSCloudFormationType returns the AWS CloudFormation resource type -func (r *AWSElasticLoadBalancingV2Listener_FixedResponseConfig) AWSCloudFormationType() string { +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 *AWSElasticLoadBalancingV2Listener_FixedResponseConfig) DependsOn() []string { +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 *AWSElasticLoadBalancingV2Listener_FixedResponseConfig) SetDependsOn(dependencies []string) { +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 *AWSElasticLoadBalancingV2Listener_FixedResponseConfig) Metadata() map[string]interface{} { +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 *AWSElasticLoadBalancingV2Listener_FixedResponseConfig) SetMetadata(metadata map[string]interface{}) { +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 *AWSElasticLoadBalancingV2Listener_FixedResponseConfig) DeletionPolicy() policies.DeletionPolicy { +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 *AWSElasticLoadBalancingV2Listener_FixedResponseConfig) SetDeletionPolicy(policy policies.DeletionPolicy) { +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/resources/aws-elasticloadbalancingv2-listenercertificate.go b/cloudformation/elasticloadbalancingv2/aws-elasticloadbalancingv2-listenercertificate.go similarity index 73% rename from cloudformation/resources/aws-elasticloadbalancingv2-listenercertificate.go rename to cloudformation/elasticloadbalancingv2/aws-elasticloadbalancingv2-listenercertificate.go index dca2fed129..f28ed64d00 100644 --- a/cloudformation/resources/aws-elasticloadbalancingv2-listenercertificate.go +++ b/cloudformation/elasticloadbalancingv2/aws-elasticloadbalancingv2-listenercertificate.go @@ -1,20 +1,21 @@ -package resources +package elasticloadbalancingv2 import ( "bytes" "encoding/json" "fmt" - "github.com/awslabs/goformation/v2/cloudformation/policies" + + "github.com/awslabs/goformation/v3/cloudformation/policies" ) -// AWSElasticLoadBalancingV2ListenerCertificate AWS CloudFormation Resource (AWS::ElasticLoadBalancingV2::ListenerCertificate) +// ListenerCertificate AWS CloudFormation Resource (AWS::ElasticLoadBalancingV2::ListenerCertificate) // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-elasticloadbalancingv2-listenercertificate.html -type AWSElasticLoadBalancingV2ListenerCertificate struct { +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 []AWSElasticLoadBalancingV2ListenerCertificate_Certificate `json:"Certificates,omitempty"` + Certificates []ListenerCertificate_Certificate `json:"Certificates,omitempty"` // ListenerArn AWS CloudFormation Property // Required: true @@ -32,50 +33,50 @@ type AWSElasticLoadBalancingV2ListenerCertificate struct { } // AWSCloudFormationType returns the AWS CloudFormation resource type -func (r *AWSElasticLoadBalancingV2ListenerCertificate) AWSCloudFormationType() string { +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 *AWSElasticLoadBalancingV2ListenerCertificate) DependsOn() []string { +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 *AWSElasticLoadBalancingV2ListenerCertificate) SetDependsOn(dependencies []string) { +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 *AWSElasticLoadBalancingV2ListenerCertificate) Metadata() map[string]interface{} { +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 *AWSElasticLoadBalancingV2ListenerCertificate) SetMetadata(metadata map[string]interface{}) { +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 *AWSElasticLoadBalancingV2ListenerCertificate) DeletionPolicy() policies.DeletionPolicy { +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 *AWSElasticLoadBalancingV2ListenerCertificate) SetDeletionPolicy(policy policies.DeletionPolicy) { +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 AWSElasticLoadBalancingV2ListenerCertificate) MarshalJSON() ([]byte, error) { - type Properties AWSElasticLoadBalancingV2ListenerCertificate +func (r ListenerCertificate) MarshalJSON() ([]byte, error) { + type Properties ListenerCertificate return json.Marshal(&struct { Type string Properties Properties @@ -93,8 +94,8 @@ func (r AWSElasticLoadBalancingV2ListenerCertificate) 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 *AWSElasticLoadBalancingV2ListenerCertificate) UnmarshalJSON(b []byte) error { - type Properties AWSElasticLoadBalancingV2ListenerCertificate +func (r *ListenerCertificate) UnmarshalJSON(b []byte) error { + type Properties ListenerCertificate res := &struct { Type string Properties *Properties @@ -113,7 +114,7 @@ func (r *AWSElasticLoadBalancingV2ListenerCertificate) UnmarshalJSON(b []byte) e // If the resource has no Properties set, it could be nil if res.Properties != nil { - *r = AWSElasticLoadBalancingV2ListenerCertificate(*res.Properties) + *r = ListenerCertificate(*res.Properties) } if res.DependsOn != nil { r._dependsOn = res.DependsOn diff --git a/cloudformation/resources/aws-elasticloadbalancingv2-listenercertificate_certificate.go b/cloudformation/elasticloadbalancingv2/aws-elasticloadbalancingv2-listenercertificate_certificate.go similarity index 67% rename from cloudformation/resources/aws-elasticloadbalancingv2-listenercertificate_certificate.go rename to cloudformation/elasticloadbalancingv2/aws-elasticloadbalancingv2-listenercertificate_certificate.go index c5616ec8a2..cb23b1d1a9 100644 --- a/cloudformation/resources/aws-elasticloadbalancingv2-listenercertificate_certificate.go +++ b/cloudformation/elasticloadbalancingv2/aws-elasticloadbalancingv2-listenercertificate_certificate.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" +) -// AWSElasticLoadBalancingV2ListenerCertificate_Certificate AWS CloudFormation Resource (AWS::ElasticLoadBalancingV2::ListenerCertificate.Certificate) +// 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 AWSElasticLoadBalancingV2ListenerCertificate_Certificate struct { +type ListenerCertificate_Certificate struct { // CertificateArn AWS CloudFormation Property // Required: false @@ -22,42 +24,42 @@ type AWSElasticLoadBalancingV2ListenerCertificate_Certificate struct { } // AWSCloudFormationType returns the AWS CloudFormation resource type -func (r *AWSElasticLoadBalancingV2ListenerCertificate_Certificate) AWSCloudFormationType() string { +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 *AWSElasticLoadBalancingV2ListenerCertificate_Certificate) DependsOn() []string { +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 *AWSElasticLoadBalancingV2ListenerCertificate_Certificate) SetDependsOn(dependencies []string) { +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 *AWSElasticLoadBalancingV2ListenerCertificate_Certificate) Metadata() map[string]interface{} { +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 *AWSElasticLoadBalancingV2ListenerCertificate_Certificate) SetMetadata(metadata map[string]interface{}) { +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 *AWSElasticLoadBalancingV2ListenerCertificate_Certificate) DeletionPolicy() policies.DeletionPolicy { +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 *AWSElasticLoadBalancingV2ListenerCertificate_Certificate) SetDeletionPolicy(policy policies.DeletionPolicy) { +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/resources/aws-elasticloadbalancingv2-listenerrule_action.go b/cloudformation/elasticloadbalancingv2/aws-elasticloadbalancingv2-listenerrule_action.go similarity index 72% rename from cloudformation/resources/aws-elasticloadbalancingv2-listenerrule_action.go rename to cloudformation/elasticloadbalancingv2/aws-elasticloadbalancingv2-listenerrule_action.go index 5d5004d78d..893020d15b 100644 --- a/cloudformation/resources/aws-elasticloadbalancingv2-listenerrule_action.go +++ b/cloudformation/elasticloadbalancingv2/aws-elasticloadbalancingv2-listenerrule_action.go @@ -1,25 +1,27 @@ -package resources +package elasticloadbalancingv2 -import "github.com/awslabs/goformation/v2/cloudformation/policies" +import ( + "github.com/awslabs/goformation/v3/cloudformation/policies" +) -// AWSElasticLoadBalancingV2ListenerRule_Action AWS CloudFormation Resource (AWS::ElasticLoadBalancingV2::ListenerRule.Action) +// 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 AWSElasticLoadBalancingV2ListenerRule_Action struct { +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 *AWSElasticLoadBalancingV2ListenerRule_AuthenticateCognitoConfig `json:"AuthenticateCognitoConfig,omitempty"` + 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 *AWSElasticLoadBalancingV2ListenerRule_AuthenticateOidcConfig `json:"AuthenticateOidcConfig,omitempty"` + 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 *AWSElasticLoadBalancingV2ListenerRule_FixedResponseConfig `json:"FixedResponseConfig,omitempty"` + FixedResponseConfig *ListenerRule_FixedResponseConfig `json:"FixedResponseConfig,omitempty"` // Order AWS CloudFormation Property // Required: false @@ -29,7 +31,7 @@ type AWSElasticLoadBalancingV2ListenerRule_Action struct { // 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"` + RedirectConfig *ListenerRule_RedirectConfig `json:"RedirectConfig,omitempty"` // TargetGroupArn AWS CloudFormation Property // Required: false @@ -52,42 +54,42 @@ type AWSElasticLoadBalancingV2ListenerRule_Action struct { } // AWSCloudFormationType returns the AWS CloudFormation resource type -func (r *AWSElasticLoadBalancingV2ListenerRule_Action) AWSCloudFormationType() string { +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 *AWSElasticLoadBalancingV2ListenerRule_Action) DependsOn() []string { +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 *AWSElasticLoadBalancingV2ListenerRule_Action) SetDependsOn(dependencies []string) { +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 *AWSElasticLoadBalancingV2ListenerRule_Action) Metadata() map[string]interface{} { +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 *AWSElasticLoadBalancingV2ListenerRule_Action) SetMetadata(metadata map[string]interface{}) { +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 *AWSElasticLoadBalancingV2ListenerRule_Action) DeletionPolicy() policies.DeletionPolicy { +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 *AWSElasticLoadBalancingV2ListenerRule_Action) SetDeletionPolicy(policy policies.DeletionPolicy) { +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/resources/aws-elasticloadbalancingv2-listenerrule_fixedresponseconfig.go b/cloudformation/elasticloadbalancingv2/aws-elasticloadbalancingv2-listenerrule_fixedresponseconfig.go similarity index 72% rename from cloudformation/resources/aws-elasticloadbalancingv2-listenerrule_fixedresponseconfig.go rename to cloudformation/elasticloadbalancingv2/aws-elasticloadbalancingv2-listenerrule_fixedresponseconfig.go index d16ca7d4ff..e887c59a5f 100644 --- a/cloudformation/resources/aws-elasticloadbalancingv2-listenerrule_fixedresponseconfig.go +++ b/cloudformation/elasticloadbalancingv2/aws-elasticloadbalancingv2-listenerrule_fixedresponseconfig.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_FixedResponseConfig AWS CloudFormation Resource (AWS::ElasticLoadBalancingV2::ListenerRule.FixedResponseConfig) +// 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 AWSElasticLoadBalancingV2ListenerRule_FixedResponseConfig struct { +type ListenerRule_FixedResponseConfig struct { // ContentType AWS CloudFormation Property // Required: false @@ -32,42 +34,42 @@ type AWSElasticLoadBalancingV2ListenerRule_FixedResponseConfig struct { } // AWSCloudFormationType returns the AWS CloudFormation resource type -func (r *AWSElasticLoadBalancingV2ListenerRule_FixedResponseConfig) AWSCloudFormationType() string { +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 *AWSElasticLoadBalancingV2ListenerRule_FixedResponseConfig) DependsOn() []string { +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 *AWSElasticLoadBalancingV2ListenerRule_FixedResponseConfig) SetDependsOn(dependencies []string) { +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 *AWSElasticLoadBalancingV2ListenerRule_FixedResponseConfig) Metadata() map[string]interface{} { +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 *AWSElasticLoadBalancingV2ListenerRule_FixedResponseConfig) SetMetadata(metadata map[string]interface{}) { +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 *AWSElasticLoadBalancingV2ListenerRule_FixedResponseConfig) DeletionPolicy() policies.DeletionPolicy { +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 *AWSElasticLoadBalancingV2ListenerRule_FixedResponseConfig) SetDeletionPolicy(policy policies.DeletionPolicy) { +func (r *ListenerRule_FixedResponseConfig) SetDeletionPolicy(policy policies.DeletionPolicy) { r._deletionPolicy = policy } diff --git a/cloudformation/resources/aws-elasticloadbalancingv2-listenerrule_hostheaderconfig.go b/cloudformation/elasticloadbalancingv2/aws-elasticloadbalancingv2-listenerrule_hostheaderconfig.go similarity index 67% rename from cloudformation/resources/aws-elasticloadbalancingv2-listenerrule_hostheaderconfig.go rename to cloudformation/elasticloadbalancingv2/aws-elasticloadbalancingv2-listenerrule_hostheaderconfig.go index f42e23b8be..357f16a50c 100644 --- a/cloudformation/resources/aws-elasticloadbalancingv2-listenerrule_hostheaderconfig.go +++ b/cloudformation/elasticloadbalancingv2/aws-elasticloadbalancingv2-listenerrule_hostheaderconfig.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_HostHeaderConfig AWS CloudFormation Resource (AWS::ElasticLoadBalancingV2::ListenerRule.HostHeaderConfig) +// 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 AWSElasticLoadBalancingV2ListenerRule_HostHeaderConfig struct { +type ListenerRule_HostHeaderConfig struct { // Values AWS CloudFormation Property // Required: false @@ -22,42 +24,42 @@ type AWSElasticLoadBalancingV2ListenerRule_HostHeaderConfig struct { } // AWSCloudFormationType returns the AWS CloudFormation resource type -func (r *AWSElasticLoadBalancingV2ListenerRule_HostHeaderConfig) AWSCloudFormationType() string { +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 *AWSElasticLoadBalancingV2ListenerRule_HostHeaderConfig) DependsOn() []string { +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 *AWSElasticLoadBalancingV2ListenerRule_HostHeaderConfig) SetDependsOn(dependencies []string) { +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 *AWSElasticLoadBalancingV2ListenerRule_HostHeaderConfig) Metadata() map[string]interface{} { +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 *AWSElasticLoadBalancingV2ListenerRule_HostHeaderConfig) SetMetadata(metadata map[string]interface{}) { +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 *AWSElasticLoadBalancingV2ListenerRule_HostHeaderConfig) DeletionPolicy() policies.DeletionPolicy { +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 *AWSElasticLoadBalancingV2ListenerRule_HostHeaderConfig) SetDeletionPolicy(policy policies.DeletionPolicy) { +func (r *ListenerRule_HostHeaderConfig) SetDeletionPolicy(policy policies.DeletionPolicy) { r._deletionPolicy = policy } diff --git a/cloudformation/resources/aws-elasticloadbalancingv2-listenerrule_httpheaderconfig.go b/cloudformation/elasticloadbalancingv2/aws-elasticloadbalancingv2-listenerrule_httpheaderconfig.go similarity index 70% rename from cloudformation/resources/aws-elasticloadbalancingv2-listenerrule_httpheaderconfig.go rename to cloudformation/elasticloadbalancingv2/aws-elasticloadbalancingv2-listenerrule_httpheaderconfig.go index f395f04155..7ad5859d6d 100644 --- a/cloudformation/resources/aws-elasticloadbalancingv2-listenerrule_httpheaderconfig.go +++ b/cloudformation/elasticloadbalancingv2/aws-elasticloadbalancingv2-listenerrule_httpheaderconfig.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_HttpHeaderConfig AWS CloudFormation Resource (AWS::ElasticLoadBalancingV2::ListenerRule.HttpHeaderConfig) +// 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 AWSElasticLoadBalancingV2ListenerRule_HttpHeaderConfig struct { +type ListenerRule_HttpHeaderConfig struct { // HttpHeaderName AWS CloudFormation Property // Required: false @@ -27,42 +29,42 @@ type AWSElasticLoadBalancingV2ListenerRule_HttpHeaderConfig struct { } // AWSCloudFormationType returns the AWS CloudFormation resource type -func (r *AWSElasticLoadBalancingV2ListenerRule_HttpHeaderConfig) AWSCloudFormationType() string { +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 *AWSElasticLoadBalancingV2ListenerRule_HttpHeaderConfig) DependsOn() []string { +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 *AWSElasticLoadBalancingV2ListenerRule_HttpHeaderConfig) SetDependsOn(dependencies []string) { +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 *AWSElasticLoadBalancingV2ListenerRule_HttpHeaderConfig) Metadata() map[string]interface{} { +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 *AWSElasticLoadBalancingV2ListenerRule_HttpHeaderConfig) SetMetadata(metadata map[string]interface{}) { +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 *AWSElasticLoadBalancingV2ListenerRule_HttpHeaderConfig) DeletionPolicy() policies.DeletionPolicy { +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 *AWSElasticLoadBalancingV2ListenerRule_HttpHeaderConfig) SetDeletionPolicy(policy policies.DeletionPolicy) { +func (r *ListenerRule_HttpHeaderConfig) SetDeletionPolicy(policy policies.DeletionPolicy) { r._deletionPolicy = policy } diff --git a/cloudformation/resources/aws-elasticloadbalancingv2-listenerrule_httprequestmethodconfig.go b/cloudformation/elasticloadbalancingv2/aws-elasticloadbalancingv2-listenerrule_httprequestmethodconfig.go similarity index 66% rename from cloudformation/resources/aws-elasticloadbalancingv2-listenerrule_httprequestmethodconfig.go rename to cloudformation/elasticloadbalancingv2/aws-elasticloadbalancingv2-listenerrule_httprequestmethodconfig.go index 9f657634cc..4e808721b3 100644 --- a/cloudformation/resources/aws-elasticloadbalancingv2-listenerrule_httprequestmethodconfig.go +++ b/cloudformation/elasticloadbalancingv2/aws-elasticloadbalancingv2-listenerrule_httprequestmethodconfig.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_HttpRequestMethodConfig AWS CloudFormation Resource (AWS::ElasticLoadBalancingV2::ListenerRule.HttpRequestMethodConfig) +// 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 AWSElasticLoadBalancingV2ListenerRule_HttpRequestMethodConfig struct { +type ListenerRule_HttpRequestMethodConfig struct { // Values AWS CloudFormation Property // Required: false @@ -22,42 +24,42 @@ type AWSElasticLoadBalancingV2ListenerRule_HttpRequestMethodConfig struct { } // AWSCloudFormationType returns the AWS CloudFormation resource type -func (r *AWSElasticLoadBalancingV2ListenerRule_HttpRequestMethodConfig) AWSCloudFormationType() string { +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 *AWSElasticLoadBalancingV2ListenerRule_HttpRequestMethodConfig) DependsOn() []string { +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 *AWSElasticLoadBalancingV2ListenerRule_HttpRequestMethodConfig) SetDependsOn(dependencies []string) { +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 *AWSElasticLoadBalancingV2ListenerRule_HttpRequestMethodConfig) Metadata() map[string]interface{} { +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 *AWSElasticLoadBalancingV2ListenerRule_HttpRequestMethodConfig) SetMetadata(metadata map[string]interface{}) { +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 *AWSElasticLoadBalancingV2ListenerRule_HttpRequestMethodConfig) DeletionPolicy() policies.DeletionPolicy { +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 *AWSElasticLoadBalancingV2ListenerRule_HttpRequestMethodConfig) SetDeletionPolicy(policy policies.DeletionPolicy) { +func (r *ListenerRule_HttpRequestMethodConfig) SetDeletionPolicy(policy policies.DeletionPolicy) { r._deletionPolicy = policy } diff --git a/cloudformation/resources/aws-elasticloadbalancingv2-listenerrule_pathpatternconfig.go b/cloudformation/elasticloadbalancingv2/aws-elasticloadbalancingv2-listenerrule_pathpatternconfig.go similarity index 67% rename from cloudformation/resources/aws-elasticloadbalancingv2-listenerrule_pathpatternconfig.go rename to cloudformation/elasticloadbalancingv2/aws-elasticloadbalancingv2-listenerrule_pathpatternconfig.go index 3af8e605da..7f430b3c24 100644 --- a/cloudformation/resources/aws-elasticloadbalancingv2-listenerrule_pathpatternconfig.go +++ b/cloudformation/elasticloadbalancingv2/aws-elasticloadbalancingv2-listenerrule_pathpatternconfig.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_PathPatternConfig AWS CloudFormation Resource (AWS::ElasticLoadBalancingV2::ListenerRule.PathPatternConfig) +// 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 AWSElasticLoadBalancingV2ListenerRule_PathPatternConfig struct { +type ListenerRule_PathPatternConfig struct { // Values AWS CloudFormation Property // Required: false @@ -22,42 +24,42 @@ type AWSElasticLoadBalancingV2ListenerRule_PathPatternConfig struct { } // AWSCloudFormationType returns the AWS CloudFormation resource type -func (r *AWSElasticLoadBalancingV2ListenerRule_PathPatternConfig) AWSCloudFormationType() string { +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 *AWSElasticLoadBalancingV2ListenerRule_PathPatternConfig) DependsOn() []string { +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 *AWSElasticLoadBalancingV2ListenerRule_PathPatternConfig) SetDependsOn(dependencies []string) { +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 *AWSElasticLoadBalancingV2ListenerRule_PathPatternConfig) Metadata() map[string]interface{} { +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 *AWSElasticLoadBalancingV2ListenerRule_PathPatternConfig) SetMetadata(metadata map[string]interface{}) { +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 *AWSElasticLoadBalancingV2ListenerRule_PathPatternConfig) DeletionPolicy() policies.DeletionPolicy { +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 *AWSElasticLoadBalancingV2ListenerRule_PathPatternConfig) SetDeletionPolicy(policy policies.DeletionPolicy) { +func (r *ListenerRule_PathPatternConfig) SetDeletionPolicy(policy policies.DeletionPolicy) { r._deletionPolicy = policy } diff --git a/cloudformation/resources/aws-elasticloadbalancingv2-listenerrule_querystringconfig.go b/cloudformation/elasticloadbalancingv2/aws-elasticloadbalancingv2-listenerrule_querystringconfig.go similarity index 65% rename from cloudformation/resources/aws-elasticloadbalancingv2-listenerrule_querystringconfig.go rename to cloudformation/elasticloadbalancingv2/aws-elasticloadbalancingv2-listenerrule_querystringconfig.go index adeef2ab83..4d28ebe52f 100644 --- a/cloudformation/resources/aws-elasticloadbalancingv2-listenerrule_querystringconfig.go +++ b/cloudformation/elasticloadbalancingv2/aws-elasticloadbalancingv2-listenerrule_querystringconfig.go @@ -1,15 +1,17 @@ -package resources +package elasticloadbalancingv2 -import "github.com/awslabs/goformation/v2/cloudformation/policies" +import ( + "github.com/awslabs/goformation/v3/cloudformation/policies" +) -// AWSElasticLoadBalancingV2ListenerRule_QueryStringConfig AWS CloudFormation Resource (AWS::ElasticLoadBalancingV2::ListenerRule.QueryStringConfig) +// 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 AWSElasticLoadBalancingV2ListenerRule_QueryStringConfig struct { +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 []AWSElasticLoadBalancingV2ListenerRule_QueryStringKeyValue `json:"Values,omitempty"` + Values []ListenerRule_QueryStringKeyValue `json:"Values,omitempty"` // _deletionPolicy represents a CloudFormation DeletionPolicy _deletionPolicy policies.DeletionPolicy @@ -22,42 +24,42 @@ type AWSElasticLoadBalancingV2ListenerRule_QueryStringConfig struct { } // AWSCloudFormationType returns the AWS CloudFormation resource type -func (r *AWSElasticLoadBalancingV2ListenerRule_QueryStringConfig) AWSCloudFormationType() string { +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 *AWSElasticLoadBalancingV2ListenerRule_QueryStringConfig) DependsOn() []string { +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 *AWSElasticLoadBalancingV2ListenerRule_QueryStringConfig) SetDependsOn(dependencies []string) { +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 *AWSElasticLoadBalancingV2ListenerRule_QueryStringConfig) Metadata() map[string]interface{} { +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 *AWSElasticLoadBalancingV2ListenerRule_QueryStringConfig) SetMetadata(metadata map[string]interface{}) { +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 *AWSElasticLoadBalancingV2ListenerRule_QueryStringConfig) DeletionPolicy() policies.DeletionPolicy { +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 *AWSElasticLoadBalancingV2ListenerRule_QueryStringConfig) SetDeletionPolicy(policy policies.DeletionPolicy) { +func (r *ListenerRule_QueryStringConfig) SetDeletionPolicy(policy policies.DeletionPolicy) { r._deletionPolicy = policy } diff --git a/cloudformation/resources/aws-elasticloadbalancingv2-listenerrule_querystringkeyvalue.go b/cloudformation/elasticloadbalancingv2/aws-elasticloadbalancingv2-listenerrule_querystringkeyvalue.go similarity index 69% rename from cloudformation/resources/aws-elasticloadbalancingv2-listenerrule_querystringkeyvalue.go rename to cloudformation/elasticloadbalancingv2/aws-elasticloadbalancingv2-listenerrule_querystringkeyvalue.go index d085049e3c..219aa54b34 100644 --- a/cloudformation/resources/aws-elasticloadbalancingv2-listenerrule_querystringkeyvalue.go +++ b/cloudformation/elasticloadbalancingv2/aws-elasticloadbalancingv2-listenerrule_querystringkeyvalue.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_QueryStringKeyValue AWS CloudFormation Resource (AWS::ElasticLoadBalancingV2::ListenerRule.QueryStringKeyValue) +// 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 AWSElasticLoadBalancingV2ListenerRule_QueryStringKeyValue struct { +type ListenerRule_QueryStringKeyValue struct { // Key AWS CloudFormation Property // Required: false @@ -27,42 +29,42 @@ type AWSElasticLoadBalancingV2ListenerRule_QueryStringKeyValue struct { } // AWSCloudFormationType returns the AWS CloudFormation resource type -func (r *AWSElasticLoadBalancingV2ListenerRule_QueryStringKeyValue) AWSCloudFormationType() string { +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 *AWSElasticLoadBalancingV2ListenerRule_QueryStringKeyValue) DependsOn() []string { +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 *AWSElasticLoadBalancingV2ListenerRule_QueryStringKeyValue) SetDependsOn(dependencies []string) { +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 *AWSElasticLoadBalancingV2ListenerRule_QueryStringKeyValue) Metadata() map[string]interface{} { +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 *AWSElasticLoadBalancingV2ListenerRule_QueryStringKeyValue) SetMetadata(metadata map[string]interface{}) { +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 *AWSElasticLoadBalancingV2ListenerRule_QueryStringKeyValue) DeletionPolicy() policies.DeletionPolicy { +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 *AWSElasticLoadBalancingV2ListenerRule_QueryStringKeyValue) SetDeletionPolicy(policy policies.DeletionPolicy) { +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/resources/aws-elasticloadbalancingv2-listenerrule_rulecondition.go b/cloudformation/elasticloadbalancingv2/aws-elasticloadbalancingv2-listenerrule_rulecondition.go similarity index 70% rename from cloudformation/resources/aws-elasticloadbalancingv2-listenerrule_rulecondition.go rename to cloudformation/elasticloadbalancingv2/aws-elasticloadbalancingv2-listenerrule_rulecondition.go index 1a5b326a0a..668ea355d9 100644 --- a/cloudformation/resources/aws-elasticloadbalancingv2-listenerrule_rulecondition.go +++ b/cloudformation/elasticloadbalancingv2/aws-elasticloadbalancingv2-listenerrule_rulecondition.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_RuleCondition AWS CloudFormation Resource (AWS::ElasticLoadBalancingV2::ListenerRule.RuleCondition) +// 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 AWSElasticLoadBalancingV2ListenerRule_RuleCondition struct { +type ListenerRule_RuleCondition struct { // Field AWS CloudFormation Property // Required: false @@ -14,32 +16,32 @@ type AWSElasticLoadBalancingV2ListenerRule_RuleCondition struct { // 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"` + 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 *AWSElasticLoadBalancingV2ListenerRule_HttpHeaderConfig `json:"HttpHeaderConfig,omitempty"` + 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 *AWSElasticLoadBalancingV2ListenerRule_HttpRequestMethodConfig `json:"HttpRequestMethodConfig,omitempty"` + 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 *AWSElasticLoadBalancingV2ListenerRule_PathPatternConfig `json:"PathPatternConfig,omitempty"` + 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 *AWSElasticLoadBalancingV2ListenerRule_QueryStringConfig `json:"QueryStringConfig,omitempty"` + 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 *AWSElasticLoadBalancingV2ListenerRule_SourceIpConfig `json:"SourceIpConfig,omitempty"` + SourceIpConfig *ListenerRule_SourceIpConfig `json:"SourceIpConfig,omitempty"` // Values AWS CloudFormation Property // Required: false @@ -57,42 +59,42 @@ type AWSElasticLoadBalancingV2ListenerRule_RuleCondition struct { } // AWSCloudFormationType returns the AWS CloudFormation resource type -func (r *AWSElasticLoadBalancingV2ListenerRule_RuleCondition) AWSCloudFormationType() string { +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 *AWSElasticLoadBalancingV2ListenerRule_RuleCondition) DependsOn() []string { +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 *AWSElasticLoadBalancingV2ListenerRule_RuleCondition) SetDependsOn(dependencies []string) { +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 *AWSElasticLoadBalancingV2ListenerRule_RuleCondition) Metadata() map[string]interface{} { +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 *AWSElasticLoadBalancingV2ListenerRule_RuleCondition) SetMetadata(metadata map[string]interface{}) { +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 *AWSElasticLoadBalancingV2ListenerRule_RuleCondition) DeletionPolicy() policies.DeletionPolicy { +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 *AWSElasticLoadBalancingV2ListenerRule_RuleCondition) SetDeletionPolicy(policy policies.DeletionPolicy) { +func (r *ListenerRule_RuleCondition) SetDeletionPolicy(policy policies.DeletionPolicy) { r._deletionPolicy = policy } diff --git a/cloudformation/resources/aws-elasticloadbalancingv2-listenerrule_sourceipconfig.go b/cloudformation/elasticloadbalancingv2/aws-elasticloadbalancingv2-listenerrule_sourceipconfig.go similarity index 67% rename from cloudformation/resources/aws-elasticloadbalancingv2-listenerrule_sourceipconfig.go rename to cloudformation/elasticloadbalancingv2/aws-elasticloadbalancingv2-listenerrule_sourceipconfig.go index 750bc2ec1d..53170a95a8 100644 --- a/cloudformation/resources/aws-elasticloadbalancingv2-listenerrule_sourceipconfig.go +++ b/cloudformation/elasticloadbalancingv2/aws-elasticloadbalancingv2-listenerrule_sourceipconfig.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_SourceIpConfig AWS CloudFormation Resource (AWS::ElasticLoadBalancingV2::ListenerRule.SourceIpConfig) +// 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 AWSElasticLoadBalancingV2ListenerRule_SourceIpConfig struct { +type ListenerRule_SourceIpConfig struct { // Values AWS CloudFormation Property // Required: false @@ -22,42 +24,42 @@ type AWSElasticLoadBalancingV2ListenerRule_SourceIpConfig struct { } // AWSCloudFormationType returns the AWS CloudFormation resource type -func (r *AWSElasticLoadBalancingV2ListenerRule_SourceIpConfig) AWSCloudFormationType() string { +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 *AWSElasticLoadBalancingV2ListenerRule_SourceIpConfig) DependsOn() []string { +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 *AWSElasticLoadBalancingV2ListenerRule_SourceIpConfig) SetDependsOn(dependencies []string) { +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 *AWSElasticLoadBalancingV2ListenerRule_SourceIpConfig) Metadata() map[string]interface{} { +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 *AWSElasticLoadBalancingV2ListenerRule_SourceIpConfig) SetMetadata(metadata map[string]interface{}) { +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 *AWSElasticLoadBalancingV2ListenerRule_SourceIpConfig) DeletionPolicy() policies.DeletionPolicy { +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 *AWSElasticLoadBalancingV2ListenerRule_SourceIpConfig) SetDeletionPolicy(policy policies.DeletionPolicy) { +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/resources/aws-elasticloadbalancingv2-loadbalancer_loadbalancerattribute.go b/cloudformation/elasticloadbalancingv2/aws-elasticloadbalancingv2-loadbalancer_loadbalancerattribute.go similarity index 69% rename from cloudformation/resources/aws-elasticloadbalancingv2-loadbalancer_loadbalancerattribute.go rename to cloudformation/elasticloadbalancingv2/aws-elasticloadbalancingv2-loadbalancer_loadbalancerattribute.go index 69151f44a5..34538a7b6e 100644 --- a/cloudformation/resources/aws-elasticloadbalancingv2-loadbalancer_loadbalancerattribute.go +++ b/cloudformation/elasticloadbalancingv2/aws-elasticloadbalancingv2-loadbalancer_loadbalancerattribute.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" +) -// AWSElasticLoadBalancingV2LoadBalancer_LoadBalancerAttribute AWS CloudFormation Resource (AWS::ElasticLoadBalancingV2::LoadBalancer.LoadBalancerAttribute) +// 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 AWSElasticLoadBalancingV2LoadBalancer_LoadBalancerAttribute struct { +type LoadBalancer_LoadBalancerAttribute struct { // Key AWS CloudFormation Property // Required: false @@ -27,42 +29,42 @@ type AWSElasticLoadBalancingV2LoadBalancer_LoadBalancerAttribute struct { } // AWSCloudFormationType returns the AWS CloudFormation resource type -func (r *AWSElasticLoadBalancingV2LoadBalancer_LoadBalancerAttribute) AWSCloudFormationType() string { +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 *AWSElasticLoadBalancingV2LoadBalancer_LoadBalancerAttribute) DependsOn() []string { +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 *AWSElasticLoadBalancingV2LoadBalancer_LoadBalancerAttribute) SetDependsOn(dependencies []string) { +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 *AWSElasticLoadBalancingV2LoadBalancer_LoadBalancerAttribute) Metadata() map[string]interface{} { +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 *AWSElasticLoadBalancingV2LoadBalancer_LoadBalancerAttribute) SetMetadata(metadata map[string]interface{}) { +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 *AWSElasticLoadBalancingV2LoadBalancer_LoadBalancerAttribute) DeletionPolicy() policies.DeletionPolicy { +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 *AWSElasticLoadBalancingV2LoadBalancer_LoadBalancerAttribute) SetDeletionPolicy(policy policies.DeletionPolicy) { +func (r *LoadBalancer_LoadBalancerAttribute) SetDeletionPolicy(policy policies.DeletionPolicy) { r._deletionPolicy = policy } diff --git a/cloudformation/resources/aws-elasticloadbalancingv2-loadbalancer_subnetmapping.go b/cloudformation/elasticloadbalancingv2/aws-elasticloadbalancingv2-loadbalancer_subnetmapping.go similarity index 71% rename from cloudformation/resources/aws-elasticloadbalancingv2-loadbalancer_subnetmapping.go rename to cloudformation/elasticloadbalancingv2/aws-elasticloadbalancingv2-loadbalancer_subnetmapping.go index 9ce198969c..eeefd7252d 100644 --- a/cloudformation/resources/aws-elasticloadbalancingv2-loadbalancer_subnetmapping.go +++ b/cloudformation/elasticloadbalancingv2/aws-elasticloadbalancingv2-loadbalancer_subnetmapping.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" +) -// AWSElasticLoadBalancingV2LoadBalancer_SubnetMapping AWS CloudFormation Resource (AWS::ElasticLoadBalancingV2::LoadBalancer.SubnetMapping) +// 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 AWSElasticLoadBalancingV2LoadBalancer_SubnetMapping struct { +type LoadBalancer_SubnetMapping struct { // AllocationId AWS CloudFormation Property // Required: true @@ -27,42 +29,42 @@ type AWSElasticLoadBalancingV2LoadBalancer_SubnetMapping struct { } // AWSCloudFormationType returns the AWS CloudFormation resource type -func (r *AWSElasticLoadBalancingV2LoadBalancer_SubnetMapping) AWSCloudFormationType() string { +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 *AWSElasticLoadBalancingV2LoadBalancer_SubnetMapping) DependsOn() []string { +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 *AWSElasticLoadBalancingV2LoadBalancer_SubnetMapping) SetDependsOn(dependencies []string) { +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 *AWSElasticLoadBalancingV2LoadBalancer_SubnetMapping) Metadata() map[string]interface{} { +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 *AWSElasticLoadBalancingV2LoadBalancer_SubnetMapping) SetMetadata(metadata map[string]interface{}) { +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 *AWSElasticLoadBalancingV2LoadBalancer_SubnetMapping) DeletionPolicy() policies.DeletionPolicy { +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 *AWSElasticLoadBalancingV2LoadBalancer_SubnetMapping) SetDeletionPolicy(policy policies.DeletionPolicy) { +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/resources/aws-elasticloadbalancingv2-targetgroup_matcher.go b/cloudformation/elasticloadbalancingv2/aws-elasticloadbalancingv2-targetgroup_matcher.go similarity index 69% rename from cloudformation/resources/aws-elasticloadbalancingv2-targetgroup_matcher.go rename to cloudformation/elasticloadbalancingv2/aws-elasticloadbalancingv2-targetgroup_matcher.go index 58e4f6ebd5..28598b8f77 100644 --- a/cloudformation/resources/aws-elasticloadbalancingv2-targetgroup_matcher.go +++ b/cloudformation/elasticloadbalancingv2/aws-elasticloadbalancingv2-targetgroup_matcher.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" +) -// AWSElasticLoadBalancingV2TargetGroup_Matcher AWS CloudFormation Resource (AWS::ElasticLoadBalancingV2::TargetGroup.Matcher) +// 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 AWSElasticLoadBalancingV2TargetGroup_Matcher struct { +type TargetGroup_Matcher struct { // HttpCode AWS CloudFormation Property // Required: true @@ -22,42 +24,42 @@ type AWSElasticLoadBalancingV2TargetGroup_Matcher struct { } // AWSCloudFormationType returns the AWS CloudFormation resource type -func (r *AWSElasticLoadBalancingV2TargetGroup_Matcher) AWSCloudFormationType() string { +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 *AWSElasticLoadBalancingV2TargetGroup_Matcher) DependsOn() []string { +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 *AWSElasticLoadBalancingV2TargetGroup_Matcher) SetDependsOn(dependencies []string) { +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 *AWSElasticLoadBalancingV2TargetGroup_Matcher) Metadata() map[string]interface{} { +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 *AWSElasticLoadBalancingV2TargetGroup_Matcher) SetMetadata(metadata map[string]interface{}) { +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 *AWSElasticLoadBalancingV2TargetGroup_Matcher) DeletionPolicy() policies.DeletionPolicy { +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 *AWSElasticLoadBalancingV2TargetGroup_Matcher) SetDeletionPolicy(policy policies.DeletionPolicy) { +func (r *TargetGroup_Matcher) SetDeletionPolicy(policy policies.DeletionPolicy) { r._deletionPolicy = policy } diff --git a/cloudformation/resources/aws-elasticloadbalancingv2-targetgroup_targetdescription.go b/cloudformation/elasticloadbalancingv2/aws-elasticloadbalancingv2-targetgroup_targetdescription.go similarity index 72% rename from cloudformation/resources/aws-elasticloadbalancingv2-targetgroup_targetdescription.go rename to cloudformation/elasticloadbalancingv2/aws-elasticloadbalancingv2-targetgroup_targetdescription.go index 39b66f60f8..256becdafe 100644 --- a/cloudformation/resources/aws-elasticloadbalancingv2-targetgroup_targetdescription.go +++ b/cloudformation/elasticloadbalancingv2/aws-elasticloadbalancingv2-targetgroup_targetdescription.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" +) -// AWSElasticLoadBalancingV2TargetGroup_TargetDescription AWS CloudFormation Resource (AWS::ElasticLoadBalancingV2::TargetGroup.TargetDescription) +// 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 AWSElasticLoadBalancingV2TargetGroup_TargetDescription struct { +type TargetGroup_TargetDescription struct { // AvailabilityZone AWS CloudFormation Property // Required: false @@ -32,42 +34,42 @@ type AWSElasticLoadBalancingV2TargetGroup_TargetDescription struct { } // AWSCloudFormationType returns the AWS CloudFormation resource type -func (r *AWSElasticLoadBalancingV2TargetGroup_TargetDescription) AWSCloudFormationType() string { +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 *AWSElasticLoadBalancingV2TargetGroup_TargetDescription) DependsOn() []string { +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 *AWSElasticLoadBalancingV2TargetGroup_TargetDescription) SetDependsOn(dependencies []string) { +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 *AWSElasticLoadBalancingV2TargetGroup_TargetDescription) Metadata() map[string]interface{} { +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 *AWSElasticLoadBalancingV2TargetGroup_TargetDescription) SetMetadata(metadata map[string]interface{}) { +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 *AWSElasticLoadBalancingV2TargetGroup_TargetDescription) DeletionPolicy() policies.DeletionPolicy { +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 *AWSElasticLoadBalancingV2TargetGroup_TargetDescription) SetDeletionPolicy(policy policies.DeletionPolicy) { +func (r *TargetGroup_TargetDescription) SetDeletionPolicy(policy policies.DeletionPolicy) { r._deletionPolicy = policy } diff --git a/cloudformation/resources/aws-elasticloadbalancingv2-targetgroup_targetgroupattribute.go b/cloudformation/elasticloadbalancingv2/aws-elasticloadbalancingv2-targetgroup_targetgroupattribute.go similarity index 69% rename from cloudformation/resources/aws-elasticloadbalancingv2-targetgroup_targetgroupattribute.go rename to cloudformation/elasticloadbalancingv2/aws-elasticloadbalancingv2-targetgroup_targetgroupattribute.go index 22d87c0b71..7505cd25d1 100644 --- a/cloudformation/resources/aws-elasticloadbalancingv2-targetgroup_targetgroupattribute.go +++ b/cloudformation/elasticloadbalancingv2/aws-elasticloadbalancingv2-targetgroup_targetgroupattribute.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" +) -// AWSElasticLoadBalancingV2TargetGroup_TargetGroupAttribute AWS CloudFormation Resource (AWS::ElasticLoadBalancingV2::TargetGroup.TargetGroupAttribute) +// 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 AWSElasticLoadBalancingV2TargetGroup_TargetGroupAttribute struct { +type TargetGroup_TargetGroupAttribute struct { // Key AWS CloudFormation Property // Required: false @@ -27,42 +29,42 @@ type AWSElasticLoadBalancingV2TargetGroup_TargetGroupAttribute struct { } // AWSCloudFormationType returns the AWS CloudFormation resource type -func (r *AWSElasticLoadBalancingV2TargetGroup_TargetGroupAttribute) AWSCloudFormationType() string { +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 *AWSElasticLoadBalancingV2TargetGroup_TargetGroupAttribute) DependsOn() []string { +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 *AWSElasticLoadBalancingV2TargetGroup_TargetGroupAttribute) SetDependsOn(dependencies []string) { +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 *AWSElasticLoadBalancingV2TargetGroup_TargetGroupAttribute) Metadata() map[string]interface{} { +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 *AWSElasticLoadBalancingV2TargetGroup_TargetGroupAttribute) SetMetadata(metadata map[string]interface{}) { +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 *AWSElasticLoadBalancingV2TargetGroup_TargetGroupAttribute) DeletionPolicy() policies.DeletionPolicy { +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 *AWSElasticLoadBalancingV2TargetGroup_TargetGroupAttribute) SetDeletionPolicy(policy policies.DeletionPolicy) { +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/resources/aws-elasticsearch-domain_encryptionatrestoptions.go b/cloudformation/elasticsearch/aws-elasticsearch-domain_encryptionatrestoptions.go similarity index 71% rename from cloudformation/resources/aws-elasticsearch-domain_encryptionatrestoptions.go rename to cloudformation/elasticsearch/aws-elasticsearch-domain_encryptionatrestoptions.go index 8a5ddf4537..ae002a21a7 100644 --- a/cloudformation/resources/aws-elasticsearch-domain_encryptionatrestoptions.go +++ b/cloudformation/elasticsearch/aws-elasticsearch-domain_encryptionatrestoptions.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_EncryptionAtRestOptions AWS CloudFormation Resource (AWS::Elasticsearch::Domain.EncryptionAtRestOptions) +// 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 AWSElasticsearchDomain_EncryptionAtRestOptions struct { +type Domain_EncryptionAtRestOptions struct { // Enabled AWS CloudFormation Property // Required: false @@ -27,42 +29,42 @@ type AWSElasticsearchDomain_EncryptionAtRestOptions struct { } // AWSCloudFormationType returns the AWS CloudFormation resource type -func (r *AWSElasticsearchDomain_EncryptionAtRestOptions) AWSCloudFormationType() string { +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 *AWSElasticsearchDomain_EncryptionAtRestOptions) DependsOn() []string { +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 *AWSElasticsearchDomain_EncryptionAtRestOptions) SetDependsOn(dependencies []string) { +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 *AWSElasticsearchDomain_EncryptionAtRestOptions) Metadata() map[string]interface{} { +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 *AWSElasticsearchDomain_EncryptionAtRestOptions) SetMetadata(metadata map[string]interface{}) { +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 *AWSElasticsearchDomain_EncryptionAtRestOptions) DeletionPolicy() policies.DeletionPolicy { +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 *AWSElasticsearchDomain_EncryptionAtRestOptions) SetDeletionPolicy(policy policies.DeletionPolicy) { +func (r *Domain_EncryptionAtRestOptions) SetDeletionPolicy(policy policies.DeletionPolicy) { r._deletionPolicy = policy } diff --git a/cloudformation/resources/aws-elasticsearch-domain_nodetonodeencryptionoptions.go b/cloudformation/elasticsearch/aws-elasticsearch-domain_nodetonodeencryptionoptions.go similarity index 68% rename from cloudformation/resources/aws-elasticsearch-domain_nodetonodeencryptionoptions.go rename to cloudformation/elasticsearch/aws-elasticsearch-domain_nodetonodeencryptionoptions.go index 70ce068c14..8c677a6fb7 100644 --- a/cloudformation/resources/aws-elasticsearch-domain_nodetonodeencryptionoptions.go +++ b/cloudformation/elasticsearch/aws-elasticsearch-domain_nodetonodeencryptionoptions.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_NodeToNodeEncryptionOptions AWS CloudFormation Resource (AWS::Elasticsearch::Domain.NodeToNodeEncryptionOptions) +// 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 AWSElasticsearchDomain_NodeToNodeEncryptionOptions struct { +type Domain_NodeToNodeEncryptionOptions struct { // Enabled AWS CloudFormation Property // Required: false @@ -22,42 +24,42 @@ type AWSElasticsearchDomain_NodeToNodeEncryptionOptions struct { } // AWSCloudFormationType returns the AWS CloudFormation resource type -func (r *AWSElasticsearchDomain_NodeToNodeEncryptionOptions) AWSCloudFormationType() string { +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 *AWSElasticsearchDomain_NodeToNodeEncryptionOptions) DependsOn() []string { +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 *AWSElasticsearchDomain_NodeToNodeEncryptionOptions) SetDependsOn(dependencies []string) { +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 *AWSElasticsearchDomain_NodeToNodeEncryptionOptions) Metadata() map[string]interface{} { +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 *AWSElasticsearchDomain_NodeToNodeEncryptionOptions) SetMetadata(metadata map[string]interface{}) { +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 *AWSElasticsearchDomain_NodeToNodeEncryptionOptions) DeletionPolicy() policies.DeletionPolicy { +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 *AWSElasticsearchDomain_NodeToNodeEncryptionOptions) SetDeletionPolicy(policy policies.DeletionPolicy) { +func (r *Domain_NodeToNodeEncryptionOptions) SetDeletionPolicy(policy policies.DeletionPolicy) { r._deletionPolicy = policy } diff --git a/cloudformation/resources/aws-elasticsearch-domain_snapshotoptions.go b/cloudformation/elasticsearch/aws-elasticsearch-domain_snapshotoptions.go similarity index 71% rename from cloudformation/resources/aws-elasticsearch-domain_snapshotoptions.go rename to cloudformation/elasticsearch/aws-elasticsearch-domain_snapshotoptions.go index 55c3190717..ef9cf0a37b 100644 --- a/cloudformation/resources/aws-elasticsearch-domain_snapshotoptions.go +++ b/cloudformation/elasticsearch/aws-elasticsearch-domain_snapshotoptions.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_SnapshotOptions AWS CloudFormation Resource (AWS::Elasticsearch::Domain.SnapshotOptions) +// 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 AWSElasticsearchDomain_SnapshotOptions struct { +type Domain_SnapshotOptions struct { // AutomatedSnapshotStartHour AWS CloudFormation Property // Required: false @@ -22,42 +24,42 @@ type AWSElasticsearchDomain_SnapshotOptions struct { } // AWSCloudFormationType returns the AWS CloudFormation resource type -func (r *AWSElasticsearchDomain_SnapshotOptions) AWSCloudFormationType() string { +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 *AWSElasticsearchDomain_SnapshotOptions) DependsOn() []string { +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 *AWSElasticsearchDomain_SnapshotOptions) SetDependsOn(dependencies []string) { +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 *AWSElasticsearchDomain_SnapshotOptions) Metadata() map[string]interface{} { +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 *AWSElasticsearchDomain_SnapshotOptions) SetMetadata(metadata map[string]interface{}) { +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 *AWSElasticsearchDomain_SnapshotOptions) DeletionPolicy() policies.DeletionPolicy { +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 *AWSElasticsearchDomain_SnapshotOptions) SetDeletionPolicy(policy policies.DeletionPolicy) { +func (r *Domain_SnapshotOptions) SetDeletionPolicy(policy policies.DeletionPolicy) { r._deletionPolicy = policy } diff --git a/cloudformation/resources/aws-elasticsearch-domain_vpcoptions.go b/cloudformation/elasticsearch/aws-elasticsearch-domain_vpcoptions.go similarity index 74% rename from cloudformation/resources/aws-elasticsearch-domain_vpcoptions.go rename to cloudformation/elasticsearch/aws-elasticsearch-domain_vpcoptions.go index 93ce129b5f..47479a9332 100644 --- a/cloudformation/resources/aws-elasticsearch-domain_vpcoptions.go +++ b/cloudformation/elasticsearch/aws-elasticsearch-domain_vpcoptions.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_VPCOptions AWS CloudFormation Resource (AWS::Elasticsearch::Domain.VPCOptions) +// 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 AWSElasticsearchDomain_VPCOptions struct { +type Domain_VPCOptions struct { // SecurityGroupIds AWS CloudFormation Property // Required: false @@ -27,42 +29,42 @@ type AWSElasticsearchDomain_VPCOptions struct { } // AWSCloudFormationType returns the AWS CloudFormation resource type -func (r *AWSElasticsearchDomain_VPCOptions) AWSCloudFormationType() string { +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 *AWSElasticsearchDomain_VPCOptions) DependsOn() []string { +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 *AWSElasticsearchDomain_VPCOptions) SetDependsOn(dependencies []string) { +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 *AWSElasticsearchDomain_VPCOptions) Metadata() map[string]interface{} { +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 *AWSElasticsearchDomain_VPCOptions) SetMetadata(metadata map[string]interface{}) { +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 *AWSElasticsearchDomain_VPCOptions) DeletionPolicy() policies.DeletionPolicy { +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 *AWSElasticsearchDomain_VPCOptions) SetDeletionPolicy(policy policies.DeletionPolicy) { +func (r *Domain_VPCOptions) SetDeletionPolicy(policy policies.DeletionPolicy) { r._deletionPolicy = policy } diff --git a/cloudformation/resources/aws-elasticsearch-domain_zoneawarenessconfig.go b/cloudformation/elasticsearch/aws-elasticsearch-domain_zoneawarenessconfig.go similarity index 70% rename from cloudformation/resources/aws-elasticsearch-domain_zoneawarenessconfig.go rename to cloudformation/elasticsearch/aws-elasticsearch-domain_zoneawarenessconfig.go index 3ac5b3a702..7329c08ce2 100644 --- a/cloudformation/resources/aws-elasticsearch-domain_zoneawarenessconfig.go +++ b/cloudformation/elasticsearch/aws-elasticsearch-domain_zoneawarenessconfig.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_ZoneAwarenessConfig AWS CloudFormation Resource (AWS::Elasticsearch::Domain.ZoneAwarenessConfig) +// 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 AWSElasticsearchDomain_ZoneAwarenessConfig struct { +type Domain_ZoneAwarenessConfig struct { // AvailabilityZoneCount AWS CloudFormation Property // Required: false @@ -22,42 +24,42 @@ type AWSElasticsearchDomain_ZoneAwarenessConfig struct { } // AWSCloudFormationType returns the AWS CloudFormation resource type -func (r *AWSElasticsearchDomain_ZoneAwarenessConfig) AWSCloudFormationType() string { +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 *AWSElasticsearchDomain_ZoneAwarenessConfig) DependsOn() []string { +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 *AWSElasticsearchDomain_ZoneAwarenessConfig) SetDependsOn(dependencies []string) { +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 *AWSElasticsearchDomain_ZoneAwarenessConfig) Metadata() map[string]interface{} { +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 *AWSElasticsearchDomain_ZoneAwarenessConfig) SetMetadata(metadata map[string]interface{}) { +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 *AWSElasticsearchDomain_ZoneAwarenessConfig) DeletionPolicy() policies.DeletionPolicy { +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 *AWSElasticsearchDomain_ZoneAwarenessConfig) SetDeletionPolicy(policy policies.DeletionPolicy) { +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/resources/aws-emr-cluster_autoscalingpolicy.go b/cloudformation/emr/aws-emr-cluster_autoscalingpolicy.go similarity index 71% rename from cloudformation/resources/aws-emr-cluster_autoscalingpolicy.go rename to cloudformation/emr/aws-emr-cluster_autoscalingpolicy.go index f2edbfa6fb..31d75efd29 100644 --- a/cloudformation/resources/aws-emr-cluster_autoscalingpolicy.go +++ b/cloudformation/emr/aws-emr-cluster_autoscalingpolicy.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_AutoScalingPolicy AWS CloudFormation Resource (AWS::EMR::Cluster.AutoScalingPolicy) +// 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 AWSEMRCluster_AutoScalingPolicy struct { +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 *AWSEMRCluster_ScalingConstraints `json:"Constraints,omitempty"` + 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 []AWSEMRCluster_ScalingRule `json:"Rules,omitempty"` + Rules []Cluster_ScalingRule `json:"Rules,omitempty"` // _deletionPolicy represents a CloudFormation DeletionPolicy _deletionPolicy policies.DeletionPolicy @@ -27,42 +29,42 @@ type AWSEMRCluster_AutoScalingPolicy struct { } // AWSCloudFormationType returns the AWS CloudFormation resource type -func (r *AWSEMRCluster_AutoScalingPolicy) AWSCloudFormationType() string { +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 *AWSEMRCluster_AutoScalingPolicy) DependsOn() []string { +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 *AWSEMRCluster_AutoScalingPolicy) SetDependsOn(dependencies []string) { +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 *AWSEMRCluster_AutoScalingPolicy) Metadata() map[string]interface{} { +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 *AWSEMRCluster_AutoScalingPolicy) SetMetadata(metadata map[string]interface{}) { +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 *AWSEMRCluster_AutoScalingPolicy) DeletionPolicy() policies.DeletionPolicy { +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 *AWSEMRCluster_AutoScalingPolicy) SetDeletionPolicy(policy policies.DeletionPolicy) { +func (r *Cluster_AutoScalingPolicy) SetDeletionPolicy(policy policies.DeletionPolicy) { r._deletionPolicy = policy } diff --git a/cloudformation/resources/aws-emr-cluster_bootstrapactionconfig.go b/cloudformation/emr/aws-emr-cluster_bootstrapactionconfig.go similarity index 71% rename from cloudformation/resources/aws-emr-cluster_bootstrapactionconfig.go rename to cloudformation/emr/aws-emr-cluster_bootstrapactionconfig.go index 7ace93c080..0656c103f7 100644 --- a/cloudformation/resources/aws-emr-cluster_bootstrapactionconfig.go +++ b/cloudformation/emr/aws-emr-cluster_bootstrapactionconfig.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_BootstrapActionConfig AWS CloudFormation Resource (AWS::EMR::Cluster.BootstrapActionConfig) +// 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 AWSEMRCluster_BootstrapActionConfig struct { +type Cluster_BootstrapActionConfig struct { // Name AWS CloudFormation Property // Required: true @@ -14,7 +16,7 @@ type AWSEMRCluster_BootstrapActionConfig struct { // 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"` + ScriptBootstrapAction *Cluster_ScriptBootstrapActionConfig `json:"ScriptBootstrapAction,omitempty"` // _deletionPolicy represents a CloudFormation DeletionPolicy _deletionPolicy policies.DeletionPolicy @@ -27,42 +29,42 @@ type AWSEMRCluster_BootstrapActionConfig struct { } // AWSCloudFormationType returns the AWS CloudFormation resource type -func (r *AWSEMRCluster_BootstrapActionConfig) AWSCloudFormationType() string { +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 *AWSEMRCluster_BootstrapActionConfig) DependsOn() []string { +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 *AWSEMRCluster_BootstrapActionConfig) SetDependsOn(dependencies []string) { +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 *AWSEMRCluster_BootstrapActionConfig) Metadata() map[string]interface{} { +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 *AWSEMRCluster_BootstrapActionConfig) SetMetadata(metadata map[string]interface{}) { +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 *AWSEMRCluster_BootstrapActionConfig) DeletionPolicy() policies.DeletionPolicy { +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 *AWSEMRCluster_BootstrapActionConfig) SetDeletionPolicy(policy policies.DeletionPolicy) { +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/resources/aws-emr-cluster_ebsblockdeviceconfig.go b/cloudformation/emr/aws-emr-cluster_ebsblockdeviceconfig.go similarity index 72% rename from cloudformation/resources/aws-emr-cluster_ebsblockdeviceconfig.go rename to cloudformation/emr/aws-emr-cluster_ebsblockdeviceconfig.go index 1ce65b220f..c0be50764d 100644 --- a/cloudformation/resources/aws-emr-cluster_ebsblockdeviceconfig.go +++ b/cloudformation/emr/aws-emr-cluster_ebsblockdeviceconfig.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_EbsBlockDeviceConfig AWS CloudFormation Resource (AWS::EMR::Cluster.EbsBlockDeviceConfig) +// 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 AWSEMRCluster_EbsBlockDeviceConfig struct { +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 *AWSEMRCluster_VolumeSpecification `json:"VolumeSpecification,omitempty"` + VolumeSpecification *Cluster_VolumeSpecification `json:"VolumeSpecification,omitempty"` // VolumesPerInstance AWS CloudFormation Property // Required: false @@ -27,42 +29,42 @@ type AWSEMRCluster_EbsBlockDeviceConfig struct { } // AWSCloudFormationType returns the AWS CloudFormation resource type -func (r *AWSEMRCluster_EbsBlockDeviceConfig) AWSCloudFormationType() string { +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 *AWSEMRCluster_EbsBlockDeviceConfig) DependsOn() []string { +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 *AWSEMRCluster_EbsBlockDeviceConfig) SetDependsOn(dependencies []string) { +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 *AWSEMRCluster_EbsBlockDeviceConfig) Metadata() map[string]interface{} { +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 *AWSEMRCluster_EbsBlockDeviceConfig) SetMetadata(metadata map[string]interface{}) { +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 *AWSEMRCluster_EbsBlockDeviceConfig) DeletionPolicy() policies.DeletionPolicy { +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 *AWSEMRCluster_EbsBlockDeviceConfig) SetDeletionPolicy(policy policies.DeletionPolicy) { +func (r *Cluster_EbsBlockDeviceConfig) SetDeletionPolicy(policy policies.DeletionPolicy) { r._deletionPolicy = policy } diff --git a/cloudformation/resources/aws-emr-cluster_ebsconfiguration.go b/cloudformation/emr/aws-emr-cluster_ebsconfiguration.go similarity index 72% rename from cloudformation/resources/aws-emr-cluster_ebsconfiguration.go rename to cloudformation/emr/aws-emr-cluster_ebsconfiguration.go index f5d3c49d52..10d42966ec 100644 --- a/cloudformation/resources/aws-emr-cluster_ebsconfiguration.go +++ b/cloudformation/emr/aws-emr-cluster_ebsconfiguration.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_EbsConfiguration AWS CloudFormation Resource (AWS::EMR::Cluster.EbsConfiguration) +// 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 AWSEMRCluster_EbsConfiguration struct { +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 []AWSEMRCluster_EbsBlockDeviceConfig `json:"EbsBlockDeviceConfigs,omitempty"` + EbsBlockDeviceConfigs []Cluster_EbsBlockDeviceConfig `json:"EbsBlockDeviceConfigs,omitempty"` // EbsOptimized AWS CloudFormation Property // Required: false @@ -27,42 +29,42 @@ type AWSEMRCluster_EbsConfiguration struct { } // AWSCloudFormationType returns the AWS CloudFormation resource type -func (r *AWSEMRCluster_EbsConfiguration) AWSCloudFormationType() string { +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 *AWSEMRCluster_EbsConfiguration) DependsOn() []string { +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 *AWSEMRCluster_EbsConfiguration) SetDependsOn(dependencies []string) { +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 *AWSEMRCluster_EbsConfiguration) Metadata() map[string]interface{} { +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 *AWSEMRCluster_EbsConfiguration) SetMetadata(metadata map[string]interface{}) { +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 *AWSEMRCluster_EbsConfiguration) DeletionPolicy() policies.DeletionPolicy { +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 *AWSEMRCluster_EbsConfiguration) SetDeletionPolicy(policy policies.DeletionPolicy) { +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/resources/aws-emr-cluster_instancefleetprovisioningspecifications.go b/cloudformation/emr/aws-emr-cluster_instancefleetprovisioningspecifications.go similarity index 65% rename from cloudformation/resources/aws-emr-cluster_instancefleetprovisioningspecifications.go rename to cloudformation/emr/aws-emr-cluster_instancefleetprovisioningspecifications.go index c642751c15..11efc26bdc 100644 --- a/cloudformation/resources/aws-emr-cluster_instancefleetprovisioningspecifications.go +++ b/cloudformation/emr/aws-emr-cluster_instancefleetprovisioningspecifications.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_InstanceFleetProvisioningSpecifications AWS CloudFormation Resource (AWS::EMR::Cluster.InstanceFleetProvisioningSpecifications) +// 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 AWSEMRCluster_InstanceFleetProvisioningSpecifications struct { +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 *AWSEMRCluster_SpotProvisioningSpecification `json:"SpotSpecification,omitempty"` + SpotSpecification *Cluster_SpotProvisioningSpecification `json:"SpotSpecification,omitempty"` // _deletionPolicy represents a CloudFormation DeletionPolicy _deletionPolicy policies.DeletionPolicy @@ -22,42 +24,42 @@ type AWSEMRCluster_InstanceFleetProvisioningSpecifications struct { } // AWSCloudFormationType returns the AWS CloudFormation resource type -func (r *AWSEMRCluster_InstanceFleetProvisioningSpecifications) AWSCloudFormationType() string { +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 *AWSEMRCluster_InstanceFleetProvisioningSpecifications) DependsOn() []string { +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 *AWSEMRCluster_InstanceFleetProvisioningSpecifications) SetDependsOn(dependencies []string) { +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 *AWSEMRCluster_InstanceFleetProvisioningSpecifications) Metadata() map[string]interface{} { +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 *AWSEMRCluster_InstanceFleetProvisioningSpecifications) SetMetadata(metadata map[string]interface{}) { +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 *AWSEMRCluster_InstanceFleetProvisioningSpecifications) DeletionPolicy() policies.DeletionPolicy { +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 *AWSEMRCluster_InstanceFleetProvisioningSpecifications) SetDeletionPolicy(policy policies.DeletionPolicy) { +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/resources/aws-emr-cluster_placementtype.go b/cloudformation/emr/aws-emr-cluster_placementtype.go similarity index 73% rename from cloudformation/resources/aws-emr-cluster_placementtype.go rename to cloudformation/emr/aws-emr-cluster_placementtype.go index d0d454da96..ace3b75649 100644 --- a/cloudformation/resources/aws-emr-cluster_placementtype.go +++ b/cloudformation/emr/aws-emr-cluster_placementtype.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_PlacementType AWS CloudFormation Resource (AWS::EMR::Cluster.PlacementType) +// 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 AWSEMRCluster_PlacementType struct { +type Cluster_PlacementType struct { // AvailabilityZone AWS CloudFormation Property // Required: true @@ -22,42 +24,42 @@ type AWSEMRCluster_PlacementType struct { } // AWSCloudFormationType returns the AWS CloudFormation resource type -func (r *AWSEMRCluster_PlacementType) AWSCloudFormationType() string { +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 *AWSEMRCluster_PlacementType) DependsOn() []string { +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 *AWSEMRCluster_PlacementType) SetDependsOn(dependencies []string) { +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 *AWSEMRCluster_PlacementType) Metadata() map[string]interface{} { +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 *AWSEMRCluster_PlacementType) SetMetadata(metadata map[string]interface{}) { +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 *AWSEMRCluster_PlacementType) DeletionPolicy() policies.DeletionPolicy { +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 *AWSEMRCluster_PlacementType) SetDeletionPolicy(policy policies.DeletionPolicy) { +func (r *Cluster_PlacementType) SetDeletionPolicy(policy policies.DeletionPolicy) { r._deletionPolicy = policy } diff --git a/cloudformation/resources/aws-emr-cluster_scalingaction.go b/cloudformation/emr/aws-emr-cluster_scalingaction.go similarity index 72% rename from cloudformation/resources/aws-emr-cluster_scalingaction.go rename to cloudformation/emr/aws-emr-cluster_scalingaction.go index 194f50e06a..51d88a5257 100644 --- a/cloudformation/resources/aws-emr-cluster_scalingaction.go +++ b/cloudformation/emr/aws-emr-cluster_scalingaction.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_ScalingAction AWS CloudFormation Resource (AWS::EMR::Cluster.ScalingAction) +// 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 AWSEMRCluster_ScalingAction struct { +type Cluster_ScalingAction struct { // Market AWS CloudFormation Property // Required: false @@ -14,7 +16,7 @@ type AWSEMRCluster_ScalingAction struct { // 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"` + SimpleScalingPolicyConfiguration *Cluster_SimpleScalingPolicyConfiguration `json:"SimpleScalingPolicyConfiguration,omitempty"` // _deletionPolicy represents a CloudFormation DeletionPolicy _deletionPolicy policies.DeletionPolicy @@ -27,42 +29,42 @@ type AWSEMRCluster_ScalingAction struct { } // AWSCloudFormationType returns the AWS CloudFormation resource type -func (r *AWSEMRCluster_ScalingAction) AWSCloudFormationType() string { +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 *AWSEMRCluster_ScalingAction) DependsOn() []string { +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 *AWSEMRCluster_ScalingAction) SetDependsOn(dependencies []string) { +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 *AWSEMRCluster_ScalingAction) Metadata() map[string]interface{} { +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 *AWSEMRCluster_ScalingAction) SetMetadata(metadata map[string]interface{}) { +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 *AWSEMRCluster_ScalingAction) DeletionPolicy() policies.DeletionPolicy { +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 *AWSEMRCluster_ScalingAction) SetDeletionPolicy(policy policies.DeletionPolicy) { +func (r *Cluster_ScalingAction) SetDeletionPolicy(policy policies.DeletionPolicy) { r._deletionPolicy = policy } diff --git a/cloudformation/resources/aws-emr-cluster_scalingconstraints.go b/cloudformation/emr/aws-emr-cluster_scalingconstraints.go similarity index 74% rename from cloudformation/resources/aws-emr-cluster_scalingconstraints.go rename to cloudformation/emr/aws-emr-cluster_scalingconstraints.go index 347beafa4b..9e3295200b 100644 --- a/cloudformation/resources/aws-emr-cluster_scalingconstraints.go +++ b/cloudformation/emr/aws-emr-cluster_scalingconstraints.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_ScalingConstraints AWS CloudFormation Resource (AWS::EMR::Cluster.ScalingConstraints) +// 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 AWSEMRCluster_ScalingConstraints struct { +type Cluster_ScalingConstraints struct { // MaxCapacity AWS CloudFormation Property // Required: true @@ -27,42 +29,42 @@ type AWSEMRCluster_ScalingConstraints struct { } // AWSCloudFormationType returns the AWS CloudFormation resource type -func (r *AWSEMRCluster_ScalingConstraints) AWSCloudFormationType() string { +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 *AWSEMRCluster_ScalingConstraints) DependsOn() []string { +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 *AWSEMRCluster_ScalingConstraints) SetDependsOn(dependencies []string) { +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 *AWSEMRCluster_ScalingConstraints) Metadata() map[string]interface{} { +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 *AWSEMRCluster_ScalingConstraints) SetMetadata(metadata map[string]interface{}) { +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 *AWSEMRCluster_ScalingConstraints) DeletionPolicy() policies.DeletionPolicy { +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 *AWSEMRCluster_ScalingConstraints) SetDeletionPolicy(policy policies.DeletionPolicy) { +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/resources/aws-emr-cluster_scalingtrigger.go b/cloudformation/emr/aws-emr-cluster_scalingtrigger.go similarity index 70% rename from cloudformation/resources/aws-emr-cluster_scalingtrigger.go rename to cloudformation/emr/aws-emr-cluster_scalingtrigger.go index 29c68fb987..abf571ac08 100644 --- a/cloudformation/resources/aws-emr-cluster_scalingtrigger.go +++ b/cloudformation/emr/aws-emr-cluster_scalingtrigger.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_ScalingTrigger AWS CloudFormation Resource (AWS::EMR::Cluster.ScalingTrigger) +// 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 AWSEMRCluster_ScalingTrigger struct { +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 *AWSEMRCluster_CloudWatchAlarmDefinition `json:"CloudWatchAlarmDefinition,omitempty"` + CloudWatchAlarmDefinition *Cluster_CloudWatchAlarmDefinition `json:"CloudWatchAlarmDefinition,omitempty"` // _deletionPolicy represents a CloudFormation DeletionPolicy _deletionPolicy policies.DeletionPolicy @@ -22,42 +24,42 @@ type AWSEMRCluster_ScalingTrigger struct { } // AWSCloudFormationType returns the AWS CloudFormation resource type -func (r *AWSEMRCluster_ScalingTrigger) AWSCloudFormationType() string { +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 *AWSEMRCluster_ScalingTrigger) DependsOn() []string { +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 *AWSEMRCluster_ScalingTrigger) SetDependsOn(dependencies []string) { +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 *AWSEMRCluster_ScalingTrigger) Metadata() map[string]interface{} { +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 *AWSEMRCluster_ScalingTrigger) SetMetadata(metadata map[string]interface{}) { +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 *AWSEMRCluster_ScalingTrigger) DeletionPolicy() policies.DeletionPolicy { +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 *AWSEMRCluster_ScalingTrigger) SetDeletionPolicy(policy policies.DeletionPolicy) { +func (r *Cluster_ScalingTrigger) SetDeletionPolicy(policy policies.DeletionPolicy) { r._deletionPolicy = policy } diff --git a/cloudformation/resources/aws-emr-cluster_scriptbootstrapactionconfig.go b/cloudformation/emr/aws-emr-cluster_scriptbootstrapactionconfig.go similarity index 72% rename from cloudformation/resources/aws-emr-cluster_scriptbootstrapactionconfig.go rename to cloudformation/emr/aws-emr-cluster_scriptbootstrapactionconfig.go index 53d520dd35..ec4de0718f 100644 --- a/cloudformation/resources/aws-emr-cluster_scriptbootstrapactionconfig.go +++ b/cloudformation/emr/aws-emr-cluster_scriptbootstrapactionconfig.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_ScriptBootstrapActionConfig AWS CloudFormation Resource (AWS::EMR::Cluster.ScriptBootstrapActionConfig) +// 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 AWSEMRCluster_ScriptBootstrapActionConfig struct { +type Cluster_ScriptBootstrapActionConfig struct { // Args AWS CloudFormation Property // Required: false @@ -27,42 +29,42 @@ type AWSEMRCluster_ScriptBootstrapActionConfig struct { } // AWSCloudFormationType returns the AWS CloudFormation resource type -func (r *AWSEMRCluster_ScriptBootstrapActionConfig) AWSCloudFormationType() string { +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 *AWSEMRCluster_ScriptBootstrapActionConfig) DependsOn() []string { +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 *AWSEMRCluster_ScriptBootstrapActionConfig) SetDependsOn(dependencies []string) { +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 *AWSEMRCluster_ScriptBootstrapActionConfig) Metadata() map[string]interface{} { +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 *AWSEMRCluster_ScriptBootstrapActionConfig) SetMetadata(metadata map[string]interface{}) { +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 *AWSEMRCluster_ScriptBootstrapActionConfig) DeletionPolicy() policies.DeletionPolicy { +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 *AWSEMRCluster_ScriptBootstrapActionConfig) SetDeletionPolicy(policy policies.DeletionPolicy) { +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/resources/aws-emr-instancefleetconfig_configuration.go b/cloudformation/emr/aws-emr-instancefleetconfig_configuration.go similarity index 74% rename from cloudformation/resources/aws-emr-instancefleetconfig_configuration.go rename to cloudformation/emr/aws-emr-instancefleetconfig_configuration.go index e1f6d429aa..6cb5ee9db7 100644 --- a/cloudformation/resources/aws-emr-instancefleetconfig_configuration.go +++ b/cloudformation/emr/aws-emr-instancefleetconfig_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" +) -// AWSEMRInstanceFleetConfig_Configuration AWS CloudFormation Resource (AWS::EMR::InstanceFleetConfig.Configuration) +// 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 AWSEMRInstanceFleetConfig_Configuration struct { +type InstanceFleetConfig_Configuration struct { // Classification AWS CloudFormation Property // Required: false @@ -19,7 +21,7 @@ type AWSEMRInstanceFleetConfig_Configuration struct { // 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"` + Configurations []InstanceFleetConfig_Configuration `json:"Configurations,omitempty"` // _deletionPolicy represents a CloudFormation DeletionPolicy _deletionPolicy policies.DeletionPolicy @@ -32,42 +34,42 @@ type AWSEMRInstanceFleetConfig_Configuration struct { } // AWSCloudFormationType returns the AWS CloudFormation resource type -func (r *AWSEMRInstanceFleetConfig_Configuration) AWSCloudFormationType() string { +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 *AWSEMRInstanceFleetConfig_Configuration) DependsOn() []string { +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 *AWSEMRInstanceFleetConfig_Configuration) SetDependsOn(dependencies []string) { +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 *AWSEMRInstanceFleetConfig_Configuration) Metadata() map[string]interface{} { +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 *AWSEMRInstanceFleetConfig_Configuration) SetMetadata(metadata map[string]interface{}) { +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 *AWSEMRInstanceFleetConfig_Configuration) DeletionPolicy() policies.DeletionPolicy { +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 *AWSEMRInstanceFleetConfig_Configuration) SetDeletionPolicy(policy policies.DeletionPolicy) { +func (r *InstanceFleetConfig_Configuration) SetDeletionPolicy(policy policies.DeletionPolicy) { r._deletionPolicy = policy } diff --git a/cloudformation/resources/aws-emr-instancefleetconfig_ebsblockdeviceconfig.go b/cloudformation/emr/aws-emr-instancefleetconfig_ebsblockdeviceconfig.go similarity index 70% rename from cloudformation/resources/aws-emr-instancefleetconfig_ebsblockdeviceconfig.go rename to cloudformation/emr/aws-emr-instancefleetconfig_ebsblockdeviceconfig.go index 376a2180b0..83a60ec6f1 100644 --- a/cloudformation/resources/aws-emr-instancefleetconfig_ebsblockdeviceconfig.go +++ b/cloudformation/emr/aws-emr-instancefleetconfig_ebsblockdeviceconfig.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" +) -// AWSEMRInstanceFleetConfig_EbsBlockDeviceConfig AWS CloudFormation Resource (AWS::EMR::InstanceFleetConfig.EbsBlockDeviceConfig) +// 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 AWSEMRInstanceFleetConfig_EbsBlockDeviceConfig struct { +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 *AWSEMRInstanceFleetConfig_VolumeSpecification `json:"VolumeSpecification,omitempty"` + VolumeSpecification *InstanceFleetConfig_VolumeSpecification `json:"VolumeSpecification,omitempty"` // VolumesPerInstance AWS CloudFormation Property // Required: false @@ -27,42 +29,42 @@ type AWSEMRInstanceFleetConfig_EbsBlockDeviceConfig struct { } // AWSCloudFormationType returns the AWS CloudFormation resource type -func (r *AWSEMRInstanceFleetConfig_EbsBlockDeviceConfig) AWSCloudFormationType() string { +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 *AWSEMRInstanceFleetConfig_EbsBlockDeviceConfig) DependsOn() []string { +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 *AWSEMRInstanceFleetConfig_EbsBlockDeviceConfig) SetDependsOn(dependencies []string) { +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 *AWSEMRInstanceFleetConfig_EbsBlockDeviceConfig) Metadata() map[string]interface{} { +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 *AWSEMRInstanceFleetConfig_EbsBlockDeviceConfig) SetMetadata(metadata map[string]interface{}) { +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 *AWSEMRInstanceFleetConfig_EbsBlockDeviceConfig) DeletionPolicy() policies.DeletionPolicy { +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 *AWSEMRInstanceFleetConfig_EbsBlockDeviceConfig) SetDeletionPolicy(policy policies.DeletionPolicy) { +func (r *InstanceFleetConfig_EbsBlockDeviceConfig) SetDeletionPolicy(policy policies.DeletionPolicy) { r._deletionPolicy = policy } diff --git a/cloudformation/resources/aws-emr-instancefleetconfig_ebsconfiguration.go b/cloudformation/emr/aws-emr-instancefleetconfig_ebsconfiguration.go similarity index 70% rename from cloudformation/resources/aws-emr-instancefleetconfig_ebsconfiguration.go rename to cloudformation/emr/aws-emr-instancefleetconfig_ebsconfiguration.go index ad522d87f9..a1b1d3994b 100644 --- a/cloudformation/resources/aws-emr-instancefleetconfig_ebsconfiguration.go +++ b/cloudformation/emr/aws-emr-instancefleetconfig_ebsconfiguration.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" +) -// AWSEMRInstanceFleetConfig_EbsConfiguration AWS CloudFormation Resource (AWS::EMR::InstanceFleetConfig.EbsConfiguration) +// 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 AWSEMRInstanceFleetConfig_EbsConfiguration struct { +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 []AWSEMRInstanceFleetConfig_EbsBlockDeviceConfig `json:"EbsBlockDeviceConfigs,omitempty"` + EbsBlockDeviceConfigs []InstanceFleetConfig_EbsBlockDeviceConfig `json:"EbsBlockDeviceConfigs,omitempty"` // EbsOptimized AWS CloudFormation Property // Required: false @@ -27,42 +29,42 @@ type AWSEMRInstanceFleetConfig_EbsConfiguration struct { } // AWSCloudFormationType returns the AWS CloudFormation resource type -func (r *AWSEMRInstanceFleetConfig_EbsConfiguration) AWSCloudFormationType() string { +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 *AWSEMRInstanceFleetConfig_EbsConfiguration) DependsOn() []string { +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 *AWSEMRInstanceFleetConfig_EbsConfiguration) SetDependsOn(dependencies []string) { +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 *AWSEMRInstanceFleetConfig_EbsConfiguration) Metadata() map[string]interface{} { +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 *AWSEMRInstanceFleetConfig_EbsConfiguration) SetMetadata(metadata map[string]interface{}) { +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 *AWSEMRInstanceFleetConfig_EbsConfiguration) DeletionPolicy() policies.DeletionPolicy { +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 *AWSEMRInstanceFleetConfig_EbsConfiguration) SetDeletionPolicy(policy policies.DeletionPolicy) { +func (r *InstanceFleetConfig_EbsConfiguration) SetDeletionPolicy(policy policies.DeletionPolicy) { r._deletionPolicy = policy } diff --git a/cloudformation/resources/aws-emr-instancefleetconfig_instancefleetprovisioningspecifications.go b/cloudformation/emr/aws-emr-instancefleetconfig_instancefleetprovisioningspecifications.go similarity index 63% rename from cloudformation/resources/aws-emr-instancefleetconfig_instancefleetprovisioningspecifications.go rename to cloudformation/emr/aws-emr-instancefleetconfig_instancefleetprovisioningspecifications.go index bf638cf52b..96e6d2a23b 100644 --- a/cloudformation/resources/aws-emr-instancefleetconfig_instancefleetprovisioningspecifications.go +++ b/cloudformation/emr/aws-emr-instancefleetconfig_instancefleetprovisioningspecifications.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" +) -// AWSEMRInstanceFleetConfig_InstanceFleetProvisioningSpecifications AWS CloudFormation Resource (AWS::EMR::InstanceFleetConfig.InstanceFleetProvisioningSpecifications) +// 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 AWSEMRInstanceFleetConfig_InstanceFleetProvisioningSpecifications struct { +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 *AWSEMRInstanceFleetConfig_SpotProvisioningSpecification `json:"SpotSpecification,omitempty"` + SpotSpecification *InstanceFleetConfig_SpotProvisioningSpecification `json:"SpotSpecification,omitempty"` // _deletionPolicy represents a CloudFormation DeletionPolicy _deletionPolicy policies.DeletionPolicy @@ -22,42 +24,42 @@ type AWSEMRInstanceFleetConfig_InstanceFleetProvisioningSpecifications struct { } // AWSCloudFormationType returns the AWS CloudFormation resource type -func (r *AWSEMRInstanceFleetConfig_InstanceFleetProvisioningSpecifications) AWSCloudFormationType() string { +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 *AWSEMRInstanceFleetConfig_InstanceFleetProvisioningSpecifications) DependsOn() []string { +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 *AWSEMRInstanceFleetConfig_InstanceFleetProvisioningSpecifications) SetDependsOn(dependencies []string) { +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 *AWSEMRInstanceFleetConfig_InstanceFleetProvisioningSpecifications) Metadata() map[string]interface{} { +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 *AWSEMRInstanceFleetConfig_InstanceFleetProvisioningSpecifications) SetMetadata(metadata map[string]interface{}) { +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 *AWSEMRInstanceFleetConfig_InstanceFleetProvisioningSpecifications) DeletionPolicy() policies.DeletionPolicy { +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 *AWSEMRInstanceFleetConfig_InstanceFleetProvisioningSpecifications) SetDeletionPolicy(policy policies.DeletionPolicy) { +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/resources/aws-emr-instancefleetconfig_spotprovisioningspecification.go b/cloudformation/emr/aws-emr-instancefleetconfig_spotprovisioningspecification.go similarity index 74% rename from cloudformation/resources/aws-emr-instancefleetconfig_spotprovisioningspecification.go rename to cloudformation/emr/aws-emr-instancefleetconfig_spotprovisioningspecification.go index fa7d2416fc..7e90c00242 100644 --- a/cloudformation/resources/aws-emr-instancefleetconfig_spotprovisioningspecification.go +++ b/cloudformation/emr/aws-emr-instancefleetconfig_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" +) -// AWSEMRInstanceFleetConfig_SpotProvisioningSpecification AWS CloudFormation Resource (AWS::EMR::InstanceFleetConfig.SpotProvisioningSpecification) +// 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 AWSEMRInstanceFleetConfig_SpotProvisioningSpecification struct { +type InstanceFleetConfig_SpotProvisioningSpecification struct { // BlockDurationMinutes AWS CloudFormation Property // Required: false @@ -32,42 +34,42 @@ type AWSEMRInstanceFleetConfig_SpotProvisioningSpecification struct { } // AWSCloudFormationType returns the AWS CloudFormation resource type -func (r *AWSEMRInstanceFleetConfig_SpotProvisioningSpecification) AWSCloudFormationType() string { +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 *AWSEMRInstanceFleetConfig_SpotProvisioningSpecification) DependsOn() []string { +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 *AWSEMRInstanceFleetConfig_SpotProvisioningSpecification) SetDependsOn(dependencies []string) { +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 *AWSEMRInstanceFleetConfig_SpotProvisioningSpecification) Metadata() map[string]interface{} { +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 *AWSEMRInstanceFleetConfig_SpotProvisioningSpecification) SetMetadata(metadata map[string]interface{}) { +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 *AWSEMRInstanceFleetConfig_SpotProvisioningSpecification) DeletionPolicy() policies.DeletionPolicy { +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 *AWSEMRInstanceFleetConfig_SpotProvisioningSpecification) SetDeletionPolicy(policy policies.DeletionPolicy) { +func (r *InstanceFleetConfig_SpotProvisioningSpecification) SetDeletionPolicy(policy policies.DeletionPolicy) { r._deletionPolicy = policy } diff --git a/cloudformation/resources/aws-emr-instancefleetconfig_volumespecification.go b/cloudformation/emr/aws-emr-instancefleetconfig_volumespecification.go similarity index 74% rename from cloudformation/resources/aws-emr-instancefleetconfig_volumespecification.go rename to cloudformation/emr/aws-emr-instancefleetconfig_volumespecification.go index 76dec24849..f4d97a0660 100644 --- a/cloudformation/resources/aws-emr-instancefleetconfig_volumespecification.go +++ b/cloudformation/emr/aws-emr-instancefleetconfig_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" +) -// AWSEMRInstanceFleetConfig_VolumeSpecification AWS CloudFormation Resource (AWS::EMR::InstanceFleetConfig.VolumeSpecification) +// 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 AWSEMRInstanceFleetConfig_VolumeSpecification struct { +type InstanceFleetConfig_VolumeSpecification struct { // Iops AWS CloudFormation Property // Required: false @@ -32,42 +34,42 @@ type AWSEMRInstanceFleetConfig_VolumeSpecification struct { } // AWSCloudFormationType returns the AWS CloudFormation resource type -func (r *AWSEMRInstanceFleetConfig_VolumeSpecification) AWSCloudFormationType() string { +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 *AWSEMRInstanceFleetConfig_VolumeSpecification) DependsOn() []string { +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 *AWSEMRInstanceFleetConfig_VolumeSpecification) SetDependsOn(dependencies []string) { +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 *AWSEMRInstanceFleetConfig_VolumeSpecification) Metadata() map[string]interface{} { +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 *AWSEMRInstanceFleetConfig_VolumeSpecification) SetMetadata(metadata map[string]interface{}) { +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 *AWSEMRInstanceFleetConfig_VolumeSpecification) DeletionPolicy() policies.DeletionPolicy { +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 *AWSEMRInstanceFleetConfig_VolumeSpecification) SetDeletionPolicy(policy policies.DeletionPolicy) { +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/resources/aws-emr-instancegroupconfig_autoscalingpolicy.go b/cloudformation/emr/aws-emr-instancegroupconfig_autoscalingpolicy.go similarity index 68% rename from cloudformation/resources/aws-emr-instancegroupconfig_autoscalingpolicy.go rename to cloudformation/emr/aws-emr-instancegroupconfig_autoscalingpolicy.go index 6d04b7c3b5..e1f775fe50 100644 --- a/cloudformation/resources/aws-emr-instancegroupconfig_autoscalingpolicy.go +++ b/cloudformation/emr/aws-emr-instancegroupconfig_autoscalingpolicy.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" +) -// AWSEMRInstanceGroupConfig_AutoScalingPolicy AWS CloudFormation Resource (AWS::EMR::InstanceGroupConfig.AutoScalingPolicy) +// 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 AWSEMRInstanceGroupConfig_AutoScalingPolicy struct { +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 *AWSEMRInstanceGroupConfig_ScalingConstraints `json:"Constraints,omitempty"` + 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 []AWSEMRInstanceGroupConfig_ScalingRule `json:"Rules,omitempty"` + Rules []InstanceGroupConfig_ScalingRule `json:"Rules,omitempty"` // _deletionPolicy represents a CloudFormation DeletionPolicy _deletionPolicy policies.DeletionPolicy @@ -27,42 +29,42 @@ type AWSEMRInstanceGroupConfig_AutoScalingPolicy struct { } // AWSCloudFormationType returns the AWS CloudFormation resource type -func (r *AWSEMRInstanceGroupConfig_AutoScalingPolicy) AWSCloudFormationType() string { +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 *AWSEMRInstanceGroupConfig_AutoScalingPolicy) DependsOn() []string { +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 *AWSEMRInstanceGroupConfig_AutoScalingPolicy) SetDependsOn(dependencies []string) { +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 *AWSEMRInstanceGroupConfig_AutoScalingPolicy) Metadata() map[string]interface{} { +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 *AWSEMRInstanceGroupConfig_AutoScalingPolicy) SetMetadata(metadata map[string]interface{}) { +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 *AWSEMRInstanceGroupConfig_AutoScalingPolicy) DeletionPolicy() policies.DeletionPolicy { +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 *AWSEMRInstanceGroupConfig_AutoScalingPolicy) SetDeletionPolicy(policy policies.DeletionPolicy) { +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/resources/aws-emr-instancegroupconfig_configuration.go b/cloudformation/emr/aws-emr-instancegroupconfig_configuration.go similarity index 73% rename from cloudformation/resources/aws-emr-instancegroupconfig_configuration.go rename to cloudformation/emr/aws-emr-instancegroupconfig_configuration.go index 10382f7e3a..ceda6e1872 100644 --- a/cloudformation/resources/aws-emr-instancegroupconfig_configuration.go +++ b/cloudformation/emr/aws-emr-instancegroupconfig_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" +) -// AWSEMRInstanceGroupConfig_Configuration AWS CloudFormation Resource (AWS::EMR::InstanceGroupConfig.Configuration) +// 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 AWSEMRInstanceGroupConfig_Configuration struct { +type InstanceGroupConfig_Configuration struct { // Classification AWS CloudFormation Property // Required: false @@ -19,7 +21,7 @@ type AWSEMRInstanceGroupConfig_Configuration struct { // 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"` + Configurations []InstanceGroupConfig_Configuration `json:"Configurations,omitempty"` // _deletionPolicy represents a CloudFormation DeletionPolicy _deletionPolicy policies.DeletionPolicy @@ -32,42 +34,42 @@ type AWSEMRInstanceGroupConfig_Configuration struct { } // AWSCloudFormationType returns the AWS CloudFormation resource type -func (r *AWSEMRInstanceGroupConfig_Configuration) AWSCloudFormationType() string { +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 *AWSEMRInstanceGroupConfig_Configuration) DependsOn() []string { +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 *AWSEMRInstanceGroupConfig_Configuration) SetDependsOn(dependencies []string) { +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 *AWSEMRInstanceGroupConfig_Configuration) Metadata() map[string]interface{} { +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 *AWSEMRInstanceGroupConfig_Configuration) SetMetadata(metadata map[string]interface{}) { +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 *AWSEMRInstanceGroupConfig_Configuration) DeletionPolicy() policies.DeletionPolicy { +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 *AWSEMRInstanceGroupConfig_Configuration) SetDeletionPolicy(policy policies.DeletionPolicy) { +func (r *InstanceGroupConfig_Configuration) SetDeletionPolicy(policy policies.DeletionPolicy) { r._deletionPolicy = policy } diff --git a/cloudformation/resources/aws-emr-instancegroupconfig_ebsblockdeviceconfig.go b/cloudformation/emr/aws-emr-instancegroupconfig_ebsblockdeviceconfig.go similarity index 69% rename from cloudformation/resources/aws-emr-instancegroupconfig_ebsblockdeviceconfig.go rename to cloudformation/emr/aws-emr-instancegroupconfig_ebsblockdeviceconfig.go index 17fec8e791..6cbb5a69af 100644 --- a/cloudformation/resources/aws-emr-instancegroupconfig_ebsblockdeviceconfig.go +++ b/cloudformation/emr/aws-emr-instancegroupconfig_ebsblockdeviceconfig.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" +) -// AWSEMRInstanceGroupConfig_EbsBlockDeviceConfig AWS CloudFormation Resource (AWS::EMR::InstanceGroupConfig.EbsBlockDeviceConfig) +// 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 AWSEMRInstanceGroupConfig_EbsBlockDeviceConfig struct { +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 *AWSEMRInstanceGroupConfig_VolumeSpecification `json:"VolumeSpecification,omitempty"` + VolumeSpecification *InstanceGroupConfig_VolumeSpecification `json:"VolumeSpecification,omitempty"` // VolumesPerInstance AWS CloudFormation Property // Required: false @@ -27,42 +29,42 @@ type AWSEMRInstanceGroupConfig_EbsBlockDeviceConfig struct { } // AWSCloudFormationType returns the AWS CloudFormation resource type -func (r *AWSEMRInstanceGroupConfig_EbsBlockDeviceConfig) AWSCloudFormationType() string { +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 *AWSEMRInstanceGroupConfig_EbsBlockDeviceConfig) DependsOn() []string { +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 *AWSEMRInstanceGroupConfig_EbsBlockDeviceConfig) SetDependsOn(dependencies []string) { +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 *AWSEMRInstanceGroupConfig_EbsBlockDeviceConfig) Metadata() map[string]interface{} { +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 *AWSEMRInstanceGroupConfig_EbsBlockDeviceConfig) SetMetadata(metadata map[string]interface{}) { +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 *AWSEMRInstanceGroupConfig_EbsBlockDeviceConfig) DeletionPolicy() policies.DeletionPolicy { +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 *AWSEMRInstanceGroupConfig_EbsBlockDeviceConfig) SetDeletionPolicy(policy policies.DeletionPolicy) { +func (r *InstanceGroupConfig_EbsBlockDeviceConfig) SetDeletionPolicy(policy policies.DeletionPolicy) { r._deletionPolicy = policy } diff --git a/cloudformation/resources/aws-emr-instancegroupconfig_ebsconfiguration.go b/cloudformation/emr/aws-emr-instancegroupconfig_ebsconfiguration.go similarity index 69% rename from cloudformation/resources/aws-emr-instancegroupconfig_ebsconfiguration.go rename to cloudformation/emr/aws-emr-instancegroupconfig_ebsconfiguration.go index 2c7ccc6449..b9a9988bf4 100644 --- a/cloudformation/resources/aws-emr-instancegroupconfig_ebsconfiguration.go +++ b/cloudformation/emr/aws-emr-instancegroupconfig_ebsconfiguration.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" +) -// AWSEMRInstanceGroupConfig_EbsConfiguration AWS CloudFormation Resource (AWS::EMR::InstanceGroupConfig.EbsConfiguration) +// InstanceGroupConfig_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 { +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 []AWSEMRInstanceGroupConfig_EbsBlockDeviceConfig `json:"EbsBlockDeviceConfigs,omitempty"` + EbsBlockDeviceConfigs []InstanceGroupConfig_EbsBlockDeviceConfig `json:"EbsBlockDeviceConfigs,omitempty"` // EbsOptimized AWS CloudFormation Property // Required: false @@ -27,42 +29,42 @@ type AWSEMRInstanceGroupConfig_EbsConfiguration struct { } // AWSCloudFormationType returns the AWS CloudFormation resource type -func (r *AWSEMRInstanceGroupConfig_EbsConfiguration) AWSCloudFormationType() string { +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 *AWSEMRInstanceGroupConfig_EbsConfiguration) DependsOn() []string { +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 *AWSEMRInstanceGroupConfig_EbsConfiguration) SetDependsOn(dependencies []string) { +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 *AWSEMRInstanceGroupConfig_EbsConfiguration) Metadata() map[string]interface{} { +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 *AWSEMRInstanceGroupConfig_EbsConfiguration) SetMetadata(metadata map[string]interface{}) { +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 *AWSEMRInstanceGroupConfig_EbsConfiguration) DeletionPolicy() policies.DeletionPolicy { +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 *AWSEMRInstanceGroupConfig_EbsConfiguration) SetDeletionPolicy(policy policies.DeletionPolicy) { +func (r *InstanceGroupConfig_EbsConfiguration) SetDeletionPolicy(policy policies.DeletionPolicy) { r._deletionPolicy = policy } diff --git a/cloudformation/resources/aws-emr-instancegroupconfig_metricdimension.go b/cloudformation/emr/aws-emr-instancegroupconfig_metricdimension.go similarity index 72% rename from cloudformation/resources/aws-emr-instancegroupconfig_metricdimension.go rename to cloudformation/emr/aws-emr-instancegroupconfig_metricdimension.go index 45e09959ce..ccf0b73372 100644 --- a/cloudformation/resources/aws-emr-instancegroupconfig_metricdimension.go +++ b/cloudformation/emr/aws-emr-instancegroupconfig_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" +) -// AWSEMRInstanceGroupConfig_MetricDimension AWS CloudFormation Resource (AWS::EMR::InstanceGroupConfig.MetricDimension) +// 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 AWSEMRInstanceGroupConfig_MetricDimension struct { +type InstanceGroupConfig_MetricDimension struct { // Key AWS CloudFormation Property // Required: true @@ -27,42 +29,42 @@ type AWSEMRInstanceGroupConfig_MetricDimension struct { } // AWSCloudFormationType returns the AWS CloudFormation resource type -func (r *AWSEMRInstanceGroupConfig_MetricDimension) AWSCloudFormationType() string { +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 *AWSEMRInstanceGroupConfig_MetricDimension) DependsOn() []string { +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 *AWSEMRInstanceGroupConfig_MetricDimension) SetDependsOn(dependencies []string) { +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 *AWSEMRInstanceGroupConfig_MetricDimension) Metadata() map[string]interface{} { +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 *AWSEMRInstanceGroupConfig_MetricDimension) SetMetadata(metadata map[string]interface{}) { +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 *AWSEMRInstanceGroupConfig_MetricDimension) DeletionPolicy() policies.DeletionPolicy { +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 *AWSEMRInstanceGroupConfig_MetricDimension) SetDeletionPolicy(policy policies.DeletionPolicy) { +func (r *InstanceGroupConfig_MetricDimension) SetDeletionPolicy(policy policies.DeletionPolicy) { r._deletionPolicy = policy } diff --git a/cloudformation/resources/aws-emr-instancegroupconfig_scalingaction.go b/cloudformation/emr/aws-emr-instancegroupconfig_scalingaction.go similarity index 70% rename from cloudformation/resources/aws-emr-instancegroupconfig_scalingaction.go rename to cloudformation/emr/aws-emr-instancegroupconfig_scalingaction.go index 34d336dab9..3bd3640c72 100644 --- a/cloudformation/resources/aws-emr-instancegroupconfig_scalingaction.go +++ b/cloudformation/emr/aws-emr-instancegroupconfig_scalingaction.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_ScalingAction AWS CloudFormation Resource (AWS::EMR::InstanceGroupConfig.ScalingAction) +// 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 AWSEMRInstanceGroupConfig_ScalingAction struct { +type InstanceGroupConfig_ScalingAction struct { // Market AWS CloudFormation Property // Required: false @@ -14,7 +16,7 @@ type AWSEMRInstanceGroupConfig_ScalingAction struct { // 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"` + SimpleScalingPolicyConfiguration *InstanceGroupConfig_SimpleScalingPolicyConfiguration `json:"SimpleScalingPolicyConfiguration,omitempty"` // _deletionPolicy represents a CloudFormation DeletionPolicy _deletionPolicy policies.DeletionPolicy @@ -27,42 +29,42 @@ type AWSEMRInstanceGroupConfig_ScalingAction struct { } // AWSCloudFormationType returns the AWS CloudFormation resource type -func (r *AWSEMRInstanceGroupConfig_ScalingAction) AWSCloudFormationType() string { +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 *AWSEMRInstanceGroupConfig_ScalingAction) DependsOn() []string { +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 *AWSEMRInstanceGroupConfig_ScalingAction) SetDependsOn(dependencies []string) { +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 *AWSEMRInstanceGroupConfig_ScalingAction) Metadata() map[string]interface{} { +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 *AWSEMRInstanceGroupConfig_ScalingAction) SetMetadata(metadata map[string]interface{}) { +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 *AWSEMRInstanceGroupConfig_ScalingAction) DeletionPolicy() policies.DeletionPolicy { +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 *AWSEMRInstanceGroupConfig_ScalingAction) SetDeletionPolicy(policy policies.DeletionPolicy) { +func (r *InstanceGroupConfig_ScalingAction) SetDeletionPolicy(policy policies.DeletionPolicy) { r._deletionPolicy = policy } diff --git a/cloudformation/resources/aws-emr-instancegroupconfig_scalingconstraints.go b/cloudformation/emr/aws-emr-instancegroupconfig_scalingconstraints.go similarity index 72% rename from cloudformation/resources/aws-emr-instancegroupconfig_scalingconstraints.go rename to cloudformation/emr/aws-emr-instancegroupconfig_scalingconstraints.go index 423690e155..38eea3e230 100644 --- a/cloudformation/resources/aws-emr-instancegroupconfig_scalingconstraints.go +++ b/cloudformation/emr/aws-emr-instancegroupconfig_scalingconstraints.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_ScalingConstraints AWS CloudFormation Resource (AWS::EMR::InstanceGroupConfig.ScalingConstraints) +// 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 AWSEMRInstanceGroupConfig_ScalingConstraints struct { +type InstanceGroupConfig_ScalingConstraints struct { // MaxCapacity AWS CloudFormation Property // Required: true @@ -27,42 +29,42 @@ type AWSEMRInstanceGroupConfig_ScalingConstraints struct { } // AWSCloudFormationType returns the AWS CloudFormation resource type -func (r *AWSEMRInstanceGroupConfig_ScalingConstraints) AWSCloudFormationType() string { +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 *AWSEMRInstanceGroupConfig_ScalingConstraints) DependsOn() []string { +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 *AWSEMRInstanceGroupConfig_ScalingConstraints) SetDependsOn(dependencies []string) { +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 *AWSEMRInstanceGroupConfig_ScalingConstraints) Metadata() map[string]interface{} { +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 *AWSEMRInstanceGroupConfig_ScalingConstraints) SetMetadata(metadata map[string]interface{}) { +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 *AWSEMRInstanceGroupConfig_ScalingConstraints) DeletionPolicy() policies.DeletionPolicy { +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 *AWSEMRInstanceGroupConfig_ScalingConstraints) SetDeletionPolicy(policy policies.DeletionPolicy) { +func (r *InstanceGroupConfig_ScalingConstraints) SetDeletionPolicy(policy policies.DeletionPolicy) { r._deletionPolicy = policy } diff --git a/cloudformation/resources/aws-emr-instancegroupconfig_scalingrule.go b/cloudformation/emr/aws-emr-instancegroupconfig_scalingrule.go similarity index 74% rename from cloudformation/resources/aws-emr-instancegroupconfig_scalingrule.go rename to cloudformation/emr/aws-emr-instancegroupconfig_scalingrule.go index 3d204d9f25..b259adeb8d 100644 --- a/cloudformation/resources/aws-emr-instancegroupconfig_scalingrule.go +++ b/cloudformation/emr/aws-emr-instancegroupconfig_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" +) -// AWSEMRInstanceGroupConfig_ScalingRule AWS CloudFormation Resource (AWS::EMR::InstanceGroupConfig.ScalingRule) +// 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 AWSEMRInstanceGroupConfig_ScalingRule struct { +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 *AWSEMRInstanceGroupConfig_ScalingAction `json:"Action,omitempty"` + Action *InstanceGroupConfig_ScalingAction `json:"Action,omitempty"` // Description AWS CloudFormation Property // Required: false @@ -24,7 +26,7 @@ type AWSEMRInstanceGroupConfig_ScalingRule struct { // 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"` + Trigger *InstanceGroupConfig_ScalingTrigger `json:"Trigger,omitempty"` // _deletionPolicy represents a CloudFormation DeletionPolicy _deletionPolicy policies.DeletionPolicy @@ -37,42 +39,42 @@ type AWSEMRInstanceGroupConfig_ScalingRule struct { } // AWSCloudFormationType returns the AWS CloudFormation resource type -func (r *AWSEMRInstanceGroupConfig_ScalingRule) AWSCloudFormationType() string { +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 *AWSEMRInstanceGroupConfig_ScalingRule) DependsOn() []string { +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 *AWSEMRInstanceGroupConfig_ScalingRule) SetDependsOn(dependencies []string) { +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 *AWSEMRInstanceGroupConfig_ScalingRule) Metadata() map[string]interface{} { +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 *AWSEMRInstanceGroupConfig_ScalingRule) SetMetadata(metadata map[string]interface{}) { +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 *AWSEMRInstanceGroupConfig_ScalingRule) DeletionPolicy() policies.DeletionPolicy { +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 *AWSEMRInstanceGroupConfig_ScalingRule) SetDeletionPolicy(policy policies.DeletionPolicy) { +func (r *InstanceGroupConfig_ScalingRule) SetDeletionPolicy(policy policies.DeletionPolicy) { r._deletionPolicy = policy } diff --git a/cloudformation/resources/aws-emr-instancegroupconfig_scalingtrigger.go b/cloudformation/emr/aws-emr-instancegroupconfig_scalingtrigger.go similarity index 67% rename from cloudformation/resources/aws-emr-instancegroupconfig_scalingtrigger.go rename to cloudformation/emr/aws-emr-instancegroupconfig_scalingtrigger.go index 33a0c14109..4aa8f29135 100644 --- a/cloudformation/resources/aws-emr-instancegroupconfig_scalingtrigger.go +++ b/cloudformation/emr/aws-emr-instancegroupconfig_scalingtrigger.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" +) -// AWSEMRInstanceGroupConfig_ScalingTrigger AWS CloudFormation Resource (AWS::EMR::InstanceGroupConfig.ScalingTrigger) +// 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 AWSEMRInstanceGroupConfig_ScalingTrigger struct { +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 *AWSEMRInstanceGroupConfig_CloudWatchAlarmDefinition `json:"CloudWatchAlarmDefinition,omitempty"` + CloudWatchAlarmDefinition *InstanceGroupConfig_CloudWatchAlarmDefinition `json:"CloudWatchAlarmDefinition,omitempty"` // _deletionPolicy represents a CloudFormation DeletionPolicy _deletionPolicy policies.DeletionPolicy @@ -22,42 +24,42 @@ type AWSEMRInstanceGroupConfig_ScalingTrigger struct { } // AWSCloudFormationType returns the AWS CloudFormation resource type -func (r *AWSEMRInstanceGroupConfig_ScalingTrigger) AWSCloudFormationType() string { +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 *AWSEMRInstanceGroupConfig_ScalingTrigger) DependsOn() []string { +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 *AWSEMRInstanceGroupConfig_ScalingTrigger) SetDependsOn(dependencies []string) { +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 *AWSEMRInstanceGroupConfig_ScalingTrigger) Metadata() map[string]interface{} { +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 *AWSEMRInstanceGroupConfig_ScalingTrigger) SetMetadata(metadata map[string]interface{}) { +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 *AWSEMRInstanceGroupConfig_ScalingTrigger) DeletionPolicy() policies.DeletionPolicy { +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 *AWSEMRInstanceGroupConfig_ScalingTrigger) SetDeletionPolicy(policy policies.DeletionPolicy) { +func (r *InstanceGroupConfig_ScalingTrigger) SetDeletionPolicy(policy policies.DeletionPolicy) { r._deletionPolicy = policy } diff --git a/cloudformation/resources/aws-emr-instancegroupconfig_simplescalingpolicyconfiguration.go b/cloudformation/emr/aws-emr-instancegroupconfig_simplescalingpolicyconfiguration.go similarity index 73% rename from cloudformation/resources/aws-emr-instancegroupconfig_simplescalingpolicyconfiguration.go rename to cloudformation/emr/aws-emr-instancegroupconfig_simplescalingpolicyconfiguration.go index a4a80dc867..d263368e7a 100644 --- a/cloudformation/resources/aws-emr-instancegroupconfig_simplescalingpolicyconfiguration.go +++ b/cloudformation/emr/aws-emr-instancegroupconfig_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" +) -// AWSEMRInstanceGroupConfig_SimpleScalingPolicyConfiguration AWS CloudFormation Resource (AWS::EMR::InstanceGroupConfig.SimpleScalingPolicyConfiguration) +// 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 AWSEMRInstanceGroupConfig_SimpleScalingPolicyConfiguration struct { +type InstanceGroupConfig_SimpleScalingPolicyConfiguration struct { // AdjustmentType AWS CloudFormation Property // Required: false @@ -32,42 +34,42 @@ type AWSEMRInstanceGroupConfig_SimpleScalingPolicyConfiguration struct { } // AWSCloudFormationType returns the AWS CloudFormation resource type -func (r *AWSEMRInstanceGroupConfig_SimpleScalingPolicyConfiguration) AWSCloudFormationType() string { +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 *AWSEMRInstanceGroupConfig_SimpleScalingPolicyConfiguration) DependsOn() []string { +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 *AWSEMRInstanceGroupConfig_SimpleScalingPolicyConfiguration) SetDependsOn(dependencies []string) { +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 *AWSEMRInstanceGroupConfig_SimpleScalingPolicyConfiguration) Metadata() map[string]interface{} { +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 *AWSEMRInstanceGroupConfig_SimpleScalingPolicyConfiguration) SetMetadata(metadata map[string]interface{}) { +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 *AWSEMRInstanceGroupConfig_SimpleScalingPolicyConfiguration) DeletionPolicy() policies.DeletionPolicy { +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 *AWSEMRInstanceGroupConfig_SimpleScalingPolicyConfiguration) SetDeletionPolicy(policy policies.DeletionPolicy) { +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/resources/aws-events-rule_kinesisparameters.go b/cloudformation/events/aws-events-rule_kinesisparameters.go similarity index 72% rename from cloudformation/resources/aws-events-rule_kinesisparameters.go rename to cloudformation/events/aws-events-rule_kinesisparameters.go index 01c057ac5b..5ceff1d4ce 100644 --- a/cloudformation/resources/aws-events-rule_kinesisparameters.go +++ b/cloudformation/events/aws-events-rule_kinesisparameters.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_KinesisParameters AWS CloudFormation Resource (AWS::Events::Rule.KinesisParameters) +// 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 AWSEventsRule_KinesisParameters struct { +type Rule_KinesisParameters struct { // PartitionKeyPath AWS CloudFormation Property // Required: true @@ -22,42 +24,42 @@ type AWSEventsRule_KinesisParameters struct { } // AWSCloudFormationType returns the AWS CloudFormation resource type -func (r *AWSEventsRule_KinesisParameters) AWSCloudFormationType() string { +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 *AWSEventsRule_KinesisParameters) DependsOn() []string { +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 *AWSEventsRule_KinesisParameters) SetDependsOn(dependencies []string) { +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 *AWSEventsRule_KinesisParameters) Metadata() map[string]interface{} { +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 *AWSEventsRule_KinesisParameters) SetMetadata(metadata map[string]interface{}) { +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 *AWSEventsRule_KinesisParameters) DeletionPolicy() policies.DeletionPolicy { +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 *AWSEventsRule_KinesisParameters) SetDeletionPolicy(policy policies.DeletionPolicy) { +func (r *Rule_KinesisParameters) SetDeletionPolicy(policy policies.DeletionPolicy) { r._deletionPolicy = policy } diff --git a/cloudformation/resources/aws-events-rule_networkconfiguration.go b/cloudformation/events/aws-events-rule_networkconfiguration.go similarity index 68% rename from cloudformation/resources/aws-events-rule_networkconfiguration.go rename to cloudformation/events/aws-events-rule_networkconfiguration.go index 5ccb97d734..4a64d851ab 100644 --- a/cloudformation/resources/aws-events-rule_networkconfiguration.go +++ b/cloudformation/events/aws-events-rule_networkconfiguration.go @@ -1,15 +1,17 @@ -package resources +package events -import "github.com/awslabs/goformation/v2/cloudformation/policies" +import ( + "github.com/awslabs/goformation/v3/cloudformation/policies" +) -// AWSEventsRule_NetworkConfiguration AWS CloudFormation Resource (AWS::Events::Rule.NetworkConfiguration) +// 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 AWSEventsRule_NetworkConfiguration struct { +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 *AWSEventsRule_AwsVpcConfiguration `json:"AwsVpcConfiguration,omitempty"` + AwsVpcConfiguration *Rule_AwsVpcConfiguration `json:"AwsVpcConfiguration,omitempty"` // _deletionPolicy represents a CloudFormation DeletionPolicy _deletionPolicy policies.DeletionPolicy @@ -22,42 +24,42 @@ type AWSEventsRule_NetworkConfiguration struct { } // AWSCloudFormationType returns the AWS CloudFormation resource type -func (r *AWSEventsRule_NetworkConfiguration) AWSCloudFormationType() string { +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 *AWSEventsRule_NetworkConfiguration) DependsOn() []string { +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 *AWSEventsRule_NetworkConfiguration) SetDependsOn(dependencies []string) { +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 *AWSEventsRule_NetworkConfiguration) Metadata() map[string]interface{} { +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 *AWSEventsRule_NetworkConfiguration) SetMetadata(metadata map[string]interface{}) { +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 *AWSEventsRule_NetworkConfiguration) DeletionPolicy() policies.DeletionPolicy { +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 *AWSEventsRule_NetworkConfiguration) SetDeletionPolicy(policy policies.DeletionPolicy) { +func (r *Rule_NetworkConfiguration) SetDeletionPolicy(policy policies.DeletionPolicy) { r._deletionPolicy = policy } diff --git a/cloudformation/resources/aws-events-rule_runcommandparameters.go b/cloudformation/events/aws-events-rule_runcommandparameters.go similarity index 69% rename from cloudformation/resources/aws-events-rule_runcommandparameters.go rename to cloudformation/events/aws-events-rule_runcommandparameters.go index fe307eeaa4..621c1ec0d0 100644 --- a/cloudformation/resources/aws-events-rule_runcommandparameters.go +++ b/cloudformation/events/aws-events-rule_runcommandparameters.go @@ -1,15 +1,17 @@ -package resources +package events -import "github.com/awslabs/goformation/v2/cloudformation/policies" +import ( + "github.com/awslabs/goformation/v3/cloudformation/policies" +) -// AWSEventsRule_RunCommandParameters AWS CloudFormation Resource (AWS::Events::Rule.RunCommandParameters) +// 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 AWSEventsRule_RunCommandParameters struct { +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 []AWSEventsRule_RunCommandTarget `json:"RunCommandTargets,omitempty"` + RunCommandTargets []Rule_RunCommandTarget `json:"RunCommandTargets,omitempty"` // _deletionPolicy represents a CloudFormation DeletionPolicy _deletionPolicy policies.DeletionPolicy @@ -22,42 +24,42 @@ type AWSEventsRule_RunCommandParameters struct { } // AWSCloudFormationType returns the AWS CloudFormation resource type -func (r *AWSEventsRule_RunCommandParameters) AWSCloudFormationType() string { +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 *AWSEventsRule_RunCommandParameters) DependsOn() []string { +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 *AWSEventsRule_RunCommandParameters) SetDependsOn(dependencies []string) { +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 *AWSEventsRule_RunCommandParameters) Metadata() map[string]interface{} { +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 *AWSEventsRule_RunCommandParameters) SetMetadata(metadata map[string]interface{}) { +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 *AWSEventsRule_RunCommandParameters) DeletionPolicy() policies.DeletionPolicy { +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 *AWSEventsRule_RunCommandParameters) SetDeletionPolicy(policy policies.DeletionPolicy) { +func (r *Rule_RunCommandParameters) SetDeletionPolicy(policy policies.DeletionPolicy) { r._deletionPolicy = policy } diff --git a/cloudformation/resources/aws-events-rule_runcommandtarget.go b/cloudformation/events/aws-events-rule_runcommandtarget.go similarity index 74% rename from cloudformation/resources/aws-events-rule_runcommandtarget.go rename to cloudformation/events/aws-events-rule_runcommandtarget.go index 981d89065f..9a49b17e27 100644 --- a/cloudformation/resources/aws-events-rule_runcommandtarget.go +++ b/cloudformation/events/aws-events-rule_runcommandtarget.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_RunCommandTarget AWS CloudFormation Resource (AWS::Events::Rule.RunCommandTarget) +// 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 AWSEventsRule_RunCommandTarget struct { +type Rule_RunCommandTarget struct { // Key AWS CloudFormation Property // Required: true @@ -27,42 +29,42 @@ type AWSEventsRule_RunCommandTarget struct { } // AWSCloudFormationType returns the AWS CloudFormation resource type -func (r *AWSEventsRule_RunCommandTarget) AWSCloudFormationType() string { +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 *AWSEventsRule_RunCommandTarget) DependsOn() []string { +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 *AWSEventsRule_RunCommandTarget) SetDependsOn(dependencies []string) { +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 *AWSEventsRule_RunCommandTarget) Metadata() map[string]interface{} { +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 *AWSEventsRule_RunCommandTarget) SetMetadata(metadata map[string]interface{}) { +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 *AWSEventsRule_RunCommandTarget) DeletionPolicy() policies.DeletionPolicy { +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 *AWSEventsRule_RunCommandTarget) SetDeletionPolicy(policy policies.DeletionPolicy) { +func (r *Rule_RunCommandTarget) SetDeletionPolicy(policy policies.DeletionPolicy) { r._deletionPolicy = policy } diff --git a/cloudformation/resources/aws-events-rule_sqsparameters.go b/cloudformation/events/aws-events-rule_sqsparameters.go similarity index 73% rename from cloudformation/resources/aws-events-rule_sqsparameters.go rename to cloudformation/events/aws-events-rule_sqsparameters.go index b108e93d47..91231cce2f 100644 --- a/cloudformation/resources/aws-events-rule_sqsparameters.go +++ b/cloudformation/events/aws-events-rule_sqsparameters.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_SqsParameters AWS CloudFormation Resource (AWS::Events::Rule.SqsParameters) +// 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 AWSEventsRule_SqsParameters struct { +type Rule_SqsParameters struct { // MessageGroupId AWS CloudFormation Property // Required: true @@ -22,42 +24,42 @@ type AWSEventsRule_SqsParameters struct { } // AWSCloudFormationType returns the AWS CloudFormation resource type -func (r *AWSEventsRule_SqsParameters) AWSCloudFormationType() string { +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 *AWSEventsRule_SqsParameters) DependsOn() []string { +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 *AWSEventsRule_SqsParameters) SetDependsOn(dependencies []string) { +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 *AWSEventsRule_SqsParameters) Metadata() map[string]interface{} { +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 *AWSEventsRule_SqsParameters) SetMetadata(metadata map[string]interface{}) { +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 *AWSEventsRule_SqsParameters) DeletionPolicy() policies.DeletionPolicy { +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 *AWSEventsRule_SqsParameters) SetDeletionPolicy(policy policies.DeletionPolicy) { +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/resources/aws-glue-classifier_jsonclassifier.go b/cloudformation/glue/aws-glue-classifier_jsonclassifier.go similarity index 74% rename from cloudformation/resources/aws-glue-classifier_jsonclassifier.go rename to cloudformation/glue/aws-glue-classifier_jsonclassifier.go index b89c735744..7abd400b59 100644 --- a/cloudformation/resources/aws-glue-classifier_jsonclassifier.go +++ b/cloudformation/glue/aws-glue-classifier_jsonclassifier.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_JsonClassifier AWS CloudFormation Resource (AWS::Glue::Classifier.JsonClassifier) +// 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 AWSGlueClassifier_JsonClassifier struct { +type Classifier_JsonClassifier struct { // JsonPath AWS CloudFormation Property // Required: true @@ -27,42 +29,42 @@ type AWSGlueClassifier_JsonClassifier struct { } // AWSCloudFormationType returns the AWS CloudFormation resource type -func (r *AWSGlueClassifier_JsonClassifier) AWSCloudFormationType() string { +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 *AWSGlueClassifier_JsonClassifier) DependsOn() []string { +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 *AWSGlueClassifier_JsonClassifier) SetDependsOn(dependencies []string) { +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 *AWSGlueClassifier_JsonClassifier) Metadata() map[string]interface{} { +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 *AWSGlueClassifier_JsonClassifier) SetMetadata(metadata map[string]interface{}) { +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 *AWSGlueClassifier_JsonClassifier) DeletionPolicy() policies.DeletionPolicy { +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 *AWSGlueClassifier_JsonClassifier) SetDeletionPolicy(policy policies.DeletionPolicy) { +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/resources/aws-glue-connection_physicalconnectionrequirements.go b/cloudformation/glue/aws-glue-connection_physicalconnectionrequirements.go similarity index 74% rename from cloudformation/resources/aws-glue-connection_physicalconnectionrequirements.go rename to cloudformation/glue/aws-glue-connection_physicalconnectionrequirements.go index 0acfe05193..332fbe1d0f 100644 --- a/cloudformation/resources/aws-glue-connection_physicalconnectionrequirements.go +++ b/cloudformation/glue/aws-glue-connection_physicalconnectionrequirements.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_PhysicalConnectionRequirements AWS CloudFormation Resource (AWS::Glue::Connection.PhysicalConnectionRequirements) +// 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 AWSGlueConnection_PhysicalConnectionRequirements struct { +type Connection_PhysicalConnectionRequirements struct { // AvailabilityZone AWS CloudFormation Property // Required: false @@ -32,42 +34,42 @@ type AWSGlueConnection_PhysicalConnectionRequirements struct { } // AWSCloudFormationType returns the AWS CloudFormation resource type -func (r *AWSGlueConnection_PhysicalConnectionRequirements) AWSCloudFormationType() string { +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 *AWSGlueConnection_PhysicalConnectionRequirements) DependsOn() []string { +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 *AWSGlueConnection_PhysicalConnectionRequirements) SetDependsOn(dependencies []string) { +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 *AWSGlueConnection_PhysicalConnectionRequirements) Metadata() map[string]interface{} { +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 *AWSGlueConnection_PhysicalConnectionRequirements) SetMetadata(metadata map[string]interface{}) { +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 *AWSGlueConnection_PhysicalConnectionRequirements) DeletionPolicy() policies.DeletionPolicy { +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 *AWSGlueConnection_PhysicalConnectionRequirements) SetDeletionPolicy(policy policies.DeletionPolicy) { +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/resources/aws-glue-crawler_schedule.go b/cloudformation/glue/aws-glue-crawler_schedule.go similarity index 74% rename from cloudformation/resources/aws-glue-crawler_schedule.go rename to cloudformation/glue/aws-glue-crawler_schedule.go index 99a5cff6d1..770b37434a 100644 --- a/cloudformation/resources/aws-glue-crawler_schedule.go +++ b/cloudformation/glue/aws-glue-crawler_schedule.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_Schedule AWS CloudFormation Resource (AWS::Glue::Crawler.Schedule) +// 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 AWSGlueCrawler_Schedule struct { +type Crawler_Schedule struct { // ScheduleExpression AWS CloudFormation Property // Required: false @@ -22,42 +24,42 @@ type AWSGlueCrawler_Schedule struct { } // AWSCloudFormationType returns the AWS CloudFormation resource type -func (r *AWSGlueCrawler_Schedule) AWSCloudFormationType() string { +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 *AWSGlueCrawler_Schedule) DependsOn() []string { +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 *AWSGlueCrawler_Schedule) SetDependsOn(dependencies []string) { +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 *AWSGlueCrawler_Schedule) Metadata() map[string]interface{} { +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 *AWSGlueCrawler_Schedule) SetMetadata(metadata map[string]interface{}) { +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 *AWSGlueCrawler_Schedule) DeletionPolicy() policies.DeletionPolicy { +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 *AWSGlueCrawler_Schedule) SetDeletionPolicy(policy policies.DeletionPolicy) { +func (r *Crawler_Schedule) SetDeletionPolicy(policy policies.DeletionPolicy) { r._deletionPolicy = policy } diff --git a/cloudformation/resources/aws-glue-crawler_schemachangepolicy.go b/cloudformation/glue/aws-glue-crawler_schemachangepolicy.go similarity index 74% rename from cloudformation/resources/aws-glue-crawler_schemachangepolicy.go rename to cloudformation/glue/aws-glue-crawler_schemachangepolicy.go index 98e6ac83f3..77f411fc9d 100644 --- a/cloudformation/resources/aws-glue-crawler_schemachangepolicy.go +++ b/cloudformation/glue/aws-glue-crawler_schemachangepolicy.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_SchemaChangePolicy AWS CloudFormation Resource (AWS::Glue::Crawler.SchemaChangePolicy) +// 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 AWSGlueCrawler_SchemaChangePolicy struct { +type Crawler_SchemaChangePolicy struct { // DeleteBehavior AWS CloudFormation Property // Required: false @@ -27,42 +29,42 @@ type AWSGlueCrawler_SchemaChangePolicy struct { } // AWSCloudFormationType returns the AWS CloudFormation resource type -func (r *AWSGlueCrawler_SchemaChangePolicy) AWSCloudFormationType() string { +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 *AWSGlueCrawler_SchemaChangePolicy) DependsOn() []string { +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 *AWSGlueCrawler_SchemaChangePolicy) SetDependsOn(dependencies []string) { +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 *AWSGlueCrawler_SchemaChangePolicy) Metadata() map[string]interface{} { +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 *AWSGlueCrawler_SchemaChangePolicy) SetMetadata(metadata map[string]interface{}) { +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 *AWSGlueCrawler_SchemaChangePolicy) DeletionPolicy() policies.DeletionPolicy { +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 *AWSGlueCrawler_SchemaChangePolicy) SetDeletionPolicy(policy policies.DeletionPolicy) { +func (r *Crawler_SchemaChangePolicy) SetDeletionPolicy(policy policies.DeletionPolicy) { r._deletionPolicy = policy } diff --git a/cloudformation/resources/aws-glue-crawler_targets.go b/cloudformation/glue/aws-glue-crawler_targets.go similarity index 72% rename from cloudformation/resources/aws-glue-crawler_targets.go rename to cloudformation/glue/aws-glue-crawler_targets.go index a7ea193bf6..64543b664f 100644 --- a/cloudformation/resources/aws-glue-crawler_targets.go +++ b/cloudformation/glue/aws-glue-crawler_targets.go @@ -1,20 +1,22 @@ -package resources +package glue -import "github.com/awslabs/goformation/v2/cloudformation/policies" +import ( + "github.com/awslabs/goformation/v3/cloudformation/policies" +) -// AWSGlueCrawler_Targets AWS CloudFormation Resource (AWS::Glue::Crawler.Targets) +// 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 AWSGlueCrawler_Targets struct { +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 []AWSGlueCrawler_JdbcTarget `json:"JdbcTargets,omitempty"` + 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 []AWSGlueCrawler_S3Target `json:"S3Targets,omitempty"` + S3Targets []Crawler_S3Target `json:"S3Targets,omitempty"` // _deletionPolicy represents a CloudFormation DeletionPolicy _deletionPolicy policies.DeletionPolicy @@ -27,42 +29,42 @@ type AWSGlueCrawler_Targets struct { } // AWSCloudFormationType returns the AWS CloudFormation resource type -func (r *AWSGlueCrawler_Targets) AWSCloudFormationType() string { +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 *AWSGlueCrawler_Targets) DependsOn() []string { +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 *AWSGlueCrawler_Targets) SetDependsOn(dependencies []string) { +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 *AWSGlueCrawler_Targets) Metadata() map[string]interface{} { +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 *AWSGlueCrawler_Targets) SetMetadata(metadata map[string]interface{}) { +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 *AWSGlueCrawler_Targets) DeletionPolicy() policies.DeletionPolicy { +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 *AWSGlueCrawler_Targets) SetDeletionPolicy(policy policies.DeletionPolicy) { +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/resources/aws-glue-datacatalogencryptionsettings.go b/cloudformation/glue/aws-glue-datacatalogencryptionsettings.go similarity index 74% rename from cloudformation/resources/aws-glue-datacatalogencryptionsettings.go rename to cloudformation/glue/aws-glue-datacatalogencryptionsettings.go index 55ff3296e6..d74f5e8128 100644 --- a/cloudformation/resources/aws-glue-datacatalogencryptionsettings.go +++ b/cloudformation/glue/aws-glue-datacatalogencryptionsettings.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" ) -// AWSGlueDataCatalogEncryptionSettings AWS CloudFormation Resource (AWS::Glue::DataCatalogEncryptionSettings) +// DataCatalogEncryptionSettings AWS CloudFormation Resource (AWS::Glue::DataCatalogEncryptionSettings) // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-glue-datacatalogencryptionsettings.html -type AWSGlueDataCatalogEncryptionSettings struct { +type DataCatalogEncryptionSettings struct { // CatalogId AWS CloudFormation Property // Required: true @@ -19,7 +20,7 @@ type AWSGlueDataCatalogEncryptionSettings struct { // 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"` + DataCatalogEncryptionSettings *DataCatalogEncryptionSettings_DataCatalogEncryptionSettings `json:"DataCatalogEncryptionSettings,omitempty"` // _deletionPolicy represents a CloudFormation DeletionPolicy _deletionPolicy policies.DeletionPolicy @@ -32,50 +33,50 @@ type AWSGlueDataCatalogEncryptionSettings struct { } // AWSCloudFormationType returns the AWS CloudFormation resource type -func (r *AWSGlueDataCatalogEncryptionSettings) AWSCloudFormationType() string { +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 *AWSGlueDataCatalogEncryptionSettings) DependsOn() []string { +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 *AWSGlueDataCatalogEncryptionSettings) SetDependsOn(dependencies []string) { +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 *AWSGlueDataCatalogEncryptionSettings) Metadata() map[string]interface{} { +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 *AWSGlueDataCatalogEncryptionSettings) SetMetadata(metadata map[string]interface{}) { +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 *AWSGlueDataCatalogEncryptionSettings) DeletionPolicy() policies.DeletionPolicy { +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 *AWSGlueDataCatalogEncryptionSettings) SetDeletionPolicy(policy policies.DeletionPolicy) { +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 AWSGlueDataCatalogEncryptionSettings) MarshalJSON() ([]byte, error) { - type Properties AWSGlueDataCatalogEncryptionSettings +func (r DataCatalogEncryptionSettings) MarshalJSON() ([]byte, error) { + type Properties DataCatalogEncryptionSettings return json.Marshal(&struct { Type string Properties Properties @@ -93,8 +94,8 @@ func (r AWSGlueDataCatalogEncryptionSettings) MarshalJSON() ([]byte, error) { // 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 +func (r *DataCatalogEncryptionSettings) UnmarshalJSON(b []byte) error { + type Properties DataCatalogEncryptionSettings res := &struct { Type string Properties *Properties @@ -113,7 +114,7 @@ func (r *AWSGlueDataCatalogEncryptionSettings) UnmarshalJSON(b []byte) error { // If the resource has no Properties set, it could be nil if res.Properties != nil { - *r = AWSGlueDataCatalogEncryptionSettings(*res.Properties) + *r = DataCatalogEncryptionSettings(*res.Properties) } if res.DependsOn != nil { r._dependsOn = res.DependsOn diff --git a/cloudformation/resources/aws-glue-datacatalogencryptionsettings_connectionpasswordencryption.go b/cloudformation/glue/aws-glue-datacatalogencryptionsettings_connectionpasswordencryption.go similarity index 69% rename from cloudformation/resources/aws-glue-datacatalogencryptionsettings_connectionpasswordencryption.go rename to cloudformation/glue/aws-glue-datacatalogencryptionsettings_connectionpasswordencryption.go index 8e2f06e4d6..441ba564f7 100644 --- a/cloudformation/resources/aws-glue-datacatalogencryptionsettings_connectionpasswordencryption.go +++ b/cloudformation/glue/aws-glue-datacatalogencryptionsettings_connectionpasswordencryption.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" +) -// AWSGlueDataCatalogEncryptionSettings_ConnectionPasswordEncryption AWS CloudFormation Resource (AWS::Glue::DataCatalogEncryptionSettings.ConnectionPasswordEncryption) +// 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 AWSGlueDataCatalogEncryptionSettings_ConnectionPasswordEncryption struct { +type DataCatalogEncryptionSettings_ConnectionPasswordEncryption struct { // KmsKeyId AWS CloudFormation Property // Required: false @@ -27,42 +29,42 @@ type AWSGlueDataCatalogEncryptionSettings_ConnectionPasswordEncryption struct { } // AWSCloudFormationType returns the AWS CloudFormation resource type -func (r *AWSGlueDataCatalogEncryptionSettings_ConnectionPasswordEncryption) AWSCloudFormationType() string { +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 *AWSGlueDataCatalogEncryptionSettings_ConnectionPasswordEncryption) DependsOn() []string { +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 *AWSGlueDataCatalogEncryptionSettings_ConnectionPasswordEncryption) SetDependsOn(dependencies []string) { +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 *AWSGlueDataCatalogEncryptionSettings_ConnectionPasswordEncryption) Metadata() map[string]interface{} { +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 *AWSGlueDataCatalogEncryptionSettings_ConnectionPasswordEncryption) SetMetadata(metadata map[string]interface{}) { +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 *AWSGlueDataCatalogEncryptionSettings_ConnectionPasswordEncryption) DeletionPolicy() policies.DeletionPolicy { +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 *AWSGlueDataCatalogEncryptionSettings_ConnectionPasswordEncryption) SetDeletionPolicy(policy policies.DeletionPolicy) { +func (r *DataCatalogEncryptionSettings_ConnectionPasswordEncryption) SetDeletionPolicy(policy policies.DeletionPolicy) { r._deletionPolicy = policy } diff --git a/cloudformation/resources/aws-glue-datacatalogencryptionsettings_datacatalogencryptionsettings.go b/cloudformation/glue/aws-glue-datacatalogencryptionsettings_datacatalogencryptionsettings.go similarity index 64% rename from cloudformation/resources/aws-glue-datacatalogencryptionsettings_datacatalogencryptionsettings.go rename to cloudformation/glue/aws-glue-datacatalogencryptionsettings_datacatalogencryptionsettings.go index 2c3687e461..9c4234f4af 100644 --- a/cloudformation/resources/aws-glue-datacatalogencryptionsettings_datacatalogencryptionsettings.go +++ b/cloudformation/glue/aws-glue-datacatalogencryptionsettings_datacatalogencryptionsettings.go @@ -1,20 +1,22 @@ -package resources +package glue -import "github.com/awslabs/goformation/v2/cloudformation/policies" +import ( + "github.com/awslabs/goformation/v3/cloudformation/policies" +) -// AWSGlueDataCatalogEncryptionSettings_DataCatalogEncryptionSettings AWS CloudFormation Resource (AWS::Glue::DataCatalogEncryptionSettings.DataCatalogEncryptionSettings) +// 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 AWSGlueDataCatalogEncryptionSettings_DataCatalogEncryptionSettings struct { +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 *AWSGlueDataCatalogEncryptionSettings_ConnectionPasswordEncryption `json:"ConnectionPasswordEncryption,omitempty"` + 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 *AWSGlueDataCatalogEncryptionSettings_EncryptionAtRest `json:"EncryptionAtRest,omitempty"` + EncryptionAtRest *DataCatalogEncryptionSettings_EncryptionAtRest `json:"EncryptionAtRest,omitempty"` // _deletionPolicy represents a CloudFormation DeletionPolicy _deletionPolicy policies.DeletionPolicy @@ -27,42 +29,42 @@ type AWSGlueDataCatalogEncryptionSettings_DataCatalogEncryptionSettings struct { } // AWSCloudFormationType returns the AWS CloudFormation resource type -func (r *AWSGlueDataCatalogEncryptionSettings_DataCatalogEncryptionSettings) AWSCloudFormationType() string { +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 *AWSGlueDataCatalogEncryptionSettings_DataCatalogEncryptionSettings) DependsOn() []string { +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 *AWSGlueDataCatalogEncryptionSettings_DataCatalogEncryptionSettings) SetDependsOn(dependencies []string) { +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 *AWSGlueDataCatalogEncryptionSettings_DataCatalogEncryptionSettings) Metadata() map[string]interface{} { +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 *AWSGlueDataCatalogEncryptionSettings_DataCatalogEncryptionSettings) SetMetadata(metadata map[string]interface{}) { +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 *AWSGlueDataCatalogEncryptionSettings_DataCatalogEncryptionSettings) DeletionPolicy() policies.DeletionPolicy { +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 *AWSGlueDataCatalogEncryptionSettings_DataCatalogEncryptionSettings) SetDeletionPolicy(policy policies.DeletionPolicy) { +func (r *DataCatalogEncryptionSettings_DataCatalogEncryptionSettings) SetDeletionPolicy(policy policies.DeletionPolicy) { r._deletionPolicy = policy } diff --git a/cloudformation/resources/aws-glue-datacatalogencryptionsettings_encryptionatrest.go b/cloudformation/glue/aws-glue-datacatalogencryptionsettings_encryptionatrest.go similarity index 71% rename from cloudformation/resources/aws-glue-datacatalogencryptionsettings_encryptionatrest.go rename to cloudformation/glue/aws-glue-datacatalogencryptionsettings_encryptionatrest.go index 0befca6a4f..461a06a569 100644 --- a/cloudformation/resources/aws-glue-datacatalogencryptionsettings_encryptionatrest.go +++ b/cloudformation/glue/aws-glue-datacatalogencryptionsettings_encryptionatrest.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" +) -// AWSGlueDataCatalogEncryptionSettings_EncryptionAtRest AWS CloudFormation Resource (AWS::Glue::DataCatalogEncryptionSettings.EncryptionAtRest) +// 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 AWSGlueDataCatalogEncryptionSettings_EncryptionAtRest struct { +type DataCatalogEncryptionSettings_EncryptionAtRest struct { // CatalogEncryptionMode AWS CloudFormation Property // Required: false @@ -27,42 +29,42 @@ type AWSGlueDataCatalogEncryptionSettings_EncryptionAtRest struct { } // AWSCloudFormationType returns the AWS CloudFormation resource type -func (r *AWSGlueDataCatalogEncryptionSettings_EncryptionAtRest) AWSCloudFormationType() string { +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 *AWSGlueDataCatalogEncryptionSettings_EncryptionAtRest) DependsOn() []string { +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 *AWSGlueDataCatalogEncryptionSettings_EncryptionAtRest) SetDependsOn(dependencies []string) { +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 *AWSGlueDataCatalogEncryptionSettings_EncryptionAtRest) Metadata() map[string]interface{} { +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 *AWSGlueDataCatalogEncryptionSettings_EncryptionAtRest) SetMetadata(metadata map[string]interface{}) { +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 *AWSGlueDataCatalogEncryptionSettings_EncryptionAtRest) DeletionPolicy() policies.DeletionPolicy { +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 *AWSGlueDataCatalogEncryptionSettings_EncryptionAtRest) SetDeletionPolicy(policy policies.DeletionPolicy) { +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/resources/aws-glue-job_connectionslist.go b/cloudformation/glue/aws-glue-job_connectionslist.go similarity index 73% rename from cloudformation/resources/aws-glue-job_connectionslist.go rename to cloudformation/glue/aws-glue-job_connectionslist.go index 4e95ba9b5c..09750b27af 100644 --- a/cloudformation/resources/aws-glue-job_connectionslist.go +++ b/cloudformation/glue/aws-glue-job_connectionslist.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_ConnectionsList AWS CloudFormation Resource (AWS::Glue::Job.ConnectionsList) +// 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 AWSGlueJob_ConnectionsList struct { +type Job_ConnectionsList struct { // Connections AWS CloudFormation Property // Required: false @@ -22,42 +24,42 @@ type AWSGlueJob_ConnectionsList struct { } // AWSCloudFormationType returns the AWS CloudFormation resource type -func (r *AWSGlueJob_ConnectionsList) AWSCloudFormationType() string { +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 *AWSGlueJob_ConnectionsList) DependsOn() []string { +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 *AWSGlueJob_ConnectionsList) SetDependsOn(dependencies []string) { +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 *AWSGlueJob_ConnectionsList) Metadata() map[string]interface{} { +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 *AWSGlueJob_ConnectionsList) SetMetadata(metadata map[string]interface{}) { +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 *AWSGlueJob_ConnectionsList) DeletionPolicy() policies.DeletionPolicy { +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 *AWSGlueJob_ConnectionsList) SetDeletionPolicy(policy policies.DeletionPolicy) { +func (r *Job_ConnectionsList) SetDeletionPolicy(policy policies.DeletionPolicy) { r._deletionPolicy = policy } diff --git a/cloudformation/resources/aws-glue-job_executionproperty.go b/cloudformation/glue/aws-glue-job_executionproperty.go similarity index 73% rename from cloudformation/resources/aws-glue-job_executionproperty.go rename to cloudformation/glue/aws-glue-job_executionproperty.go index 480eeb4f35..e37c8a20eb 100644 --- a/cloudformation/resources/aws-glue-job_executionproperty.go +++ b/cloudformation/glue/aws-glue-job_executionproperty.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_ExecutionProperty AWS CloudFormation Resource (AWS::Glue::Job.ExecutionProperty) +// 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 AWSGlueJob_ExecutionProperty struct { +type Job_ExecutionProperty struct { // MaxConcurrentRuns AWS CloudFormation Property // Required: false @@ -22,42 +24,42 @@ type AWSGlueJob_ExecutionProperty struct { } // AWSCloudFormationType returns the AWS CloudFormation resource type -func (r *AWSGlueJob_ExecutionProperty) AWSCloudFormationType() string { +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 *AWSGlueJob_ExecutionProperty) DependsOn() []string { +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 *AWSGlueJob_ExecutionProperty) SetDependsOn(dependencies []string) { +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 *AWSGlueJob_ExecutionProperty) Metadata() map[string]interface{} { +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 *AWSGlueJob_ExecutionProperty) SetMetadata(metadata map[string]interface{}) { +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 *AWSGlueJob_ExecutionProperty) DeletionPolicy() policies.DeletionPolicy { +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 *AWSGlueJob_ExecutionProperty) SetDeletionPolicy(policy policies.DeletionPolicy) { +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/resources/aws-glue-job_notificationproperty.go b/cloudformation/glue/aws-glue-job_notificationproperty.go similarity index 72% rename from cloudformation/resources/aws-glue-job_notificationproperty.go rename to cloudformation/glue/aws-glue-job_notificationproperty.go index c2ce6c9cfb..2c2fc50c79 100644 --- a/cloudformation/resources/aws-glue-job_notificationproperty.go +++ b/cloudformation/glue/aws-glue-job_notificationproperty.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_NotificationProperty AWS CloudFormation Resource (AWS::Glue::Job.NotificationProperty) +// 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 AWSGlueJob_NotificationProperty struct { +type Job_NotificationProperty struct { // NotifyDelayAfter AWS CloudFormation Property // Required: false @@ -22,42 +24,42 @@ type AWSGlueJob_NotificationProperty struct { } // AWSCloudFormationType returns the AWS CloudFormation resource type -func (r *AWSGlueJob_NotificationProperty) AWSCloudFormationType() string { +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 *AWSGlueJob_NotificationProperty) DependsOn() []string { +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 *AWSGlueJob_NotificationProperty) SetDependsOn(dependencies []string) { +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 *AWSGlueJob_NotificationProperty) Metadata() map[string]interface{} { +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 *AWSGlueJob_NotificationProperty) SetMetadata(metadata map[string]interface{}) { +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 *AWSGlueJob_NotificationProperty) DeletionPolicy() policies.DeletionPolicy { +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 *AWSGlueJob_NotificationProperty) SetDeletionPolicy(policy policies.DeletionPolicy) { +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/resources/aws-glue-mltransform_inputrecordtables.go b/cloudformation/glue/aws-glue-mltransform_inputrecordtables.go similarity index 68% rename from cloudformation/resources/aws-glue-mltransform_inputrecordtables.go rename to cloudformation/glue/aws-glue-mltransform_inputrecordtables.go index beb7bd89a5..0b1248a80a 100644 --- a/cloudformation/resources/aws-glue-mltransform_inputrecordtables.go +++ b/cloudformation/glue/aws-glue-mltransform_inputrecordtables.go @@ -1,15 +1,17 @@ -package resources +package glue -import "github.com/awslabs/goformation/v2/cloudformation/policies" +import ( + "github.com/awslabs/goformation/v3/cloudformation/policies" +) -// AWSGlueMLTransform_InputRecordTables AWS CloudFormation Resource (AWS::Glue::MLTransform.InputRecordTables) +// 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 AWSGlueMLTransform_InputRecordTables struct { +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 []AWSGlueMLTransform_GlueTables `json:"GlueTables,omitempty"` + GlueTables []MLTransform_GlueTables `json:"GlueTables,omitempty"` // _deletionPolicy represents a CloudFormation DeletionPolicy _deletionPolicy policies.DeletionPolicy @@ -22,42 +24,42 @@ type AWSGlueMLTransform_InputRecordTables struct { } // AWSCloudFormationType returns the AWS CloudFormation resource type -func (r *AWSGlueMLTransform_InputRecordTables) AWSCloudFormationType() string { +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 *AWSGlueMLTransform_InputRecordTables) DependsOn() []string { +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 *AWSGlueMLTransform_InputRecordTables) SetDependsOn(dependencies []string) { +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 *AWSGlueMLTransform_InputRecordTables) Metadata() map[string]interface{} { +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 *AWSGlueMLTransform_InputRecordTables) SetMetadata(metadata map[string]interface{}) { +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 *AWSGlueMLTransform_InputRecordTables) DeletionPolicy() policies.DeletionPolicy { +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 *AWSGlueMLTransform_InputRecordTables) SetDeletionPolicy(policy policies.DeletionPolicy) { +func (r *MLTransform_InputRecordTables) SetDeletionPolicy(policy policies.DeletionPolicy) { r._deletionPolicy = policy } diff --git a/cloudformation/resources/aws-glue-mltransform_transformparameters.go b/cloudformation/glue/aws-glue-mltransform_transformparameters.go similarity index 70% rename from cloudformation/resources/aws-glue-mltransform_transformparameters.go rename to cloudformation/glue/aws-glue-mltransform_transformparameters.go index 3e1e6fa4d8..6d9903e148 100644 --- a/cloudformation/resources/aws-glue-mltransform_transformparameters.go +++ b/cloudformation/glue/aws-glue-mltransform_transformparameters.go @@ -1,15 +1,17 @@ -package resources +package glue -import "github.com/awslabs/goformation/v2/cloudformation/policies" +import ( + "github.com/awslabs/goformation/v3/cloudformation/policies" +) -// AWSGlueMLTransform_TransformParameters AWS CloudFormation Resource (AWS::Glue::MLTransform.TransformParameters) +// 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 AWSGlueMLTransform_TransformParameters struct { +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 *AWSGlueMLTransform_FindMatchesParameters `json:"FindMatchesParameters,omitempty"` + FindMatchesParameters *MLTransform_FindMatchesParameters `json:"FindMatchesParameters,omitempty"` // TransformType AWS CloudFormation Property // Required: true @@ -27,42 +29,42 @@ type AWSGlueMLTransform_TransformParameters struct { } // AWSCloudFormationType returns the AWS CloudFormation resource type -func (r *AWSGlueMLTransform_TransformParameters) AWSCloudFormationType() string { +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 *AWSGlueMLTransform_TransformParameters) DependsOn() []string { +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 *AWSGlueMLTransform_TransformParameters) SetDependsOn(dependencies []string) { +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 *AWSGlueMLTransform_TransformParameters) Metadata() map[string]interface{} { +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 *AWSGlueMLTransform_TransformParameters) SetMetadata(metadata map[string]interface{}) { +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 *AWSGlueMLTransform_TransformParameters) DeletionPolicy() policies.DeletionPolicy { +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 *AWSGlueMLTransform_TransformParameters) SetDeletionPolicy(policy policies.DeletionPolicy) { +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/resources/aws-glue-partition_partitioninput.go b/cloudformation/glue/aws-glue-partition_partitioninput.go similarity index 74% rename from cloudformation/resources/aws-glue-partition_partitioninput.go rename to cloudformation/glue/aws-glue-partition_partitioninput.go index 1a094b8dd5..28338425b5 100644 --- a/cloudformation/resources/aws-glue-partition_partitioninput.go +++ b/cloudformation/glue/aws-glue-partition_partitioninput.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_PartitionInput AWS CloudFormation Resource (AWS::Glue::Partition.PartitionInput) +// 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 AWSGluePartition_PartitionInput struct { +type Partition_PartitionInput struct { // Parameters AWS CloudFormation Property // Required: false @@ -14,7 +16,7 @@ type AWSGluePartition_PartitionInput struct { // 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"` + StorageDescriptor *Partition_StorageDescriptor `json:"StorageDescriptor,omitempty"` // Values AWS CloudFormation Property // Required: true @@ -32,42 +34,42 @@ type AWSGluePartition_PartitionInput struct { } // AWSCloudFormationType returns the AWS CloudFormation resource type -func (r *AWSGluePartition_PartitionInput) AWSCloudFormationType() string { +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 *AWSGluePartition_PartitionInput) DependsOn() []string { +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 *AWSGluePartition_PartitionInput) SetDependsOn(dependencies []string) { +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 *AWSGluePartition_PartitionInput) Metadata() map[string]interface{} { +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 *AWSGluePartition_PartitionInput) SetMetadata(metadata map[string]interface{}) { +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 *AWSGluePartition_PartitionInput) DeletionPolicy() policies.DeletionPolicy { +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 *AWSGluePartition_PartitionInput) SetDeletionPolicy(policy policies.DeletionPolicy) { +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/resources/aws-glue-securityconfiguration_cloudwatchencryption.go b/cloudformation/glue/aws-glue-securityconfiguration_cloudwatchencryption.go similarity index 71% rename from cloudformation/resources/aws-glue-securityconfiguration_cloudwatchencryption.go rename to cloudformation/glue/aws-glue-securityconfiguration_cloudwatchencryption.go index 6a6d52e6ae..94c7f6ae5f 100644 --- a/cloudformation/resources/aws-glue-securityconfiguration_cloudwatchencryption.go +++ b/cloudformation/glue/aws-glue-securityconfiguration_cloudwatchencryption.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" +) -// AWSGlueSecurityConfiguration_CloudWatchEncryption AWS CloudFormation Resource (AWS::Glue::SecurityConfiguration.CloudWatchEncryption) +// 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 AWSGlueSecurityConfiguration_CloudWatchEncryption struct { +type SecurityConfiguration_CloudWatchEncryption struct { // CloudWatchEncryptionMode AWS CloudFormation Property // Required: false @@ -27,42 +29,42 @@ type AWSGlueSecurityConfiguration_CloudWatchEncryption struct { } // AWSCloudFormationType returns the AWS CloudFormation resource type -func (r *AWSGlueSecurityConfiguration_CloudWatchEncryption) AWSCloudFormationType() string { +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 *AWSGlueSecurityConfiguration_CloudWatchEncryption) DependsOn() []string { +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 *AWSGlueSecurityConfiguration_CloudWatchEncryption) SetDependsOn(dependencies []string) { +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 *AWSGlueSecurityConfiguration_CloudWatchEncryption) Metadata() map[string]interface{} { +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 *AWSGlueSecurityConfiguration_CloudWatchEncryption) SetMetadata(metadata map[string]interface{}) { +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 *AWSGlueSecurityConfiguration_CloudWatchEncryption) DeletionPolicy() policies.DeletionPolicy { +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 *AWSGlueSecurityConfiguration_CloudWatchEncryption) SetDeletionPolicy(policy policies.DeletionPolicy) { +func (r *SecurityConfiguration_CloudWatchEncryption) SetDeletionPolicy(policy policies.DeletionPolicy) { r._deletionPolicy = policy } diff --git a/cloudformation/resources/aws-glue-securityconfiguration_encryptionconfiguration.go b/cloudformation/glue/aws-glue-securityconfiguration_encryptionconfiguration.go similarity index 66% rename from cloudformation/resources/aws-glue-securityconfiguration_encryptionconfiguration.go rename to cloudformation/glue/aws-glue-securityconfiguration_encryptionconfiguration.go index 4aa220f32d..64aaf68af6 100644 --- a/cloudformation/resources/aws-glue-securityconfiguration_encryptionconfiguration.go +++ b/cloudformation/glue/aws-glue-securityconfiguration_encryptionconfiguration.go @@ -1,25 +1,27 @@ -package resources +package glue -import "github.com/awslabs/goformation/v2/cloudformation/policies" +import ( + "github.com/awslabs/goformation/v3/cloudformation/policies" +) -// AWSGlueSecurityConfiguration_EncryptionConfiguration AWS CloudFormation Resource (AWS::Glue::SecurityConfiguration.EncryptionConfiguration) +// 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 AWSGlueSecurityConfiguration_EncryptionConfiguration struct { +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 *AWSGlueSecurityConfiguration_CloudWatchEncryption `json:"CloudWatchEncryption,omitempty"` + 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 *AWSGlueSecurityConfiguration_JobBookmarksEncryption `json:"JobBookmarksEncryption,omitempty"` + 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 *AWSGlueSecurityConfiguration_S3Encryptions `json:"S3Encryptions,omitempty"` + S3Encryptions *SecurityConfiguration_S3Encryptions `json:"S3Encryptions,omitempty"` // _deletionPolicy represents a CloudFormation DeletionPolicy _deletionPolicy policies.DeletionPolicy @@ -32,42 +34,42 @@ type AWSGlueSecurityConfiguration_EncryptionConfiguration struct { } // AWSCloudFormationType returns the AWS CloudFormation resource type -func (r *AWSGlueSecurityConfiguration_EncryptionConfiguration) AWSCloudFormationType() string { +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 *AWSGlueSecurityConfiguration_EncryptionConfiguration) DependsOn() []string { +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 *AWSGlueSecurityConfiguration_EncryptionConfiguration) SetDependsOn(dependencies []string) { +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 *AWSGlueSecurityConfiguration_EncryptionConfiguration) Metadata() map[string]interface{} { +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 *AWSGlueSecurityConfiguration_EncryptionConfiguration) SetMetadata(metadata map[string]interface{}) { +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 *AWSGlueSecurityConfiguration_EncryptionConfiguration) DeletionPolicy() policies.DeletionPolicy { +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 *AWSGlueSecurityConfiguration_EncryptionConfiguration) SetDeletionPolicy(policy policies.DeletionPolicy) { +func (r *SecurityConfiguration_EncryptionConfiguration) SetDeletionPolicy(policy policies.DeletionPolicy) { r._deletionPolicy = policy } diff --git a/cloudformation/resources/aws-glue-securityconfiguration_jobbookmarksencryption.go b/cloudformation/glue/aws-glue-securityconfiguration_jobbookmarksencryption.go similarity index 71% rename from cloudformation/resources/aws-glue-securityconfiguration_jobbookmarksencryption.go rename to cloudformation/glue/aws-glue-securityconfiguration_jobbookmarksencryption.go index d72b4d2656..8e4cdbed92 100644 --- a/cloudformation/resources/aws-glue-securityconfiguration_jobbookmarksencryption.go +++ b/cloudformation/glue/aws-glue-securityconfiguration_jobbookmarksencryption.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" +) -// AWSGlueSecurityConfiguration_JobBookmarksEncryption AWS CloudFormation Resource (AWS::Glue::SecurityConfiguration.JobBookmarksEncryption) +// 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 AWSGlueSecurityConfiguration_JobBookmarksEncryption struct { +type SecurityConfiguration_JobBookmarksEncryption struct { // JobBookmarksEncryptionMode AWS CloudFormation Property // Required: false @@ -27,42 +29,42 @@ type AWSGlueSecurityConfiguration_JobBookmarksEncryption struct { } // AWSCloudFormationType returns the AWS CloudFormation resource type -func (r *AWSGlueSecurityConfiguration_JobBookmarksEncryption) AWSCloudFormationType() string { +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 *AWSGlueSecurityConfiguration_JobBookmarksEncryption) DependsOn() []string { +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 *AWSGlueSecurityConfiguration_JobBookmarksEncryption) SetDependsOn(dependencies []string) { +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 *AWSGlueSecurityConfiguration_JobBookmarksEncryption) Metadata() map[string]interface{} { +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 *AWSGlueSecurityConfiguration_JobBookmarksEncryption) SetMetadata(metadata map[string]interface{}) { +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 *AWSGlueSecurityConfiguration_JobBookmarksEncryption) DeletionPolicy() policies.DeletionPolicy { +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 *AWSGlueSecurityConfiguration_JobBookmarksEncryption) SetDeletionPolicy(policy policies.DeletionPolicy) { +func (r *SecurityConfiguration_JobBookmarksEncryption) SetDeletionPolicy(policy policies.DeletionPolicy) { r._deletionPolicy = policy } diff --git a/cloudformation/resources/aws-glue-securityconfiguration_s3encryption.go b/cloudformation/glue/aws-glue-securityconfiguration_s3encryption.go similarity index 73% rename from cloudformation/resources/aws-glue-securityconfiguration_s3encryption.go rename to cloudformation/glue/aws-glue-securityconfiguration_s3encryption.go index b2dadd9316..0ed698e467 100644 --- a/cloudformation/resources/aws-glue-securityconfiguration_s3encryption.go +++ b/cloudformation/glue/aws-glue-securityconfiguration_s3encryption.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" +) -// AWSGlueSecurityConfiguration_S3Encryption AWS CloudFormation Resource (AWS::Glue::SecurityConfiguration.S3Encryption) +// 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 AWSGlueSecurityConfiguration_S3Encryption struct { +type SecurityConfiguration_S3Encryption struct { // KmsKeyArn AWS CloudFormation Property // Required: false @@ -27,42 +29,42 @@ type AWSGlueSecurityConfiguration_S3Encryption struct { } // AWSCloudFormationType returns the AWS CloudFormation resource type -func (r *AWSGlueSecurityConfiguration_S3Encryption) AWSCloudFormationType() string { +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 *AWSGlueSecurityConfiguration_S3Encryption) DependsOn() []string { +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 *AWSGlueSecurityConfiguration_S3Encryption) SetDependsOn(dependencies []string) { +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 *AWSGlueSecurityConfiguration_S3Encryption) Metadata() map[string]interface{} { +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 *AWSGlueSecurityConfiguration_S3Encryption) SetMetadata(metadata map[string]interface{}) { +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 *AWSGlueSecurityConfiguration_S3Encryption) DeletionPolicy() policies.DeletionPolicy { +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 *AWSGlueSecurityConfiguration_S3Encryption) SetDeletionPolicy(policy policies.DeletionPolicy) { +func (r *SecurityConfiguration_S3Encryption) SetDeletionPolicy(policy policies.DeletionPolicy) { r._deletionPolicy = policy } diff --git a/cloudformation/resources/aws-glue-securityconfiguration_s3encryptions.go b/cloudformation/glue/aws-glue-securityconfiguration_s3encryptions.go similarity index 66% rename from cloudformation/resources/aws-glue-securityconfiguration_s3encryptions.go rename to cloudformation/glue/aws-glue-securityconfiguration_s3encryptions.go index 4cc71da5c0..d8419ef9e8 100644 --- a/cloudformation/resources/aws-glue-securityconfiguration_s3encryptions.go +++ b/cloudformation/glue/aws-glue-securityconfiguration_s3encryptions.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" +) -// AWSGlueSecurityConfiguration_S3Encryptions AWS CloudFormation Resource (AWS::Glue::SecurityConfiguration.S3Encryptions) +// 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 AWSGlueSecurityConfiguration_S3Encryptions struct { +type SecurityConfiguration_S3Encryptions struct { // _deletionPolicy represents a CloudFormation DeletionPolicy _deletionPolicy policies.DeletionPolicy @@ -17,42 +19,42 @@ type AWSGlueSecurityConfiguration_S3Encryptions struct { } // AWSCloudFormationType returns the AWS CloudFormation resource type -func (r *AWSGlueSecurityConfiguration_S3Encryptions) AWSCloudFormationType() string { +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 *AWSGlueSecurityConfiguration_S3Encryptions) DependsOn() []string { +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 *AWSGlueSecurityConfiguration_S3Encryptions) SetDependsOn(dependencies []string) { +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 *AWSGlueSecurityConfiguration_S3Encryptions) Metadata() map[string]interface{} { +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 *AWSGlueSecurityConfiguration_S3Encryptions) SetMetadata(metadata map[string]interface{}) { +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 *AWSGlueSecurityConfiguration_S3Encryptions) DeletionPolicy() policies.DeletionPolicy { +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 *AWSGlueSecurityConfiguration_S3Encryptions) SetDeletionPolicy(policy policies.DeletionPolicy) { +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/resources/aws-glue-trigger_notificationproperty.go b/cloudformation/glue/aws-glue-trigger_notificationproperty.go similarity index 71% rename from cloudformation/resources/aws-glue-trigger_notificationproperty.go rename to cloudformation/glue/aws-glue-trigger_notificationproperty.go index 9292aaf281..4efcdae5a6 100644 --- a/cloudformation/resources/aws-glue-trigger_notificationproperty.go +++ b/cloudformation/glue/aws-glue-trigger_notificationproperty.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_NotificationProperty AWS CloudFormation Resource (AWS::Glue::Trigger.NotificationProperty) +// 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 AWSGlueTrigger_NotificationProperty struct { +type Trigger_NotificationProperty struct { // NotifyDelayAfter AWS CloudFormation Property // Required: false @@ -22,42 +24,42 @@ type AWSGlueTrigger_NotificationProperty struct { } // AWSCloudFormationType returns the AWS CloudFormation resource type -func (r *AWSGlueTrigger_NotificationProperty) AWSCloudFormationType() string { +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 *AWSGlueTrigger_NotificationProperty) DependsOn() []string { +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 *AWSGlueTrigger_NotificationProperty) SetDependsOn(dependencies []string) { +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 *AWSGlueTrigger_NotificationProperty) Metadata() map[string]interface{} { +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 *AWSGlueTrigger_NotificationProperty) SetMetadata(metadata map[string]interface{}) { +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 *AWSGlueTrigger_NotificationProperty) DeletionPolicy() policies.DeletionPolicy { +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 *AWSGlueTrigger_NotificationProperty) SetDeletionPolicy(policy policies.DeletionPolicy) { +func (r *Trigger_NotificationProperty) SetDeletionPolicy(policy policies.DeletionPolicy) { r._deletionPolicy = policy } diff --git a/cloudformation/resources/aws-glue-trigger_predicate.go b/cloudformation/glue/aws-glue-trigger_predicate.go similarity index 73% rename from cloudformation/resources/aws-glue-trigger_predicate.go rename to cloudformation/glue/aws-glue-trigger_predicate.go index 96a2c20403..9a95f8c637 100644 --- a/cloudformation/resources/aws-glue-trigger_predicate.go +++ b/cloudformation/glue/aws-glue-trigger_predicate.go @@ -1,15 +1,17 @@ -package resources +package glue -import "github.com/awslabs/goformation/v2/cloudformation/policies" +import ( + "github.com/awslabs/goformation/v3/cloudformation/policies" +) -// AWSGlueTrigger_Predicate AWS CloudFormation Resource (AWS::Glue::Trigger.Predicate) +// 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 AWSGlueTrigger_Predicate struct { +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 []AWSGlueTrigger_Condition `json:"Conditions,omitempty"` + Conditions []Trigger_Condition `json:"Conditions,omitempty"` // Logical AWS CloudFormation Property // Required: false @@ -27,42 +29,42 @@ type AWSGlueTrigger_Predicate struct { } // AWSCloudFormationType returns the AWS CloudFormation resource type -func (r *AWSGlueTrigger_Predicate) AWSCloudFormationType() string { +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 *AWSGlueTrigger_Predicate) DependsOn() []string { +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 *AWSGlueTrigger_Predicate) SetDependsOn(dependencies []string) { +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 *AWSGlueTrigger_Predicate) Metadata() map[string]interface{} { +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 *AWSGlueTrigger_Predicate) SetMetadata(metadata map[string]interface{}) { +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 *AWSGlueTrigger_Predicate) DeletionPolicy() policies.DeletionPolicy { +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 *AWSGlueTrigger_Predicate) SetDeletionPolicy(policy policies.DeletionPolicy) { +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/resources/aws-greengrass-connectordefinition_connector.go b/cloudformation/greengrass/aws-greengrass-connectordefinition_connector.go similarity index 74% rename from cloudformation/resources/aws-greengrass-connectordefinition_connector.go rename to cloudformation/greengrass/aws-greengrass-connectordefinition_connector.go index 3bea236bfb..101c4a6bd0 100644 --- a/cloudformation/resources/aws-greengrass-connectordefinition_connector.go +++ b/cloudformation/greengrass/aws-greengrass-connectordefinition_connector.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" +) -// AWSGreengrassConnectorDefinition_Connector AWS CloudFormation Resource (AWS::Greengrass::ConnectorDefinition.Connector) +// 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 AWSGreengrassConnectorDefinition_Connector struct { +type ConnectorDefinition_Connector struct { // ConnectorArn AWS CloudFormation Property // Required: true @@ -32,42 +34,42 @@ type AWSGreengrassConnectorDefinition_Connector struct { } // AWSCloudFormationType returns the AWS CloudFormation resource type -func (r *AWSGreengrassConnectorDefinition_Connector) AWSCloudFormationType() string { +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 *AWSGreengrassConnectorDefinition_Connector) DependsOn() []string { +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 *AWSGreengrassConnectorDefinition_Connector) SetDependsOn(dependencies []string) { +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 *AWSGreengrassConnectorDefinition_Connector) Metadata() map[string]interface{} { +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 *AWSGreengrassConnectorDefinition_Connector) SetMetadata(metadata map[string]interface{}) { +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 *AWSGreengrassConnectorDefinition_Connector) DeletionPolicy() policies.DeletionPolicy { +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 *AWSGreengrassConnectorDefinition_Connector) SetDeletionPolicy(policy policies.DeletionPolicy) { +func (r *ConnectorDefinition_Connector) SetDeletionPolicy(policy policies.DeletionPolicy) { r._deletionPolicy = policy } diff --git a/cloudformation/resources/aws-greengrass-connectordefinition_connectordefinitionversion.go b/cloudformation/greengrass/aws-greengrass-connectordefinition_connectordefinitionversion.go similarity index 64% rename from cloudformation/resources/aws-greengrass-connectordefinition_connectordefinitionversion.go rename to cloudformation/greengrass/aws-greengrass-connectordefinition_connectordefinitionversion.go index 89c63b1f6c..bcf5f61551 100644 --- a/cloudformation/resources/aws-greengrass-connectordefinition_connectordefinitionversion.go +++ b/cloudformation/greengrass/aws-greengrass-connectordefinition_connectordefinitionversion.go @@ -1,15 +1,17 @@ -package resources +package greengrass -import "github.com/awslabs/goformation/v2/cloudformation/policies" +import ( + "github.com/awslabs/goformation/v3/cloudformation/policies" +) -// AWSGreengrassConnectorDefinition_ConnectorDefinitionVersion AWS CloudFormation Resource (AWS::Greengrass::ConnectorDefinition.ConnectorDefinitionVersion) +// 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 AWSGreengrassConnectorDefinition_ConnectorDefinitionVersion struct { +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 []AWSGreengrassConnectorDefinition_Connector `json:"Connectors,omitempty"` + Connectors []ConnectorDefinition_Connector `json:"Connectors,omitempty"` // _deletionPolicy represents a CloudFormation DeletionPolicy _deletionPolicy policies.DeletionPolicy @@ -22,42 +24,42 @@ type AWSGreengrassConnectorDefinition_ConnectorDefinitionVersion struct { } // AWSCloudFormationType returns the AWS CloudFormation resource type -func (r *AWSGreengrassConnectorDefinition_ConnectorDefinitionVersion) AWSCloudFormationType() string { +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 *AWSGreengrassConnectorDefinition_ConnectorDefinitionVersion) DependsOn() []string { +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 *AWSGreengrassConnectorDefinition_ConnectorDefinitionVersion) SetDependsOn(dependencies []string) { +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 *AWSGreengrassConnectorDefinition_ConnectorDefinitionVersion) Metadata() map[string]interface{} { +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 *AWSGreengrassConnectorDefinition_ConnectorDefinitionVersion) SetMetadata(metadata map[string]interface{}) { +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 *AWSGreengrassConnectorDefinition_ConnectorDefinitionVersion) DeletionPolicy() policies.DeletionPolicy { +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 *AWSGreengrassConnectorDefinition_ConnectorDefinitionVersion) SetDeletionPolicy(policy policies.DeletionPolicy) { +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/resources/aws-greengrass-connectordefinitionversion_connector.go b/cloudformation/greengrass/aws-greengrass-connectordefinitionversion_connector.go similarity index 73% rename from cloudformation/resources/aws-greengrass-connectordefinitionversion_connector.go rename to cloudformation/greengrass/aws-greengrass-connectordefinitionversion_connector.go index 232c49f931..63a0923e22 100644 --- a/cloudformation/resources/aws-greengrass-connectordefinitionversion_connector.go +++ b/cloudformation/greengrass/aws-greengrass-connectordefinitionversion_connector.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" +) -// AWSGreengrassConnectorDefinitionVersion_Connector AWS CloudFormation Resource (AWS::Greengrass::ConnectorDefinitionVersion.Connector) +// 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 AWSGreengrassConnectorDefinitionVersion_Connector struct { +type ConnectorDefinitionVersion_Connector struct { // ConnectorArn AWS CloudFormation Property // Required: true @@ -32,42 +34,42 @@ type AWSGreengrassConnectorDefinitionVersion_Connector struct { } // AWSCloudFormationType returns the AWS CloudFormation resource type -func (r *AWSGreengrassConnectorDefinitionVersion_Connector) AWSCloudFormationType() string { +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 *AWSGreengrassConnectorDefinitionVersion_Connector) DependsOn() []string { +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 *AWSGreengrassConnectorDefinitionVersion_Connector) SetDependsOn(dependencies []string) { +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 *AWSGreengrassConnectorDefinitionVersion_Connector) Metadata() map[string]interface{} { +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 *AWSGreengrassConnectorDefinitionVersion_Connector) SetMetadata(metadata map[string]interface{}) { +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 *AWSGreengrassConnectorDefinitionVersion_Connector) DeletionPolicy() policies.DeletionPolicy { +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 *AWSGreengrassConnectorDefinitionVersion_Connector) SetDeletionPolicy(policy policies.DeletionPolicy) { +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/resources/aws-greengrass-coredefinition_coredefinitionversion.go b/cloudformation/greengrass/aws-greengrass-coredefinition_coredefinitionversion.go similarity index 66% rename from cloudformation/resources/aws-greengrass-coredefinition_coredefinitionversion.go rename to cloudformation/greengrass/aws-greengrass-coredefinition_coredefinitionversion.go index 4c5ad8bf36..bf59a59095 100644 --- a/cloudformation/resources/aws-greengrass-coredefinition_coredefinitionversion.go +++ b/cloudformation/greengrass/aws-greengrass-coredefinition_coredefinitionversion.go @@ -1,15 +1,17 @@ -package resources +package greengrass -import "github.com/awslabs/goformation/v2/cloudformation/policies" +import ( + "github.com/awslabs/goformation/v3/cloudformation/policies" +) -// AWSGreengrassCoreDefinition_CoreDefinitionVersion AWS CloudFormation Resource (AWS::Greengrass::CoreDefinition.CoreDefinitionVersion) +// 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 AWSGreengrassCoreDefinition_CoreDefinitionVersion struct { +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 []AWSGreengrassCoreDefinition_Core `json:"Cores,omitempty"` + Cores []CoreDefinition_Core `json:"Cores,omitempty"` // _deletionPolicy represents a CloudFormation DeletionPolicy _deletionPolicy policies.DeletionPolicy @@ -22,42 +24,42 @@ type AWSGreengrassCoreDefinition_CoreDefinitionVersion struct { } // AWSCloudFormationType returns the AWS CloudFormation resource type -func (r *AWSGreengrassCoreDefinition_CoreDefinitionVersion) AWSCloudFormationType() string { +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 *AWSGreengrassCoreDefinition_CoreDefinitionVersion) DependsOn() []string { +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 *AWSGreengrassCoreDefinition_CoreDefinitionVersion) SetDependsOn(dependencies []string) { +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 *AWSGreengrassCoreDefinition_CoreDefinitionVersion) Metadata() map[string]interface{} { +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 *AWSGreengrassCoreDefinition_CoreDefinitionVersion) SetMetadata(metadata map[string]interface{}) { +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 *AWSGreengrassCoreDefinition_CoreDefinitionVersion) DeletionPolicy() policies.DeletionPolicy { +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 *AWSGreengrassCoreDefinition_CoreDefinitionVersion) SetDeletionPolicy(policy policies.DeletionPolicy) { +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/resources/aws-greengrass-devicedefinition_devicedefinitionversion.go b/cloudformation/greengrass/aws-greengrass-devicedefinition_devicedefinitionversion.go similarity index 65% rename from cloudformation/resources/aws-greengrass-devicedefinition_devicedefinitionversion.go rename to cloudformation/greengrass/aws-greengrass-devicedefinition_devicedefinitionversion.go index 9815d0dff4..1f28c05b93 100644 --- a/cloudformation/resources/aws-greengrass-devicedefinition_devicedefinitionversion.go +++ b/cloudformation/greengrass/aws-greengrass-devicedefinition_devicedefinitionversion.go @@ -1,15 +1,17 @@ -package resources +package greengrass -import "github.com/awslabs/goformation/v2/cloudformation/policies" +import ( + "github.com/awslabs/goformation/v3/cloudformation/policies" +) -// AWSGreengrassDeviceDefinition_DeviceDefinitionVersion AWS CloudFormation Resource (AWS::Greengrass::DeviceDefinition.DeviceDefinitionVersion) +// 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 AWSGreengrassDeviceDefinition_DeviceDefinitionVersion struct { +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 []AWSGreengrassDeviceDefinition_Device `json:"Devices,omitempty"` + Devices []DeviceDefinition_Device `json:"Devices,omitempty"` // _deletionPolicy represents a CloudFormation DeletionPolicy _deletionPolicy policies.DeletionPolicy @@ -22,42 +24,42 @@ type AWSGreengrassDeviceDefinition_DeviceDefinitionVersion struct { } // AWSCloudFormationType returns the AWS CloudFormation resource type -func (r *AWSGreengrassDeviceDefinition_DeviceDefinitionVersion) AWSCloudFormationType() string { +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 *AWSGreengrassDeviceDefinition_DeviceDefinitionVersion) DependsOn() []string { +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 *AWSGreengrassDeviceDefinition_DeviceDefinitionVersion) SetDependsOn(dependencies []string) { +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 *AWSGreengrassDeviceDefinition_DeviceDefinitionVersion) Metadata() map[string]interface{} { +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 *AWSGreengrassDeviceDefinition_DeviceDefinitionVersion) SetMetadata(metadata map[string]interface{}) { +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 *AWSGreengrassDeviceDefinition_DeviceDefinitionVersion) DeletionPolicy() policies.DeletionPolicy { +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 *AWSGreengrassDeviceDefinition_DeviceDefinitionVersion) SetDeletionPolicy(policy policies.DeletionPolicy) { +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/resources/aws-greengrass-functiondefinition_defaultconfig.go b/cloudformation/greengrass/aws-greengrass-functiondefinition_defaultconfig.go similarity index 67% rename from cloudformation/resources/aws-greengrass-functiondefinition_defaultconfig.go rename to cloudformation/greengrass/aws-greengrass-functiondefinition_defaultconfig.go index 02d3ea285b..700f686e87 100644 --- a/cloudformation/resources/aws-greengrass-functiondefinition_defaultconfig.go +++ b/cloudformation/greengrass/aws-greengrass-functiondefinition_defaultconfig.go @@ -1,15 +1,17 @@ -package resources +package greengrass -import "github.com/awslabs/goformation/v2/cloudformation/policies" +import ( + "github.com/awslabs/goformation/v3/cloudformation/policies" +) -// AWSGreengrassFunctionDefinition_DefaultConfig AWS CloudFormation Resource (AWS::Greengrass::FunctionDefinition.DefaultConfig) +// 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 AWSGreengrassFunctionDefinition_DefaultConfig struct { +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 *AWSGreengrassFunctionDefinition_Execution `json:"Execution,omitempty"` + Execution *FunctionDefinition_Execution `json:"Execution,omitempty"` // _deletionPolicy represents a CloudFormation DeletionPolicy _deletionPolicy policies.DeletionPolicy @@ -22,42 +24,42 @@ type AWSGreengrassFunctionDefinition_DefaultConfig struct { } // AWSCloudFormationType returns the AWS CloudFormation resource type -func (r *AWSGreengrassFunctionDefinition_DefaultConfig) AWSCloudFormationType() string { +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 *AWSGreengrassFunctionDefinition_DefaultConfig) DependsOn() []string { +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 *AWSGreengrassFunctionDefinition_DefaultConfig) SetDependsOn(dependencies []string) { +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 *AWSGreengrassFunctionDefinition_DefaultConfig) Metadata() map[string]interface{} { +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 *AWSGreengrassFunctionDefinition_DefaultConfig) SetMetadata(metadata map[string]interface{}) { +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 *AWSGreengrassFunctionDefinition_DefaultConfig) DeletionPolicy() policies.DeletionPolicy { +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 *AWSGreengrassFunctionDefinition_DefaultConfig) SetDeletionPolicy(policy policies.DeletionPolicy) { +func (r *FunctionDefinition_DefaultConfig) SetDeletionPolicy(policy policies.DeletionPolicy) { r._deletionPolicy = policy } diff --git a/cloudformation/resources/aws-greengrass-functiondefinition_environment.go b/cloudformation/greengrass/aws-greengrass-functiondefinition_environment.go similarity index 72% rename from cloudformation/resources/aws-greengrass-functiondefinition_environment.go rename to cloudformation/greengrass/aws-greengrass-functiondefinition_environment.go index e9b18c0898..d5cecc8a51 100644 --- a/cloudformation/resources/aws-greengrass-functiondefinition_environment.go +++ b/cloudformation/greengrass/aws-greengrass-functiondefinition_environment.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_Environment AWS CloudFormation Resource (AWS::Greengrass::FunctionDefinition.Environment) +// 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 AWSGreengrassFunctionDefinition_Environment struct { +type FunctionDefinition_Environment struct { // AccessSysfs AWS CloudFormation Property // Required: false @@ -14,12 +16,12 @@ type AWSGreengrassFunctionDefinition_Environment struct { // 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"` + 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 []AWSGreengrassFunctionDefinition_ResourceAccessPolicy `json:"ResourceAccessPolicies,omitempty"` + ResourceAccessPolicies []FunctionDefinition_ResourceAccessPolicy `json:"ResourceAccessPolicies,omitempty"` // Variables AWS CloudFormation Property // Required: false @@ -37,42 +39,42 @@ type AWSGreengrassFunctionDefinition_Environment struct { } // AWSCloudFormationType returns the AWS CloudFormation resource type -func (r *AWSGreengrassFunctionDefinition_Environment) AWSCloudFormationType() string { +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 *AWSGreengrassFunctionDefinition_Environment) DependsOn() []string { +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 *AWSGreengrassFunctionDefinition_Environment) SetDependsOn(dependencies []string) { +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 *AWSGreengrassFunctionDefinition_Environment) Metadata() map[string]interface{} { +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 *AWSGreengrassFunctionDefinition_Environment) SetMetadata(metadata map[string]interface{}) { +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 *AWSGreengrassFunctionDefinition_Environment) DeletionPolicy() policies.DeletionPolicy { +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 *AWSGreengrassFunctionDefinition_Environment) SetDeletionPolicy(policy policies.DeletionPolicy) { +func (r *FunctionDefinition_Environment) SetDeletionPolicy(policy policies.DeletionPolicy) { r._deletionPolicy = policy } diff --git a/cloudformation/resources/aws-greengrass-functiondefinition_execution.go b/cloudformation/greengrass/aws-greengrass-functiondefinition_execution.go similarity index 70% rename from cloudformation/resources/aws-greengrass-functiondefinition_execution.go rename to cloudformation/greengrass/aws-greengrass-functiondefinition_execution.go index 5ea586bd24..710282a382 100644 --- a/cloudformation/resources/aws-greengrass-functiondefinition_execution.go +++ b/cloudformation/greengrass/aws-greengrass-functiondefinition_execution.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_Execution AWS CloudFormation Resource (AWS::Greengrass::FunctionDefinition.Execution) +// 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 AWSGreengrassFunctionDefinition_Execution struct { +type FunctionDefinition_Execution struct { // IsolationMode AWS CloudFormation Property // Required: false @@ -14,7 +16,7 @@ type AWSGreengrassFunctionDefinition_Execution struct { // 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"` + RunAs *FunctionDefinition_RunAs `json:"RunAs,omitempty"` // _deletionPolicy represents a CloudFormation DeletionPolicy _deletionPolicy policies.DeletionPolicy @@ -27,42 +29,42 @@ type AWSGreengrassFunctionDefinition_Execution struct { } // AWSCloudFormationType returns the AWS CloudFormation resource type -func (r *AWSGreengrassFunctionDefinition_Execution) AWSCloudFormationType() string { +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 *AWSGreengrassFunctionDefinition_Execution) DependsOn() []string { +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 *AWSGreengrassFunctionDefinition_Execution) SetDependsOn(dependencies []string) { +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 *AWSGreengrassFunctionDefinition_Execution) Metadata() map[string]interface{} { +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 *AWSGreengrassFunctionDefinition_Execution) SetMetadata(metadata map[string]interface{}) { +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 *AWSGreengrassFunctionDefinition_Execution) DeletionPolicy() policies.DeletionPolicy { +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 *AWSGreengrassFunctionDefinition_Execution) SetDeletionPolicy(policy policies.DeletionPolicy) { +func (r *FunctionDefinition_Execution) SetDeletionPolicy(policy policies.DeletionPolicy) { r._deletionPolicy = policy } diff --git a/cloudformation/resources/aws-greengrass-functiondefinition_function.go b/cloudformation/greengrass/aws-greengrass-functiondefinition_function.go similarity index 72% rename from cloudformation/resources/aws-greengrass-functiondefinition_function.go rename to cloudformation/greengrass/aws-greengrass-functiondefinition_function.go index cc6b960e30..e04bb63780 100644 --- a/cloudformation/resources/aws-greengrass-functiondefinition_function.go +++ b/cloudformation/greengrass/aws-greengrass-functiondefinition_function.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_Function AWS CloudFormation Resource (AWS::Greengrass::FunctionDefinition.Function) +// 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 AWSGreengrassFunctionDefinition_Function struct { +type FunctionDefinition_Function struct { // FunctionArn AWS CloudFormation Property // Required: true @@ -14,7 +16,7 @@ type AWSGreengrassFunctionDefinition_Function struct { // 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"` + FunctionConfiguration *FunctionDefinition_FunctionConfiguration `json:"FunctionConfiguration,omitempty"` // Id AWS CloudFormation Property // Required: true @@ -32,42 +34,42 @@ type AWSGreengrassFunctionDefinition_Function struct { } // AWSCloudFormationType returns the AWS CloudFormation resource type -func (r *AWSGreengrassFunctionDefinition_Function) AWSCloudFormationType() string { +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 *AWSGreengrassFunctionDefinition_Function) DependsOn() []string { +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 *AWSGreengrassFunctionDefinition_Function) SetDependsOn(dependencies []string) { +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 *AWSGreengrassFunctionDefinition_Function) Metadata() map[string]interface{} { +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 *AWSGreengrassFunctionDefinition_Function) SetMetadata(metadata map[string]interface{}) { +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 *AWSGreengrassFunctionDefinition_Function) DeletionPolicy() policies.DeletionPolicy { +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 *AWSGreengrassFunctionDefinition_Function) SetDeletionPolicy(policy policies.DeletionPolicy) { +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/resources/aws-greengrass-functiondefinition_functiondefinitionversion.go b/cloudformation/greengrass/aws-greengrass-functiondefinition_functiondefinitionversion.go similarity index 66% rename from cloudformation/resources/aws-greengrass-functiondefinition_functiondefinitionversion.go rename to cloudformation/greengrass/aws-greengrass-functiondefinition_functiondefinitionversion.go index 1264bc2ee1..6f9a594033 100644 --- a/cloudformation/resources/aws-greengrass-functiondefinition_functiondefinitionversion.go +++ b/cloudformation/greengrass/aws-greengrass-functiondefinition_functiondefinitionversion.go @@ -1,20 +1,22 @@ -package resources +package greengrass -import "github.com/awslabs/goformation/v2/cloudformation/policies" +import ( + "github.com/awslabs/goformation/v3/cloudformation/policies" +) -// AWSGreengrassFunctionDefinition_FunctionDefinitionVersion AWS CloudFormation Resource (AWS::Greengrass::FunctionDefinition.FunctionDefinitionVersion) +// 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 AWSGreengrassFunctionDefinition_FunctionDefinitionVersion struct { +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 *AWSGreengrassFunctionDefinition_DefaultConfig `json:"DefaultConfig,omitempty"` + 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 []AWSGreengrassFunctionDefinition_Function `json:"Functions,omitempty"` + Functions []FunctionDefinition_Function `json:"Functions,omitempty"` // _deletionPolicy represents a CloudFormation DeletionPolicy _deletionPolicy policies.DeletionPolicy @@ -27,42 +29,42 @@ type AWSGreengrassFunctionDefinition_FunctionDefinitionVersion struct { } // AWSCloudFormationType returns the AWS CloudFormation resource type -func (r *AWSGreengrassFunctionDefinition_FunctionDefinitionVersion) AWSCloudFormationType() string { +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 *AWSGreengrassFunctionDefinition_FunctionDefinitionVersion) DependsOn() []string { +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 *AWSGreengrassFunctionDefinition_FunctionDefinitionVersion) SetDependsOn(dependencies []string) { +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 *AWSGreengrassFunctionDefinition_FunctionDefinitionVersion) Metadata() map[string]interface{} { +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 *AWSGreengrassFunctionDefinition_FunctionDefinitionVersion) SetMetadata(metadata map[string]interface{}) { +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 *AWSGreengrassFunctionDefinition_FunctionDefinitionVersion) DeletionPolicy() policies.DeletionPolicy { +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 *AWSGreengrassFunctionDefinition_FunctionDefinitionVersion) SetDeletionPolicy(policy policies.DeletionPolicy) { +func (r *FunctionDefinition_FunctionDefinitionVersion) SetDeletionPolicy(policy policies.DeletionPolicy) { r._deletionPolicy = policy } diff --git a/cloudformation/resources/aws-greengrass-functiondefinition_resourceaccesspolicy.go b/cloudformation/greengrass/aws-greengrass-functiondefinition_resourceaccesspolicy.go similarity index 71% rename from cloudformation/resources/aws-greengrass-functiondefinition_resourceaccesspolicy.go rename to cloudformation/greengrass/aws-greengrass-functiondefinition_resourceaccesspolicy.go index 14b4c3d900..47738e5497 100644 --- a/cloudformation/resources/aws-greengrass-functiondefinition_resourceaccesspolicy.go +++ b/cloudformation/greengrass/aws-greengrass-functiondefinition_resourceaccesspolicy.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_ResourceAccessPolicy AWS CloudFormation Resource (AWS::Greengrass::FunctionDefinition.ResourceAccessPolicy) +// 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 AWSGreengrassFunctionDefinition_ResourceAccessPolicy struct { +type FunctionDefinition_ResourceAccessPolicy struct { // Permission AWS CloudFormation Property // Required: false @@ -27,42 +29,42 @@ type AWSGreengrassFunctionDefinition_ResourceAccessPolicy struct { } // AWSCloudFormationType returns the AWS CloudFormation resource type -func (r *AWSGreengrassFunctionDefinition_ResourceAccessPolicy) AWSCloudFormationType() string { +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 *AWSGreengrassFunctionDefinition_ResourceAccessPolicy) DependsOn() []string { +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 *AWSGreengrassFunctionDefinition_ResourceAccessPolicy) SetDependsOn(dependencies []string) { +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 *AWSGreengrassFunctionDefinition_ResourceAccessPolicy) Metadata() map[string]interface{} { +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 *AWSGreengrassFunctionDefinition_ResourceAccessPolicy) SetMetadata(metadata map[string]interface{}) { +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 *AWSGreengrassFunctionDefinition_ResourceAccessPolicy) DeletionPolicy() policies.DeletionPolicy { +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 *AWSGreengrassFunctionDefinition_ResourceAccessPolicy) SetDeletionPolicy(policy policies.DeletionPolicy) { +func (r *FunctionDefinition_ResourceAccessPolicy) SetDeletionPolicy(policy policies.DeletionPolicy) { r._deletionPolicy = policy } diff --git a/cloudformation/resources/aws-greengrass-functiondefinition_runas.go b/cloudformation/greengrass/aws-greengrass-functiondefinition_runas.go similarity index 73% rename from cloudformation/resources/aws-greengrass-functiondefinition_runas.go rename to cloudformation/greengrass/aws-greengrass-functiondefinition_runas.go index 322c84930b..3ff0b7b854 100644 --- a/cloudformation/resources/aws-greengrass-functiondefinition_runas.go +++ b/cloudformation/greengrass/aws-greengrass-functiondefinition_runas.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_RunAs AWS CloudFormation Resource (AWS::Greengrass::FunctionDefinition.RunAs) +// 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 AWSGreengrassFunctionDefinition_RunAs struct { +type FunctionDefinition_RunAs struct { // Gid AWS CloudFormation Property // Required: false @@ -27,42 +29,42 @@ type AWSGreengrassFunctionDefinition_RunAs struct { } // AWSCloudFormationType returns the AWS CloudFormation resource type -func (r *AWSGreengrassFunctionDefinition_RunAs) AWSCloudFormationType() string { +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 *AWSGreengrassFunctionDefinition_RunAs) DependsOn() []string { +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 *AWSGreengrassFunctionDefinition_RunAs) SetDependsOn(dependencies []string) { +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 *AWSGreengrassFunctionDefinition_RunAs) Metadata() map[string]interface{} { +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 *AWSGreengrassFunctionDefinition_RunAs) SetMetadata(metadata map[string]interface{}) { +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 *AWSGreengrassFunctionDefinition_RunAs) DeletionPolicy() policies.DeletionPolicy { +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 *AWSGreengrassFunctionDefinition_RunAs) SetDeletionPolicy(policy policies.DeletionPolicy) { +func (r *FunctionDefinition_RunAs) SetDeletionPolicy(policy policies.DeletionPolicy) { r._deletionPolicy = policy } diff --git a/cloudformation/resources/aws-greengrass-functiondefinitionversion.go b/cloudformation/greengrass/aws-greengrass-functiondefinitionversion.go similarity index 74% rename from cloudformation/resources/aws-greengrass-functiondefinitionversion.go rename to cloudformation/greengrass/aws-greengrass-functiondefinitionversion.go index f7487f0e8f..7af7a61f5a 100644 --- a/cloudformation/resources/aws-greengrass-functiondefinitionversion.go +++ b/cloudformation/greengrass/aws-greengrass-functiondefinitionversion.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" ) -// AWSGreengrassFunctionDefinitionVersion AWS CloudFormation Resource (AWS::Greengrass::FunctionDefinitionVersion) +// FunctionDefinitionVersion AWS CloudFormation Resource (AWS::Greengrass::FunctionDefinitionVersion) // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-greengrass-functiondefinitionversion.html -type AWSGreengrassFunctionDefinitionVersion struct { +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 *AWSGreengrassFunctionDefinitionVersion_DefaultConfig `json:"DefaultConfig,omitempty"` + DefaultConfig *FunctionDefinitionVersion_DefaultConfig `json:"DefaultConfig,omitempty"` // FunctionDefinitionId AWS CloudFormation Property // Required: true @@ -24,7 +25,7 @@ type AWSGreengrassFunctionDefinitionVersion struct { // 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"` + Functions []FunctionDefinitionVersion_Function `json:"Functions,omitempty"` // _deletionPolicy represents a CloudFormation DeletionPolicy _deletionPolicy policies.DeletionPolicy @@ -37,50 +38,50 @@ type AWSGreengrassFunctionDefinitionVersion struct { } // AWSCloudFormationType returns the AWS CloudFormation resource type -func (r *AWSGreengrassFunctionDefinitionVersion) AWSCloudFormationType() string { +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 *AWSGreengrassFunctionDefinitionVersion) DependsOn() []string { +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 *AWSGreengrassFunctionDefinitionVersion) SetDependsOn(dependencies []string) { +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 *AWSGreengrassFunctionDefinitionVersion) Metadata() map[string]interface{} { +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 *AWSGreengrassFunctionDefinitionVersion) SetMetadata(metadata map[string]interface{}) { +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 *AWSGreengrassFunctionDefinitionVersion) DeletionPolicy() policies.DeletionPolicy { +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 *AWSGreengrassFunctionDefinitionVersion) SetDeletionPolicy(policy policies.DeletionPolicy) { +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 AWSGreengrassFunctionDefinitionVersion) MarshalJSON() ([]byte, error) { - type Properties AWSGreengrassFunctionDefinitionVersion +func (r FunctionDefinitionVersion) MarshalJSON() ([]byte, error) { + type Properties FunctionDefinitionVersion return json.Marshal(&struct { Type string Properties Properties @@ -98,8 +99,8 @@ func (r AWSGreengrassFunctionDefinitionVersion) MarshalJSON() ([]byte, error) { // 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 +func (r *FunctionDefinitionVersion) UnmarshalJSON(b []byte) error { + type Properties FunctionDefinitionVersion res := &struct { Type string Properties *Properties @@ -118,7 +119,7 @@ func (r *AWSGreengrassFunctionDefinitionVersion) UnmarshalJSON(b []byte) error { // If the resource has no Properties set, it could be nil if res.Properties != nil { - *r = AWSGreengrassFunctionDefinitionVersion(*res.Properties) + *r = FunctionDefinitionVersion(*res.Properties) } if res.DependsOn != nil { r._dependsOn = res.DependsOn diff --git a/cloudformation/resources/aws-greengrass-functiondefinitionversion_defaultconfig.go b/cloudformation/greengrass/aws-greengrass-functiondefinitionversion_defaultconfig.go similarity index 65% rename from cloudformation/resources/aws-greengrass-functiondefinitionversion_defaultconfig.go rename to cloudformation/greengrass/aws-greengrass-functiondefinitionversion_defaultconfig.go index 172ac88466..fd0c1db590 100644 --- a/cloudformation/resources/aws-greengrass-functiondefinitionversion_defaultconfig.go +++ b/cloudformation/greengrass/aws-greengrass-functiondefinitionversion_defaultconfig.go @@ -1,15 +1,17 @@ -package resources +package greengrass -import "github.com/awslabs/goformation/v2/cloudformation/policies" +import ( + "github.com/awslabs/goformation/v3/cloudformation/policies" +) -// AWSGreengrassFunctionDefinitionVersion_DefaultConfig AWS CloudFormation Resource (AWS::Greengrass::FunctionDefinitionVersion.DefaultConfig) +// 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 AWSGreengrassFunctionDefinitionVersion_DefaultConfig struct { +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 *AWSGreengrassFunctionDefinitionVersion_Execution `json:"Execution,omitempty"` + Execution *FunctionDefinitionVersion_Execution `json:"Execution,omitempty"` // _deletionPolicy represents a CloudFormation DeletionPolicy _deletionPolicy policies.DeletionPolicy @@ -22,42 +24,42 @@ type AWSGreengrassFunctionDefinitionVersion_DefaultConfig struct { } // AWSCloudFormationType returns the AWS CloudFormation resource type -func (r *AWSGreengrassFunctionDefinitionVersion_DefaultConfig) AWSCloudFormationType() string { +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 *AWSGreengrassFunctionDefinitionVersion_DefaultConfig) DependsOn() []string { +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 *AWSGreengrassFunctionDefinitionVersion_DefaultConfig) SetDependsOn(dependencies []string) { +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 *AWSGreengrassFunctionDefinitionVersion_DefaultConfig) Metadata() map[string]interface{} { +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 *AWSGreengrassFunctionDefinitionVersion_DefaultConfig) SetMetadata(metadata map[string]interface{}) { +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 *AWSGreengrassFunctionDefinitionVersion_DefaultConfig) DeletionPolicy() policies.DeletionPolicy { +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 *AWSGreengrassFunctionDefinitionVersion_DefaultConfig) SetDeletionPolicy(policy policies.DeletionPolicy) { +func (r *FunctionDefinitionVersion_DefaultConfig) SetDeletionPolicy(policy policies.DeletionPolicy) { r._deletionPolicy = policy } diff --git a/cloudformation/resources/aws-greengrass-functiondefinitionversion_environment.go b/cloudformation/greengrass/aws-greengrass-functiondefinitionversion_environment.go similarity index 71% rename from cloudformation/resources/aws-greengrass-functiondefinitionversion_environment.go rename to cloudformation/greengrass/aws-greengrass-functiondefinitionversion_environment.go index bdf52d2917..a6f20002b2 100644 --- a/cloudformation/resources/aws-greengrass-functiondefinitionversion_environment.go +++ b/cloudformation/greengrass/aws-greengrass-functiondefinitionversion_environment.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_Environment AWS CloudFormation Resource (AWS::Greengrass::FunctionDefinitionVersion.Environment) +// 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 AWSGreengrassFunctionDefinitionVersion_Environment struct { +type FunctionDefinitionVersion_Environment struct { // AccessSysfs AWS CloudFormation Property // Required: false @@ -14,12 +16,12 @@ type AWSGreengrassFunctionDefinitionVersion_Environment struct { // 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"` + 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 []AWSGreengrassFunctionDefinitionVersion_ResourceAccessPolicy `json:"ResourceAccessPolicies,omitempty"` + ResourceAccessPolicies []FunctionDefinitionVersion_ResourceAccessPolicy `json:"ResourceAccessPolicies,omitempty"` // Variables AWS CloudFormation Property // Required: false @@ -37,42 +39,42 @@ type AWSGreengrassFunctionDefinitionVersion_Environment struct { } // AWSCloudFormationType returns the AWS CloudFormation resource type -func (r *AWSGreengrassFunctionDefinitionVersion_Environment) AWSCloudFormationType() string { +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 *AWSGreengrassFunctionDefinitionVersion_Environment) DependsOn() []string { +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 *AWSGreengrassFunctionDefinitionVersion_Environment) SetDependsOn(dependencies []string) { +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 *AWSGreengrassFunctionDefinitionVersion_Environment) Metadata() map[string]interface{} { +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 *AWSGreengrassFunctionDefinitionVersion_Environment) SetMetadata(metadata map[string]interface{}) { +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 *AWSGreengrassFunctionDefinitionVersion_Environment) DeletionPolicy() policies.DeletionPolicy { +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 *AWSGreengrassFunctionDefinitionVersion_Environment) SetDeletionPolicy(policy policies.DeletionPolicy) { +func (r *FunctionDefinitionVersion_Environment) SetDeletionPolicy(policy policies.DeletionPolicy) { r._deletionPolicy = policy } diff --git a/cloudformation/resources/aws-greengrass-functiondefinitionversion_execution.go b/cloudformation/greengrass/aws-greengrass-functiondefinitionversion_execution.go similarity index 69% rename from cloudformation/resources/aws-greengrass-functiondefinitionversion_execution.go rename to cloudformation/greengrass/aws-greengrass-functiondefinitionversion_execution.go index 7cd12f5f88..9eb2094f43 100644 --- a/cloudformation/resources/aws-greengrass-functiondefinitionversion_execution.go +++ b/cloudformation/greengrass/aws-greengrass-functiondefinitionversion_execution.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_Execution AWS CloudFormation Resource (AWS::Greengrass::FunctionDefinitionVersion.Execution) +// 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 AWSGreengrassFunctionDefinitionVersion_Execution struct { +type FunctionDefinitionVersion_Execution struct { // IsolationMode AWS CloudFormation Property // Required: false @@ -14,7 +16,7 @@ type AWSGreengrassFunctionDefinitionVersion_Execution struct { // 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"` + RunAs *FunctionDefinitionVersion_RunAs `json:"RunAs,omitempty"` // _deletionPolicy represents a CloudFormation DeletionPolicy _deletionPolicy policies.DeletionPolicy @@ -27,42 +29,42 @@ type AWSGreengrassFunctionDefinitionVersion_Execution struct { } // AWSCloudFormationType returns the AWS CloudFormation resource type -func (r *AWSGreengrassFunctionDefinitionVersion_Execution) AWSCloudFormationType() string { +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 *AWSGreengrassFunctionDefinitionVersion_Execution) DependsOn() []string { +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 *AWSGreengrassFunctionDefinitionVersion_Execution) SetDependsOn(dependencies []string) { +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 *AWSGreengrassFunctionDefinitionVersion_Execution) Metadata() map[string]interface{} { +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 *AWSGreengrassFunctionDefinitionVersion_Execution) SetMetadata(metadata map[string]interface{}) { +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 *AWSGreengrassFunctionDefinitionVersion_Execution) DeletionPolicy() policies.DeletionPolicy { +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 *AWSGreengrassFunctionDefinitionVersion_Execution) SetDeletionPolicy(policy policies.DeletionPolicy) { +func (r *FunctionDefinitionVersion_Execution) SetDeletionPolicy(policy policies.DeletionPolicy) { r._deletionPolicy = policy } diff --git a/cloudformation/resources/aws-greengrass-functiondefinitionversion_function.go b/cloudformation/greengrass/aws-greengrass-functiondefinitionversion_function.go similarity index 71% rename from cloudformation/resources/aws-greengrass-functiondefinitionversion_function.go rename to cloudformation/greengrass/aws-greengrass-functiondefinitionversion_function.go index 8a73f8c490..4804fe1313 100644 --- a/cloudformation/resources/aws-greengrass-functiondefinitionversion_function.go +++ b/cloudformation/greengrass/aws-greengrass-functiondefinitionversion_function.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_Function AWS CloudFormation Resource (AWS::Greengrass::FunctionDefinitionVersion.Function) +// 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 AWSGreengrassFunctionDefinitionVersion_Function struct { +type FunctionDefinitionVersion_Function struct { // FunctionArn AWS CloudFormation Property // Required: true @@ -14,7 +16,7 @@ type AWSGreengrassFunctionDefinitionVersion_Function struct { // 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"` + FunctionConfiguration *FunctionDefinitionVersion_FunctionConfiguration `json:"FunctionConfiguration,omitempty"` // Id AWS CloudFormation Property // Required: true @@ -32,42 +34,42 @@ type AWSGreengrassFunctionDefinitionVersion_Function struct { } // AWSCloudFormationType returns the AWS CloudFormation resource type -func (r *AWSGreengrassFunctionDefinitionVersion_Function) AWSCloudFormationType() string { +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 *AWSGreengrassFunctionDefinitionVersion_Function) DependsOn() []string { +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 *AWSGreengrassFunctionDefinitionVersion_Function) SetDependsOn(dependencies []string) { +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 *AWSGreengrassFunctionDefinitionVersion_Function) Metadata() map[string]interface{} { +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 *AWSGreengrassFunctionDefinitionVersion_Function) SetMetadata(metadata map[string]interface{}) { +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 *AWSGreengrassFunctionDefinitionVersion_Function) DeletionPolicy() policies.DeletionPolicy { +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 *AWSGreengrassFunctionDefinitionVersion_Function) SetDeletionPolicy(policy policies.DeletionPolicy) { +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/resources/aws-greengrass-functiondefinitionversion_resourceaccesspolicy.go b/cloudformation/greengrass/aws-greengrass-functiondefinitionversion_resourceaccesspolicy.go similarity index 69% rename from cloudformation/resources/aws-greengrass-functiondefinitionversion_resourceaccesspolicy.go rename to cloudformation/greengrass/aws-greengrass-functiondefinitionversion_resourceaccesspolicy.go index fcda4b7612..3a99e396db 100644 --- a/cloudformation/resources/aws-greengrass-functiondefinitionversion_resourceaccesspolicy.go +++ b/cloudformation/greengrass/aws-greengrass-functiondefinitionversion_resourceaccesspolicy.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_ResourceAccessPolicy AWS CloudFormation Resource (AWS::Greengrass::FunctionDefinitionVersion.ResourceAccessPolicy) +// 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 AWSGreengrassFunctionDefinitionVersion_ResourceAccessPolicy struct { +type FunctionDefinitionVersion_ResourceAccessPolicy struct { // Permission AWS CloudFormation Property // Required: false @@ -27,42 +29,42 @@ type AWSGreengrassFunctionDefinitionVersion_ResourceAccessPolicy struct { } // AWSCloudFormationType returns the AWS CloudFormation resource type -func (r *AWSGreengrassFunctionDefinitionVersion_ResourceAccessPolicy) AWSCloudFormationType() string { +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 *AWSGreengrassFunctionDefinitionVersion_ResourceAccessPolicy) DependsOn() []string { +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 *AWSGreengrassFunctionDefinitionVersion_ResourceAccessPolicy) SetDependsOn(dependencies []string) { +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 *AWSGreengrassFunctionDefinitionVersion_ResourceAccessPolicy) Metadata() map[string]interface{} { +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 *AWSGreengrassFunctionDefinitionVersion_ResourceAccessPolicy) SetMetadata(metadata map[string]interface{}) { +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 *AWSGreengrassFunctionDefinitionVersion_ResourceAccessPolicy) DeletionPolicy() policies.DeletionPolicy { +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 *AWSGreengrassFunctionDefinitionVersion_ResourceAccessPolicy) SetDeletionPolicy(policy policies.DeletionPolicy) { +func (r *FunctionDefinitionVersion_ResourceAccessPolicy) SetDeletionPolicy(policy policies.DeletionPolicy) { r._deletionPolicy = policy } diff --git a/cloudformation/resources/aws-greengrass-functiondefinitionversion_runas.go b/cloudformation/greengrass/aws-greengrass-functiondefinitionversion_runas.go similarity index 71% rename from cloudformation/resources/aws-greengrass-functiondefinitionversion_runas.go rename to cloudformation/greengrass/aws-greengrass-functiondefinitionversion_runas.go index 0288cce07f..504c9c6861 100644 --- a/cloudformation/resources/aws-greengrass-functiondefinitionversion_runas.go +++ b/cloudformation/greengrass/aws-greengrass-functiondefinitionversion_runas.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_RunAs AWS CloudFormation Resource (AWS::Greengrass::FunctionDefinitionVersion.RunAs) +// 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 AWSGreengrassFunctionDefinitionVersion_RunAs struct { +type FunctionDefinitionVersion_RunAs struct { // Gid AWS CloudFormation Property // Required: false @@ -27,42 +29,42 @@ type AWSGreengrassFunctionDefinitionVersion_RunAs struct { } // AWSCloudFormationType returns the AWS CloudFormation resource type -func (r *AWSGreengrassFunctionDefinitionVersion_RunAs) AWSCloudFormationType() string { +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 *AWSGreengrassFunctionDefinitionVersion_RunAs) DependsOn() []string { +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 *AWSGreengrassFunctionDefinitionVersion_RunAs) SetDependsOn(dependencies []string) { +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 *AWSGreengrassFunctionDefinitionVersion_RunAs) Metadata() map[string]interface{} { +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 *AWSGreengrassFunctionDefinitionVersion_RunAs) SetMetadata(metadata map[string]interface{}) { +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 *AWSGreengrassFunctionDefinitionVersion_RunAs) DeletionPolicy() policies.DeletionPolicy { +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 *AWSGreengrassFunctionDefinitionVersion_RunAs) SetDeletionPolicy(policy policies.DeletionPolicy) { +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/resources/aws-greengrass-loggerdefinition_loggerdefinitionversion.go b/cloudformation/greengrass/aws-greengrass-loggerdefinition_loggerdefinitionversion.go similarity index 65% rename from cloudformation/resources/aws-greengrass-loggerdefinition_loggerdefinitionversion.go rename to cloudformation/greengrass/aws-greengrass-loggerdefinition_loggerdefinitionversion.go index 20c497fb30..c7d54c1c8a 100644 --- a/cloudformation/resources/aws-greengrass-loggerdefinition_loggerdefinitionversion.go +++ b/cloudformation/greengrass/aws-greengrass-loggerdefinition_loggerdefinitionversion.go @@ -1,15 +1,17 @@ -package resources +package greengrass -import "github.com/awslabs/goformation/v2/cloudformation/policies" +import ( + "github.com/awslabs/goformation/v3/cloudformation/policies" +) -// AWSGreengrassLoggerDefinition_LoggerDefinitionVersion AWS CloudFormation Resource (AWS::Greengrass::LoggerDefinition.LoggerDefinitionVersion) +// 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 AWSGreengrassLoggerDefinition_LoggerDefinitionVersion struct { +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 []AWSGreengrassLoggerDefinition_Logger `json:"Loggers,omitempty"` + Loggers []LoggerDefinition_Logger `json:"Loggers,omitempty"` // _deletionPolicy represents a CloudFormation DeletionPolicy _deletionPolicy policies.DeletionPolicy @@ -22,42 +24,42 @@ type AWSGreengrassLoggerDefinition_LoggerDefinitionVersion struct { } // AWSCloudFormationType returns the AWS CloudFormation resource type -func (r *AWSGreengrassLoggerDefinition_LoggerDefinitionVersion) AWSCloudFormationType() string { +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 *AWSGreengrassLoggerDefinition_LoggerDefinitionVersion) DependsOn() []string { +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 *AWSGreengrassLoggerDefinition_LoggerDefinitionVersion) SetDependsOn(dependencies []string) { +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 *AWSGreengrassLoggerDefinition_LoggerDefinitionVersion) Metadata() map[string]interface{} { +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 *AWSGreengrassLoggerDefinition_LoggerDefinitionVersion) SetMetadata(metadata map[string]interface{}) { +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 *AWSGreengrassLoggerDefinition_LoggerDefinitionVersion) DeletionPolicy() policies.DeletionPolicy { +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 *AWSGreengrassLoggerDefinition_LoggerDefinitionVersion) SetDeletionPolicy(policy policies.DeletionPolicy) { +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/resources/aws-greengrass-resourcedefinition_groupownersetting.go b/cloudformation/greengrass/aws-greengrass-resourcedefinition_groupownersetting.go similarity index 71% rename from cloudformation/resources/aws-greengrass-resourcedefinition_groupownersetting.go rename to cloudformation/greengrass/aws-greengrass-resourcedefinition_groupownersetting.go index cb9decfe90..de94faad7d 100644 --- a/cloudformation/resources/aws-greengrass-resourcedefinition_groupownersetting.go +++ b/cloudformation/greengrass/aws-greengrass-resourcedefinition_groupownersetting.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" +) -// AWSGreengrassResourceDefinition_GroupOwnerSetting AWS CloudFormation Resource (AWS::Greengrass::ResourceDefinition.GroupOwnerSetting) +// 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 AWSGreengrassResourceDefinition_GroupOwnerSetting struct { +type ResourceDefinition_GroupOwnerSetting struct { // AutoAddGroupOwner AWS CloudFormation Property // Required: true @@ -27,42 +29,42 @@ type AWSGreengrassResourceDefinition_GroupOwnerSetting struct { } // AWSCloudFormationType returns the AWS CloudFormation resource type -func (r *AWSGreengrassResourceDefinition_GroupOwnerSetting) AWSCloudFormationType() string { +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 *AWSGreengrassResourceDefinition_GroupOwnerSetting) DependsOn() []string { +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 *AWSGreengrassResourceDefinition_GroupOwnerSetting) SetDependsOn(dependencies []string) { +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 *AWSGreengrassResourceDefinition_GroupOwnerSetting) Metadata() map[string]interface{} { +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 *AWSGreengrassResourceDefinition_GroupOwnerSetting) SetMetadata(metadata map[string]interface{}) { +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 *AWSGreengrassResourceDefinition_GroupOwnerSetting) DeletionPolicy() policies.DeletionPolicy { +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 *AWSGreengrassResourceDefinition_GroupOwnerSetting) SetDeletionPolicy(policy policies.DeletionPolicy) { +func (r *ResourceDefinition_GroupOwnerSetting) SetDeletionPolicy(policy policies.DeletionPolicy) { r._deletionPolicy = policy } diff --git a/cloudformation/resources/aws-greengrass-resourcedefinition_localdeviceresourcedata.go b/cloudformation/greengrass/aws-greengrass-resourcedefinition_localdeviceresourcedata.go similarity index 68% rename from cloudformation/resources/aws-greengrass-resourcedefinition_localdeviceresourcedata.go rename to cloudformation/greengrass/aws-greengrass-resourcedefinition_localdeviceresourcedata.go index 7ad6318387..b76981e4fa 100644 --- a/cloudformation/resources/aws-greengrass-resourcedefinition_localdeviceresourcedata.go +++ b/cloudformation/greengrass/aws-greengrass-resourcedefinition_localdeviceresourcedata.go @@ -1,15 +1,17 @@ -package resources +package greengrass -import "github.com/awslabs/goformation/v2/cloudformation/policies" +import ( + "github.com/awslabs/goformation/v3/cloudformation/policies" +) -// AWSGreengrassResourceDefinition_LocalDeviceResourceData AWS CloudFormation Resource (AWS::Greengrass::ResourceDefinition.LocalDeviceResourceData) +// 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 AWSGreengrassResourceDefinition_LocalDeviceResourceData struct { +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 *AWSGreengrassResourceDefinition_GroupOwnerSetting `json:"GroupOwnerSetting,omitempty"` + GroupOwnerSetting *ResourceDefinition_GroupOwnerSetting `json:"GroupOwnerSetting,omitempty"` // SourcePath AWS CloudFormation Property // Required: true @@ -27,42 +29,42 @@ type AWSGreengrassResourceDefinition_LocalDeviceResourceData struct { } // AWSCloudFormationType returns the AWS CloudFormation resource type -func (r *AWSGreengrassResourceDefinition_LocalDeviceResourceData) AWSCloudFormationType() string { +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 *AWSGreengrassResourceDefinition_LocalDeviceResourceData) DependsOn() []string { +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 *AWSGreengrassResourceDefinition_LocalDeviceResourceData) SetDependsOn(dependencies []string) { +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 *AWSGreengrassResourceDefinition_LocalDeviceResourceData) Metadata() map[string]interface{} { +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 *AWSGreengrassResourceDefinition_LocalDeviceResourceData) SetMetadata(metadata map[string]interface{}) { +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 *AWSGreengrassResourceDefinition_LocalDeviceResourceData) DeletionPolicy() policies.DeletionPolicy { +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 *AWSGreengrassResourceDefinition_LocalDeviceResourceData) SetDeletionPolicy(policy policies.DeletionPolicy) { +func (r *ResourceDefinition_LocalDeviceResourceData) SetDeletionPolicy(policy policies.DeletionPolicy) { r._deletionPolicy = policy } diff --git a/cloudformation/resources/aws-greengrass-resourcedefinition_localvolumeresourcedata.go b/cloudformation/greengrass/aws-greengrass-resourcedefinition_localvolumeresourcedata.go similarity index 70% rename from cloudformation/resources/aws-greengrass-resourcedefinition_localvolumeresourcedata.go rename to cloudformation/greengrass/aws-greengrass-resourcedefinition_localvolumeresourcedata.go index eee815fa01..b578b46f0e 100644 --- a/cloudformation/resources/aws-greengrass-resourcedefinition_localvolumeresourcedata.go +++ b/cloudformation/greengrass/aws-greengrass-resourcedefinition_localvolumeresourcedata.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" +) -// AWSGreengrassResourceDefinition_LocalVolumeResourceData AWS CloudFormation Resource (AWS::Greengrass::ResourceDefinition.LocalVolumeResourceData) +// 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 AWSGreengrassResourceDefinition_LocalVolumeResourceData struct { +type ResourceDefinition_LocalVolumeResourceData struct { // DestinationPath AWS CloudFormation Property // Required: true @@ -14,7 +16,7 @@ type AWSGreengrassResourceDefinition_LocalVolumeResourceData struct { // 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"` + GroupOwnerSetting *ResourceDefinition_GroupOwnerSetting `json:"GroupOwnerSetting,omitempty"` // SourcePath AWS CloudFormation Property // Required: true @@ -32,42 +34,42 @@ type AWSGreengrassResourceDefinition_LocalVolumeResourceData struct { } // AWSCloudFormationType returns the AWS CloudFormation resource type -func (r *AWSGreengrassResourceDefinition_LocalVolumeResourceData) AWSCloudFormationType() string { +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 *AWSGreengrassResourceDefinition_LocalVolumeResourceData) DependsOn() []string { +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 *AWSGreengrassResourceDefinition_LocalVolumeResourceData) SetDependsOn(dependencies []string) { +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 *AWSGreengrassResourceDefinition_LocalVolumeResourceData) Metadata() map[string]interface{} { +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 *AWSGreengrassResourceDefinition_LocalVolumeResourceData) SetMetadata(metadata map[string]interface{}) { +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 *AWSGreengrassResourceDefinition_LocalVolumeResourceData) DeletionPolicy() policies.DeletionPolicy { +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 *AWSGreengrassResourceDefinition_LocalVolumeResourceData) SetDeletionPolicy(policy policies.DeletionPolicy) { +func (r *ResourceDefinition_LocalVolumeResourceData) SetDeletionPolicy(policy policies.DeletionPolicy) { r._deletionPolicy = policy } diff --git a/cloudformation/resources/aws-greengrass-resourcedefinition_resourcedatacontainer.go b/cloudformation/greengrass/aws-greengrass-resourcedefinition_resourcedatacontainer.go similarity index 65% rename from cloudformation/resources/aws-greengrass-resourcedefinition_resourcedatacontainer.go rename to cloudformation/greengrass/aws-greengrass-resourcedefinition_resourcedatacontainer.go index b965473385..5dc38ec3d1 100644 --- a/cloudformation/resources/aws-greengrass-resourcedefinition_resourcedatacontainer.go +++ b/cloudformation/greengrass/aws-greengrass-resourcedefinition_resourcedatacontainer.go @@ -1,35 +1,37 @@ -package resources +package greengrass -import "github.com/awslabs/goformation/v2/cloudformation/policies" +import ( + "github.com/awslabs/goformation/v3/cloudformation/policies" +) -// AWSGreengrassResourceDefinition_ResourceDataContainer AWS CloudFormation Resource (AWS::Greengrass::ResourceDefinition.ResourceDataContainer) +// 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 AWSGreengrassResourceDefinition_ResourceDataContainer struct { +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 *AWSGreengrassResourceDefinition_LocalDeviceResourceData `json:"LocalDeviceResourceData,omitempty"` + 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 *AWSGreengrassResourceDefinition_LocalVolumeResourceData `json:"LocalVolumeResourceData,omitempty"` + 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 *AWSGreengrassResourceDefinition_S3MachineLearningModelResourceData `json:"S3MachineLearningModelResourceData,omitempty"` + 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 *AWSGreengrassResourceDefinition_SageMakerMachineLearningModelResourceData `json:"SageMakerMachineLearningModelResourceData,omitempty"` + 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 *AWSGreengrassResourceDefinition_SecretsManagerSecretResourceData `json:"SecretsManagerSecretResourceData,omitempty"` + SecretsManagerSecretResourceData *ResourceDefinition_SecretsManagerSecretResourceData `json:"SecretsManagerSecretResourceData,omitempty"` // _deletionPolicy represents a CloudFormation DeletionPolicy _deletionPolicy policies.DeletionPolicy @@ -42,42 +44,42 @@ type AWSGreengrassResourceDefinition_ResourceDataContainer struct { } // AWSCloudFormationType returns the AWS CloudFormation resource type -func (r *AWSGreengrassResourceDefinition_ResourceDataContainer) AWSCloudFormationType() string { +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 *AWSGreengrassResourceDefinition_ResourceDataContainer) DependsOn() []string { +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 *AWSGreengrassResourceDefinition_ResourceDataContainer) SetDependsOn(dependencies []string) { +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 *AWSGreengrassResourceDefinition_ResourceDataContainer) Metadata() map[string]interface{} { +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 *AWSGreengrassResourceDefinition_ResourceDataContainer) SetMetadata(metadata map[string]interface{}) { +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 *AWSGreengrassResourceDefinition_ResourceDataContainer) DeletionPolicy() policies.DeletionPolicy { +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 *AWSGreengrassResourceDefinition_ResourceDataContainer) SetDeletionPolicy(policy policies.DeletionPolicy) { +func (r *ResourceDefinition_ResourceDataContainer) SetDeletionPolicy(policy policies.DeletionPolicy) { r._deletionPolicy = policy } diff --git a/cloudformation/resources/aws-greengrass-resourcedefinition_resourcedefinitionversion.go b/cloudformation/greengrass/aws-greengrass-resourcedefinition_resourcedefinitionversion.go similarity index 64% rename from cloudformation/resources/aws-greengrass-resourcedefinition_resourcedefinitionversion.go rename to cloudformation/greengrass/aws-greengrass-resourcedefinition_resourcedefinitionversion.go index 10ef365ee4..675ff28692 100644 --- a/cloudformation/resources/aws-greengrass-resourcedefinition_resourcedefinitionversion.go +++ b/cloudformation/greengrass/aws-greengrass-resourcedefinition_resourcedefinitionversion.go @@ -1,15 +1,17 @@ -package resources +package greengrass -import "github.com/awslabs/goformation/v2/cloudformation/policies" +import ( + "github.com/awslabs/goformation/v3/cloudformation/policies" +) -// AWSGreengrassResourceDefinition_ResourceDefinitionVersion AWS CloudFormation Resource (AWS::Greengrass::ResourceDefinition.ResourceDefinitionVersion) +// 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 AWSGreengrassResourceDefinition_ResourceDefinitionVersion struct { +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 []AWSGreengrassResourceDefinition_ResourceInstance `json:"Resources,omitempty"` + Resources []ResourceDefinition_ResourceInstance `json:"Resources,omitempty"` // _deletionPolicy represents a CloudFormation DeletionPolicy _deletionPolicy policies.DeletionPolicy @@ -22,42 +24,42 @@ type AWSGreengrassResourceDefinition_ResourceDefinitionVersion struct { } // AWSCloudFormationType returns the AWS CloudFormation resource type -func (r *AWSGreengrassResourceDefinition_ResourceDefinitionVersion) AWSCloudFormationType() string { +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 *AWSGreengrassResourceDefinition_ResourceDefinitionVersion) DependsOn() []string { +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 *AWSGreengrassResourceDefinition_ResourceDefinitionVersion) SetDependsOn(dependencies []string) { +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 *AWSGreengrassResourceDefinition_ResourceDefinitionVersion) Metadata() map[string]interface{} { +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 *AWSGreengrassResourceDefinition_ResourceDefinitionVersion) SetMetadata(metadata map[string]interface{}) { +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 *AWSGreengrassResourceDefinition_ResourceDefinitionVersion) DeletionPolicy() policies.DeletionPolicy { +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 *AWSGreengrassResourceDefinition_ResourceDefinitionVersion) SetDeletionPolicy(policy policies.DeletionPolicy) { +func (r *ResourceDefinition_ResourceDefinitionVersion) SetDeletionPolicy(policy policies.DeletionPolicy) { r._deletionPolicy = policy } diff --git a/cloudformation/resources/aws-greengrass-resourcedefinition_resourceinstance.go b/cloudformation/greengrass/aws-greengrass-resourcedefinition_resourceinstance.go similarity index 71% rename from cloudformation/resources/aws-greengrass-resourcedefinition_resourceinstance.go rename to cloudformation/greengrass/aws-greengrass-resourcedefinition_resourceinstance.go index 6a47e0d5bb..f1bd6575c9 100644 --- a/cloudformation/resources/aws-greengrass-resourcedefinition_resourceinstance.go +++ b/cloudformation/greengrass/aws-greengrass-resourcedefinition_resourceinstance.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" +) -// AWSGreengrassResourceDefinition_ResourceInstance AWS CloudFormation Resource (AWS::Greengrass::ResourceDefinition.ResourceInstance) +// 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 AWSGreengrassResourceDefinition_ResourceInstance struct { +type ResourceDefinition_ResourceInstance struct { // Id AWS CloudFormation Property // Required: true @@ -19,7 +21,7 @@ type AWSGreengrassResourceDefinition_ResourceInstance struct { // 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"` + ResourceDataContainer *ResourceDefinition_ResourceDataContainer `json:"ResourceDataContainer,omitempty"` // _deletionPolicy represents a CloudFormation DeletionPolicy _deletionPolicy policies.DeletionPolicy @@ -32,42 +34,42 @@ type AWSGreengrassResourceDefinition_ResourceInstance struct { } // AWSCloudFormationType returns the AWS CloudFormation resource type -func (r *AWSGreengrassResourceDefinition_ResourceInstance) AWSCloudFormationType() string { +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 *AWSGreengrassResourceDefinition_ResourceInstance) DependsOn() []string { +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 *AWSGreengrassResourceDefinition_ResourceInstance) SetDependsOn(dependencies []string) { +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 *AWSGreengrassResourceDefinition_ResourceInstance) Metadata() map[string]interface{} { +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 *AWSGreengrassResourceDefinition_ResourceInstance) SetMetadata(metadata map[string]interface{}) { +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 *AWSGreengrassResourceDefinition_ResourceInstance) DeletionPolicy() policies.DeletionPolicy { +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 *AWSGreengrassResourceDefinition_ResourceInstance) SetDeletionPolicy(policy policies.DeletionPolicy) { +func (r *ResourceDefinition_ResourceInstance) SetDeletionPolicy(policy policies.DeletionPolicy) { r._deletionPolicy = policy } diff --git a/cloudformation/resources/aws-greengrass-resourcedefinition_s3machinelearningmodelresourcedata.go b/cloudformation/greengrass/aws-greengrass-resourcedefinition_s3machinelearningmodelresourcedata.go similarity index 69% rename from cloudformation/resources/aws-greengrass-resourcedefinition_s3machinelearningmodelresourcedata.go rename to cloudformation/greengrass/aws-greengrass-resourcedefinition_s3machinelearningmodelresourcedata.go index e25a5b7d46..6d3785e0d4 100644 --- a/cloudformation/resources/aws-greengrass-resourcedefinition_s3machinelearningmodelresourcedata.go +++ b/cloudformation/greengrass/aws-greengrass-resourcedefinition_s3machinelearningmodelresourcedata.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" +) -// AWSGreengrassResourceDefinition_S3MachineLearningModelResourceData AWS CloudFormation Resource (AWS::Greengrass::ResourceDefinition.S3MachineLearningModelResourceData) +// 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 AWSGreengrassResourceDefinition_S3MachineLearningModelResourceData struct { +type ResourceDefinition_S3MachineLearningModelResourceData struct { // DestinationPath AWS CloudFormation Property // Required: true @@ -27,42 +29,42 @@ type AWSGreengrassResourceDefinition_S3MachineLearningModelResourceData struct { } // AWSCloudFormationType returns the AWS CloudFormation resource type -func (r *AWSGreengrassResourceDefinition_S3MachineLearningModelResourceData) AWSCloudFormationType() string { +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 *AWSGreengrassResourceDefinition_S3MachineLearningModelResourceData) DependsOn() []string { +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 *AWSGreengrassResourceDefinition_S3MachineLearningModelResourceData) SetDependsOn(dependencies []string) { +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 *AWSGreengrassResourceDefinition_S3MachineLearningModelResourceData) Metadata() map[string]interface{} { +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 *AWSGreengrassResourceDefinition_S3MachineLearningModelResourceData) SetMetadata(metadata map[string]interface{}) { +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 *AWSGreengrassResourceDefinition_S3MachineLearningModelResourceData) DeletionPolicy() policies.DeletionPolicy { +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 *AWSGreengrassResourceDefinition_S3MachineLearningModelResourceData) SetDeletionPolicy(policy policies.DeletionPolicy) { +func (r *ResourceDefinition_S3MachineLearningModelResourceData) SetDeletionPolicy(policy policies.DeletionPolicy) { r._deletionPolicy = policy } diff --git a/cloudformation/resources/aws-greengrass-resourcedefinition_sagemakermachinelearningmodelresourcedata.go b/cloudformation/greengrass/aws-greengrass-resourcedefinition_sagemakermachinelearningmodelresourcedata.go similarity index 68% rename from cloudformation/resources/aws-greengrass-resourcedefinition_sagemakermachinelearningmodelresourcedata.go rename to cloudformation/greengrass/aws-greengrass-resourcedefinition_sagemakermachinelearningmodelresourcedata.go index 5920b355e1..d73b605fc1 100644 --- a/cloudformation/resources/aws-greengrass-resourcedefinition_sagemakermachinelearningmodelresourcedata.go +++ b/cloudformation/greengrass/aws-greengrass-resourcedefinition_sagemakermachinelearningmodelresourcedata.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" +) -// AWSGreengrassResourceDefinition_SageMakerMachineLearningModelResourceData AWS CloudFormation Resource (AWS::Greengrass::ResourceDefinition.SageMakerMachineLearningModelResourceData) +// 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 AWSGreengrassResourceDefinition_SageMakerMachineLearningModelResourceData struct { +type ResourceDefinition_SageMakerMachineLearningModelResourceData struct { // DestinationPath AWS CloudFormation Property // Required: true @@ -27,42 +29,42 @@ type AWSGreengrassResourceDefinition_SageMakerMachineLearningModelResourceData s } // AWSCloudFormationType returns the AWS CloudFormation resource type -func (r *AWSGreengrassResourceDefinition_SageMakerMachineLearningModelResourceData) AWSCloudFormationType() string { +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 *AWSGreengrassResourceDefinition_SageMakerMachineLearningModelResourceData) DependsOn() []string { +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 *AWSGreengrassResourceDefinition_SageMakerMachineLearningModelResourceData) SetDependsOn(dependencies []string) { +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 *AWSGreengrassResourceDefinition_SageMakerMachineLearningModelResourceData) Metadata() map[string]interface{} { +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 *AWSGreengrassResourceDefinition_SageMakerMachineLearningModelResourceData) SetMetadata(metadata map[string]interface{}) { +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 *AWSGreengrassResourceDefinition_SageMakerMachineLearningModelResourceData) DeletionPolicy() policies.DeletionPolicy { +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 *AWSGreengrassResourceDefinition_SageMakerMachineLearningModelResourceData) SetDeletionPolicy(policy policies.DeletionPolicy) { +func (r *ResourceDefinition_SageMakerMachineLearningModelResourceData) SetDeletionPolicy(policy policies.DeletionPolicy) { r._deletionPolicy = policy } diff --git a/cloudformation/resources/aws-greengrass-resourcedefinition_secretsmanagersecretresourcedata.go b/cloudformation/greengrass/aws-greengrass-resourcedefinition_secretsmanagersecretresourcedata.go similarity index 69% rename from cloudformation/resources/aws-greengrass-resourcedefinition_secretsmanagersecretresourcedata.go rename to cloudformation/greengrass/aws-greengrass-resourcedefinition_secretsmanagersecretresourcedata.go index 2374c51511..b5a060ff09 100644 --- a/cloudformation/resources/aws-greengrass-resourcedefinition_secretsmanagersecretresourcedata.go +++ b/cloudformation/greengrass/aws-greengrass-resourcedefinition_secretsmanagersecretresourcedata.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" +) -// AWSGreengrassResourceDefinition_SecretsManagerSecretResourceData AWS CloudFormation Resource (AWS::Greengrass::ResourceDefinition.SecretsManagerSecretResourceData) +// 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 AWSGreengrassResourceDefinition_SecretsManagerSecretResourceData struct { +type ResourceDefinition_SecretsManagerSecretResourceData struct { // ARN AWS CloudFormation Property // Required: true @@ -27,42 +29,42 @@ type AWSGreengrassResourceDefinition_SecretsManagerSecretResourceData struct { } // AWSCloudFormationType returns the AWS CloudFormation resource type -func (r *AWSGreengrassResourceDefinition_SecretsManagerSecretResourceData) AWSCloudFormationType() string { +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 *AWSGreengrassResourceDefinition_SecretsManagerSecretResourceData) DependsOn() []string { +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 *AWSGreengrassResourceDefinition_SecretsManagerSecretResourceData) SetDependsOn(dependencies []string) { +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 *AWSGreengrassResourceDefinition_SecretsManagerSecretResourceData) Metadata() map[string]interface{} { +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 *AWSGreengrassResourceDefinition_SecretsManagerSecretResourceData) SetMetadata(metadata map[string]interface{}) { +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 *AWSGreengrassResourceDefinition_SecretsManagerSecretResourceData) DeletionPolicy() policies.DeletionPolicy { +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 *AWSGreengrassResourceDefinition_SecretsManagerSecretResourceData) SetDeletionPolicy(policy policies.DeletionPolicy) { +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/resources/aws-greengrass-resourcedefinitionversion_groupownersetting.go b/cloudformation/greengrass/aws-greengrass-resourcedefinitionversion_groupownersetting.go similarity index 70% rename from cloudformation/resources/aws-greengrass-resourcedefinitionversion_groupownersetting.go rename to cloudformation/greengrass/aws-greengrass-resourcedefinitionversion_groupownersetting.go index 53d8e959a7..4ccede43c2 100644 --- a/cloudformation/resources/aws-greengrass-resourcedefinitionversion_groupownersetting.go +++ b/cloudformation/greengrass/aws-greengrass-resourcedefinitionversion_groupownersetting.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" +) -// AWSGreengrassResourceDefinitionVersion_GroupOwnerSetting AWS CloudFormation Resource (AWS::Greengrass::ResourceDefinitionVersion.GroupOwnerSetting) +// 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 AWSGreengrassResourceDefinitionVersion_GroupOwnerSetting struct { +type ResourceDefinitionVersion_GroupOwnerSetting struct { // AutoAddGroupOwner AWS CloudFormation Property // Required: true @@ -27,42 +29,42 @@ type AWSGreengrassResourceDefinitionVersion_GroupOwnerSetting struct { } // AWSCloudFormationType returns the AWS CloudFormation resource type -func (r *AWSGreengrassResourceDefinitionVersion_GroupOwnerSetting) AWSCloudFormationType() string { +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 *AWSGreengrassResourceDefinitionVersion_GroupOwnerSetting) DependsOn() []string { +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 *AWSGreengrassResourceDefinitionVersion_GroupOwnerSetting) SetDependsOn(dependencies []string) { +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 *AWSGreengrassResourceDefinitionVersion_GroupOwnerSetting) Metadata() map[string]interface{} { +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 *AWSGreengrassResourceDefinitionVersion_GroupOwnerSetting) SetMetadata(metadata map[string]interface{}) { +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 *AWSGreengrassResourceDefinitionVersion_GroupOwnerSetting) DeletionPolicy() policies.DeletionPolicy { +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 *AWSGreengrassResourceDefinitionVersion_GroupOwnerSetting) SetDeletionPolicy(policy policies.DeletionPolicy) { +func (r *ResourceDefinitionVersion_GroupOwnerSetting) SetDeletionPolicy(policy policies.DeletionPolicy) { r._deletionPolicy = policy } diff --git a/cloudformation/resources/aws-greengrass-resourcedefinitionversion_localdeviceresourcedata.go b/cloudformation/greengrass/aws-greengrass-resourcedefinitionversion_localdeviceresourcedata.go similarity index 67% rename from cloudformation/resources/aws-greengrass-resourcedefinitionversion_localdeviceresourcedata.go rename to cloudformation/greengrass/aws-greengrass-resourcedefinitionversion_localdeviceresourcedata.go index 7553404b39..cec30720fd 100644 --- a/cloudformation/resources/aws-greengrass-resourcedefinitionversion_localdeviceresourcedata.go +++ b/cloudformation/greengrass/aws-greengrass-resourcedefinitionversion_localdeviceresourcedata.go @@ -1,15 +1,17 @@ -package resources +package greengrass -import "github.com/awslabs/goformation/v2/cloudformation/policies" +import ( + "github.com/awslabs/goformation/v3/cloudformation/policies" +) -// AWSGreengrassResourceDefinitionVersion_LocalDeviceResourceData AWS CloudFormation Resource (AWS::Greengrass::ResourceDefinitionVersion.LocalDeviceResourceData) +// 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 AWSGreengrassResourceDefinitionVersion_LocalDeviceResourceData struct { +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 *AWSGreengrassResourceDefinitionVersion_GroupOwnerSetting `json:"GroupOwnerSetting,omitempty"` + GroupOwnerSetting *ResourceDefinitionVersion_GroupOwnerSetting `json:"GroupOwnerSetting,omitempty"` // SourcePath AWS CloudFormation Property // Required: true @@ -27,42 +29,42 @@ type AWSGreengrassResourceDefinitionVersion_LocalDeviceResourceData struct { } // AWSCloudFormationType returns the AWS CloudFormation resource type -func (r *AWSGreengrassResourceDefinitionVersion_LocalDeviceResourceData) AWSCloudFormationType() string { +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 *AWSGreengrassResourceDefinitionVersion_LocalDeviceResourceData) DependsOn() []string { +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 *AWSGreengrassResourceDefinitionVersion_LocalDeviceResourceData) SetDependsOn(dependencies []string) { +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 *AWSGreengrassResourceDefinitionVersion_LocalDeviceResourceData) Metadata() map[string]interface{} { +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 *AWSGreengrassResourceDefinitionVersion_LocalDeviceResourceData) SetMetadata(metadata map[string]interface{}) { +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 *AWSGreengrassResourceDefinitionVersion_LocalDeviceResourceData) DeletionPolicy() policies.DeletionPolicy { +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 *AWSGreengrassResourceDefinitionVersion_LocalDeviceResourceData) SetDeletionPolicy(policy policies.DeletionPolicy) { +func (r *ResourceDefinitionVersion_LocalDeviceResourceData) SetDeletionPolicy(policy policies.DeletionPolicy) { r._deletionPolicy = policy } diff --git a/cloudformation/resources/aws-greengrass-resourcedefinitionversion_localvolumeresourcedata.go b/cloudformation/greengrass/aws-greengrass-resourcedefinitionversion_localvolumeresourcedata.go similarity index 70% rename from cloudformation/resources/aws-greengrass-resourcedefinitionversion_localvolumeresourcedata.go rename to cloudformation/greengrass/aws-greengrass-resourcedefinitionversion_localvolumeresourcedata.go index 9d5df8536f..80b77196cb 100644 --- a/cloudformation/resources/aws-greengrass-resourcedefinitionversion_localvolumeresourcedata.go +++ b/cloudformation/greengrass/aws-greengrass-resourcedefinitionversion_localvolumeresourcedata.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" +) -// AWSGreengrassResourceDefinitionVersion_LocalVolumeResourceData AWS CloudFormation Resource (AWS::Greengrass::ResourceDefinitionVersion.LocalVolumeResourceData) +// 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 AWSGreengrassResourceDefinitionVersion_LocalVolumeResourceData struct { +type ResourceDefinitionVersion_LocalVolumeResourceData struct { // DestinationPath AWS CloudFormation Property // Required: true @@ -14,7 +16,7 @@ type AWSGreengrassResourceDefinitionVersion_LocalVolumeResourceData struct { // 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"` + GroupOwnerSetting *ResourceDefinitionVersion_GroupOwnerSetting `json:"GroupOwnerSetting,omitempty"` // SourcePath AWS CloudFormation Property // Required: true @@ -32,42 +34,42 @@ type AWSGreengrassResourceDefinitionVersion_LocalVolumeResourceData struct { } // AWSCloudFormationType returns the AWS CloudFormation resource type -func (r *AWSGreengrassResourceDefinitionVersion_LocalVolumeResourceData) AWSCloudFormationType() string { +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 *AWSGreengrassResourceDefinitionVersion_LocalVolumeResourceData) DependsOn() []string { +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 *AWSGreengrassResourceDefinitionVersion_LocalVolumeResourceData) SetDependsOn(dependencies []string) { +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 *AWSGreengrassResourceDefinitionVersion_LocalVolumeResourceData) Metadata() map[string]interface{} { +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 *AWSGreengrassResourceDefinitionVersion_LocalVolumeResourceData) SetMetadata(metadata map[string]interface{}) { +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 *AWSGreengrassResourceDefinitionVersion_LocalVolumeResourceData) DeletionPolicy() policies.DeletionPolicy { +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 *AWSGreengrassResourceDefinitionVersion_LocalVolumeResourceData) SetDeletionPolicy(policy policies.DeletionPolicy) { +func (r *ResourceDefinitionVersion_LocalVolumeResourceData) SetDeletionPolicy(policy policies.DeletionPolicy) { r._deletionPolicy = policy } diff --git a/cloudformation/resources/aws-greengrass-resourcedefinitionversion_resourcedatacontainer.go b/cloudformation/greengrass/aws-greengrass-resourcedefinitionversion_resourcedatacontainer.go similarity index 65% rename from cloudformation/resources/aws-greengrass-resourcedefinitionversion_resourcedatacontainer.go rename to cloudformation/greengrass/aws-greengrass-resourcedefinitionversion_resourcedatacontainer.go index 9a19010676..92657a949d 100644 --- a/cloudformation/resources/aws-greengrass-resourcedefinitionversion_resourcedatacontainer.go +++ b/cloudformation/greengrass/aws-greengrass-resourcedefinitionversion_resourcedatacontainer.go @@ -1,35 +1,37 @@ -package resources +package greengrass -import "github.com/awslabs/goformation/v2/cloudformation/policies" +import ( + "github.com/awslabs/goformation/v3/cloudformation/policies" +) -// AWSGreengrassResourceDefinitionVersion_ResourceDataContainer AWS CloudFormation Resource (AWS::Greengrass::ResourceDefinitionVersion.ResourceDataContainer) +// 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 AWSGreengrassResourceDefinitionVersion_ResourceDataContainer struct { +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 *AWSGreengrassResourceDefinitionVersion_LocalDeviceResourceData `json:"LocalDeviceResourceData,omitempty"` + 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 *AWSGreengrassResourceDefinitionVersion_LocalVolumeResourceData `json:"LocalVolumeResourceData,omitempty"` + 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 *AWSGreengrassResourceDefinitionVersion_S3MachineLearningModelResourceData `json:"S3MachineLearningModelResourceData,omitempty"` + 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 *AWSGreengrassResourceDefinitionVersion_SageMakerMachineLearningModelResourceData `json:"SageMakerMachineLearningModelResourceData,omitempty"` + 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 *AWSGreengrassResourceDefinitionVersion_SecretsManagerSecretResourceData `json:"SecretsManagerSecretResourceData,omitempty"` + SecretsManagerSecretResourceData *ResourceDefinitionVersion_SecretsManagerSecretResourceData `json:"SecretsManagerSecretResourceData,omitempty"` // _deletionPolicy represents a CloudFormation DeletionPolicy _deletionPolicy policies.DeletionPolicy @@ -42,42 +44,42 @@ type AWSGreengrassResourceDefinitionVersion_ResourceDataContainer struct { } // AWSCloudFormationType returns the AWS CloudFormation resource type -func (r *AWSGreengrassResourceDefinitionVersion_ResourceDataContainer) AWSCloudFormationType() string { +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 *AWSGreengrassResourceDefinitionVersion_ResourceDataContainer) DependsOn() []string { +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 *AWSGreengrassResourceDefinitionVersion_ResourceDataContainer) SetDependsOn(dependencies []string) { +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 *AWSGreengrassResourceDefinitionVersion_ResourceDataContainer) Metadata() map[string]interface{} { +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 *AWSGreengrassResourceDefinitionVersion_ResourceDataContainer) SetMetadata(metadata map[string]interface{}) { +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 *AWSGreengrassResourceDefinitionVersion_ResourceDataContainer) DeletionPolicy() policies.DeletionPolicy { +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 *AWSGreengrassResourceDefinitionVersion_ResourceDataContainer) SetDeletionPolicy(policy policies.DeletionPolicy) { +func (r *ResourceDefinitionVersion_ResourceDataContainer) SetDeletionPolicy(policy policies.DeletionPolicy) { r._deletionPolicy = policy } diff --git a/cloudformation/resources/aws-greengrass-resourcedefinitionversion_resourceinstance.go b/cloudformation/greengrass/aws-greengrass-resourcedefinitionversion_resourceinstance.go similarity index 70% rename from cloudformation/resources/aws-greengrass-resourcedefinitionversion_resourceinstance.go rename to cloudformation/greengrass/aws-greengrass-resourcedefinitionversion_resourceinstance.go index 9af0e43b0b..668a26be94 100644 --- a/cloudformation/resources/aws-greengrass-resourcedefinitionversion_resourceinstance.go +++ b/cloudformation/greengrass/aws-greengrass-resourcedefinitionversion_resourceinstance.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" +) -// AWSGreengrassResourceDefinitionVersion_ResourceInstance AWS CloudFormation Resource (AWS::Greengrass::ResourceDefinitionVersion.ResourceInstance) +// 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 AWSGreengrassResourceDefinitionVersion_ResourceInstance struct { +type ResourceDefinitionVersion_ResourceInstance struct { // Id AWS CloudFormation Property // Required: true @@ -19,7 +21,7 @@ type AWSGreengrassResourceDefinitionVersion_ResourceInstance struct { // 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"` + ResourceDataContainer *ResourceDefinitionVersion_ResourceDataContainer `json:"ResourceDataContainer,omitempty"` // _deletionPolicy represents a CloudFormation DeletionPolicy _deletionPolicy policies.DeletionPolicy @@ -32,42 +34,42 @@ type AWSGreengrassResourceDefinitionVersion_ResourceInstance struct { } // AWSCloudFormationType returns the AWS CloudFormation resource type -func (r *AWSGreengrassResourceDefinitionVersion_ResourceInstance) AWSCloudFormationType() string { +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 *AWSGreengrassResourceDefinitionVersion_ResourceInstance) DependsOn() []string { +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 *AWSGreengrassResourceDefinitionVersion_ResourceInstance) SetDependsOn(dependencies []string) { +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 *AWSGreengrassResourceDefinitionVersion_ResourceInstance) Metadata() map[string]interface{} { +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 *AWSGreengrassResourceDefinitionVersion_ResourceInstance) SetMetadata(metadata map[string]interface{}) { +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 *AWSGreengrassResourceDefinitionVersion_ResourceInstance) DeletionPolicy() policies.DeletionPolicy { +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 *AWSGreengrassResourceDefinitionVersion_ResourceInstance) SetDeletionPolicy(policy policies.DeletionPolicy) { +func (r *ResourceDefinitionVersion_ResourceInstance) SetDeletionPolicy(policy policies.DeletionPolicy) { r._deletionPolicy = policy } diff --git a/cloudformation/resources/aws-greengrass-resourcedefinitionversion_s3machinelearningmodelresourcedata.go b/cloudformation/greengrass/aws-greengrass-resourcedefinitionversion_s3machinelearningmodelresourcedata.go similarity index 68% rename from cloudformation/resources/aws-greengrass-resourcedefinitionversion_s3machinelearningmodelresourcedata.go rename to cloudformation/greengrass/aws-greengrass-resourcedefinitionversion_s3machinelearningmodelresourcedata.go index 8cbab52501..f2825aed13 100644 --- a/cloudformation/resources/aws-greengrass-resourcedefinitionversion_s3machinelearningmodelresourcedata.go +++ b/cloudformation/greengrass/aws-greengrass-resourcedefinitionversion_s3machinelearningmodelresourcedata.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" +) -// AWSGreengrassResourceDefinitionVersion_S3MachineLearningModelResourceData AWS CloudFormation Resource (AWS::Greengrass::ResourceDefinitionVersion.S3MachineLearningModelResourceData) +// 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 AWSGreengrassResourceDefinitionVersion_S3MachineLearningModelResourceData struct { +type ResourceDefinitionVersion_S3MachineLearningModelResourceData struct { // DestinationPath AWS CloudFormation Property // Required: true @@ -27,42 +29,42 @@ type AWSGreengrassResourceDefinitionVersion_S3MachineLearningModelResourceData s } // AWSCloudFormationType returns the AWS CloudFormation resource type -func (r *AWSGreengrassResourceDefinitionVersion_S3MachineLearningModelResourceData) AWSCloudFormationType() string { +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 *AWSGreengrassResourceDefinitionVersion_S3MachineLearningModelResourceData) DependsOn() []string { +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 *AWSGreengrassResourceDefinitionVersion_S3MachineLearningModelResourceData) SetDependsOn(dependencies []string) { +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 *AWSGreengrassResourceDefinitionVersion_S3MachineLearningModelResourceData) Metadata() map[string]interface{} { +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 *AWSGreengrassResourceDefinitionVersion_S3MachineLearningModelResourceData) SetMetadata(metadata map[string]interface{}) { +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 *AWSGreengrassResourceDefinitionVersion_S3MachineLearningModelResourceData) DeletionPolicy() policies.DeletionPolicy { +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 *AWSGreengrassResourceDefinitionVersion_S3MachineLearningModelResourceData) SetDeletionPolicy(policy policies.DeletionPolicy) { +func (r *ResourceDefinitionVersion_S3MachineLearningModelResourceData) SetDeletionPolicy(policy policies.DeletionPolicy) { r._deletionPolicy = policy } diff --git a/cloudformation/resources/aws-greengrass-resourcedefinitionversion_sagemakermachinelearningmodelresourcedata.go b/cloudformation/greengrass/aws-greengrass-resourcedefinitionversion_sagemakermachinelearningmodelresourcedata.go similarity index 67% rename from cloudformation/resources/aws-greengrass-resourcedefinitionversion_sagemakermachinelearningmodelresourcedata.go rename to cloudformation/greengrass/aws-greengrass-resourcedefinitionversion_sagemakermachinelearningmodelresourcedata.go index c1abafd879..0dfc281daa 100644 --- a/cloudformation/resources/aws-greengrass-resourcedefinitionversion_sagemakermachinelearningmodelresourcedata.go +++ b/cloudformation/greengrass/aws-greengrass-resourcedefinitionversion_sagemakermachinelearningmodelresourcedata.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" +) -// AWSGreengrassResourceDefinitionVersion_SageMakerMachineLearningModelResourceData AWS CloudFormation Resource (AWS::Greengrass::ResourceDefinitionVersion.SageMakerMachineLearningModelResourceData) +// 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 AWSGreengrassResourceDefinitionVersion_SageMakerMachineLearningModelResourceData struct { +type ResourceDefinitionVersion_SageMakerMachineLearningModelResourceData struct { // DestinationPath AWS CloudFormation Property // Required: true @@ -27,42 +29,42 @@ type AWSGreengrassResourceDefinitionVersion_SageMakerMachineLearningModelResourc } // AWSCloudFormationType returns the AWS CloudFormation resource type -func (r *AWSGreengrassResourceDefinitionVersion_SageMakerMachineLearningModelResourceData) AWSCloudFormationType() string { +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 *AWSGreengrassResourceDefinitionVersion_SageMakerMachineLearningModelResourceData) DependsOn() []string { +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 *AWSGreengrassResourceDefinitionVersion_SageMakerMachineLearningModelResourceData) SetDependsOn(dependencies []string) { +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 *AWSGreengrassResourceDefinitionVersion_SageMakerMachineLearningModelResourceData) Metadata() map[string]interface{} { +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 *AWSGreengrassResourceDefinitionVersion_SageMakerMachineLearningModelResourceData) SetMetadata(metadata map[string]interface{}) { +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 *AWSGreengrassResourceDefinitionVersion_SageMakerMachineLearningModelResourceData) DeletionPolicy() policies.DeletionPolicy { +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 *AWSGreengrassResourceDefinitionVersion_SageMakerMachineLearningModelResourceData) SetDeletionPolicy(policy policies.DeletionPolicy) { +func (r *ResourceDefinitionVersion_SageMakerMachineLearningModelResourceData) SetDeletionPolicy(policy policies.DeletionPolicy) { r._deletionPolicy = policy } diff --git a/cloudformation/resources/aws-greengrass-resourcedefinitionversion_secretsmanagersecretresourcedata.go b/cloudformation/greengrass/aws-greengrass-resourcedefinitionversion_secretsmanagersecretresourcedata.go similarity index 68% rename from cloudformation/resources/aws-greengrass-resourcedefinitionversion_secretsmanagersecretresourcedata.go rename to cloudformation/greengrass/aws-greengrass-resourcedefinitionversion_secretsmanagersecretresourcedata.go index 725bc11f39..f1ff0c41af 100644 --- a/cloudformation/resources/aws-greengrass-resourcedefinitionversion_secretsmanagersecretresourcedata.go +++ b/cloudformation/greengrass/aws-greengrass-resourcedefinitionversion_secretsmanagersecretresourcedata.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" +) -// AWSGreengrassResourceDefinitionVersion_SecretsManagerSecretResourceData AWS CloudFormation Resource (AWS::Greengrass::ResourceDefinitionVersion.SecretsManagerSecretResourceData) +// 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 AWSGreengrassResourceDefinitionVersion_SecretsManagerSecretResourceData struct { +type ResourceDefinitionVersion_SecretsManagerSecretResourceData struct { // ARN AWS CloudFormation Property // Required: true @@ -27,42 +29,42 @@ type AWSGreengrassResourceDefinitionVersion_SecretsManagerSecretResourceData str } // AWSCloudFormationType returns the AWS CloudFormation resource type -func (r *AWSGreengrassResourceDefinitionVersion_SecretsManagerSecretResourceData) AWSCloudFormationType() string { +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 *AWSGreengrassResourceDefinitionVersion_SecretsManagerSecretResourceData) DependsOn() []string { +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 *AWSGreengrassResourceDefinitionVersion_SecretsManagerSecretResourceData) SetDependsOn(dependencies []string) { +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 *AWSGreengrassResourceDefinitionVersion_SecretsManagerSecretResourceData) Metadata() map[string]interface{} { +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 *AWSGreengrassResourceDefinitionVersion_SecretsManagerSecretResourceData) SetMetadata(metadata map[string]interface{}) { +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 *AWSGreengrassResourceDefinitionVersion_SecretsManagerSecretResourceData) DeletionPolicy() policies.DeletionPolicy { +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 *AWSGreengrassResourceDefinitionVersion_SecretsManagerSecretResourceData) SetDeletionPolicy(policy policies.DeletionPolicy) { +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/resources/aws-greengrass-subscriptiondefinition_subscriptiondefinitionversion.go b/cloudformation/greengrass/aws-greengrass-subscriptiondefinition_subscriptiondefinitionversion.go similarity index 63% rename from cloudformation/resources/aws-greengrass-subscriptiondefinition_subscriptiondefinitionversion.go rename to cloudformation/greengrass/aws-greengrass-subscriptiondefinition_subscriptiondefinitionversion.go index 8222d341a2..6341e43890 100644 --- a/cloudformation/resources/aws-greengrass-subscriptiondefinition_subscriptiondefinitionversion.go +++ b/cloudformation/greengrass/aws-greengrass-subscriptiondefinition_subscriptiondefinitionversion.go @@ -1,15 +1,17 @@ -package resources +package greengrass -import "github.com/awslabs/goformation/v2/cloudformation/policies" +import ( + "github.com/awslabs/goformation/v3/cloudformation/policies" +) -// AWSGreengrassSubscriptionDefinition_SubscriptionDefinitionVersion AWS CloudFormation Resource (AWS::Greengrass::SubscriptionDefinition.SubscriptionDefinitionVersion) +// 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 AWSGreengrassSubscriptionDefinition_SubscriptionDefinitionVersion struct { +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 []AWSGreengrassSubscriptionDefinition_Subscription `json:"Subscriptions,omitempty"` + Subscriptions []SubscriptionDefinition_Subscription `json:"Subscriptions,omitempty"` // _deletionPolicy represents a CloudFormation DeletionPolicy _deletionPolicy policies.DeletionPolicy @@ -22,42 +24,42 @@ type AWSGreengrassSubscriptionDefinition_SubscriptionDefinitionVersion struct { } // AWSCloudFormationType returns the AWS CloudFormation resource type -func (r *AWSGreengrassSubscriptionDefinition_SubscriptionDefinitionVersion) AWSCloudFormationType() string { +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 *AWSGreengrassSubscriptionDefinition_SubscriptionDefinitionVersion) DependsOn() []string { +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 *AWSGreengrassSubscriptionDefinition_SubscriptionDefinitionVersion) SetDependsOn(dependencies []string) { +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 *AWSGreengrassSubscriptionDefinition_SubscriptionDefinitionVersion) Metadata() map[string]interface{} { +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 *AWSGreengrassSubscriptionDefinition_SubscriptionDefinitionVersion) SetMetadata(metadata map[string]interface{}) { +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 *AWSGreengrassSubscriptionDefinition_SubscriptionDefinitionVersion) DeletionPolicy() policies.DeletionPolicy { +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 *AWSGreengrassSubscriptionDefinition_SubscriptionDefinitionVersion) SetDeletionPolicy(policy policies.DeletionPolicy) { +func (r *SubscriptionDefinition_SubscriptionDefinitionVersion) SetDeletionPolicy(policy policies.DeletionPolicy) { r._deletionPolicy = policy } diff --git a/cloudformation/resources/aws-greengrass-subscriptiondefinitionversion.go b/cloudformation/greengrass/aws-greengrass-subscriptiondefinitionversion.go similarity index 74% rename from cloudformation/resources/aws-greengrass-subscriptiondefinitionversion.go rename to cloudformation/greengrass/aws-greengrass-subscriptiondefinitionversion.go index de78634e44..ecde9d04a2 100644 --- a/cloudformation/resources/aws-greengrass-subscriptiondefinitionversion.go +++ b/cloudformation/greengrass/aws-greengrass-subscriptiondefinitionversion.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" ) -// AWSGreengrassSubscriptionDefinitionVersion AWS CloudFormation Resource (AWS::Greengrass::SubscriptionDefinitionVersion) +// SubscriptionDefinitionVersion AWS CloudFormation Resource (AWS::Greengrass::SubscriptionDefinitionVersion) // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-greengrass-subscriptiondefinitionversion.html -type AWSGreengrassSubscriptionDefinitionVersion struct { +type SubscriptionDefinitionVersion struct { // SubscriptionDefinitionId AWS CloudFormation Property // Required: true @@ -19,7 +20,7 @@ type AWSGreengrassSubscriptionDefinitionVersion struct { // 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"` + Subscriptions []SubscriptionDefinitionVersion_Subscription `json:"Subscriptions,omitempty"` // _deletionPolicy represents a CloudFormation DeletionPolicy _deletionPolicy policies.DeletionPolicy @@ -32,50 +33,50 @@ type AWSGreengrassSubscriptionDefinitionVersion struct { } // AWSCloudFormationType returns the AWS CloudFormation resource type -func (r *AWSGreengrassSubscriptionDefinitionVersion) AWSCloudFormationType() string { +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 *AWSGreengrassSubscriptionDefinitionVersion) DependsOn() []string { +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 *AWSGreengrassSubscriptionDefinitionVersion) SetDependsOn(dependencies []string) { +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 *AWSGreengrassSubscriptionDefinitionVersion) Metadata() map[string]interface{} { +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 *AWSGreengrassSubscriptionDefinitionVersion) SetMetadata(metadata map[string]interface{}) { +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 *AWSGreengrassSubscriptionDefinitionVersion) DeletionPolicy() policies.DeletionPolicy { +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 *AWSGreengrassSubscriptionDefinitionVersion) SetDeletionPolicy(policy policies.DeletionPolicy) { +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 AWSGreengrassSubscriptionDefinitionVersion) MarshalJSON() ([]byte, error) { - type Properties AWSGreengrassSubscriptionDefinitionVersion +func (r SubscriptionDefinitionVersion) MarshalJSON() ([]byte, error) { + type Properties SubscriptionDefinitionVersion return json.Marshal(&struct { Type string Properties Properties @@ -93,8 +94,8 @@ func (r AWSGreengrassSubscriptionDefinitionVersion) MarshalJSON() ([]byte, error // 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 +func (r *SubscriptionDefinitionVersion) UnmarshalJSON(b []byte) error { + type Properties SubscriptionDefinitionVersion res := &struct { Type string Properties *Properties @@ -113,7 +114,7 @@ func (r *AWSGreengrassSubscriptionDefinitionVersion) UnmarshalJSON(b []byte) err // If the resource has no Properties set, it could be nil if res.Properties != nil { - *r = AWSGreengrassSubscriptionDefinitionVersion(*res.Properties) + *r = SubscriptionDefinitionVersion(*res.Properties) } if res.DependsOn != nil { r._dependsOn = res.DependsOn diff --git a/cloudformation/resources/aws-greengrass-subscriptiondefinitionversion_subscription.go b/cloudformation/greengrass/aws-greengrass-subscriptiondefinitionversion_subscription.go similarity index 74% rename from cloudformation/resources/aws-greengrass-subscriptiondefinitionversion_subscription.go rename to cloudformation/greengrass/aws-greengrass-subscriptiondefinitionversion_subscription.go index 74558d8cfc..8c33757e72 100644 --- a/cloudformation/resources/aws-greengrass-subscriptiondefinitionversion_subscription.go +++ b/cloudformation/greengrass/aws-greengrass-subscriptiondefinitionversion_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" +) -// AWSGreengrassSubscriptionDefinitionVersion_Subscription AWS CloudFormation Resource (AWS::Greengrass::SubscriptionDefinitionVersion.Subscription) +// 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 AWSGreengrassSubscriptionDefinitionVersion_Subscription struct { +type SubscriptionDefinitionVersion_Subscription struct { // Id AWS CloudFormation Property // Required: true @@ -37,42 +39,42 @@ type AWSGreengrassSubscriptionDefinitionVersion_Subscription struct { } // AWSCloudFormationType returns the AWS CloudFormation resource type -func (r *AWSGreengrassSubscriptionDefinitionVersion_Subscription) AWSCloudFormationType() string { +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 *AWSGreengrassSubscriptionDefinitionVersion_Subscription) DependsOn() []string { +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 *AWSGreengrassSubscriptionDefinitionVersion_Subscription) SetDependsOn(dependencies []string) { +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 *AWSGreengrassSubscriptionDefinitionVersion_Subscription) Metadata() map[string]interface{} { +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 *AWSGreengrassSubscriptionDefinitionVersion_Subscription) SetMetadata(metadata map[string]interface{}) { +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 *AWSGreengrassSubscriptionDefinitionVersion_Subscription) DeletionPolicy() policies.DeletionPolicy { +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 *AWSGreengrassSubscriptionDefinitionVersion_Subscription) SetDeletionPolicy(policy policies.DeletionPolicy) { +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/resources/aws-guardduty-filter_findingcriteria.go b/cloudformation/guardduty/aws-guardduty-filter_findingcriteria.go similarity index 72% rename from cloudformation/resources/aws-guardduty-filter_findingcriteria.go rename to cloudformation/guardduty/aws-guardduty-filter_findingcriteria.go index a6d93ba771..c844c58b0d 100644 --- a/cloudformation/resources/aws-guardduty-filter_findingcriteria.go +++ b/cloudformation/guardduty/aws-guardduty-filter_findingcriteria.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_FindingCriteria AWS CloudFormation Resource (AWS::GuardDuty::Filter.FindingCriteria) +// 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 AWSGuardDutyFilter_FindingCriteria struct { +type Filter_FindingCriteria struct { // Criterion AWS CloudFormation Property // Required: false @@ -14,7 +16,7 @@ type AWSGuardDutyFilter_FindingCriteria struct { // 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"` + ItemType *Filter_Condition `json:"ItemType,omitempty"` // _deletionPolicy represents a CloudFormation DeletionPolicy _deletionPolicy policies.DeletionPolicy @@ -27,42 +29,42 @@ type AWSGuardDutyFilter_FindingCriteria struct { } // AWSCloudFormationType returns the AWS CloudFormation resource type -func (r *AWSGuardDutyFilter_FindingCriteria) AWSCloudFormationType() string { +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 *AWSGuardDutyFilter_FindingCriteria) DependsOn() []string { +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 *AWSGuardDutyFilter_FindingCriteria) SetDependsOn(dependencies []string) { +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 *AWSGuardDutyFilter_FindingCriteria) Metadata() map[string]interface{} { +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 *AWSGuardDutyFilter_FindingCriteria) SetMetadata(metadata map[string]interface{}) { +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 *AWSGuardDutyFilter_FindingCriteria) DeletionPolicy() policies.DeletionPolicy { +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 *AWSGuardDutyFilter_FindingCriteria) SetDeletionPolicy(policy policies.DeletionPolicy) { +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/resources/aws-iot-thing_attributepayload.go b/cloudformation/iot/aws-iot-thing_attributepayload.go similarity index 72% rename from cloudformation/resources/aws-iot-thing_attributepayload.go rename to cloudformation/iot/aws-iot-thing_attributepayload.go index fbaa878cd2..cbb29ea06d 100644 --- a/cloudformation/resources/aws-iot-thing_attributepayload.go +++ b/cloudformation/iot/aws-iot-thing_attributepayload.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" +) -// AWSIoTThing_AttributePayload AWS CloudFormation Resource (AWS::IoT::Thing.AttributePayload) +// 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 AWSIoTThing_AttributePayload struct { +type Thing_AttributePayload struct { // Attributes AWS CloudFormation Property // Required: false @@ -22,42 +24,42 @@ type AWSIoTThing_AttributePayload struct { } // AWSCloudFormationType returns the AWS CloudFormation resource type -func (r *AWSIoTThing_AttributePayload) AWSCloudFormationType() string { +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 *AWSIoTThing_AttributePayload) DependsOn() []string { +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 *AWSIoTThing_AttributePayload) SetDependsOn(dependencies []string) { +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 *AWSIoTThing_AttributePayload) Metadata() map[string]interface{} { +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 *AWSIoTThing_AttributePayload) SetMetadata(metadata map[string]interface{}) { +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 *AWSIoTThing_AttributePayload) DeletionPolicy() policies.DeletionPolicy { +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 *AWSIoTThing_AttributePayload) SetDeletionPolicy(policy policies.DeletionPolicy) { +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/resources/aws-iot-topicrule_action.go b/cloudformation/iot/aws-iot-topicrule_action.go similarity index 73% rename from cloudformation/resources/aws-iot-topicrule_action.go rename to cloudformation/iot/aws-iot-topicrule_action.go index e6bb2c68da..6aad171de6 100644 --- a/cloudformation/resources/aws-iot-topicrule_action.go +++ b/cloudformation/iot/aws-iot-topicrule_action.go @@ -1,80 +1,82 @@ -package resources +package iot -import "github.com/awslabs/goformation/v2/cloudformation/policies" +import ( + "github.com/awslabs/goformation/v3/cloudformation/policies" +) -// AWSIoTTopicRule_Action AWS CloudFormation Resource (AWS::IoT::TopicRule.Action) +// 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 AWSIoTTopicRule_Action struct { +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 *AWSIoTTopicRule_CloudwatchAlarmAction `json:"CloudwatchAlarm,omitempty"` + 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 *AWSIoTTopicRule_CloudwatchMetricAction `json:"CloudwatchMetric,omitempty"` + 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 *AWSIoTTopicRule_DynamoDBAction `json:"DynamoDB,omitempty"` + 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 *AWSIoTTopicRule_DynamoDBv2Action `json:"DynamoDBv2,omitempty"` + 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 *AWSIoTTopicRule_ElasticsearchAction `json:"Elasticsearch,omitempty"` + 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 *AWSIoTTopicRule_FirehoseAction `json:"Firehose,omitempty"` + 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 *AWSIoTTopicRule_IotAnalyticsAction `json:"IotAnalytics,omitempty"` + 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 *AWSIoTTopicRule_KinesisAction `json:"Kinesis,omitempty"` + 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 *AWSIoTTopicRule_LambdaAction `json:"Lambda,omitempty"` + 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 *AWSIoTTopicRule_RepublishAction `json:"Republish,omitempty"` + 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 *AWSIoTTopicRule_S3Action `json:"S3,omitempty"` + 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 *AWSIoTTopicRule_SnsAction `json:"Sns,omitempty"` + 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 *AWSIoTTopicRule_SqsAction `json:"Sqs,omitempty"` + 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 *AWSIoTTopicRule_StepFunctionsAction `json:"StepFunctions,omitempty"` + StepFunctions *TopicRule_StepFunctionsAction `json:"StepFunctions,omitempty"` // _deletionPolicy represents a CloudFormation DeletionPolicy _deletionPolicy policies.DeletionPolicy @@ -87,42 +89,42 @@ type AWSIoTTopicRule_Action struct { } // AWSCloudFormationType returns the AWS CloudFormation resource type -func (r *AWSIoTTopicRule_Action) AWSCloudFormationType() string { +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 *AWSIoTTopicRule_Action) DependsOn() []string { +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 *AWSIoTTopicRule_Action) SetDependsOn(dependencies []string) { +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 *AWSIoTTopicRule_Action) Metadata() map[string]interface{} { +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 *AWSIoTTopicRule_Action) SetMetadata(metadata map[string]interface{}) { +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 *AWSIoTTopicRule_Action) DeletionPolicy() policies.DeletionPolicy { +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 *AWSIoTTopicRule_Action) SetDeletionPolicy(policy policies.DeletionPolicy) { +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/resources/aws-iot-topicrule_dynamodbv2action.go b/cloudformation/iot/aws-iot-topicrule_dynamodbv2action.go similarity index 72% rename from cloudformation/resources/aws-iot-topicrule_dynamodbv2action.go rename to cloudformation/iot/aws-iot-topicrule_dynamodbv2action.go index c0a8431a0c..9008d4a096 100644 --- a/cloudformation/resources/aws-iot-topicrule_dynamodbv2action.go +++ b/cloudformation/iot/aws-iot-topicrule_dynamodbv2action.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_DynamoDBv2Action AWS CloudFormation Resource (AWS::IoT::TopicRule.DynamoDBv2Action) +// 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 AWSIoTTopicRule_DynamoDBv2Action struct { +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 *AWSIoTTopicRule_PutItemInput `json:"PutItem,omitempty"` + PutItem *TopicRule_PutItemInput `json:"PutItem,omitempty"` // RoleArn AWS CloudFormation Property // Required: false @@ -27,42 +29,42 @@ type AWSIoTTopicRule_DynamoDBv2Action struct { } // AWSCloudFormationType returns the AWS CloudFormation resource type -func (r *AWSIoTTopicRule_DynamoDBv2Action) AWSCloudFormationType() string { +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 *AWSIoTTopicRule_DynamoDBv2Action) DependsOn() []string { +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 *AWSIoTTopicRule_DynamoDBv2Action) SetDependsOn(dependencies []string) { +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 *AWSIoTTopicRule_DynamoDBv2Action) Metadata() map[string]interface{} { +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 *AWSIoTTopicRule_DynamoDBv2Action) SetMetadata(metadata map[string]interface{}) { +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 *AWSIoTTopicRule_DynamoDBv2Action) DeletionPolicy() policies.DeletionPolicy { +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 *AWSIoTTopicRule_DynamoDBv2Action) SetDeletionPolicy(policy policies.DeletionPolicy) { +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/resources/aws-iot-topicrule_iotanalyticsaction.go b/cloudformation/iot/aws-iot-topicrule_iotanalyticsaction.go similarity index 73% rename from cloudformation/resources/aws-iot-topicrule_iotanalyticsaction.go rename to cloudformation/iot/aws-iot-topicrule_iotanalyticsaction.go index 2555466e93..9c4224dada 100644 --- a/cloudformation/resources/aws-iot-topicrule_iotanalyticsaction.go +++ b/cloudformation/iot/aws-iot-topicrule_iotanalyticsaction.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_IotAnalyticsAction AWS CloudFormation Resource (AWS::IoT::TopicRule.IotAnalyticsAction) +// 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 AWSIoTTopicRule_IotAnalyticsAction struct { +type TopicRule_IotAnalyticsAction struct { // ChannelName AWS CloudFormation Property // Required: true @@ -27,42 +29,42 @@ type AWSIoTTopicRule_IotAnalyticsAction struct { } // AWSCloudFormationType returns the AWS CloudFormation resource type -func (r *AWSIoTTopicRule_IotAnalyticsAction) AWSCloudFormationType() string { +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 *AWSIoTTopicRule_IotAnalyticsAction) DependsOn() []string { +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 *AWSIoTTopicRule_IotAnalyticsAction) SetDependsOn(dependencies []string) { +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 *AWSIoTTopicRule_IotAnalyticsAction) Metadata() map[string]interface{} { +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 *AWSIoTTopicRule_IotAnalyticsAction) SetMetadata(metadata map[string]interface{}) { +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 *AWSIoTTopicRule_IotAnalyticsAction) DeletionPolicy() policies.DeletionPolicy { +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 *AWSIoTTopicRule_IotAnalyticsAction) SetDeletionPolicy(policy policies.DeletionPolicy) { +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/resources/aws-iot-topicrule_lambdaaction.go b/cloudformation/iot/aws-iot-topicrule_lambdaaction.go similarity index 72% rename from cloudformation/resources/aws-iot-topicrule_lambdaaction.go rename to cloudformation/iot/aws-iot-topicrule_lambdaaction.go index d9c357449b..b4adde4624 100644 --- a/cloudformation/resources/aws-iot-topicrule_lambdaaction.go +++ b/cloudformation/iot/aws-iot-topicrule_lambdaaction.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_LambdaAction AWS CloudFormation Resource (AWS::IoT::TopicRule.LambdaAction) +// 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 AWSIoTTopicRule_LambdaAction struct { +type TopicRule_LambdaAction struct { // FunctionArn AWS CloudFormation Property // Required: false @@ -22,42 +24,42 @@ type AWSIoTTopicRule_LambdaAction struct { } // AWSCloudFormationType returns the AWS CloudFormation resource type -func (r *AWSIoTTopicRule_LambdaAction) AWSCloudFormationType() string { +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 *AWSIoTTopicRule_LambdaAction) DependsOn() []string { +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 *AWSIoTTopicRule_LambdaAction) SetDependsOn(dependencies []string) { +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 *AWSIoTTopicRule_LambdaAction) Metadata() map[string]interface{} { +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 *AWSIoTTopicRule_LambdaAction) SetMetadata(metadata map[string]interface{}) { +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 *AWSIoTTopicRule_LambdaAction) DeletionPolicy() policies.DeletionPolicy { +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 *AWSIoTTopicRule_LambdaAction) SetDeletionPolicy(policy policies.DeletionPolicy) { +func (r *TopicRule_LambdaAction) SetDeletionPolicy(policy policies.DeletionPolicy) { r._deletionPolicy = policy } diff --git a/cloudformation/resources/aws-iot-topicrule_putiteminput.go b/cloudformation/iot/aws-iot-topicrule_putiteminput.go similarity index 72% rename from cloudformation/resources/aws-iot-topicrule_putiteminput.go rename to cloudformation/iot/aws-iot-topicrule_putiteminput.go index e04f11c520..becd736dd0 100644 --- a/cloudformation/resources/aws-iot-topicrule_putiteminput.go +++ b/cloudformation/iot/aws-iot-topicrule_putiteminput.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_PutItemInput AWS CloudFormation Resource (AWS::IoT::TopicRule.PutItemInput) +// 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 AWSIoTTopicRule_PutItemInput struct { +type TopicRule_PutItemInput struct { // TableName AWS CloudFormation Property // Required: true @@ -22,42 +24,42 @@ type AWSIoTTopicRule_PutItemInput struct { } // AWSCloudFormationType returns the AWS CloudFormation resource type -func (r *AWSIoTTopicRule_PutItemInput) AWSCloudFormationType() string { +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 *AWSIoTTopicRule_PutItemInput) DependsOn() []string { +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 *AWSIoTTopicRule_PutItemInput) SetDependsOn(dependencies []string) { +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 *AWSIoTTopicRule_PutItemInput) Metadata() map[string]interface{} { +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 *AWSIoTTopicRule_PutItemInput) SetMetadata(metadata map[string]interface{}) { +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 *AWSIoTTopicRule_PutItemInput) DeletionPolicy() policies.DeletionPolicy { +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 *AWSIoTTopicRule_PutItemInput) SetDeletionPolicy(policy policies.DeletionPolicy) { +func (r *TopicRule_PutItemInput) SetDeletionPolicy(policy policies.DeletionPolicy) { r._deletionPolicy = policy } diff --git a/cloudformation/resources/aws-iot-topicrule_republishaction.go b/cloudformation/iot/aws-iot-topicrule_republishaction.go similarity index 74% rename from cloudformation/resources/aws-iot-topicrule_republishaction.go rename to cloudformation/iot/aws-iot-topicrule_republishaction.go index 3f54c8ce62..b7edd4b548 100644 --- a/cloudformation/resources/aws-iot-topicrule_republishaction.go +++ b/cloudformation/iot/aws-iot-topicrule_republishaction.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_RepublishAction AWS CloudFormation Resource (AWS::IoT::TopicRule.RepublishAction) +// 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 AWSIoTTopicRule_RepublishAction struct { +type TopicRule_RepublishAction struct { // RoleArn AWS CloudFormation Property // Required: true @@ -27,42 +29,42 @@ type AWSIoTTopicRule_RepublishAction struct { } // AWSCloudFormationType returns the AWS CloudFormation resource type -func (r *AWSIoTTopicRule_RepublishAction) AWSCloudFormationType() string { +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 *AWSIoTTopicRule_RepublishAction) DependsOn() []string { +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 *AWSIoTTopicRule_RepublishAction) SetDependsOn(dependencies []string) { +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 *AWSIoTTopicRule_RepublishAction) Metadata() map[string]interface{} { +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 *AWSIoTTopicRule_RepublishAction) SetMetadata(metadata map[string]interface{}) { +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 *AWSIoTTopicRule_RepublishAction) DeletionPolicy() policies.DeletionPolicy { +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 *AWSIoTTopicRule_RepublishAction) SetDeletionPolicy(policy policies.DeletionPolicy) { +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/resources/aws-iot1click-project_devicetemplate.go b/cloudformation/iot1click/aws-iot1click-project_devicetemplate.go similarity index 74% rename from cloudformation/resources/aws-iot1click-project_devicetemplate.go rename to cloudformation/iot1click/aws-iot1click-project_devicetemplate.go index 83860af345..c8d894e2a2 100644 --- a/cloudformation/resources/aws-iot1click-project_devicetemplate.go +++ b/cloudformation/iot1click/aws-iot1click-project_devicetemplate.go @@ -1,10 +1,12 @@ -package resources +package iot1click -import "github.com/awslabs/goformation/v2/cloudformation/policies" +import ( + "github.com/awslabs/goformation/v3/cloudformation/policies" +) -// AWSIoT1ClickProject_DeviceTemplate AWS CloudFormation Resource (AWS::IoT1Click::Project.DeviceTemplate) +// 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 AWSIoT1ClickProject_DeviceTemplate struct { +type Project_DeviceTemplate struct { // CallbackOverrides AWS CloudFormation Property // Required: false @@ -27,42 +29,42 @@ type AWSIoT1ClickProject_DeviceTemplate struct { } // AWSCloudFormationType returns the AWS CloudFormation resource type -func (r *AWSIoT1ClickProject_DeviceTemplate) AWSCloudFormationType() string { +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 *AWSIoT1ClickProject_DeviceTemplate) DependsOn() []string { +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 *AWSIoT1ClickProject_DeviceTemplate) SetDependsOn(dependencies []string) { +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 *AWSIoT1ClickProject_DeviceTemplate) Metadata() map[string]interface{} { +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 *AWSIoT1ClickProject_DeviceTemplate) SetMetadata(metadata map[string]interface{}) { +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 *AWSIoT1ClickProject_DeviceTemplate) DeletionPolicy() policies.DeletionPolicy { +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 *AWSIoT1ClickProject_DeviceTemplate) SetDeletionPolicy(policy policies.DeletionPolicy) { +func (r *Project_DeviceTemplate) SetDeletionPolicy(policy policies.DeletionPolicy) { r._deletionPolicy = policy } diff --git a/cloudformation/resources/aws-iot1click-project_placementtemplate.go b/cloudformation/iot1click/aws-iot1click-project_placementtemplate.go similarity index 74% rename from cloudformation/resources/aws-iot1click-project_placementtemplate.go rename to cloudformation/iot1click/aws-iot1click-project_placementtemplate.go index 22824a7512..21be59cf21 100644 --- a/cloudformation/resources/aws-iot1click-project_placementtemplate.go +++ b/cloudformation/iot1click/aws-iot1click-project_placementtemplate.go @@ -1,10 +1,12 @@ -package resources +package iot1click -import "github.com/awslabs/goformation/v2/cloudformation/policies" +import ( + "github.com/awslabs/goformation/v3/cloudformation/policies" +) -// AWSIoT1ClickProject_PlacementTemplate AWS CloudFormation Resource (AWS::IoT1Click::Project.PlacementTemplate) +// 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 AWSIoT1ClickProject_PlacementTemplate struct { +type Project_PlacementTemplate struct { // DefaultAttributes AWS CloudFormation Property // Required: false @@ -27,42 +29,42 @@ type AWSIoT1ClickProject_PlacementTemplate struct { } // AWSCloudFormationType returns the AWS CloudFormation resource type -func (r *AWSIoT1ClickProject_PlacementTemplate) AWSCloudFormationType() string { +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 *AWSIoT1ClickProject_PlacementTemplate) DependsOn() []string { +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 *AWSIoT1ClickProject_PlacementTemplate) SetDependsOn(dependencies []string) { +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 *AWSIoT1ClickProject_PlacementTemplate) Metadata() map[string]interface{} { +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 *AWSIoT1ClickProject_PlacementTemplate) SetMetadata(metadata map[string]interface{}) { +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 *AWSIoT1ClickProject_PlacementTemplate) DeletionPolicy() policies.DeletionPolicy { +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 *AWSIoT1ClickProject_PlacementTemplate) SetDeletionPolicy(policy policies.DeletionPolicy) { +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/resources/aws-iotanalytics-channel_channelstorage.go b/cloudformation/iotanalytics/aws-iotanalytics-channel_channelstorage.go similarity index 68% rename from cloudformation/resources/aws-iotanalytics-channel_channelstorage.go rename to cloudformation/iotanalytics/aws-iotanalytics-channel_channelstorage.go index 0fee5a473a..3c7863797e 100644 --- a/cloudformation/resources/aws-iotanalytics-channel_channelstorage.go +++ b/cloudformation/iotanalytics/aws-iotanalytics-channel_channelstorage.go @@ -1,20 +1,22 @@ -package resources +package iotanalytics -import "github.com/awslabs/goformation/v2/cloudformation/policies" +import ( + "github.com/awslabs/goformation/v3/cloudformation/policies" +) -// AWSIoTAnalyticsChannel_ChannelStorage AWS CloudFormation Resource (AWS::IoTAnalytics::Channel.ChannelStorage) +// 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 AWSIoTAnalyticsChannel_ChannelStorage struct { +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 *AWSIoTAnalyticsChannel_CustomerManagedS3 `json:"CustomerManagedS3,omitempty"` + 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 *AWSIoTAnalyticsChannel_ServiceManagedS3 `json:"ServiceManagedS3,omitempty"` + ServiceManagedS3 *Channel_ServiceManagedS3 `json:"ServiceManagedS3,omitempty"` // _deletionPolicy represents a CloudFormation DeletionPolicy _deletionPolicy policies.DeletionPolicy @@ -27,42 +29,42 @@ type AWSIoTAnalyticsChannel_ChannelStorage struct { } // AWSCloudFormationType returns the AWS CloudFormation resource type -func (r *AWSIoTAnalyticsChannel_ChannelStorage) AWSCloudFormationType() string { +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 *AWSIoTAnalyticsChannel_ChannelStorage) DependsOn() []string { +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 *AWSIoTAnalyticsChannel_ChannelStorage) SetDependsOn(dependencies []string) { +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 *AWSIoTAnalyticsChannel_ChannelStorage) Metadata() map[string]interface{} { +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 *AWSIoTAnalyticsChannel_ChannelStorage) SetMetadata(metadata map[string]interface{}) { +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 *AWSIoTAnalyticsChannel_ChannelStorage) DeletionPolicy() policies.DeletionPolicy { +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 *AWSIoTAnalyticsChannel_ChannelStorage) SetDeletionPolicy(policy policies.DeletionPolicy) { +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/resources/aws-iotanalytics-channel_retentionperiod.go b/cloudformation/iotanalytics/aws-iotanalytics-channel_retentionperiod.go similarity index 73% rename from cloudformation/resources/aws-iotanalytics-channel_retentionperiod.go rename to cloudformation/iotanalytics/aws-iotanalytics-channel_retentionperiod.go index 4f16932424..b9aac4f6ea 100644 --- a/cloudformation/resources/aws-iotanalytics-channel_retentionperiod.go +++ b/cloudformation/iotanalytics/aws-iotanalytics-channel_retentionperiod.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_RetentionPeriod AWS CloudFormation Resource (AWS::IoTAnalytics::Channel.RetentionPeriod) +// 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 AWSIoTAnalyticsChannel_RetentionPeriod struct { +type Channel_RetentionPeriod struct { // NumberOfDays AWS CloudFormation Property // Required: false @@ -27,42 +29,42 @@ type AWSIoTAnalyticsChannel_RetentionPeriod struct { } // AWSCloudFormationType returns the AWS CloudFormation resource type -func (r *AWSIoTAnalyticsChannel_RetentionPeriod) AWSCloudFormationType() string { +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 *AWSIoTAnalyticsChannel_RetentionPeriod) DependsOn() []string { +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 *AWSIoTAnalyticsChannel_RetentionPeriod) SetDependsOn(dependencies []string) { +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 *AWSIoTAnalyticsChannel_RetentionPeriod) Metadata() map[string]interface{} { +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 *AWSIoTAnalyticsChannel_RetentionPeriod) SetMetadata(metadata map[string]interface{}) { +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 *AWSIoTAnalyticsChannel_RetentionPeriod) DeletionPolicy() policies.DeletionPolicy { +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 *AWSIoTAnalyticsChannel_RetentionPeriod) SetDeletionPolicy(policy policies.DeletionPolicy) { +func (r *Channel_RetentionPeriod) SetDeletionPolicy(policy policies.DeletionPolicy) { r._deletionPolicy = policy } diff --git a/cloudformation/resources/aws-iotanalytics-channel_servicemanageds3.go b/cloudformation/iotanalytics/aws-iotanalytics-channel_servicemanageds3.go similarity index 67% rename from cloudformation/resources/aws-iotanalytics-channel_servicemanageds3.go rename to cloudformation/iotanalytics/aws-iotanalytics-channel_servicemanageds3.go index b770e1fdef..130d167970 100644 --- a/cloudformation/resources/aws-iotanalytics-channel_servicemanageds3.go +++ b/cloudformation/iotanalytics/aws-iotanalytics-channel_servicemanageds3.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_ServiceManagedS3 AWS CloudFormation Resource (AWS::IoTAnalytics::Channel.ServiceManagedS3) +// 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 AWSIoTAnalyticsChannel_ServiceManagedS3 struct { +type Channel_ServiceManagedS3 struct { // _deletionPolicy represents a CloudFormation DeletionPolicy _deletionPolicy policies.DeletionPolicy @@ -17,42 +19,42 @@ type AWSIoTAnalyticsChannel_ServiceManagedS3 struct { } // AWSCloudFormationType returns the AWS CloudFormation resource type -func (r *AWSIoTAnalyticsChannel_ServiceManagedS3) AWSCloudFormationType() string { +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 *AWSIoTAnalyticsChannel_ServiceManagedS3) DependsOn() []string { +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 *AWSIoTAnalyticsChannel_ServiceManagedS3) SetDependsOn(dependencies []string) { +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 *AWSIoTAnalyticsChannel_ServiceManagedS3) Metadata() map[string]interface{} { +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 *AWSIoTAnalyticsChannel_ServiceManagedS3) SetMetadata(metadata map[string]interface{}) { +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 *AWSIoTAnalyticsChannel_ServiceManagedS3) DeletionPolicy() policies.DeletionPolicy { +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 *AWSIoTAnalyticsChannel_ServiceManagedS3) SetDeletionPolicy(policy policies.DeletionPolicy) { +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/resources/aws-iotanalytics-dataset_action.go b/cloudformation/iotanalytics/aws-iotanalytics-dataset_action.go similarity index 72% rename from cloudformation/resources/aws-iotanalytics-dataset_action.go rename to cloudformation/iotanalytics/aws-iotanalytics-dataset_action.go index 32ad49909b..d5676af46a 100644 --- a/cloudformation/resources/aws-iotanalytics-dataset_action.go +++ b/cloudformation/iotanalytics/aws-iotanalytics-dataset_action.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" +) -// AWSIoTAnalyticsDataset_Action AWS CloudFormation Resource (AWS::IoTAnalytics::Dataset.Action) +// 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 AWSIoTAnalyticsDataset_Action struct { +type Dataset_Action struct { // ActionName AWS CloudFormation Property // Required: true @@ -14,12 +16,12 @@ type AWSIoTAnalyticsDataset_Action struct { // 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"` + 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 *AWSIoTAnalyticsDataset_QueryAction `json:"QueryAction,omitempty"` + QueryAction *Dataset_QueryAction `json:"QueryAction,omitempty"` // _deletionPolicy represents a CloudFormation DeletionPolicy _deletionPolicy policies.DeletionPolicy @@ -32,42 +34,42 @@ type AWSIoTAnalyticsDataset_Action struct { } // AWSCloudFormationType returns the AWS CloudFormation resource type -func (r *AWSIoTAnalyticsDataset_Action) AWSCloudFormationType() string { +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 *AWSIoTAnalyticsDataset_Action) DependsOn() []string { +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 *AWSIoTAnalyticsDataset_Action) SetDependsOn(dependencies []string) { +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 *AWSIoTAnalyticsDataset_Action) Metadata() map[string]interface{} { +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 *AWSIoTAnalyticsDataset_Action) SetMetadata(metadata map[string]interface{}) { +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 *AWSIoTAnalyticsDataset_Action) DeletionPolicy() policies.DeletionPolicy { +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 *AWSIoTAnalyticsDataset_Action) SetDeletionPolicy(policy policies.DeletionPolicy) { +func (r *Dataset_Action) SetDeletionPolicy(policy policies.DeletionPolicy) { r._deletionPolicy = policy } diff --git a/cloudformation/resources/aws-iotanalytics-dataset_containeraction.go b/cloudformation/iotanalytics/aws-iotanalytics-dataset_containeraction.go similarity index 73% rename from cloudformation/resources/aws-iotanalytics-dataset_containeraction.go rename to cloudformation/iotanalytics/aws-iotanalytics-dataset_containeraction.go index 77532e2691..16cf564ffd 100644 --- a/cloudformation/resources/aws-iotanalytics-dataset_containeraction.go +++ b/cloudformation/iotanalytics/aws-iotanalytics-dataset_containeraction.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" +) -// AWSIoTAnalyticsDataset_ContainerAction AWS CloudFormation Resource (AWS::IoTAnalytics::Dataset.ContainerAction) +// 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 AWSIoTAnalyticsDataset_ContainerAction struct { +type Dataset_ContainerAction struct { // ExecutionRoleArn AWS CloudFormation Property // Required: true @@ -19,12 +21,12 @@ type AWSIoTAnalyticsDataset_ContainerAction struct { // 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"` + 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 []AWSIoTAnalyticsDataset_Variable `json:"Variables,omitempty"` + Variables []Dataset_Variable `json:"Variables,omitempty"` // _deletionPolicy represents a CloudFormation DeletionPolicy _deletionPolicy policies.DeletionPolicy @@ -37,42 +39,42 @@ type AWSIoTAnalyticsDataset_ContainerAction struct { } // AWSCloudFormationType returns the AWS CloudFormation resource type -func (r *AWSIoTAnalyticsDataset_ContainerAction) AWSCloudFormationType() string { +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 *AWSIoTAnalyticsDataset_ContainerAction) DependsOn() []string { +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 *AWSIoTAnalyticsDataset_ContainerAction) SetDependsOn(dependencies []string) { +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 *AWSIoTAnalyticsDataset_ContainerAction) Metadata() map[string]interface{} { +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 *AWSIoTAnalyticsDataset_ContainerAction) SetMetadata(metadata map[string]interface{}) { +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 *AWSIoTAnalyticsDataset_ContainerAction) DeletionPolicy() policies.DeletionPolicy { +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 *AWSIoTAnalyticsDataset_ContainerAction) SetDeletionPolicy(policy policies.DeletionPolicy) { +func (r *Dataset_ContainerAction) SetDeletionPolicy(policy policies.DeletionPolicy) { r._deletionPolicy = policy } diff --git a/cloudformation/resources/aws-iotanalytics-dataset_datasetcontentdeliveryrule.go b/cloudformation/iotanalytics/aws-iotanalytics-dataset_datasetcontentdeliveryrule.go similarity index 68% rename from cloudformation/resources/aws-iotanalytics-dataset_datasetcontentdeliveryrule.go rename to cloudformation/iotanalytics/aws-iotanalytics-dataset_datasetcontentdeliveryrule.go index 1abc911321..2eaa4eee51 100644 --- a/cloudformation/resources/aws-iotanalytics-dataset_datasetcontentdeliveryrule.go +++ b/cloudformation/iotanalytics/aws-iotanalytics-dataset_datasetcontentdeliveryrule.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_DatasetContentDeliveryRule AWS CloudFormation Resource (AWS::IoTAnalytics::Dataset.DatasetContentDeliveryRule) +// 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 AWSIoTAnalyticsDataset_DatasetContentDeliveryRule struct { +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 *AWSIoTAnalyticsDataset_DatasetContentDeliveryRuleDestination `json:"Destination,omitempty"` + Destination *Dataset_DatasetContentDeliveryRuleDestination `json:"Destination,omitempty"` // EntryName AWS CloudFormation Property // Required: false @@ -27,42 +29,42 @@ type AWSIoTAnalyticsDataset_DatasetContentDeliveryRule struct { } // AWSCloudFormationType returns the AWS CloudFormation resource type -func (r *AWSIoTAnalyticsDataset_DatasetContentDeliveryRule) AWSCloudFormationType() string { +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 *AWSIoTAnalyticsDataset_DatasetContentDeliveryRule) DependsOn() []string { +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 *AWSIoTAnalyticsDataset_DatasetContentDeliveryRule) SetDependsOn(dependencies []string) { +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 *AWSIoTAnalyticsDataset_DatasetContentDeliveryRule) Metadata() map[string]interface{} { +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 *AWSIoTAnalyticsDataset_DatasetContentDeliveryRule) SetMetadata(metadata map[string]interface{}) { +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 *AWSIoTAnalyticsDataset_DatasetContentDeliveryRule) DeletionPolicy() policies.DeletionPolicy { +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 *AWSIoTAnalyticsDataset_DatasetContentDeliveryRule) SetDeletionPolicy(policy policies.DeletionPolicy) { +func (r *Dataset_DatasetContentDeliveryRule) SetDeletionPolicy(policy policies.DeletionPolicy) { r._deletionPolicy = policy } diff --git a/cloudformation/resources/aws-iotanalytics-dataset_datasetcontentdeliveryruledestination.go b/cloudformation/iotanalytics/aws-iotanalytics-dataset_datasetcontentdeliveryruledestination.go similarity index 64% rename from cloudformation/resources/aws-iotanalytics-dataset_datasetcontentdeliveryruledestination.go rename to cloudformation/iotanalytics/aws-iotanalytics-dataset_datasetcontentdeliveryruledestination.go index 6a8df76c8f..10d70c9826 100644 --- a/cloudformation/resources/aws-iotanalytics-dataset_datasetcontentdeliveryruledestination.go +++ b/cloudformation/iotanalytics/aws-iotanalytics-dataset_datasetcontentdeliveryruledestination.go @@ -1,20 +1,22 @@ -package resources +package iotanalytics -import "github.com/awslabs/goformation/v2/cloudformation/policies" +import ( + "github.com/awslabs/goformation/v3/cloudformation/policies" +) -// AWSIoTAnalyticsDataset_DatasetContentDeliveryRuleDestination AWS CloudFormation Resource (AWS::IoTAnalytics::Dataset.DatasetContentDeliveryRuleDestination) +// 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 AWSIoTAnalyticsDataset_DatasetContentDeliveryRuleDestination struct { +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 *AWSIoTAnalyticsDataset_IotEventsDestinationConfiguration `json:"IotEventsDestinationConfiguration,omitempty"` + 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 *AWSIoTAnalyticsDataset_S3DestinationConfiguration `json:"S3DestinationConfiguration,omitempty"` + S3DestinationConfiguration *Dataset_S3DestinationConfiguration `json:"S3DestinationConfiguration,omitempty"` // _deletionPolicy represents a CloudFormation DeletionPolicy _deletionPolicy policies.DeletionPolicy @@ -27,42 +29,42 @@ type AWSIoTAnalyticsDataset_DatasetContentDeliveryRuleDestination struct { } // AWSCloudFormationType returns the AWS CloudFormation resource type -func (r *AWSIoTAnalyticsDataset_DatasetContentDeliveryRuleDestination) AWSCloudFormationType() string { +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 *AWSIoTAnalyticsDataset_DatasetContentDeliveryRuleDestination) DependsOn() []string { +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 *AWSIoTAnalyticsDataset_DatasetContentDeliveryRuleDestination) SetDependsOn(dependencies []string) { +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 *AWSIoTAnalyticsDataset_DatasetContentDeliveryRuleDestination) Metadata() map[string]interface{} { +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 *AWSIoTAnalyticsDataset_DatasetContentDeliveryRuleDestination) SetMetadata(metadata map[string]interface{}) { +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 *AWSIoTAnalyticsDataset_DatasetContentDeliveryRuleDestination) DeletionPolicy() policies.DeletionPolicy { +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 *AWSIoTAnalyticsDataset_DatasetContentDeliveryRuleDestination) SetDeletionPolicy(policy policies.DeletionPolicy) { +func (r *Dataset_DatasetContentDeliveryRuleDestination) SetDeletionPolicy(policy policies.DeletionPolicy) { r._deletionPolicy = policy } diff --git a/cloudformation/resources/aws-iotanalytics-dataset_datasetcontentversionvalue.go b/cloudformation/iotanalytics/aws-iotanalytics-dataset_datasetcontentversionvalue.go similarity index 68% rename from cloudformation/resources/aws-iotanalytics-dataset_datasetcontentversionvalue.go rename to cloudformation/iotanalytics/aws-iotanalytics-dataset_datasetcontentversionvalue.go index 849168cda1..426e0b7a17 100644 --- a/cloudformation/resources/aws-iotanalytics-dataset_datasetcontentversionvalue.go +++ b/cloudformation/iotanalytics/aws-iotanalytics-dataset_datasetcontentversionvalue.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" +) -// AWSIoTAnalyticsDataset_DatasetContentVersionValue AWS CloudFormation Resource (AWS::IoTAnalytics::Dataset.DatasetContentVersionValue) +// 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 AWSIoTAnalyticsDataset_DatasetContentVersionValue struct { +type Dataset_DatasetContentVersionValue struct { // DatasetName AWS CloudFormation Property // Required: false @@ -22,42 +24,42 @@ type AWSIoTAnalyticsDataset_DatasetContentVersionValue struct { } // AWSCloudFormationType returns the AWS CloudFormation resource type -func (r *AWSIoTAnalyticsDataset_DatasetContentVersionValue) AWSCloudFormationType() string { +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 *AWSIoTAnalyticsDataset_DatasetContentVersionValue) DependsOn() []string { +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 *AWSIoTAnalyticsDataset_DatasetContentVersionValue) SetDependsOn(dependencies []string) { +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 *AWSIoTAnalyticsDataset_DatasetContentVersionValue) Metadata() map[string]interface{} { +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 *AWSIoTAnalyticsDataset_DatasetContentVersionValue) SetMetadata(metadata map[string]interface{}) { +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 *AWSIoTAnalyticsDataset_DatasetContentVersionValue) DeletionPolicy() policies.DeletionPolicy { +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 *AWSIoTAnalyticsDataset_DatasetContentVersionValue) SetDeletionPolicy(policy policies.DeletionPolicy) { +func (r *Dataset_DatasetContentVersionValue) SetDeletionPolicy(policy policies.DeletionPolicy) { r._deletionPolicy = policy } diff --git a/cloudformation/resources/aws-iotanalytics-dataset_deltatime.go b/cloudformation/iotanalytics/aws-iotanalytics-dataset_deltatime.go similarity index 74% rename from cloudformation/resources/aws-iotanalytics-dataset_deltatime.go rename to cloudformation/iotanalytics/aws-iotanalytics-dataset_deltatime.go index e17ac51ef4..647acca1c9 100644 --- a/cloudformation/resources/aws-iotanalytics-dataset_deltatime.go +++ b/cloudformation/iotanalytics/aws-iotanalytics-dataset_deltatime.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" +) -// AWSIoTAnalyticsDataset_DeltaTime AWS CloudFormation Resource (AWS::IoTAnalytics::Dataset.DeltaTime) +// 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 AWSIoTAnalyticsDataset_DeltaTime struct { +type Dataset_DeltaTime struct { // OffsetSeconds AWS CloudFormation Property // Required: true @@ -27,42 +29,42 @@ type AWSIoTAnalyticsDataset_DeltaTime struct { } // AWSCloudFormationType returns the AWS CloudFormation resource type -func (r *AWSIoTAnalyticsDataset_DeltaTime) AWSCloudFormationType() string { +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 *AWSIoTAnalyticsDataset_DeltaTime) DependsOn() []string { +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 *AWSIoTAnalyticsDataset_DeltaTime) SetDependsOn(dependencies []string) { +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 *AWSIoTAnalyticsDataset_DeltaTime) Metadata() map[string]interface{} { +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 *AWSIoTAnalyticsDataset_DeltaTime) SetMetadata(metadata map[string]interface{}) { +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 *AWSIoTAnalyticsDataset_DeltaTime) DeletionPolicy() policies.DeletionPolicy { +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 *AWSIoTAnalyticsDataset_DeltaTime) SetDeletionPolicy(policy policies.DeletionPolicy) { +func (r *Dataset_DeltaTime) SetDeletionPolicy(policy policies.DeletionPolicy) { r._deletionPolicy = policy } diff --git a/cloudformation/resources/aws-iotanalytics-dataset_filter.go b/cloudformation/iotanalytics/aws-iotanalytics-dataset_filter.go similarity index 70% rename from cloudformation/resources/aws-iotanalytics-dataset_filter.go rename to cloudformation/iotanalytics/aws-iotanalytics-dataset_filter.go index ac78e57d7b..520bde72b5 100644 --- a/cloudformation/resources/aws-iotanalytics-dataset_filter.go +++ b/cloudformation/iotanalytics/aws-iotanalytics-dataset_filter.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_Filter AWS CloudFormation Resource (AWS::IoTAnalytics::Dataset.Filter) +// 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 AWSIoTAnalyticsDataset_Filter struct { +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 *AWSIoTAnalyticsDataset_DeltaTime `json:"DeltaTime,omitempty"` + DeltaTime *Dataset_DeltaTime `json:"DeltaTime,omitempty"` // _deletionPolicy represents a CloudFormation DeletionPolicy _deletionPolicy policies.DeletionPolicy @@ -22,42 +24,42 @@ type AWSIoTAnalyticsDataset_Filter struct { } // AWSCloudFormationType returns the AWS CloudFormation resource type -func (r *AWSIoTAnalyticsDataset_Filter) AWSCloudFormationType() string { +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 *AWSIoTAnalyticsDataset_Filter) DependsOn() []string { +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 *AWSIoTAnalyticsDataset_Filter) SetDependsOn(dependencies []string) { +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 *AWSIoTAnalyticsDataset_Filter) Metadata() map[string]interface{} { +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 *AWSIoTAnalyticsDataset_Filter) SetMetadata(metadata map[string]interface{}) { +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 *AWSIoTAnalyticsDataset_Filter) DeletionPolicy() policies.DeletionPolicy { +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 *AWSIoTAnalyticsDataset_Filter) SetDeletionPolicy(policy policies.DeletionPolicy) { +func (r *Dataset_Filter) SetDeletionPolicy(policy policies.DeletionPolicy) { r._deletionPolicy = policy } diff --git a/cloudformation/resources/aws-iotanalytics-dataset_glueconfiguration.go b/cloudformation/iotanalytics/aws-iotanalytics-dataset_glueconfiguration.go similarity index 73% rename from cloudformation/resources/aws-iotanalytics-dataset_glueconfiguration.go rename to cloudformation/iotanalytics/aws-iotanalytics-dataset_glueconfiguration.go index 05f75bb88e..d36449047e 100644 --- a/cloudformation/resources/aws-iotanalytics-dataset_glueconfiguration.go +++ b/cloudformation/iotanalytics/aws-iotanalytics-dataset_glueconfiguration.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" +) -// AWSIoTAnalyticsDataset_GlueConfiguration AWS CloudFormation Resource (AWS::IoTAnalytics::Dataset.GlueConfiguration) +// 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 AWSIoTAnalyticsDataset_GlueConfiguration struct { +type Dataset_GlueConfiguration struct { // DatabaseName AWS CloudFormation Property // Required: true @@ -27,42 +29,42 @@ type AWSIoTAnalyticsDataset_GlueConfiguration struct { } // AWSCloudFormationType returns the AWS CloudFormation resource type -func (r *AWSIoTAnalyticsDataset_GlueConfiguration) AWSCloudFormationType() string { +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 *AWSIoTAnalyticsDataset_GlueConfiguration) DependsOn() []string { +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 *AWSIoTAnalyticsDataset_GlueConfiguration) SetDependsOn(dependencies []string) { +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 *AWSIoTAnalyticsDataset_GlueConfiguration) Metadata() map[string]interface{} { +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 *AWSIoTAnalyticsDataset_GlueConfiguration) SetMetadata(metadata map[string]interface{}) { +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 *AWSIoTAnalyticsDataset_GlueConfiguration) DeletionPolicy() policies.DeletionPolicy { +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 *AWSIoTAnalyticsDataset_GlueConfiguration) SetDeletionPolicy(policy policies.DeletionPolicy) { +func (r *Dataset_GlueConfiguration) SetDeletionPolicy(policy policies.DeletionPolicy) { r._deletionPolicy = policy } diff --git a/cloudformation/resources/aws-iotanalytics-dataset_ioteventsdestinationconfiguration.go b/cloudformation/iotanalytics/aws-iotanalytics-dataset_ioteventsdestinationconfiguration.go similarity index 70% rename from cloudformation/resources/aws-iotanalytics-dataset_ioteventsdestinationconfiguration.go rename to cloudformation/iotanalytics/aws-iotanalytics-dataset_ioteventsdestinationconfiguration.go index 28cfae69dd..ba5bd7a60d 100644 --- a/cloudformation/resources/aws-iotanalytics-dataset_ioteventsdestinationconfiguration.go +++ b/cloudformation/iotanalytics/aws-iotanalytics-dataset_ioteventsdestinationconfiguration.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" +) -// AWSIoTAnalyticsDataset_IotEventsDestinationConfiguration AWS CloudFormation Resource (AWS::IoTAnalytics::Dataset.IotEventsDestinationConfiguration) +// 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 AWSIoTAnalyticsDataset_IotEventsDestinationConfiguration struct { +type Dataset_IotEventsDestinationConfiguration struct { // InputName AWS CloudFormation Property // Required: true @@ -27,42 +29,42 @@ type AWSIoTAnalyticsDataset_IotEventsDestinationConfiguration struct { } // AWSCloudFormationType returns the AWS CloudFormation resource type -func (r *AWSIoTAnalyticsDataset_IotEventsDestinationConfiguration) AWSCloudFormationType() string { +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 *AWSIoTAnalyticsDataset_IotEventsDestinationConfiguration) DependsOn() []string { +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 *AWSIoTAnalyticsDataset_IotEventsDestinationConfiguration) SetDependsOn(dependencies []string) { +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 *AWSIoTAnalyticsDataset_IotEventsDestinationConfiguration) Metadata() map[string]interface{} { +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 *AWSIoTAnalyticsDataset_IotEventsDestinationConfiguration) SetMetadata(metadata map[string]interface{}) { +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 *AWSIoTAnalyticsDataset_IotEventsDestinationConfiguration) DeletionPolicy() policies.DeletionPolicy { +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 *AWSIoTAnalyticsDataset_IotEventsDestinationConfiguration) SetDeletionPolicy(policy policies.DeletionPolicy) { +func (r *Dataset_IotEventsDestinationConfiguration) SetDeletionPolicy(policy policies.DeletionPolicy) { r._deletionPolicy = policy } diff --git a/cloudformation/resources/aws-iotanalytics-dataset_outputfileurivalue.go b/cloudformation/iotanalytics/aws-iotanalytics-dataset_outputfileurivalue.go similarity index 70% rename from cloudformation/resources/aws-iotanalytics-dataset_outputfileurivalue.go rename to cloudformation/iotanalytics/aws-iotanalytics-dataset_outputfileurivalue.go index 9d70eee257..edd56353d0 100644 --- a/cloudformation/resources/aws-iotanalytics-dataset_outputfileurivalue.go +++ b/cloudformation/iotanalytics/aws-iotanalytics-dataset_outputfileurivalue.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" +) -// AWSIoTAnalyticsDataset_OutputFileUriValue AWS CloudFormation Resource (AWS::IoTAnalytics::Dataset.OutputFileUriValue) +// 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 AWSIoTAnalyticsDataset_OutputFileUriValue struct { +type Dataset_OutputFileUriValue struct { // FileName AWS CloudFormation Property // Required: false @@ -22,42 +24,42 @@ type AWSIoTAnalyticsDataset_OutputFileUriValue struct { } // AWSCloudFormationType returns the AWS CloudFormation resource type -func (r *AWSIoTAnalyticsDataset_OutputFileUriValue) AWSCloudFormationType() string { +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 *AWSIoTAnalyticsDataset_OutputFileUriValue) DependsOn() []string { +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 *AWSIoTAnalyticsDataset_OutputFileUriValue) SetDependsOn(dependencies []string) { +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 *AWSIoTAnalyticsDataset_OutputFileUriValue) Metadata() map[string]interface{} { +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 *AWSIoTAnalyticsDataset_OutputFileUriValue) SetMetadata(metadata map[string]interface{}) { +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 *AWSIoTAnalyticsDataset_OutputFileUriValue) DeletionPolicy() policies.DeletionPolicy { +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 *AWSIoTAnalyticsDataset_OutputFileUriValue) SetDeletionPolicy(policy policies.DeletionPolicy) { +func (r *Dataset_OutputFileUriValue) SetDeletionPolicy(policy policies.DeletionPolicy) { r._deletionPolicy = policy } diff --git a/cloudformation/resources/aws-iotanalytics-dataset_queryaction.go b/cloudformation/iotanalytics/aws-iotanalytics-dataset_queryaction.go similarity index 71% rename from cloudformation/resources/aws-iotanalytics-dataset_queryaction.go rename to cloudformation/iotanalytics/aws-iotanalytics-dataset_queryaction.go index 829f3cdf3f..bf361b8b6a 100644 --- a/cloudformation/resources/aws-iotanalytics-dataset_queryaction.go +++ b/cloudformation/iotanalytics/aws-iotanalytics-dataset_queryaction.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_QueryAction AWS CloudFormation Resource (AWS::IoTAnalytics::Dataset.QueryAction) +// 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 AWSIoTAnalyticsDataset_QueryAction struct { +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 []AWSIoTAnalyticsDataset_Filter `json:"Filters,omitempty"` + Filters []Dataset_Filter `json:"Filters,omitempty"` // SqlQuery AWS CloudFormation Property // Required: true @@ -27,42 +29,42 @@ type AWSIoTAnalyticsDataset_QueryAction struct { } // AWSCloudFormationType returns the AWS CloudFormation resource type -func (r *AWSIoTAnalyticsDataset_QueryAction) AWSCloudFormationType() string { +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 *AWSIoTAnalyticsDataset_QueryAction) DependsOn() []string { +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 *AWSIoTAnalyticsDataset_QueryAction) SetDependsOn(dependencies []string) { +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 *AWSIoTAnalyticsDataset_QueryAction) Metadata() map[string]interface{} { +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 *AWSIoTAnalyticsDataset_QueryAction) SetMetadata(metadata map[string]interface{}) { +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 *AWSIoTAnalyticsDataset_QueryAction) DeletionPolicy() policies.DeletionPolicy { +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 *AWSIoTAnalyticsDataset_QueryAction) SetDeletionPolicy(policy policies.DeletionPolicy) { +func (r *Dataset_QueryAction) SetDeletionPolicy(policy policies.DeletionPolicy) { r._deletionPolicy = policy } diff --git a/cloudformation/resources/aws-iotanalytics-dataset_resourceconfiguration.go b/cloudformation/iotanalytics/aws-iotanalytics-dataset_resourceconfiguration.go similarity index 72% rename from cloudformation/resources/aws-iotanalytics-dataset_resourceconfiguration.go rename to cloudformation/iotanalytics/aws-iotanalytics-dataset_resourceconfiguration.go index b7fe561018..710bb3680e 100644 --- a/cloudformation/resources/aws-iotanalytics-dataset_resourceconfiguration.go +++ b/cloudformation/iotanalytics/aws-iotanalytics-dataset_resourceconfiguration.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" +) -// AWSIoTAnalyticsDataset_ResourceConfiguration AWS CloudFormation Resource (AWS::IoTAnalytics::Dataset.ResourceConfiguration) +// 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 AWSIoTAnalyticsDataset_ResourceConfiguration struct { +type Dataset_ResourceConfiguration struct { // ComputeType AWS CloudFormation Property // Required: true @@ -27,42 +29,42 @@ type AWSIoTAnalyticsDataset_ResourceConfiguration struct { } // AWSCloudFormationType returns the AWS CloudFormation resource type -func (r *AWSIoTAnalyticsDataset_ResourceConfiguration) AWSCloudFormationType() string { +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 *AWSIoTAnalyticsDataset_ResourceConfiguration) DependsOn() []string { +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 *AWSIoTAnalyticsDataset_ResourceConfiguration) SetDependsOn(dependencies []string) { +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 *AWSIoTAnalyticsDataset_ResourceConfiguration) Metadata() map[string]interface{} { +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 *AWSIoTAnalyticsDataset_ResourceConfiguration) SetMetadata(metadata map[string]interface{}) { +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 *AWSIoTAnalyticsDataset_ResourceConfiguration) DeletionPolicy() policies.DeletionPolicy { +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 *AWSIoTAnalyticsDataset_ResourceConfiguration) SetDeletionPolicy(policy policies.DeletionPolicy) { +func (r *Dataset_ResourceConfiguration) SetDeletionPolicy(policy policies.DeletionPolicy) { r._deletionPolicy = policy } diff --git a/cloudformation/resources/aws-iotanalytics-dataset_retentionperiod.go b/cloudformation/iotanalytics/aws-iotanalytics-dataset_retentionperiod.go similarity index 73% rename from cloudformation/resources/aws-iotanalytics-dataset_retentionperiod.go rename to cloudformation/iotanalytics/aws-iotanalytics-dataset_retentionperiod.go index e19cd58a3a..f9c8620e9b 100644 --- a/cloudformation/resources/aws-iotanalytics-dataset_retentionperiod.go +++ b/cloudformation/iotanalytics/aws-iotanalytics-dataset_retentionperiod.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" +) -// AWSIoTAnalyticsDataset_RetentionPeriod AWS CloudFormation Resource (AWS::IoTAnalytics::Dataset.RetentionPeriod) +// 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 AWSIoTAnalyticsDataset_RetentionPeriod struct { +type Dataset_RetentionPeriod struct { // NumberOfDays AWS CloudFormation Property // Required: true @@ -27,42 +29,42 @@ type AWSIoTAnalyticsDataset_RetentionPeriod struct { } // AWSCloudFormationType returns the AWS CloudFormation resource type -func (r *AWSIoTAnalyticsDataset_RetentionPeriod) AWSCloudFormationType() string { +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 *AWSIoTAnalyticsDataset_RetentionPeriod) DependsOn() []string { +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 *AWSIoTAnalyticsDataset_RetentionPeriod) SetDependsOn(dependencies []string) { +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 *AWSIoTAnalyticsDataset_RetentionPeriod) Metadata() map[string]interface{} { +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 *AWSIoTAnalyticsDataset_RetentionPeriod) SetMetadata(metadata map[string]interface{}) { +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 *AWSIoTAnalyticsDataset_RetentionPeriod) DeletionPolicy() policies.DeletionPolicy { +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 *AWSIoTAnalyticsDataset_RetentionPeriod) SetDeletionPolicy(policy policies.DeletionPolicy) { +func (r *Dataset_RetentionPeriod) SetDeletionPolicy(policy policies.DeletionPolicy) { r._deletionPolicy = policy } diff --git a/cloudformation/resources/aws-iotanalytics-dataset_s3destinationconfiguration.go b/cloudformation/iotanalytics/aws-iotanalytics-dataset_s3destinationconfiguration.go similarity index 73% rename from cloudformation/resources/aws-iotanalytics-dataset_s3destinationconfiguration.go rename to cloudformation/iotanalytics/aws-iotanalytics-dataset_s3destinationconfiguration.go index 2b4ab46b8c..5c2887cf69 100644 --- a/cloudformation/resources/aws-iotanalytics-dataset_s3destinationconfiguration.go +++ b/cloudformation/iotanalytics/aws-iotanalytics-dataset_s3destinationconfiguration.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" +) -// AWSIoTAnalyticsDataset_S3DestinationConfiguration AWS CloudFormation Resource (AWS::IoTAnalytics::Dataset.S3DestinationConfiguration) +// 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 AWSIoTAnalyticsDataset_S3DestinationConfiguration struct { +type Dataset_S3DestinationConfiguration struct { // Bucket AWS CloudFormation Property // Required: true @@ -14,7 +16,7 @@ type AWSIoTAnalyticsDataset_S3DestinationConfiguration struct { // 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"` + GlueConfiguration *Dataset_GlueConfiguration `json:"GlueConfiguration,omitempty"` // Key AWS CloudFormation Property // Required: true @@ -37,42 +39,42 @@ type AWSIoTAnalyticsDataset_S3DestinationConfiguration struct { } // AWSCloudFormationType returns the AWS CloudFormation resource type -func (r *AWSIoTAnalyticsDataset_S3DestinationConfiguration) AWSCloudFormationType() string { +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 *AWSIoTAnalyticsDataset_S3DestinationConfiguration) DependsOn() []string { +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 *AWSIoTAnalyticsDataset_S3DestinationConfiguration) SetDependsOn(dependencies []string) { +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 *AWSIoTAnalyticsDataset_S3DestinationConfiguration) Metadata() map[string]interface{} { +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 *AWSIoTAnalyticsDataset_S3DestinationConfiguration) SetMetadata(metadata map[string]interface{}) { +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 *AWSIoTAnalyticsDataset_S3DestinationConfiguration) DeletionPolicy() policies.DeletionPolicy { +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 *AWSIoTAnalyticsDataset_S3DestinationConfiguration) SetDeletionPolicy(policy policies.DeletionPolicy) { +func (r *Dataset_S3DestinationConfiguration) SetDeletionPolicy(policy policies.DeletionPolicy) { r._deletionPolicy = policy } diff --git a/cloudformation/resources/aws-iotanalytics-dataset_schedule.go b/cloudformation/iotanalytics/aws-iotanalytics-dataset_schedule.go similarity index 72% rename from cloudformation/resources/aws-iotanalytics-dataset_schedule.go rename to cloudformation/iotanalytics/aws-iotanalytics-dataset_schedule.go index 16cde592b8..0e3fc20983 100644 --- a/cloudformation/resources/aws-iotanalytics-dataset_schedule.go +++ b/cloudformation/iotanalytics/aws-iotanalytics-dataset_schedule.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" +) -// AWSIoTAnalyticsDataset_Schedule AWS CloudFormation Resource (AWS::IoTAnalytics::Dataset.Schedule) +// 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 AWSIoTAnalyticsDataset_Schedule struct { +type Dataset_Schedule struct { // ScheduleExpression AWS CloudFormation Property // Required: true @@ -22,42 +24,42 @@ type AWSIoTAnalyticsDataset_Schedule struct { } // AWSCloudFormationType returns the AWS CloudFormation resource type -func (r *AWSIoTAnalyticsDataset_Schedule) AWSCloudFormationType() string { +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 *AWSIoTAnalyticsDataset_Schedule) DependsOn() []string { +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 *AWSIoTAnalyticsDataset_Schedule) SetDependsOn(dependencies []string) { +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 *AWSIoTAnalyticsDataset_Schedule) Metadata() map[string]interface{} { +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 *AWSIoTAnalyticsDataset_Schedule) SetMetadata(metadata map[string]interface{}) { +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 *AWSIoTAnalyticsDataset_Schedule) DeletionPolicy() policies.DeletionPolicy { +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 *AWSIoTAnalyticsDataset_Schedule) SetDeletionPolicy(policy policies.DeletionPolicy) { +func (r *Dataset_Schedule) SetDeletionPolicy(policy policies.DeletionPolicy) { r._deletionPolicy = policy } diff --git a/cloudformation/resources/aws-iotanalytics-dataset_trigger.go b/cloudformation/iotanalytics/aws-iotanalytics-dataset_trigger.go similarity index 70% rename from cloudformation/resources/aws-iotanalytics-dataset_trigger.go rename to cloudformation/iotanalytics/aws-iotanalytics-dataset_trigger.go index 152f9ea465..0ff4672e52 100644 --- a/cloudformation/resources/aws-iotanalytics-dataset_trigger.go +++ b/cloudformation/iotanalytics/aws-iotanalytics-dataset_trigger.go @@ -1,20 +1,22 @@ -package resources +package iotanalytics -import "github.com/awslabs/goformation/v2/cloudformation/policies" +import ( + "github.com/awslabs/goformation/v3/cloudformation/policies" +) -// AWSIoTAnalyticsDataset_Trigger AWS CloudFormation Resource (AWS::IoTAnalytics::Dataset.Trigger) +// 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 AWSIoTAnalyticsDataset_Trigger struct { +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 *AWSIoTAnalyticsDataset_Schedule `json:"Schedule,omitempty"` + 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 *AWSIoTAnalyticsDataset_TriggeringDataset `json:"TriggeringDataset,omitempty"` + TriggeringDataset *Dataset_TriggeringDataset `json:"TriggeringDataset,omitempty"` // _deletionPolicy represents a CloudFormation DeletionPolicy _deletionPolicy policies.DeletionPolicy @@ -27,42 +29,42 @@ type AWSIoTAnalyticsDataset_Trigger struct { } // AWSCloudFormationType returns the AWS CloudFormation resource type -func (r *AWSIoTAnalyticsDataset_Trigger) AWSCloudFormationType() string { +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 *AWSIoTAnalyticsDataset_Trigger) DependsOn() []string { +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 *AWSIoTAnalyticsDataset_Trigger) SetDependsOn(dependencies []string) { +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 *AWSIoTAnalyticsDataset_Trigger) Metadata() map[string]interface{} { +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 *AWSIoTAnalyticsDataset_Trigger) SetMetadata(metadata map[string]interface{}) { +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 *AWSIoTAnalyticsDataset_Trigger) DeletionPolicy() policies.DeletionPolicy { +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 *AWSIoTAnalyticsDataset_Trigger) SetDeletionPolicy(policy policies.DeletionPolicy) { +func (r *Dataset_Trigger) SetDeletionPolicy(policy policies.DeletionPolicy) { r._deletionPolicy = policy } diff --git a/cloudformation/resources/aws-iotanalytics-dataset_triggeringdataset.go b/cloudformation/iotanalytics/aws-iotanalytics-dataset_triggeringdataset.go similarity index 70% rename from cloudformation/resources/aws-iotanalytics-dataset_triggeringdataset.go rename to cloudformation/iotanalytics/aws-iotanalytics-dataset_triggeringdataset.go index 743c0c270a..116d50884b 100644 --- a/cloudformation/resources/aws-iotanalytics-dataset_triggeringdataset.go +++ b/cloudformation/iotanalytics/aws-iotanalytics-dataset_triggeringdataset.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" +) -// AWSIoTAnalyticsDataset_TriggeringDataset AWS CloudFormation Resource (AWS::IoTAnalytics::Dataset.TriggeringDataset) +// 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 AWSIoTAnalyticsDataset_TriggeringDataset struct { +type Dataset_TriggeringDataset struct { // DatasetName AWS CloudFormation Property // Required: true @@ -22,42 +24,42 @@ type AWSIoTAnalyticsDataset_TriggeringDataset struct { } // AWSCloudFormationType returns the AWS CloudFormation resource type -func (r *AWSIoTAnalyticsDataset_TriggeringDataset) AWSCloudFormationType() string { +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 *AWSIoTAnalyticsDataset_TriggeringDataset) DependsOn() []string { +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 *AWSIoTAnalyticsDataset_TriggeringDataset) SetDependsOn(dependencies []string) { +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 *AWSIoTAnalyticsDataset_TriggeringDataset) Metadata() map[string]interface{} { +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 *AWSIoTAnalyticsDataset_TriggeringDataset) SetMetadata(metadata map[string]interface{}) { +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 *AWSIoTAnalyticsDataset_TriggeringDataset) DeletionPolicy() policies.DeletionPolicy { +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 *AWSIoTAnalyticsDataset_TriggeringDataset) SetDeletionPolicy(policy policies.DeletionPolicy) { +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/resources/aws-iotanalytics-dataset_versioningconfiguration.go b/cloudformation/iotanalytics/aws-iotanalytics-dataset_versioningconfiguration.go similarity index 71% rename from cloudformation/resources/aws-iotanalytics-dataset_versioningconfiguration.go rename to cloudformation/iotanalytics/aws-iotanalytics-dataset_versioningconfiguration.go index edc769cc84..17a6e9885d 100644 --- a/cloudformation/resources/aws-iotanalytics-dataset_versioningconfiguration.go +++ b/cloudformation/iotanalytics/aws-iotanalytics-dataset_versioningconfiguration.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" +) -// AWSIoTAnalyticsDataset_VersioningConfiguration AWS CloudFormation Resource (AWS::IoTAnalytics::Dataset.VersioningConfiguration) +// 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 AWSIoTAnalyticsDataset_VersioningConfiguration struct { +type Dataset_VersioningConfiguration struct { // MaxVersions AWS CloudFormation Property // Required: false @@ -27,42 +29,42 @@ type AWSIoTAnalyticsDataset_VersioningConfiguration struct { } // AWSCloudFormationType returns the AWS CloudFormation resource type -func (r *AWSIoTAnalyticsDataset_VersioningConfiguration) AWSCloudFormationType() string { +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 *AWSIoTAnalyticsDataset_VersioningConfiguration) DependsOn() []string { +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 *AWSIoTAnalyticsDataset_VersioningConfiguration) SetDependsOn(dependencies []string) { +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 *AWSIoTAnalyticsDataset_VersioningConfiguration) Metadata() map[string]interface{} { +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 *AWSIoTAnalyticsDataset_VersioningConfiguration) SetMetadata(metadata map[string]interface{}) { +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 *AWSIoTAnalyticsDataset_VersioningConfiguration) DeletionPolicy() policies.DeletionPolicy { +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 *AWSIoTAnalyticsDataset_VersioningConfiguration) SetDeletionPolicy(policy policies.DeletionPolicy) { +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/resources/aws-iotanalytics-datastore_customermanageds3.go b/cloudformation/iotanalytics/aws-iotanalytics-datastore_customermanageds3.go similarity index 74% rename from cloudformation/resources/aws-iotanalytics-datastore_customermanageds3.go rename to cloudformation/iotanalytics/aws-iotanalytics-datastore_customermanageds3.go index f53959c393..a87c7e0fd6 100644 --- a/cloudformation/resources/aws-iotanalytics-datastore_customermanageds3.go +++ b/cloudformation/iotanalytics/aws-iotanalytics-datastore_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" +) -// AWSIoTAnalyticsDatastore_CustomerManagedS3 AWS CloudFormation Resource (AWS::IoTAnalytics::Datastore.CustomerManagedS3) +// 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 AWSIoTAnalyticsDatastore_CustomerManagedS3 struct { +type Datastore_CustomerManagedS3 struct { // Bucket AWS CloudFormation Property // Required: true @@ -32,42 +34,42 @@ type AWSIoTAnalyticsDatastore_CustomerManagedS3 struct { } // AWSCloudFormationType returns the AWS CloudFormation resource type -func (r *AWSIoTAnalyticsDatastore_CustomerManagedS3) AWSCloudFormationType() string { +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 *AWSIoTAnalyticsDatastore_CustomerManagedS3) DependsOn() []string { +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 *AWSIoTAnalyticsDatastore_CustomerManagedS3) SetDependsOn(dependencies []string) { +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 *AWSIoTAnalyticsDatastore_CustomerManagedS3) Metadata() map[string]interface{} { +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 *AWSIoTAnalyticsDatastore_CustomerManagedS3) SetMetadata(metadata map[string]interface{}) { +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 *AWSIoTAnalyticsDatastore_CustomerManagedS3) DeletionPolicy() policies.DeletionPolicy { +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 *AWSIoTAnalyticsDatastore_CustomerManagedS3) SetDeletionPolicy(policy policies.DeletionPolicy) { +func (r *Datastore_CustomerManagedS3) SetDeletionPolicy(policy policies.DeletionPolicy) { r._deletionPolicy = policy } diff --git a/cloudformation/resources/aws-iotanalytics-datastore_datastorestorage.go b/cloudformation/iotanalytics/aws-iotanalytics-datastore_datastorestorage.go similarity index 68% rename from cloudformation/resources/aws-iotanalytics-datastore_datastorestorage.go rename to cloudformation/iotanalytics/aws-iotanalytics-datastore_datastorestorage.go index 778b401f59..72ca641fc0 100644 --- a/cloudformation/resources/aws-iotanalytics-datastore_datastorestorage.go +++ b/cloudformation/iotanalytics/aws-iotanalytics-datastore_datastorestorage.go @@ -1,20 +1,22 @@ -package resources +package iotanalytics -import "github.com/awslabs/goformation/v2/cloudformation/policies" +import ( + "github.com/awslabs/goformation/v3/cloudformation/policies" +) -// AWSIoTAnalyticsDatastore_DatastoreStorage AWS CloudFormation Resource (AWS::IoTAnalytics::Datastore.DatastoreStorage) +// 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 AWSIoTAnalyticsDatastore_DatastoreStorage struct { +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 *AWSIoTAnalyticsDatastore_CustomerManagedS3 `json:"CustomerManagedS3,omitempty"` + 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 *AWSIoTAnalyticsDatastore_ServiceManagedS3 `json:"ServiceManagedS3,omitempty"` + ServiceManagedS3 *Datastore_ServiceManagedS3 `json:"ServiceManagedS3,omitempty"` // _deletionPolicy represents a CloudFormation DeletionPolicy _deletionPolicy policies.DeletionPolicy @@ -27,42 +29,42 @@ type AWSIoTAnalyticsDatastore_DatastoreStorage struct { } // AWSCloudFormationType returns the AWS CloudFormation resource type -func (r *AWSIoTAnalyticsDatastore_DatastoreStorage) AWSCloudFormationType() string { +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 *AWSIoTAnalyticsDatastore_DatastoreStorage) DependsOn() []string { +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 *AWSIoTAnalyticsDatastore_DatastoreStorage) SetDependsOn(dependencies []string) { +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 *AWSIoTAnalyticsDatastore_DatastoreStorage) Metadata() map[string]interface{} { +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 *AWSIoTAnalyticsDatastore_DatastoreStorage) SetMetadata(metadata map[string]interface{}) { +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 *AWSIoTAnalyticsDatastore_DatastoreStorage) DeletionPolicy() policies.DeletionPolicy { +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 *AWSIoTAnalyticsDatastore_DatastoreStorage) SetDeletionPolicy(policy policies.DeletionPolicy) { +func (r *Datastore_DatastoreStorage) SetDeletionPolicy(policy policies.DeletionPolicy) { r._deletionPolicy = policy } diff --git a/cloudformation/resources/aws-iotanalytics-datastore_retentionperiod.go b/cloudformation/iotanalytics/aws-iotanalytics-datastore_retentionperiod.go similarity index 73% rename from cloudformation/resources/aws-iotanalytics-datastore_retentionperiod.go rename to cloudformation/iotanalytics/aws-iotanalytics-datastore_retentionperiod.go index 574dcd0933..ed7c96cb4e 100644 --- a/cloudformation/resources/aws-iotanalytics-datastore_retentionperiod.go +++ b/cloudformation/iotanalytics/aws-iotanalytics-datastore_retentionperiod.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" +) -// AWSIoTAnalyticsDatastore_RetentionPeriod AWS CloudFormation Resource (AWS::IoTAnalytics::Datastore.RetentionPeriod) +// 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 AWSIoTAnalyticsDatastore_RetentionPeriod struct { +type Datastore_RetentionPeriod struct { // NumberOfDays AWS CloudFormation Property // Required: false @@ -27,42 +29,42 @@ type AWSIoTAnalyticsDatastore_RetentionPeriod struct { } // AWSCloudFormationType returns the AWS CloudFormation resource type -func (r *AWSIoTAnalyticsDatastore_RetentionPeriod) AWSCloudFormationType() string { +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 *AWSIoTAnalyticsDatastore_RetentionPeriod) DependsOn() []string { +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 *AWSIoTAnalyticsDatastore_RetentionPeriod) SetDependsOn(dependencies []string) { +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 *AWSIoTAnalyticsDatastore_RetentionPeriod) Metadata() map[string]interface{} { +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 *AWSIoTAnalyticsDatastore_RetentionPeriod) SetMetadata(metadata map[string]interface{}) { +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 *AWSIoTAnalyticsDatastore_RetentionPeriod) DeletionPolicy() policies.DeletionPolicy { +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 *AWSIoTAnalyticsDatastore_RetentionPeriod) SetDeletionPolicy(policy policies.DeletionPolicy) { +func (r *Datastore_RetentionPeriod) SetDeletionPolicy(policy policies.DeletionPolicy) { r._deletionPolicy = policy } diff --git a/cloudformation/resources/aws-iotanalytics-datastore_servicemanageds3.go b/cloudformation/iotanalytics/aws-iotanalytics-datastore_servicemanageds3.go similarity index 66% rename from cloudformation/resources/aws-iotanalytics-datastore_servicemanageds3.go rename to cloudformation/iotanalytics/aws-iotanalytics-datastore_servicemanageds3.go index db6903d9b4..daa41d0eb3 100644 --- a/cloudformation/resources/aws-iotanalytics-datastore_servicemanageds3.go +++ b/cloudformation/iotanalytics/aws-iotanalytics-datastore_servicemanageds3.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" +) -// AWSIoTAnalyticsDatastore_ServiceManagedS3 AWS CloudFormation Resource (AWS::IoTAnalytics::Datastore.ServiceManagedS3) +// 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 AWSIoTAnalyticsDatastore_ServiceManagedS3 struct { +type Datastore_ServiceManagedS3 struct { // _deletionPolicy represents a CloudFormation DeletionPolicy _deletionPolicy policies.DeletionPolicy @@ -17,42 +19,42 @@ type AWSIoTAnalyticsDatastore_ServiceManagedS3 struct { } // AWSCloudFormationType returns the AWS CloudFormation resource type -func (r *AWSIoTAnalyticsDatastore_ServiceManagedS3) AWSCloudFormationType() string { +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 *AWSIoTAnalyticsDatastore_ServiceManagedS3) DependsOn() []string { +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 *AWSIoTAnalyticsDatastore_ServiceManagedS3) SetDependsOn(dependencies []string) { +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 *AWSIoTAnalyticsDatastore_ServiceManagedS3) Metadata() map[string]interface{} { +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 *AWSIoTAnalyticsDatastore_ServiceManagedS3) SetMetadata(metadata map[string]interface{}) { +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 *AWSIoTAnalyticsDatastore_ServiceManagedS3) DeletionPolicy() policies.DeletionPolicy { +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 *AWSIoTAnalyticsDatastore_ServiceManagedS3) SetDeletionPolicy(policy policies.DeletionPolicy) { +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/resources/aws-iotanalytics-pipeline_activity.go b/cloudformation/iotanalytics/aws-iotanalytics-pipeline_activity.go similarity index 71% rename from cloudformation/resources/aws-iotanalytics-pipeline_activity.go rename to cloudformation/iotanalytics/aws-iotanalytics-pipeline_activity.go index 19546db48b..dc98b0a91c 100644 --- a/cloudformation/resources/aws-iotanalytics-pipeline_activity.go +++ b/cloudformation/iotanalytics/aws-iotanalytics-pipeline_activity.go @@ -1,60 +1,62 @@ -package resources +package iotanalytics -import "github.com/awslabs/goformation/v2/cloudformation/policies" +import ( + "github.com/awslabs/goformation/v3/cloudformation/policies" +) -// AWSIoTAnalyticsPipeline_Activity AWS CloudFormation Resource (AWS::IoTAnalytics::Pipeline.Activity) +// 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 AWSIoTAnalyticsPipeline_Activity struct { +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 *AWSIoTAnalyticsPipeline_AddAttributes `json:"AddAttributes,omitempty"` + 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 *AWSIoTAnalyticsPipeline_Channel `json:"Channel,omitempty"` + 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 *AWSIoTAnalyticsPipeline_Datastore `json:"Datastore,omitempty"` + 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 *AWSIoTAnalyticsPipeline_DeviceRegistryEnrich `json:"DeviceRegistryEnrich,omitempty"` + 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 *AWSIoTAnalyticsPipeline_DeviceShadowEnrich `json:"DeviceShadowEnrich,omitempty"` + 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 *AWSIoTAnalyticsPipeline_Filter `json:"Filter,omitempty"` + 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 *AWSIoTAnalyticsPipeline_Lambda `json:"Lambda,omitempty"` + 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 *AWSIoTAnalyticsPipeline_Math `json:"Math,omitempty"` + 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 *AWSIoTAnalyticsPipeline_RemoveAttributes `json:"RemoveAttributes,omitempty"` + 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 *AWSIoTAnalyticsPipeline_SelectAttributes `json:"SelectAttributes,omitempty"` + SelectAttributes *Pipeline_SelectAttributes `json:"SelectAttributes,omitempty"` // _deletionPolicy represents a CloudFormation DeletionPolicy _deletionPolicy policies.DeletionPolicy @@ -67,42 +69,42 @@ type AWSIoTAnalyticsPipeline_Activity struct { } // AWSCloudFormationType returns the AWS CloudFormation resource type -func (r *AWSIoTAnalyticsPipeline_Activity) AWSCloudFormationType() string { +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 *AWSIoTAnalyticsPipeline_Activity) DependsOn() []string { +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 *AWSIoTAnalyticsPipeline_Activity) SetDependsOn(dependencies []string) { +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 *AWSIoTAnalyticsPipeline_Activity) Metadata() map[string]interface{} { +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 *AWSIoTAnalyticsPipeline_Activity) SetMetadata(metadata map[string]interface{}) { +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 *AWSIoTAnalyticsPipeline_Activity) DeletionPolicy() policies.DeletionPolicy { +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 *AWSIoTAnalyticsPipeline_Activity) SetDeletionPolicy(policy policies.DeletionPolicy) { +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/resources/aws-iotanalytics-pipeline_datastore.go b/cloudformation/iotanalytics/aws-iotanalytics-pipeline_datastore.go similarity index 74% rename from cloudformation/resources/aws-iotanalytics-pipeline_datastore.go rename to cloudformation/iotanalytics/aws-iotanalytics-pipeline_datastore.go index 6ae5fe284b..416b21d162 100644 --- a/cloudformation/resources/aws-iotanalytics-pipeline_datastore.go +++ b/cloudformation/iotanalytics/aws-iotanalytics-pipeline_datastore.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_Datastore AWS CloudFormation Resource (AWS::IoTAnalytics::Pipeline.Datastore) +// 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 AWSIoTAnalyticsPipeline_Datastore struct { +type Pipeline_Datastore struct { // DatastoreName AWS CloudFormation Property // Required: false @@ -27,42 +29,42 @@ type AWSIoTAnalyticsPipeline_Datastore struct { } // AWSCloudFormationType returns the AWS CloudFormation resource type -func (r *AWSIoTAnalyticsPipeline_Datastore) AWSCloudFormationType() string { +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 *AWSIoTAnalyticsPipeline_Datastore) DependsOn() []string { +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 *AWSIoTAnalyticsPipeline_Datastore) SetDependsOn(dependencies []string) { +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 *AWSIoTAnalyticsPipeline_Datastore) Metadata() map[string]interface{} { +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 *AWSIoTAnalyticsPipeline_Datastore) SetMetadata(metadata map[string]interface{}) { +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 *AWSIoTAnalyticsPipeline_Datastore) DeletionPolicy() policies.DeletionPolicy { +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 *AWSIoTAnalyticsPipeline_Datastore) SetDeletionPolicy(policy policies.DeletionPolicy) { +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/resources/aws-iotanalytics-pipeline_removeattributes.go b/cloudformation/iotanalytics/aws-iotanalytics-pipeline_removeattributes.go similarity index 74% rename from cloudformation/resources/aws-iotanalytics-pipeline_removeattributes.go rename to cloudformation/iotanalytics/aws-iotanalytics-pipeline_removeattributes.go index d2e00527ae..1c87f086be 100644 --- a/cloudformation/resources/aws-iotanalytics-pipeline_removeattributes.go +++ b/cloudformation/iotanalytics/aws-iotanalytics-pipeline_removeattributes.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_RemoveAttributes AWS CloudFormation Resource (AWS::IoTAnalytics::Pipeline.RemoveAttributes) +// 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 AWSIoTAnalyticsPipeline_RemoveAttributes struct { +type Pipeline_RemoveAttributes struct { // Attributes AWS CloudFormation Property // Required: false @@ -32,42 +34,42 @@ type AWSIoTAnalyticsPipeline_RemoveAttributes struct { } // AWSCloudFormationType returns the AWS CloudFormation resource type -func (r *AWSIoTAnalyticsPipeline_RemoveAttributes) AWSCloudFormationType() string { +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 *AWSIoTAnalyticsPipeline_RemoveAttributes) DependsOn() []string { +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 *AWSIoTAnalyticsPipeline_RemoveAttributes) SetDependsOn(dependencies []string) { +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 *AWSIoTAnalyticsPipeline_RemoveAttributes) Metadata() map[string]interface{} { +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 *AWSIoTAnalyticsPipeline_RemoveAttributes) SetMetadata(metadata map[string]interface{}) { +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 *AWSIoTAnalyticsPipeline_RemoveAttributes) DeletionPolicy() policies.DeletionPolicy { +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 *AWSIoTAnalyticsPipeline_RemoveAttributes) SetDeletionPolicy(policy policies.DeletionPolicy) { +func (r *Pipeline_RemoveAttributes) SetDeletionPolicy(policy policies.DeletionPolicy) { r._deletionPolicy = policy } diff --git a/cloudformation/resources/aws-iotanalytics-pipeline_selectattributes.go b/cloudformation/iotanalytics/aws-iotanalytics-pipeline_selectattributes.go similarity index 74% rename from cloudformation/resources/aws-iotanalytics-pipeline_selectattributes.go rename to cloudformation/iotanalytics/aws-iotanalytics-pipeline_selectattributes.go index bb21b54cf7..d4245692a2 100644 --- a/cloudformation/resources/aws-iotanalytics-pipeline_selectattributes.go +++ b/cloudformation/iotanalytics/aws-iotanalytics-pipeline_selectattributes.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_SelectAttributes AWS CloudFormation Resource (AWS::IoTAnalytics::Pipeline.SelectAttributes) +// 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 AWSIoTAnalyticsPipeline_SelectAttributes struct { +type Pipeline_SelectAttributes struct { // Attributes AWS CloudFormation Property // Required: false @@ -32,42 +34,42 @@ type AWSIoTAnalyticsPipeline_SelectAttributes struct { } // AWSCloudFormationType returns the AWS CloudFormation resource type -func (r *AWSIoTAnalyticsPipeline_SelectAttributes) AWSCloudFormationType() string { +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 *AWSIoTAnalyticsPipeline_SelectAttributes) DependsOn() []string { +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 *AWSIoTAnalyticsPipeline_SelectAttributes) SetDependsOn(dependencies []string) { +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 *AWSIoTAnalyticsPipeline_SelectAttributes) Metadata() map[string]interface{} { +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 *AWSIoTAnalyticsPipeline_SelectAttributes) SetMetadata(metadata map[string]interface{}) { +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 *AWSIoTAnalyticsPipeline_SelectAttributes) DeletionPolicy() policies.DeletionPolicy { +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 *AWSIoTAnalyticsPipeline_SelectAttributes) SetDeletionPolicy(policy policies.DeletionPolicy) { +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/resources/aws-iotevents-detectormodel_action.go b/cloudformation/iotevents/aws-iotevents-detectormodel_action.go similarity index 72% rename from cloudformation/resources/aws-iotevents-detectormodel_action.go rename to cloudformation/iotevents/aws-iotevents-detectormodel_action.go index 44c91d4666..2a908119fa 100644 --- a/cloudformation/resources/aws-iotevents-detectormodel_action.go +++ b/cloudformation/iotevents/aws-iotevents-detectormodel_action.go @@ -1,60 +1,62 @@ -package resources +package iotevents -import "github.com/awslabs/goformation/v2/cloudformation/policies" +import ( + "github.com/awslabs/goformation/v3/cloudformation/policies" +) -// AWSIoTEventsDetectorModel_Action AWS CloudFormation Resource (AWS::IoTEvents::DetectorModel.Action) +// 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 AWSIoTEventsDetectorModel_Action struct { +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 *AWSIoTEventsDetectorModel_ClearTimer `json:"ClearTimer,omitempty"` + 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 *AWSIoTEventsDetectorModel_Firehose `json:"Firehose,omitempty"` + 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 *AWSIoTEventsDetectorModel_IotEvents `json:"IotEvents,omitempty"` + 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 *AWSIoTEventsDetectorModel_IotTopicPublish `json:"IotTopicPublish,omitempty"` + 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 *AWSIoTEventsDetectorModel_Lambda `json:"Lambda,omitempty"` + 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 *AWSIoTEventsDetectorModel_ResetTimer `json:"ResetTimer,omitempty"` + 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 *AWSIoTEventsDetectorModel_SetTimer `json:"SetTimer,omitempty"` + 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 *AWSIoTEventsDetectorModel_SetVariable `json:"SetVariable,omitempty"` + 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 *AWSIoTEventsDetectorModel_Sns `json:"Sns,omitempty"` + 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 *AWSIoTEventsDetectorModel_Sqs `json:"Sqs,omitempty"` + Sqs *DetectorModel_Sqs `json:"Sqs,omitempty"` // _deletionPolicy represents a CloudFormation DeletionPolicy _deletionPolicy policies.DeletionPolicy @@ -67,42 +69,42 @@ type AWSIoTEventsDetectorModel_Action struct { } // AWSCloudFormationType returns the AWS CloudFormation resource type -func (r *AWSIoTEventsDetectorModel_Action) AWSCloudFormationType() string { +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 *AWSIoTEventsDetectorModel_Action) DependsOn() []string { +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 *AWSIoTEventsDetectorModel_Action) SetDependsOn(dependencies []string) { +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 *AWSIoTEventsDetectorModel_Action) Metadata() map[string]interface{} { +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 *AWSIoTEventsDetectorModel_Action) SetMetadata(metadata map[string]interface{}) { +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 *AWSIoTEventsDetectorModel_Action) DeletionPolicy() policies.DeletionPolicy { +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 *AWSIoTEventsDetectorModel_Action) SetDeletionPolicy(policy policies.DeletionPolicy) { +func (r *DetectorModel_Action) SetDeletionPolicy(policy policies.DeletionPolicy) { r._deletionPolicy = policy } diff --git a/cloudformation/resources/aws-iotevents-detectormodel_cleartimer.go b/cloudformation/iotevents/aws-iotevents-detectormodel_cleartimer.go similarity index 71% rename from cloudformation/resources/aws-iotevents-detectormodel_cleartimer.go rename to cloudformation/iotevents/aws-iotevents-detectormodel_cleartimer.go index f0e34d2e05..4e1a955672 100644 --- a/cloudformation/resources/aws-iotevents-detectormodel_cleartimer.go +++ b/cloudformation/iotevents/aws-iotevents-detectormodel_cleartimer.go @@ -1,10 +1,12 @@ -package resources +package iotevents -import "github.com/awslabs/goformation/v2/cloudformation/policies" +import ( + "github.com/awslabs/goformation/v3/cloudformation/policies" +) -// AWSIoTEventsDetectorModel_ClearTimer AWS CloudFormation Resource (AWS::IoTEvents::DetectorModel.ClearTimer) +// 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 AWSIoTEventsDetectorModel_ClearTimer struct { +type DetectorModel_ClearTimer struct { // TimerName AWS CloudFormation Property // Required: false @@ -22,42 +24,42 @@ type AWSIoTEventsDetectorModel_ClearTimer struct { } // AWSCloudFormationType returns the AWS CloudFormation resource type -func (r *AWSIoTEventsDetectorModel_ClearTimer) AWSCloudFormationType() string { +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 *AWSIoTEventsDetectorModel_ClearTimer) DependsOn() []string { +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 *AWSIoTEventsDetectorModel_ClearTimer) SetDependsOn(dependencies []string) { +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 *AWSIoTEventsDetectorModel_ClearTimer) Metadata() map[string]interface{} { +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 *AWSIoTEventsDetectorModel_ClearTimer) SetMetadata(metadata map[string]interface{}) { +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 *AWSIoTEventsDetectorModel_ClearTimer) DeletionPolicy() policies.DeletionPolicy { +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 *AWSIoTEventsDetectorModel_ClearTimer) SetDeletionPolicy(policy policies.DeletionPolicy) { +func (r *DetectorModel_ClearTimer) SetDeletionPolicy(policy policies.DeletionPolicy) { r._deletionPolicy = policy } diff --git a/cloudformation/resources/aws-iotevents-detectormodel_detectormodeldefinition.go b/cloudformation/iotevents/aws-iotevents-detectormodel_detectormodeldefinition.go similarity index 69% rename from cloudformation/resources/aws-iotevents-detectormodel_detectormodeldefinition.go rename to cloudformation/iotevents/aws-iotevents-detectormodel_detectormodeldefinition.go index 3c74af09dd..5c22987421 100644 --- a/cloudformation/resources/aws-iotevents-detectormodel_detectormodeldefinition.go +++ b/cloudformation/iotevents/aws-iotevents-detectormodel_detectormodeldefinition.go @@ -1,10 +1,12 @@ -package resources +package iotevents -import "github.com/awslabs/goformation/v2/cloudformation/policies" +import ( + "github.com/awslabs/goformation/v3/cloudformation/policies" +) -// AWSIoTEventsDetectorModel_DetectorModelDefinition AWS CloudFormation Resource (AWS::IoTEvents::DetectorModel.DetectorModelDefinition) +// 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 AWSIoTEventsDetectorModel_DetectorModelDefinition struct { +type DetectorModel_DetectorModelDefinition struct { // InitialStateName AWS CloudFormation Property // Required: false @@ -14,7 +16,7 @@ type AWSIoTEventsDetectorModel_DetectorModelDefinition struct { // 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"` + States []DetectorModel_State `json:"States,omitempty"` // _deletionPolicy represents a CloudFormation DeletionPolicy _deletionPolicy policies.DeletionPolicy @@ -27,42 +29,42 @@ type AWSIoTEventsDetectorModel_DetectorModelDefinition struct { } // AWSCloudFormationType returns the AWS CloudFormation resource type -func (r *AWSIoTEventsDetectorModel_DetectorModelDefinition) AWSCloudFormationType() string { +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 *AWSIoTEventsDetectorModel_DetectorModelDefinition) DependsOn() []string { +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 *AWSIoTEventsDetectorModel_DetectorModelDefinition) SetDependsOn(dependencies []string) { +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 *AWSIoTEventsDetectorModel_DetectorModelDefinition) Metadata() map[string]interface{} { +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 *AWSIoTEventsDetectorModel_DetectorModelDefinition) SetMetadata(metadata map[string]interface{}) { +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 *AWSIoTEventsDetectorModel_DetectorModelDefinition) DeletionPolicy() policies.DeletionPolicy { +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 *AWSIoTEventsDetectorModel_DetectorModelDefinition) SetDeletionPolicy(policy policies.DeletionPolicy) { +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/resources/aws-iotevents-detectormodel_firehose.go b/cloudformation/iotevents/aws-iotevents-detectormodel_firehose.go similarity index 74% rename from cloudformation/resources/aws-iotevents-detectormodel_firehose.go rename to cloudformation/iotevents/aws-iotevents-detectormodel_firehose.go index 4172084aa0..bd838bb390 100644 --- a/cloudformation/resources/aws-iotevents-detectormodel_firehose.go +++ b/cloudformation/iotevents/aws-iotevents-detectormodel_firehose.go @@ -1,10 +1,12 @@ -package resources +package iotevents -import "github.com/awslabs/goformation/v2/cloudformation/policies" +import ( + "github.com/awslabs/goformation/v3/cloudformation/policies" +) -// AWSIoTEventsDetectorModel_Firehose AWS CloudFormation Resource (AWS::IoTEvents::DetectorModel.Firehose) +// 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 AWSIoTEventsDetectorModel_Firehose struct { +type DetectorModel_Firehose struct { // DeliveryStreamName AWS CloudFormation Property // Required: false @@ -27,42 +29,42 @@ type AWSIoTEventsDetectorModel_Firehose struct { } // AWSCloudFormationType returns the AWS CloudFormation resource type -func (r *AWSIoTEventsDetectorModel_Firehose) AWSCloudFormationType() string { +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 *AWSIoTEventsDetectorModel_Firehose) DependsOn() []string { +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 *AWSIoTEventsDetectorModel_Firehose) SetDependsOn(dependencies []string) { +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 *AWSIoTEventsDetectorModel_Firehose) Metadata() map[string]interface{} { +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 *AWSIoTEventsDetectorModel_Firehose) SetMetadata(metadata map[string]interface{}) { +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 *AWSIoTEventsDetectorModel_Firehose) DeletionPolicy() policies.DeletionPolicy { +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 *AWSIoTEventsDetectorModel_Firehose) SetDeletionPolicy(policy policies.DeletionPolicy) { +func (r *DetectorModel_Firehose) SetDeletionPolicy(policy policies.DeletionPolicy) { r._deletionPolicy = policy } diff --git a/cloudformation/resources/aws-iotevents-detectormodel_iotevents.go b/cloudformation/iotevents/aws-iotevents-detectormodel_iotevents.go similarity index 71% rename from cloudformation/resources/aws-iotevents-detectormodel_iotevents.go rename to cloudformation/iotevents/aws-iotevents-detectormodel_iotevents.go index c8bb6b9fdc..9a25950458 100644 --- a/cloudformation/resources/aws-iotevents-detectormodel_iotevents.go +++ b/cloudformation/iotevents/aws-iotevents-detectormodel_iotevents.go @@ -1,10 +1,12 @@ -package resources +package iotevents -import "github.com/awslabs/goformation/v2/cloudformation/policies" +import ( + "github.com/awslabs/goformation/v3/cloudformation/policies" +) -// AWSIoTEventsDetectorModel_IotEvents AWS CloudFormation Resource (AWS::IoTEvents::DetectorModel.IotEvents) +// 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 AWSIoTEventsDetectorModel_IotEvents struct { +type DetectorModel_IotEvents struct { // InputName AWS CloudFormation Property // Required: false @@ -22,42 +24,42 @@ type AWSIoTEventsDetectorModel_IotEvents struct { } // AWSCloudFormationType returns the AWS CloudFormation resource type -func (r *AWSIoTEventsDetectorModel_IotEvents) AWSCloudFormationType() string { +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 *AWSIoTEventsDetectorModel_IotEvents) DependsOn() []string { +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 *AWSIoTEventsDetectorModel_IotEvents) SetDependsOn(dependencies []string) { +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 *AWSIoTEventsDetectorModel_IotEvents) Metadata() map[string]interface{} { +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 *AWSIoTEventsDetectorModel_IotEvents) SetMetadata(metadata map[string]interface{}) { +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 *AWSIoTEventsDetectorModel_IotEvents) DeletionPolicy() policies.DeletionPolicy { +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 *AWSIoTEventsDetectorModel_IotEvents) SetDeletionPolicy(policy policies.DeletionPolicy) { +func (r *DetectorModel_IotEvents) SetDeletionPolicy(policy policies.DeletionPolicy) { r._deletionPolicy = policy } diff --git a/cloudformation/resources/aws-iotevents-detectormodel_iottopicpublish.go b/cloudformation/iotevents/aws-iotevents-detectormodel_iottopicpublish.go similarity index 70% rename from cloudformation/resources/aws-iotevents-detectormodel_iottopicpublish.go rename to cloudformation/iotevents/aws-iotevents-detectormodel_iottopicpublish.go index 1e2d1cc277..e35d1b59e2 100644 --- a/cloudformation/resources/aws-iotevents-detectormodel_iottopicpublish.go +++ b/cloudformation/iotevents/aws-iotevents-detectormodel_iottopicpublish.go @@ -1,10 +1,12 @@ -package resources +package iotevents -import "github.com/awslabs/goformation/v2/cloudformation/policies" +import ( + "github.com/awslabs/goformation/v3/cloudformation/policies" +) -// AWSIoTEventsDetectorModel_IotTopicPublish AWS CloudFormation Resource (AWS::IoTEvents::DetectorModel.IotTopicPublish) +// 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 AWSIoTEventsDetectorModel_IotTopicPublish struct { +type DetectorModel_IotTopicPublish struct { // MqttTopic AWS CloudFormation Property // Required: false @@ -22,42 +24,42 @@ type AWSIoTEventsDetectorModel_IotTopicPublish struct { } // AWSCloudFormationType returns the AWS CloudFormation resource type -func (r *AWSIoTEventsDetectorModel_IotTopicPublish) AWSCloudFormationType() string { +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 *AWSIoTEventsDetectorModel_IotTopicPublish) DependsOn() []string { +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 *AWSIoTEventsDetectorModel_IotTopicPublish) SetDependsOn(dependencies []string) { +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 *AWSIoTEventsDetectorModel_IotTopicPublish) Metadata() map[string]interface{} { +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 *AWSIoTEventsDetectorModel_IotTopicPublish) SetMetadata(metadata map[string]interface{}) { +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 *AWSIoTEventsDetectorModel_IotTopicPublish) DeletionPolicy() policies.DeletionPolicy { +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 *AWSIoTEventsDetectorModel_IotTopicPublish) SetDeletionPolicy(policy policies.DeletionPolicy) { +func (r *DetectorModel_IotTopicPublish) SetDeletionPolicy(policy policies.DeletionPolicy) { r._deletionPolicy = policy } diff --git a/cloudformation/resources/aws-iotevents-detectormodel_lambda.go b/cloudformation/iotevents/aws-iotevents-detectormodel_lambda.go similarity index 71% rename from cloudformation/resources/aws-iotevents-detectormodel_lambda.go rename to cloudformation/iotevents/aws-iotevents-detectormodel_lambda.go index b28fb7ef25..f3aaf9bfeb 100644 --- a/cloudformation/resources/aws-iotevents-detectormodel_lambda.go +++ b/cloudformation/iotevents/aws-iotevents-detectormodel_lambda.go @@ -1,10 +1,12 @@ -package resources +package iotevents -import "github.com/awslabs/goformation/v2/cloudformation/policies" +import ( + "github.com/awslabs/goformation/v3/cloudformation/policies" +) -// AWSIoTEventsDetectorModel_Lambda AWS CloudFormation Resource (AWS::IoTEvents::DetectorModel.Lambda) +// 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 AWSIoTEventsDetectorModel_Lambda struct { +type DetectorModel_Lambda struct { // FunctionArn AWS CloudFormation Property // Required: false @@ -22,42 +24,42 @@ type AWSIoTEventsDetectorModel_Lambda struct { } // AWSCloudFormationType returns the AWS CloudFormation resource type -func (r *AWSIoTEventsDetectorModel_Lambda) AWSCloudFormationType() string { +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 *AWSIoTEventsDetectorModel_Lambda) DependsOn() []string { +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 *AWSIoTEventsDetectorModel_Lambda) SetDependsOn(dependencies []string) { +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 *AWSIoTEventsDetectorModel_Lambda) Metadata() map[string]interface{} { +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 *AWSIoTEventsDetectorModel_Lambda) SetMetadata(metadata map[string]interface{}) { +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 *AWSIoTEventsDetectorModel_Lambda) DeletionPolicy() policies.DeletionPolicy { +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 *AWSIoTEventsDetectorModel_Lambda) SetDeletionPolicy(policy policies.DeletionPolicy) { +func (r *DetectorModel_Lambda) SetDeletionPolicy(policy policies.DeletionPolicy) { r._deletionPolicy = policy } diff --git a/cloudformation/resources/aws-iotevents-detectormodel_onenter.go b/cloudformation/iotevents/aws-iotevents-detectormodel_onenter.go similarity index 69% rename from cloudformation/resources/aws-iotevents-detectormodel_onenter.go rename to cloudformation/iotevents/aws-iotevents-detectormodel_onenter.go index 375e6f8ad4..c730c70c43 100644 --- a/cloudformation/resources/aws-iotevents-detectormodel_onenter.go +++ b/cloudformation/iotevents/aws-iotevents-detectormodel_onenter.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_OnEnter AWS CloudFormation Resource (AWS::IoTEvents::DetectorModel.OnEnter) +// 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 AWSIoTEventsDetectorModel_OnEnter struct { +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 []AWSIoTEventsDetectorModel_Event `json:"Events,omitempty"` + Events []DetectorModel_Event `json:"Events,omitempty"` // _deletionPolicy represents a CloudFormation DeletionPolicy _deletionPolicy policies.DeletionPolicy @@ -22,42 +24,42 @@ type AWSIoTEventsDetectorModel_OnEnter struct { } // AWSCloudFormationType returns the AWS CloudFormation resource type -func (r *AWSIoTEventsDetectorModel_OnEnter) AWSCloudFormationType() string { +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 *AWSIoTEventsDetectorModel_OnEnter) DependsOn() []string { +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 *AWSIoTEventsDetectorModel_OnEnter) SetDependsOn(dependencies []string) { +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 *AWSIoTEventsDetectorModel_OnEnter) Metadata() map[string]interface{} { +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 *AWSIoTEventsDetectorModel_OnEnter) SetMetadata(metadata map[string]interface{}) { +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 *AWSIoTEventsDetectorModel_OnEnter) DeletionPolicy() policies.DeletionPolicy { +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 *AWSIoTEventsDetectorModel_OnEnter) SetDeletionPolicy(policy policies.DeletionPolicy) { +func (r *DetectorModel_OnEnter) SetDeletionPolicy(policy policies.DeletionPolicy) { r._deletionPolicy = policy } diff --git a/cloudformation/resources/aws-iotevents-detectormodel_onexit.go b/cloudformation/iotevents/aws-iotevents-detectormodel_onexit.go similarity index 69% rename from cloudformation/resources/aws-iotevents-detectormodel_onexit.go rename to cloudformation/iotevents/aws-iotevents-detectormodel_onexit.go index 09cb01130f..624bf2b5e1 100644 --- a/cloudformation/resources/aws-iotevents-detectormodel_onexit.go +++ b/cloudformation/iotevents/aws-iotevents-detectormodel_onexit.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_OnExit AWS CloudFormation Resource (AWS::IoTEvents::DetectorModel.OnExit) +// 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 AWSIoTEventsDetectorModel_OnExit struct { +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 []AWSIoTEventsDetectorModel_Event `json:"Events,omitempty"` + Events []DetectorModel_Event `json:"Events,omitempty"` // _deletionPolicy represents a CloudFormation DeletionPolicy _deletionPolicy policies.DeletionPolicy @@ -22,42 +24,42 @@ type AWSIoTEventsDetectorModel_OnExit struct { } // AWSCloudFormationType returns the AWS CloudFormation resource type -func (r *AWSIoTEventsDetectorModel_OnExit) AWSCloudFormationType() string { +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 *AWSIoTEventsDetectorModel_OnExit) DependsOn() []string { +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 *AWSIoTEventsDetectorModel_OnExit) SetDependsOn(dependencies []string) { +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 *AWSIoTEventsDetectorModel_OnExit) Metadata() map[string]interface{} { +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 *AWSIoTEventsDetectorModel_OnExit) SetMetadata(metadata map[string]interface{}) { +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 *AWSIoTEventsDetectorModel_OnExit) DeletionPolicy() policies.DeletionPolicy { +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 *AWSIoTEventsDetectorModel_OnExit) SetDeletionPolicy(policy policies.DeletionPolicy) { +func (r *DetectorModel_OnExit) SetDeletionPolicy(policy policies.DeletionPolicy) { r._deletionPolicy = policy } diff --git a/cloudformation/resources/aws-iotevents-detectormodel_oninput.go b/cloudformation/iotevents/aws-iotevents-detectormodel_oninput.go similarity index 69% rename from cloudformation/resources/aws-iotevents-detectormodel_oninput.go rename to cloudformation/iotevents/aws-iotevents-detectormodel_oninput.go index b4b7365aca..95645b15b6 100644 --- a/cloudformation/resources/aws-iotevents-detectormodel_oninput.go +++ b/cloudformation/iotevents/aws-iotevents-detectormodel_oninput.go @@ -1,20 +1,22 @@ -package resources +package iotevents -import "github.com/awslabs/goformation/v2/cloudformation/policies" +import ( + "github.com/awslabs/goformation/v3/cloudformation/policies" +) -// AWSIoTEventsDetectorModel_OnInput AWS CloudFormation Resource (AWS::IoTEvents::DetectorModel.OnInput) +// 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 AWSIoTEventsDetectorModel_OnInput struct { +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 []AWSIoTEventsDetectorModel_Event `json:"Events,omitempty"` + 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 []AWSIoTEventsDetectorModel_TransitionEvent `json:"TransitionEvents,omitempty"` + TransitionEvents []DetectorModel_TransitionEvent `json:"TransitionEvents,omitempty"` // _deletionPolicy represents a CloudFormation DeletionPolicy _deletionPolicy policies.DeletionPolicy @@ -27,42 +29,42 @@ type AWSIoTEventsDetectorModel_OnInput struct { } // AWSCloudFormationType returns the AWS CloudFormation resource type -func (r *AWSIoTEventsDetectorModel_OnInput) AWSCloudFormationType() string { +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 *AWSIoTEventsDetectorModel_OnInput) DependsOn() []string { +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 *AWSIoTEventsDetectorModel_OnInput) SetDependsOn(dependencies []string) { +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 *AWSIoTEventsDetectorModel_OnInput) Metadata() map[string]interface{} { +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 *AWSIoTEventsDetectorModel_OnInput) SetMetadata(metadata map[string]interface{}) { +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 *AWSIoTEventsDetectorModel_OnInput) DeletionPolicy() policies.DeletionPolicy { +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 *AWSIoTEventsDetectorModel_OnInput) SetDeletionPolicy(policy policies.DeletionPolicy) { +func (r *DetectorModel_OnInput) SetDeletionPolicy(policy policies.DeletionPolicy) { r._deletionPolicy = policy } diff --git a/cloudformation/resources/aws-iotevents-detectormodel_resettimer.go b/cloudformation/iotevents/aws-iotevents-detectormodel_resettimer.go similarity index 71% rename from cloudformation/resources/aws-iotevents-detectormodel_resettimer.go rename to cloudformation/iotevents/aws-iotevents-detectormodel_resettimer.go index cd8136abde..561d7580d8 100644 --- a/cloudformation/resources/aws-iotevents-detectormodel_resettimer.go +++ b/cloudformation/iotevents/aws-iotevents-detectormodel_resettimer.go @@ -1,10 +1,12 @@ -package resources +package iotevents -import "github.com/awslabs/goformation/v2/cloudformation/policies" +import ( + "github.com/awslabs/goformation/v3/cloudformation/policies" +) -// AWSIoTEventsDetectorModel_ResetTimer AWS CloudFormation Resource (AWS::IoTEvents::DetectorModel.ResetTimer) +// 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 AWSIoTEventsDetectorModel_ResetTimer struct { +type DetectorModel_ResetTimer struct { // TimerName AWS CloudFormation Property // Required: false @@ -22,42 +24,42 @@ type AWSIoTEventsDetectorModel_ResetTimer struct { } // AWSCloudFormationType returns the AWS CloudFormation resource type -func (r *AWSIoTEventsDetectorModel_ResetTimer) AWSCloudFormationType() string { +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 *AWSIoTEventsDetectorModel_ResetTimer) DependsOn() []string { +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 *AWSIoTEventsDetectorModel_ResetTimer) SetDependsOn(dependencies []string) { +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 *AWSIoTEventsDetectorModel_ResetTimer) Metadata() map[string]interface{} { +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 *AWSIoTEventsDetectorModel_ResetTimer) SetMetadata(metadata map[string]interface{}) { +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 *AWSIoTEventsDetectorModel_ResetTimer) DeletionPolicy() policies.DeletionPolicy { +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 *AWSIoTEventsDetectorModel_ResetTimer) SetDeletionPolicy(policy policies.DeletionPolicy) { +func (r *DetectorModel_ResetTimer) SetDeletionPolicy(policy policies.DeletionPolicy) { r._deletionPolicy = policy } diff --git a/cloudformation/resources/aws-iotevents-detectormodel_settimer.go b/cloudformation/iotevents/aws-iotevents-detectormodel_settimer.go similarity index 73% rename from cloudformation/resources/aws-iotevents-detectormodel_settimer.go rename to cloudformation/iotevents/aws-iotevents-detectormodel_settimer.go index 93219f5e1b..e3c75d1db7 100644 --- a/cloudformation/resources/aws-iotevents-detectormodel_settimer.go +++ b/cloudformation/iotevents/aws-iotevents-detectormodel_settimer.go @@ -1,10 +1,12 @@ -package resources +package iotevents -import "github.com/awslabs/goformation/v2/cloudformation/policies" +import ( + "github.com/awslabs/goformation/v3/cloudformation/policies" +) -// AWSIoTEventsDetectorModel_SetTimer AWS CloudFormation Resource (AWS::IoTEvents::DetectorModel.SetTimer) +// 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 AWSIoTEventsDetectorModel_SetTimer struct { +type DetectorModel_SetTimer struct { // Seconds AWS CloudFormation Property // Required: false @@ -27,42 +29,42 @@ type AWSIoTEventsDetectorModel_SetTimer struct { } // AWSCloudFormationType returns the AWS CloudFormation resource type -func (r *AWSIoTEventsDetectorModel_SetTimer) AWSCloudFormationType() string { +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 *AWSIoTEventsDetectorModel_SetTimer) DependsOn() []string { +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 *AWSIoTEventsDetectorModel_SetTimer) SetDependsOn(dependencies []string) { +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 *AWSIoTEventsDetectorModel_SetTimer) Metadata() map[string]interface{} { +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 *AWSIoTEventsDetectorModel_SetTimer) SetMetadata(metadata map[string]interface{}) { +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 *AWSIoTEventsDetectorModel_SetTimer) DeletionPolicy() policies.DeletionPolicy { +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 *AWSIoTEventsDetectorModel_SetTimer) SetDeletionPolicy(policy policies.DeletionPolicy) { +func (r *DetectorModel_SetTimer) SetDeletionPolicy(policy policies.DeletionPolicy) { r._deletionPolicy = policy } diff --git a/cloudformation/resources/aws-iotevents-detectormodel_setvariable.go b/cloudformation/iotevents/aws-iotevents-detectormodel_setvariable.go similarity index 73% rename from cloudformation/resources/aws-iotevents-detectormodel_setvariable.go rename to cloudformation/iotevents/aws-iotevents-detectormodel_setvariable.go index 5953ebcfcf..a1141444db 100644 --- a/cloudformation/resources/aws-iotevents-detectormodel_setvariable.go +++ b/cloudformation/iotevents/aws-iotevents-detectormodel_setvariable.go @@ -1,10 +1,12 @@ -package resources +package iotevents -import "github.com/awslabs/goformation/v2/cloudformation/policies" +import ( + "github.com/awslabs/goformation/v3/cloudformation/policies" +) -// AWSIoTEventsDetectorModel_SetVariable AWS CloudFormation Resource (AWS::IoTEvents::DetectorModel.SetVariable) +// 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 AWSIoTEventsDetectorModel_SetVariable struct { +type DetectorModel_SetVariable struct { // Value AWS CloudFormation Property // Required: false @@ -27,42 +29,42 @@ type AWSIoTEventsDetectorModel_SetVariable struct { } // AWSCloudFormationType returns the AWS CloudFormation resource type -func (r *AWSIoTEventsDetectorModel_SetVariable) AWSCloudFormationType() string { +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 *AWSIoTEventsDetectorModel_SetVariable) DependsOn() []string { +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 *AWSIoTEventsDetectorModel_SetVariable) SetDependsOn(dependencies []string) { +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 *AWSIoTEventsDetectorModel_SetVariable) Metadata() map[string]interface{} { +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 *AWSIoTEventsDetectorModel_SetVariable) SetMetadata(metadata map[string]interface{}) { +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 *AWSIoTEventsDetectorModel_SetVariable) DeletionPolicy() policies.DeletionPolicy { +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 *AWSIoTEventsDetectorModel_SetVariable) SetDeletionPolicy(policy policies.DeletionPolicy) { +func (r *DetectorModel_SetVariable) SetDeletionPolicy(policy policies.DeletionPolicy) { r._deletionPolicy = policy } diff --git a/cloudformation/resources/aws-iotevents-detectormodel_sns.go b/cloudformation/iotevents/aws-iotevents-detectormodel_sns.go similarity index 72% rename from cloudformation/resources/aws-iotevents-detectormodel_sns.go rename to cloudformation/iotevents/aws-iotevents-detectormodel_sns.go index f9376ad7f6..6f57b56daa 100644 --- a/cloudformation/resources/aws-iotevents-detectormodel_sns.go +++ b/cloudformation/iotevents/aws-iotevents-detectormodel_sns.go @@ -1,10 +1,12 @@ -package resources +package iotevents -import "github.com/awslabs/goformation/v2/cloudformation/policies" +import ( + "github.com/awslabs/goformation/v3/cloudformation/policies" +) -// AWSIoTEventsDetectorModel_Sns AWS CloudFormation Resource (AWS::IoTEvents::DetectorModel.Sns) +// 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 AWSIoTEventsDetectorModel_Sns struct { +type DetectorModel_Sns struct { // TargetArn AWS CloudFormation Property // Required: false @@ -22,42 +24,42 @@ type AWSIoTEventsDetectorModel_Sns struct { } // AWSCloudFormationType returns the AWS CloudFormation resource type -func (r *AWSIoTEventsDetectorModel_Sns) AWSCloudFormationType() string { +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 *AWSIoTEventsDetectorModel_Sns) DependsOn() []string { +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 *AWSIoTEventsDetectorModel_Sns) SetDependsOn(dependencies []string) { +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 *AWSIoTEventsDetectorModel_Sns) Metadata() map[string]interface{} { +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 *AWSIoTEventsDetectorModel_Sns) SetMetadata(metadata map[string]interface{}) { +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 *AWSIoTEventsDetectorModel_Sns) DeletionPolicy() policies.DeletionPolicy { +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 *AWSIoTEventsDetectorModel_Sns) SetDeletionPolicy(policy policies.DeletionPolicy) { +func (r *DetectorModel_Sns) SetDeletionPolicy(policy policies.DeletionPolicy) { r._deletionPolicy = policy } diff --git a/cloudformation/resources/aws-iotevents-detectormodel_sqs.go b/cloudformation/iotevents/aws-iotevents-detectormodel_sqs.go similarity index 74% rename from cloudformation/resources/aws-iotevents-detectormodel_sqs.go rename to cloudformation/iotevents/aws-iotevents-detectormodel_sqs.go index f31f9e8fcb..18c8b77514 100644 --- a/cloudformation/resources/aws-iotevents-detectormodel_sqs.go +++ b/cloudformation/iotevents/aws-iotevents-detectormodel_sqs.go @@ -1,10 +1,12 @@ -package resources +package iotevents -import "github.com/awslabs/goformation/v2/cloudformation/policies" +import ( + "github.com/awslabs/goformation/v3/cloudformation/policies" +) -// AWSIoTEventsDetectorModel_Sqs AWS CloudFormation Resource (AWS::IoTEvents::DetectorModel.Sqs) +// 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 AWSIoTEventsDetectorModel_Sqs struct { +type DetectorModel_Sqs struct { // QueueUrl AWS CloudFormation Property // Required: false @@ -27,42 +29,42 @@ type AWSIoTEventsDetectorModel_Sqs struct { } // AWSCloudFormationType returns the AWS CloudFormation resource type -func (r *AWSIoTEventsDetectorModel_Sqs) AWSCloudFormationType() string { +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 *AWSIoTEventsDetectorModel_Sqs) DependsOn() []string { +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 *AWSIoTEventsDetectorModel_Sqs) SetDependsOn(dependencies []string) { +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 *AWSIoTEventsDetectorModel_Sqs) Metadata() map[string]interface{} { +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 *AWSIoTEventsDetectorModel_Sqs) SetMetadata(metadata map[string]interface{}) { +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 *AWSIoTEventsDetectorModel_Sqs) DeletionPolicy() policies.DeletionPolicy { +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 *AWSIoTEventsDetectorModel_Sqs) SetDeletionPolicy(policy policies.DeletionPolicy) { +func (r *DetectorModel_Sqs) SetDeletionPolicy(policy policies.DeletionPolicy) { r._deletionPolicy = policy } diff --git a/cloudformation/resources/aws-iotevents-detectormodel_state.go b/cloudformation/iotevents/aws-iotevents-detectormodel_state.go similarity index 73% rename from cloudformation/resources/aws-iotevents-detectormodel_state.go rename to cloudformation/iotevents/aws-iotevents-detectormodel_state.go index 1da16cbbac..432c19cfc8 100644 --- a/cloudformation/resources/aws-iotevents-detectormodel_state.go +++ b/cloudformation/iotevents/aws-iotevents-detectormodel_state.go @@ -1,25 +1,27 @@ -package resources +package iotevents -import "github.com/awslabs/goformation/v2/cloudformation/policies" +import ( + "github.com/awslabs/goformation/v3/cloudformation/policies" +) -// AWSIoTEventsDetectorModel_State AWS CloudFormation Resource (AWS::IoTEvents::DetectorModel.State) +// 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 AWSIoTEventsDetectorModel_State struct { +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 *AWSIoTEventsDetectorModel_OnEnter `json:"OnEnter,omitempty"` + 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 *AWSIoTEventsDetectorModel_OnExit `json:"OnExit,omitempty"` + 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 *AWSIoTEventsDetectorModel_OnInput `json:"OnInput,omitempty"` + OnInput *DetectorModel_OnInput `json:"OnInput,omitempty"` // StateName AWS CloudFormation Property // Required: false @@ -37,42 +39,42 @@ type AWSIoTEventsDetectorModel_State struct { } // AWSCloudFormationType returns the AWS CloudFormation resource type -func (r *AWSIoTEventsDetectorModel_State) AWSCloudFormationType() string { +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 *AWSIoTEventsDetectorModel_State) DependsOn() []string { +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 *AWSIoTEventsDetectorModel_State) SetDependsOn(dependencies []string) { +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 *AWSIoTEventsDetectorModel_State) Metadata() map[string]interface{} { +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 *AWSIoTEventsDetectorModel_State) SetMetadata(metadata map[string]interface{}) { +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 *AWSIoTEventsDetectorModel_State) DeletionPolicy() policies.DeletionPolicy { +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 *AWSIoTEventsDetectorModel_State) SetDeletionPolicy(policy policies.DeletionPolicy) { +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/resources/aws-iotevents-input_attribute.go b/cloudformation/iotevents/aws-iotevents-input_attribute.go similarity index 72% rename from cloudformation/resources/aws-iotevents-input_attribute.go rename to cloudformation/iotevents/aws-iotevents-input_attribute.go index 806376b085..36a887885f 100644 --- a/cloudformation/resources/aws-iotevents-input_attribute.go +++ b/cloudformation/iotevents/aws-iotevents-input_attribute.go @@ -1,10 +1,12 @@ -package resources +package iotevents -import "github.com/awslabs/goformation/v2/cloudformation/policies" +import ( + "github.com/awslabs/goformation/v3/cloudformation/policies" +) -// AWSIoTEventsInput_Attribute AWS CloudFormation Resource (AWS::IoTEvents::Input.Attribute) +// 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 AWSIoTEventsInput_Attribute struct { +type Input_Attribute struct { // JsonPath AWS CloudFormation Property // Required: false @@ -22,42 +24,42 @@ type AWSIoTEventsInput_Attribute struct { } // AWSCloudFormationType returns the AWS CloudFormation resource type -func (r *AWSIoTEventsInput_Attribute) AWSCloudFormationType() string { +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 *AWSIoTEventsInput_Attribute) DependsOn() []string { +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 *AWSIoTEventsInput_Attribute) SetDependsOn(dependencies []string) { +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 *AWSIoTEventsInput_Attribute) Metadata() map[string]interface{} { +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 *AWSIoTEventsInput_Attribute) SetMetadata(metadata map[string]interface{}) { +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 *AWSIoTEventsInput_Attribute) DeletionPolicy() policies.DeletionPolicy { +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 *AWSIoTEventsInput_Attribute) SetDeletionPolicy(policy policies.DeletionPolicy) { +func (r *Input_Attribute) SetDeletionPolicy(policy policies.DeletionPolicy) { r._deletionPolicy = policy } diff --git a/cloudformation/resources/aws-iotevents-input_inputdefinition.go b/cloudformation/iotevents/aws-iotevents-input_inputdefinition.go similarity index 69% rename from cloudformation/resources/aws-iotevents-input_inputdefinition.go rename to cloudformation/iotevents/aws-iotevents-input_inputdefinition.go index da73147c1b..380ca1505f 100644 --- a/cloudformation/resources/aws-iotevents-input_inputdefinition.go +++ b/cloudformation/iotevents/aws-iotevents-input_inputdefinition.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" +) -// AWSIoTEventsInput_InputDefinition AWS CloudFormation Resource (AWS::IoTEvents::Input.InputDefinition) +// 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 AWSIoTEventsInput_InputDefinition struct { +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 []AWSIoTEventsInput_Attribute `json:"Attributes,omitempty"` + Attributes []Input_Attribute `json:"Attributes,omitempty"` // _deletionPolicy represents a CloudFormation DeletionPolicy _deletionPolicy policies.DeletionPolicy @@ -22,42 +24,42 @@ type AWSIoTEventsInput_InputDefinition struct { } // AWSCloudFormationType returns the AWS CloudFormation resource type -func (r *AWSIoTEventsInput_InputDefinition) AWSCloudFormationType() string { +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 *AWSIoTEventsInput_InputDefinition) DependsOn() []string { +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 *AWSIoTEventsInput_InputDefinition) SetDependsOn(dependencies []string) { +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 *AWSIoTEventsInput_InputDefinition) Metadata() map[string]interface{} { +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 *AWSIoTEventsInput_InputDefinition) SetMetadata(metadata map[string]interface{}) { +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 *AWSIoTEventsInput_InputDefinition) DeletionPolicy() policies.DeletionPolicy { +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 *AWSIoTEventsInput_InputDefinition) SetDeletionPolicy(policy policies.DeletionPolicy) { +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/resources/aws-iotthingsgraph-flowtemplate_definitiondocument.go b/cloudformation/iotthingsgraph/aws-iotthingsgraph-flowtemplate_definitiondocument.go similarity index 71% rename from cloudformation/resources/aws-iotthingsgraph-flowtemplate_definitiondocument.go rename to cloudformation/iotthingsgraph/aws-iotthingsgraph-flowtemplate_definitiondocument.go index fce0cbd901..8a8a011553 100644 --- a/cloudformation/resources/aws-iotthingsgraph-flowtemplate_definitiondocument.go +++ b/cloudformation/iotthingsgraph/aws-iotthingsgraph-flowtemplate_definitiondocument.go @@ -1,10 +1,12 @@ -package resources +package iotthingsgraph -import "github.com/awslabs/goformation/v2/cloudformation/policies" +import ( + "github.com/awslabs/goformation/v3/cloudformation/policies" +) -// AWSIoTThingsGraphFlowTemplate_DefinitionDocument AWS CloudFormation Resource (AWS::IoTThingsGraph::FlowTemplate.DefinitionDocument) +// 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 AWSIoTThingsGraphFlowTemplate_DefinitionDocument struct { +type FlowTemplate_DefinitionDocument struct { // Language AWS CloudFormation Property // Required: true @@ -27,42 +29,42 @@ type AWSIoTThingsGraphFlowTemplate_DefinitionDocument struct { } // AWSCloudFormationType returns the AWS CloudFormation resource type -func (r *AWSIoTThingsGraphFlowTemplate_DefinitionDocument) AWSCloudFormationType() string { +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 *AWSIoTThingsGraphFlowTemplate_DefinitionDocument) DependsOn() []string { +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 *AWSIoTThingsGraphFlowTemplate_DefinitionDocument) SetDependsOn(dependencies []string) { +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 *AWSIoTThingsGraphFlowTemplate_DefinitionDocument) Metadata() map[string]interface{} { +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 *AWSIoTThingsGraphFlowTemplate_DefinitionDocument) SetMetadata(metadata map[string]interface{}) { +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 *AWSIoTThingsGraphFlowTemplate_DefinitionDocument) DeletionPolicy() policies.DeletionPolicy { +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 *AWSIoTThingsGraphFlowTemplate_DefinitionDocument) SetDeletionPolicy(policy policies.DeletionPolicy) { +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/resources/aws-kinesis-stream_streamencryption.go b/cloudformation/kinesis/aws-kinesis-stream_streamencryption.go similarity index 74% rename from cloudformation/resources/aws-kinesis-stream_streamencryption.go rename to cloudformation/kinesis/aws-kinesis-stream_streamencryption.go index 82b28e800e..59dd7dab1a 100644 --- a/cloudformation/resources/aws-kinesis-stream_streamencryption.go +++ b/cloudformation/kinesis/aws-kinesis-stream_streamencryption.go @@ -1,10 +1,12 @@ -package resources +package kinesis -import "github.com/awslabs/goformation/v2/cloudformation/policies" +import ( + "github.com/awslabs/goformation/v3/cloudformation/policies" +) -// AWSKinesisStream_StreamEncryption AWS CloudFormation Resource (AWS::Kinesis::Stream.StreamEncryption) +// 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 AWSKinesisStream_StreamEncryption struct { +type Stream_StreamEncryption struct { // EncryptionType AWS CloudFormation Property // Required: true @@ -27,42 +29,42 @@ type AWSKinesisStream_StreamEncryption struct { } // AWSCloudFormationType returns the AWS CloudFormation resource type -func (r *AWSKinesisStream_StreamEncryption) AWSCloudFormationType() string { +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 *AWSKinesisStream_StreamEncryption) DependsOn() []string { +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 *AWSKinesisStream_StreamEncryption) SetDependsOn(dependencies []string) { +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 *AWSKinesisStream_StreamEncryption) Metadata() map[string]interface{} { +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 *AWSKinesisStream_StreamEncryption) SetMetadata(metadata map[string]interface{}) { +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 *AWSKinesisStream_StreamEncryption) DeletionPolicy() policies.DeletionPolicy { +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 *AWSKinesisStream_StreamEncryption) SetDeletionPolicy(policy policies.DeletionPolicy) { +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/resources/aws-kinesisanalytics-application_csvmappingparameters.go b/cloudformation/kinesisanalytics/aws-kinesisanalytics-application_csvmappingparameters.go similarity index 71% rename from cloudformation/resources/aws-kinesisanalytics-application_csvmappingparameters.go rename to cloudformation/kinesisanalytics/aws-kinesisanalytics-application_csvmappingparameters.go index 82109ce97f..3a131efe87 100644 --- a/cloudformation/resources/aws-kinesisanalytics-application_csvmappingparameters.go +++ b/cloudformation/kinesisanalytics/aws-kinesisanalytics-application_csvmappingparameters.go @@ -1,10 +1,12 @@ -package resources +package kinesisanalytics -import "github.com/awslabs/goformation/v2/cloudformation/policies" +import ( + "github.com/awslabs/goformation/v3/cloudformation/policies" +) -// AWSKinesisAnalyticsApplication_CSVMappingParameters AWS CloudFormation Resource (AWS::KinesisAnalytics::Application.CSVMappingParameters) +// 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 AWSKinesisAnalyticsApplication_CSVMappingParameters struct { +type Application_CSVMappingParameters struct { // RecordColumnDelimiter AWS CloudFormation Property // Required: true @@ -27,42 +29,42 @@ type AWSKinesisAnalyticsApplication_CSVMappingParameters struct { } // AWSCloudFormationType returns the AWS CloudFormation resource type -func (r *AWSKinesisAnalyticsApplication_CSVMappingParameters) AWSCloudFormationType() string { +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 *AWSKinesisAnalyticsApplication_CSVMappingParameters) DependsOn() []string { +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 *AWSKinesisAnalyticsApplication_CSVMappingParameters) SetDependsOn(dependencies []string) { +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 *AWSKinesisAnalyticsApplication_CSVMappingParameters) Metadata() map[string]interface{} { +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 *AWSKinesisAnalyticsApplication_CSVMappingParameters) SetMetadata(metadata map[string]interface{}) { +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 *AWSKinesisAnalyticsApplication_CSVMappingParameters) DeletionPolicy() policies.DeletionPolicy { +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 *AWSKinesisAnalyticsApplication_CSVMappingParameters) SetDeletionPolicy(policy policies.DeletionPolicy) { +func (r *Application_CSVMappingParameters) SetDeletionPolicy(policy policies.DeletionPolicy) { r._deletionPolicy = policy } diff --git a/cloudformation/resources/aws-kinesisanalytics-application_input.go b/cloudformation/kinesisanalytics/aws-kinesisanalytics-application_input.go similarity index 70% rename from cloudformation/resources/aws-kinesisanalytics-application_input.go rename to cloudformation/kinesisanalytics/aws-kinesisanalytics-application_input.go index c2687d4d10..c287530694 100644 --- a/cloudformation/resources/aws-kinesisanalytics-application_input.go +++ b/cloudformation/kinesisanalytics/aws-kinesisanalytics-application_input.go @@ -1,35 +1,37 @@ -package resources +package kinesisanalytics -import "github.com/awslabs/goformation/v2/cloudformation/policies" +import ( + "github.com/awslabs/goformation/v3/cloudformation/policies" +) -// AWSKinesisAnalyticsApplication_Input AWS CloudFormation Resource (AWS::KinesisAnalytics::Application.Input) +// 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 AWSKinesisAnalyticsApplication_Input struct { +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 *AWSKinesisAnalyticsApplication_InputParallelism `json:"InputParallelism,omitempty"` + 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 *AWSKinesisAnalyticsApplication_InputProcessingConfiguration `json:"InputProcessingConfiguration,omitempty"` + 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 *AWSKinesisAnalyticsApplication_InputSchema `json:"InputSchema,omitempty"` + 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 *AWSKinesisAnalyticsApplication_KinesisFirehoseInput `json:"KinesisFirehoseInput,omitempty"` + 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 *AWSKinesisAnalyticsApplication_KinesisStreamsInput `json:"KinesisStreamsInput,omitempty"` + KinesisStreamsInput *Application_KinesisStreamsInput `json:"KinesisStreamsInput,omitempty"` // NamePrefix AWS CloudFormation Property // Required: true @@ -47,42 +49,42 @@ type AWSKinesisAnalyticsApplication_Input struct { } // AWSCloudFormationType returns the AWS CloudFormation resource type -func (r *AWSKinesisAnalyticsApplication_Input) AWSCloudFormationType() string { +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 *AWSKinesisAnalyticsApplication_Input) DependsOn() []string { +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 *AWSKinesisAnalyticsApplication_Input) SetDependsOn(dependencies []string) { +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 *AWSKinesisAnalyticsApplication_Input) Metadata() map[string]interface{} { +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 *AWSKinesisAnalyticsApplication_Input) SetMetadata(metadata map[string]interface{}) { +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 *AWSKinesisAnalyticsApplication_Input) DeletionPolicy() policies.DeletionPolicy { +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 *AWSKinesisAnalyticsApplication_Input) SetDeletionPolicy(policy policies.DeletionPolicy) { +func (r *Application_Input) SetDeletionPolicy(policy policies.DeletionPolicy) { r._deletionPolicy = policy } diff --git a/cloudformation/resources/aws-kinesisanalytics-application_inputlambdaprocessor.go b/cloudformation/kinesisanalytics/aws-kinesisanalytics-application_inputlambdaprocessor.go similarity index 71% rename from cloudformation/resources/aws-kinesisanalytics-application_inputlambdaprocessor.go rename to cloudformation/kinesisanalytics/aws-kinesisanalytics-application_inputlambdaprocessor.go index 5be3755a8a..bf17c4fde3 100644 --- a/cloudformation/resources/aws-kinesisanalytics-application_inputlambdaprocessor.go +++ b/cloudformation/kinesisanalytics/aws-kinesisanalytics-application_inputlambdaprocessor.go @@ -1,10 +1,12 @@ -package resources +package kinesisanalytics -import "github.com/awslabs/goformation/v2/cloudformation/policies" +import ( + "github.com/awslabs/goformation/v3/cloudformation/policies" +) -// AWSKinesisAnalyticsApplication_InputLambdaProcessor AWS CloudFormation Resource (AWS::KinesisAnalytics::Application.InputLambdaProcessor) +// 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 AWSKinesisAnalyticsApplication_InputLambdaProcessor struct { +type Application_InputLambdaProcessor struct { // ResourceARN AWS CloudFormation Property // Required: true @@ -27,42 +29,42 @@ type AWSKinesisAnalyticsApplication_InputLambdaProcessor struct { } // AWSCloudFormationType returns the AWS CloudFormation resource type -func (r *AWSKinesisAnalyticsApplication_InputLambdaProcessor) AWSCloudFormationType() string { +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 *AWSKinesisAnalyticsApplication_InputLambdaProcessor) DependsOn() []string { +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 *AWSKinesisAnalyticsApplication_InputLambdaProcessor) SetDependsOn(dependencies []string) { +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 *AWSKinesisAnalyticsApplication_InputLambdaProcessor) Metadata() map[string]interface{} { +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 *AWSKinesisAnalyticsApplication_InputLambdaProcessor) SetMetadata(metadata map[string]interface{}) { +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 *AWSKinesisAnalyticsApplication_InputLambdaProcessor) DeletionPolicy() policies.DeletionPolicy { +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 *AWSKinesisAnalyticsApplication_InputLambdaProcessor) SetDeletionPolicy(policy policies.DeletionPolicy) { +func (r *Application_InputLambdaProcessor) SetDeletionPolicy(policy policies.DeletionPolicy) { r._deletionPolicy = policy } diff --git a/cloudformation/resources/aws-kinesisanalytics-application_inputparallelism.go b/cloudformation/kinesisanalytics/aws-kinesisanalytics-application_inputparallelism.go similarity index 68% rename from cloudformation/resources/aws-kinesisanalytics-application_inputparallelism.go rename to cloudformation/kinesisanalytics/aws-kinesisanalytics-application_inputparallelism.go index 4a89910c1b..d789b6e789 100644 --- a/cloudformation/resources/aws-kinesisanalytics-application_inputparallelism.go +++ b/cloudformation/kinesisanalytics/aws-kinesisanalytics-application_inputparallelism.go @@ -1,10 +1,12 @@ -package resources +package kinesisanalytics -import "github.com/awslabs/goformation/v2/cloudformation/policies" +import ( + "github.com/awslabs/goformation/v3/cloudformation/policies" +) -// AWSKinesisAnalyticsApplication_InputParallelism AWS CloudFormation Resource (AWS::KinesisAnalytics::Application.InputParallelism) +// 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 AWSKinesisAnalyticsApplication_InputParallelism struct { +type Application_InputParallelism struct { // Count AWS CloudFormation Property // Required: false @@ -22,42 +24,42 @@ type AWSKinesisAnalyticsApplication_InputParallelism struct { } // AWSCloudFormationType returns the AWS CloudFormation resource type -func (r *AWSKinesisAnalyticsApplication_InputParallelism) AWSCloudFormationType() string { +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 *AWSKinesisAnalyticsApplication_InputParallelism) DependsOn() []string { +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 *AWSKinesisAnalyticsApplication_InputParallelism) SetDependsOn(dependencies []string) { +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 *AWSKinesisAnalyticsApplication_InputParallelism) Metadata() map[string]interface{} { +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 *AWSKinesisAnalyticsApplication_InputParallelism) SetMetadata(metadata map[string]interface{}) { +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 *AWSKinesisAnalyticsApplication_InputParallelism) DeletionPolicy() policies.DeletionPolicy { +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 *AWSKinesisAnalyticsApplication_InputParallelism) SetDeletionPolicy(policy policies.DeletionPolicy) { +func (r *Application_InputParallelism) SetDeletionPolicy(policy policies.DeletionPolicy) { r._deletionPolicy = policy } diff --git a/cloudformation/resources/aws-kinesisanalytics-application_inputprocessingconfiguration.go b/cloudformation/kinesisanalytics/aws-kinesisanalytics-application_inputprocessingconfiguration.go similarity index 64% rename from cloudformation/resources/aws-kinesisanalytics-application_inputprocessingconfiguration.go rename to cloudformation/kinesisanalytics/aws-kinesisanalytics-application_inputprocessingconfiguration.go index b73ed3fad3..b8b4fe4ea4 100644 --- a/cloudformation/resources/aws-kinesisanalytics-application_inputprocessingconfiguration.go +++ b/cloudformation/kinesisanalytics/aws-kinesisanalytics-application_inputprocessingconfiguration.go @@ -1,15 +1,17 @@ -package resources +package kinesisanalytics -import "github.com/awslabs/goformation/v2/cloudformation/policies" +import ( + "github.com/awslabs/goformation/v3/cloudformation/policies" +) -// AWSKinesisAnalyticsApplication_InputProcessingConfiguration AWS CloudFormation Resource (AWS::KinesisAnalytics::Application.InputProcessingConfiguration) +// 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 AWSKinesisAnalyticsApplication_InputProcessingConfiguration struct { +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 *AWSKinesisAnalyticsApplication_InputLambdaProcessor `json:"InputLambdaProcessor,omitempty"` + InputLambdaProcessor *Application_InputLambdaProcessor `json:"InputLambdaProcessor,omitempty"` // _deletionPolicy represents a CloudFormation DeletionPolicy _deletionPolicy policies.DeletionPolicy @@ -22,42 +24,42 @@ type AWSKinesisAnalyticsApplication_InputProcessingConfiguration struct { } // AWSCloudFormationType returns the AWS CloudFormation resource type -func (r *AWSKinesisAnalyticsApplication_InputProcessingConfiguration) AWSCloudFormationType() string { +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 *AWSKinesisAnalyticsApplication_InputProcessingConfiguration) DependsOn() []string { +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 *AWSKinesisAnalyticsApplication_InputProcessingConfiguration) SetDependsOn(dependencies []string) { +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 *AWSKinesisAnalyticsApplication_InputProcessingConfiguration) Metadata() map[string]interface{} { +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 *AWSKinesisAnalyticsApplication_InputProcessingConfiguration) SetMetadata(metadata map[string]interface{}) { +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 *AWSKinesisAnalyticsApplication_InputProcessingConfiguration) DeletionPolicy() policies.DeletionPolicy { +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 *AWSKinesisAnalyticsApplication_InputProcessingConfiguration) SetDeletionPolicy(policy policies.DeletionPolicy) { +func (r *Application_InputProcessingConfiguration) SetDeletionPolicy(policy policies.DeletionPolicy) { r._deletionPolicy = policy } diff --git a/cloudformation/resources/aws-kinesisanalytics-application_inputschema.go b/cloudformation/kinesisanalytics/aws-kinesisanalytics-application_inputschema.go similarity index 70% rename from cloudformation/resources/aws-kinesisanalytics-application_inputschema.go rename to cloudformation/kinesisanalytics/aws-kinesisanalytics-application_inputschema.go index 994f3d1474..2631b5bbaf 100644 --- a/cloudformation/resources/aws-kinesisanalytics-application_inputschema.go +++ b/cloudformation/kinesisanalytics/aws-kinesisanalytics-application_inputschema.go @@ -1,15 +1,17 @@ -package resources +package kinesisanalytics -import "github.com/awslabs/goformation/v2/cloudformation/policies" +import ( + "github.com/awslabs/goformation/v3/cloudformation/policies" +) -// AWSKinesisAnalyticsApplication_InputSchema AWS CloudFormation Resource (AWS::KinesisAnalytics::Application.InputSchema) +// 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 AWSKinesisAnalyticsApplication_InputSchema struct { +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 []AWSKinesisAnalyticsApplication_RecordColumn `json:"RecordColumns,omitempty"` + RecordColumns []Application_RecordColumn `json:"RecordColumns,omitempty"` // RecordEncoding AWS CloudFormation Property // Required: false @@ -19,7 +21,7 @@ type AWSKinesisAnalyticsApplication_InputSchema struct { // 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"` + RecordFormat *Application_RecordFormat `json:"RecordFormat,omitempty"` // _deletionPolicy represents a CloudFormation DeletionPolicy _deletionPolicy policies.DeletionPolicy @@ -32,42 +34,42 @@ type AWSKinesisAnalyticsApplication_InputSchema struct { } // AWSCloudFormationType returns the AWS CloudFormation resource type -func (r *AWSKinesisAnalyticsApplication_InputSchema) AWSCloudFormationType() string { +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 *AWSKinesisAnalyticsApplication_InputSchema) DependsOn() []string { +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 *AWSKinesisAnalyticsApplication_InputSchema) SetDependsOn(dependencies []string) { +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 *AWSKinesisAnalyticsApplication_InputSchema) Metadata() map[string]interface{} { +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 *AWSKinesisAnalyticsApplication_InputSchema) SetMetadata(metadata map[string]interface{}) { +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 *AWSKinesisAnalyticsApplication_InputSchema) DeletionPolicy() policies.DeletionPolicy { +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 *AWSKinesisAnalyticsApplication_InputSchema) SetDeletionPolicy(policy policies.DeletionPolicy) { +func (r *Application_InputSchema) SetDeletionPolicy(policy policies.DeletionPolicy) { r._deletionPolicy = policy } diff --git a/cloudformation/resources/aws-kinesisanalytics-application_jsonmappingparameters.go b/cloudformation/kinesisanalytics/aws-kinesisanalytics-application_jsonmappingparameters.go similarity index 68% rename from cloudformation/resources/aws-kinesisanalytics-application_jsonmappingparameters.go rename to cloudformation/kinesisanalytics/aws-kinesisanalytics-application_jsonmappingparameters.go index 6fed4ac8dd..b2723793d0 100644 --- a/cloudformation/resources/aws-kinesisanalytics-application_jsonmappingparameters.go +++ b/cloudformation/kinesisanalytics/aws-kinesisanalytics-application_jsonmappingparameters.go @@ -1,10 +1,12 @@ -package resources +package kinesisanalytics -import "github.com/awslabs/goformation/v2/cloudformation/policies" +import ( + "github.com/awslabs/goformation/v3/cloudformation/policies" +) -// AWSKinesisAnalyticsApplication_JSONMappingParameters AWS CloudFormation Resource (AWS::KinesisAnalytics::Application.JSONMappingParameters) +// 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 AWSKinesisAnalyticsApplication_JSONMappingParameters struct { +type Application_JSONMappingParameters struct { // RecordRowPath AWS CloudFormation Property // Required: true @@ -22,42 +24,42 @@ type AWSKinesisAnalyticsApplication_JSONMappingParameters struct { } // AWSCloudFormationType returns the AWS CloudFormation resource type -func (r *AWSKinesisAnalyticsApplication_JSONMappingParameters) AWSCloudFormationType() string { +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 *AWSKinesisAnalyticsApplication_JSONMappingParameters) DependsOn() []string { +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 *AWSKinesisAnalyticsApplication_JSONMappingParameters) SetDependsOn(dependencies []string) { +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 *AWSKinesisAnalyticsApplication_JSONMappingParameters) Metadata() map[string]interface{} { +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 *AWSKinesisAnalyticsApplication_JSONMappingParameters) SetMetadata(metadata map[string]interface{}) { +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 *AWSKinesisAnalyticsApplication_JSONMappingParameters) DeletionPolicy() policies.DeletionPolicy { +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 *AWSKinesisAnalyticsApplication_JSONMappingParameters) SetDeletionPolicy(policy policies.DeletionPolicy) { +func (r *Application_JSONMappingParameters) SetDeletionPolicy(policy policies.DeletionPolicy) { r._deletionPolicy = policy } diff --git a/cloudformation/resources/aws-kinesisanalytics-application_kinesisfirehoseinput.go b/cloudformation/kinesisanalytics/aws-kinesisanalytics-application_kinesisfirehoseinput.go similarity index 71% rename from cloudformation/resources/aws-kinesisanalytics-application_kinesisfirehoseinput.go rename to cloudformation/kinesisanalytics/aws-kinesisanalytics-application_kinesisfirehoseinput.go index edd914bd72..1bf627bd6c 100644 --- a/cloudformation/resources/aws-kinesisanalytics-application_kinesisfirehoseinput.go +++ b/cloudformation/kinesisanalytics/aws-kinesisanalytics-application_kinesisfirehoseinput.go @@ -1,10 +1,12 @@ -package resources +package kinesisanalytics -import "github.com/awslabs/goformation/v2/cloudformation/policies" +import ( + "github.com/awslabs/goformation/v3/cloudformation/policies" +) -// AWSKinesisAnalyticsApplication_KinesisFirehoseInput AWS CloudFormation Resource (AWS::KinesisAnalytics::Application.KinesisFirehoseInput) +// 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 AWSKinesisAnalyticsApplication_KinesisFirehoseInput struct { +type Application_KinesisFirehoseInput struct { // ResourceARN AWS CloudFormation Property // Required: true @@ -27,42 +29,42 @@ type AWSKinesisAnalyticsApplication_KinesisFirehoseInput struct { } // AWSCloudFormationType returns the AWS CloudFormation resource type -func (r *AWSKinesisAnalyticsApplication_KinesisFirehoseInput) AWSCloudFormationType() string { +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 *AWSKinesisAnalyticsApplication_KinesisFirehoseInput) DependsOn() []string { +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 *AWSKinesisAnalyticsApplication_KinesisFirehoseInput) SetDependsOn(dependencies []string) { +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 *AWSKinesisAnalyticsApplication_KinesisFirehoseInput) Metadata() map[string]interface{} { +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 *AWSKinesisAnalyticsApplication_KinesisFirehoseInput) SetMetadata(metadata map[string]interface{}) { +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 *AWSKinesisAnalyticsApplication_KinesisFirehoseInput) DeletionPolicy() policies.DeletionPolicy { +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 *AWSKinesisAnalyticsApplication_KinesisFirehoseInput) SetDeletionPolicy(policy policies.DeletionPolicy) { +func (r *Application_KinesisFirehoseInput) SetDeletionPolicy(policy policies.DeletionPolicy) { r._deletionPolicy = policy } diff --git a/cloudformation/resources/aws-kinesisanalytics-application_kinesisstreamsinput.go b/cloudformation/kinesisanalytics/aws-kinesisanalytics-application_kinesisstreamsinput.go similarity index 71% rename from cloudformation/resources/aws-kinesisanalytics-application_kinesisstreamsinput.go rename to cloudformation/kinesisanalytics/aws-kinesisanalytics-application_kinesisstreamsinput.go index 0f2f37c5db..c5ffa1a8fe 100644 --- a/cloudformation/resources/aws-kinesisanalytics-application_kinesisstreamsinput.go +++ b/cloudformation/kinesisanalytics/aws-kinesisanalytics-application_kinesisstreamsinput.go @@ -1,10 +1,12 @@ -package resources +package kinesisanalytics -import "github.com/awslabs/goformation/v2/cloudformation/policies" +import ( + "github.com/awslabs/goformation/v3/cloudformation/policies" +) -// AWSKinesisAnalyticsApplication_KinesisStreamsInput AWS CloudFormation Resource (AWS::KinesisAnalytics::Application.KinesisStreamsInput) +// 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 AWSKinesisAnalyticsApplication_KinesisStreamsInput struct { +type Application_KinesisStreamsInput struct { // ResourceARN AWS CloudFormation Property // Required: true @@ -27,42 +29,42 @@ type AWSKinesisAnalyticsApplication_KinesisStreamsInput struct { } // AWSCloudFormationType returns the AWS CloudFormation resource type -func (r *AWSKinesisAnalyticsApplication_KinesisStreamsInput) AWSCloudFormationType() string { +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 *AWSKinesisAnalyticsApplication_KinesisStreamsInput) DependsOn() []string { +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 *AWSKinesisAnalyticsApplication_KinesisStreamsInput) SetDependsOn(dependencies []string) { +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 *AWSKinesisAnalyticsApplication_KinesisStreamsInput) Metadata() map[string]interface{} { +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 *AWSKinesisAnalyticsApplication_KinesisStreamsInput) SetMetadata(metadata map[string]interface{}) { +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 *AWSKinesisAnalyticsApplication_KinesisStreamsInput) DeletionPolicy() policies.DeletionPolicy { +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 *AWSKinesisAnalyticsApplication_KinesisStreamsInput) SetDeletionPolicy(policy policies.DeletionPolicy) { +func (r *Application_KinesisStreamsInput) SetDeletionPolicy(policy policies.DeletionPolicy) { r._deletionPolicy = policy } diff --git a/cloudformation/resources/aws-kinesisanalytics-application_mappingparameters.go b/cloudformation/kinesisanalytics/aws-kinesisanalytics-application_mappingparameters.go similarity index 66% rename from cloudformation/resources/aws-kinesisanalytics-application_mappingparameters.go rename to cloudformation/kinesisanalytics/aws-kinesisanalytics-application_mappingparameters.go index 42846eb5cd..d68d81dd42 100644 --- a/cloudformation/resources/aws-kinesisanalytics-application_mappingparameters.go +++ b/cloudformation/kinesisanalytics/aws-kinesisanalytics-application_mappingparameters.go @@ -1,20 +1,22 @@ -package resources +package kinesisanalytics -import "github.com/awslabs/goformation/v2/cloudformation/policies" +import ( + "github.com/awslabs/goformation/v3/cloudformation/policies" +) -// AWSKinesisAnalyticsApplication_MappingParameters AWS CloudFormation Resource (AWS::KinesisAnalytics::Application.MappingParameters) +// 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 AWSKinesisAnalyticsApplication_MappingParameters struct { +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 *AWSKinesisAnalyticsApplication_CSVMappingParameters `json:"CSVMappingParameters,omitempty"` + 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 *AWSKinesisAnalyticsApplication_JSONMappingParameters `json:"JSONMappingParameters,omitempty"` + JSONMappingParameters *Application_JSONMappingParameters `json:"JSONMappingParameters,omitempty"` // _deletionPolicy represents a CloudFormation DeletionPolicy _deletionPolicy policies.DeletionPolicy @@ -27,42 +29,42 @@ type AWSKinesisAnalyticsApplication_MappingParameters struct { } // AWSCloudFormationType returns the AWS CloudFormation resource type -func (r *AWSKinesisAnalyticsApplication_MappingParameters) AWSCloudFormationType() string { +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 *AWSKinesisAnalyticsApplication_MappingParameters) DependsOn() []string { +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 *AWSKinesisAnalyticsApplication_MappingParameters) SetDependsOn(dependencies []string) { +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 *AWSKinesisAnalyticsApplication_MappingParameters) Metadata() map[string]interface{} { +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 *AWSKinesisAnalyticsApplication_MappingParameters) SetMetadata(metadata map[string]interface{}) { +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 *AWSKinesisAnalyticsApplication_MappingParameters) DeletionPolicy() policies.DeletionPolicy { +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 *AWSKinesisAnalyticsApplication_MappingParameters) SetDeletionPolicy(policy policies.DeletionPolicy) { +func (r *Application_MappingParameters) SetDeletionPolicy(policy policies.DeletionPolicy) { r._deletionPolicy = policy } diff --git a/cloudformation/resources/aws-kinesisanalytics-application_recordcolumn.go b/cloudformation/kinesisanalytics/aws-kinesisanalytics-application_recordcolumn.go similarity index 74% rename from cloudformation/resources/aws-kinesisanalytics-application_recordcolumn.go rename to cloudformation/kinesisanalytics/aws-kinesisanalytics-application_recordcolumn.go index 71d8c17365..b95671dedb 100644 --- a/cloudformation/resources/aws-kinesisanalytics-application_recordcolumn.go +++ b/cloudformation/kinesisanalytics/aws-kinesisanalytics-application_recordcolumn.go @@ -1,10 +1,12 @@ -package resources +package kinesisanalytics -import "github.com/awslabs/goformation/v2/cloudformation/policies" +import ( + "github.com/awslabs/goformation/v3/cloudformation/policies" +) -// AWSKinesisAnalyticsApplication_RecordColumn AWS CloudFormation Resource (AWS::KinesisAnalytics::Application.RecordColumn) +// 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 AWSKinesisAnalyticsApplication_RecordColumn struct { +type Application_RecordColumn struct { // Mapping AWS CloudFormation Property // Required: false @@ -32,42 +34,42 @@ type AWSKinesisAnalyticsApplication_RecordColumn struct { } // AWSCloudFormationType returns the AWS CloudFormation resource type -func (r *AWSKinesisAnalyticsApplication_RecordColumn) AWSCloudFormationType() string { +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 *AWSKinesisAnalyticsApplication_RecordColumn) DependsOn() []string { +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 *AWSKinesisAnalyticsApplication_RecordColumn) SetDependsOn(dependencies []string) { +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 *AWSKinesisAnalyticsApplication_RecordColumn) Metadata() map[string]interface{} { +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 *AWSKinesisAnalyticsApplication_RecordColumn) SetMetadata(metadata map[string]interface{}) { +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 *AWSKinesisAnalyticsApplication_RecordColumn) DeletionPolicy() policies.DeletionPolicy { +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 *AWSKinesisAnalyticsApplication_RecordColumn) SetDeletionPolicy(policy policies.DeletionPolicy) { +func (r *Application_RecordColumn) SetDeletionPolicy(policy policies.DeletionPolicy) { r._deletionPolicy = policy } diff --git a/cloudformation/resources/aws-kinesisanalytics-application_recordformat.go b/cloudformation/kinesisanalytics/aws-kinesisanalytics-application_recordformat.go similarity index 70% rename from cloudformation/resources/aws-kinesisanalytics-application_recordformat.go rename to cloudformation/kinesisanalytics/aws-kinesisanalytics-application_recordformat.go index ef1e7a6051..7629da93e6 100644 --- a/cloudformation/resources/aws-kinesisanalytics-application_recordformat.go +++ b/cloudformation/kinesisanalytics/aws-kinesisanalytics-application_recordformat.go @@ -1,15 +1,17 @@ -package resources +package kinesisanalytics -import "github.com/awslabs/goformation/v2/cloudformation/policies" +import ( + "github.com/awslabs/goformation/v3/cloudformation/policies" +) -// AWSKinesisAnalyticsApplication_RecordFormat AWS CloudFormation Resource (AWS::KinesisAnalytics::Application.RecordFormat) +// 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 AWSKinesisAnalyticsApplication_RecordFormat struct { +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 *AWSKinesisAnalyticsApplication_MappingParameters `json:"MappingParameters,omitempty"` + MappingParameters *Application_MappingParameters `json:"MappingParameters,omitempty"` // RecordFormatType AWS CloudFormation Property // Required: true @@ -27,42 +29,42 @@ type AWSKinesisAnalyticsApplication_RecordFormat struct { } // AWSCloudFormationType returns the AWS CloudFormation resource type -func (r *AWSKinesisAnalyticsApplication_RecordFormat) AWSCloudFormationType() string { +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 *AWSKinesisAnalyticsApplication_RecordFormat) DependsOn() []string { +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 *AWSKinesisAnalyticsApplication_RecordFormat) SetDependsOn(dependencies []string) { +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 *AWSKinesisAnalyticsApplication_RecordFormat) Metadata() map[string]interface{} { +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 *AWSKinesisAnalyticsApplication_RecordFormat) SetMetadata(metadata map[string]interface{}) { +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 *AWSKinesisAnalyticsApplication_RecordFormat) DeletionPolicy() policies.DeletionPolicy { +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 *AWSKinesisAnalyticsApplication_RecordFormat) SetDeletionPolicy(policy policies.DeletionPolicy) { +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/resources/aws-kinesisanalytics-applicationoutput_destinationschema.go b/cloudformation/kinesisanalytics/aws-kinesisanalytics-applicationoutput_destinationschema.go similarity index 68% rename from cloudformation/resources/aws-kinesisanalytics-applicationoutput_destinationschema.go rename to cloudformation/kinesisanalytics/aws-kinesisanalytics-applicationoutput_destinationschema.go index e8f5f25ab3..2604cb919b 100644 --- a/cloudformation/resources/aws-kinesisanalytics-applicationoutput_destinationschema.go +++ b/cloudformation/kinesisanalytics/aws-kinesisanalytics-applicationoutput_destinationschema.go @@ -1,10 +1,12 @@ -package resources +package kinesisanalytics -import "github.com/awslabs/goformation/v2/cloudformation/policies" +import ( + "github.com/awslabs/goformation/v3/cloudformation/policies" +) -// AWSKinesisAnalyticsApplicationOutput_DestinationSchema AWS CloudFormation Resource (AWS::KinesisAnalytics::ApplicationOutput.DestinationSchema) +// 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 AWSKinesisAnalyticsApplicationOutput_DestinationSchema struct { +type ApplicationOutput_DestinationSchema struct { // RecordFormatType AWS CloudFormation Property // Required: false @@ -22,42 +24,42 @@ type AWSKinesisAnalyticsApplicationOutput_DestinationSchema struct { } // AWSCloudFormationType returns the AWS CloudFormation resource type -func (r *AWSKinesisAnalyticsApplicationOutput_DestinationSchema) AWSCloudFormationType() string { +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 *AWSKinesisAnalyticsApplicationOutput_DestinationSchema) DependsOn() []string { +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 *AWSKinesisAnalyticsApplicationOutput_DestinationSchema) SetDependsOn(dependencies []string) { +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 *AWSKinesisAnalyticsApplicationOutput_DestinationSchema) Metadata() map[string]interface{} { +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 *AWSKinesisAnalyticsApplicationOutput_DestinationSchema) SetMetadata(metadata map[string]interface{}) { +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 *AWSKinesisAnalyticsApplicationOutput_DestinationSchema) DeletionPolicy() policies.DeletionPolicy { +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 *AWSKinesisAnalyticsApplicationOutput_DestinationSchema) SetDeletionPolicy(policy policies.DeletionPolicy) { +func (r *ApplicationOutput_DestinationSchema) SetDeletionPolicy(policy policies.DeletionPolicy) { r._deletionPolicy = policy } diff --git a/cloudformation/resources/aws-kinesisanalytics-applicationoutput_kinesisfirehoseoutput.go b/cloudformation/kinesisanalytics/aws-kinesisanalytics-applicationoutput_kinesisfirehoseoutput.go similarity index 70% rename from cloudformation/resources/aws-kinesisanalytics-applicationoutput_kinesisfirehoseoutput.go rename to cloudformation/kinesisanalytics/aws-kinesisanalytics-applicationoutput_kinesisfirehoseoutput.go index 5dc3256cf1..a49d65ad7c 100644 --- a/cloudformation/resources/aws-kinesisanalytics-applicationoutput_kinesisfirehoseoutput.go +++ b/cloudformation/kinesisanalytics/aws-kinesisanalytics-applicationoutput_kinesisfirehoseoutput.go @@ -1,10 +1,12 @@ -package resources +package kinesisanalytics -import "github.com/awslabs/goformation/v2/cloudformation/policies" +import ( + "github.com/awslabs/goformation/v3/cloudformation/policies" +) -// AWSKinesisAnalyticsApplicationOutput_KinesisFirehoseOutput AWS CloudFormation Resource (AWS::KinesisAnalytics::ApplicationOutput.KinesisFirehoseOutput) +// 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 AWSKinesisAnalyticsApplicationOutput_KinesisFirehoseOutput struct { +type ApplicationOutput_KinesisFirehoseOutput struct { // ResourceARN AWS CloudFormation Property // Required: true @@ -27,42 +29,42 @@ type AWSKinesisAnalyticsApplicationOutput_KinesisFirehoseOutput struct { } // AWSCloudFormationType returns the AWS CloudFormation resource type -func (r *AWSKinesisAnalyticsApplicationOutput_KinesisFirehoseOutput) AWSCloudFormationType() string { +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 *AWSKinesisAnalyticsApplicationOutput_KinesisFirehoseOutput) DependsOn() []string { +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 *AWSKinesisAnalyticsApplicationOutput_KinesisFirehoseOutput) SetDependsOn(dependencies []string) { +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 *AWSKinesisAnalyticsApplicationOutput_KinesisFirehoseOutput) Metadata() map[string]interface{} { +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 *AWSKinesisAnalyticsApplicationOutput_KinesisFirehoseOutput) SetMetadata(metadata map[string]interface{}) { +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 *AWSKinesisAnalyticsApplicationOutput_KinesisFirehoseOutput) DeletionPolicy() policies.DeletionPolicy { +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 *AWSKinesisAnalyticsApplicationOutput_KinesisFirehoseOutput) SetDeletionPolicy(policy policies.DeletionPolicy) { +func (r *ApplicationOutput_KinesisFirehoseOutput) SetDeletionPolicy(policy policies.DeletionPolicy) { r._deletionPolicy = policy } diff --git a/cloudformation/resources/aws-kinesisanalytics-applicationoutput_kinesisstreamsoutput.go b/cloudformation/kinesisanalytics/aws-kinesisanalytics-applicationoutput_kinesisstreamsoutput.go similarity index 70% rename from cloudformation/resources/aws-kinesisanalytics-applicationoutput_kinesisstreamsoutput.go rename to cloudformation/kinesisanalytics/aws-kinesisanalytics-applicationoutput_kinesisstreamsoutput.go index 130ecac059..66403d56ad 100644 --- a/cloudformation/resources/aws-kinesisanalytics-applicationoutput_kinesisstreamsoutput.go +++ b/cloudformation/kinesisanalytics/aws-kinesisanalytics-applicationoutput_kinesisstreamsoutput.go @@ -1,10 +1,12 @@ -package resources +package kinesisanalytics -import "github.com/awslabs/goformation/v2/cloudformation/policies" +import ( + "github.com/awslabs/goformation/v3/cloudformation/policies" +) -// AWSKinesisAnalyticsApplicationOutput_KinesisStreamsOutput AWS CloudFormation Resource (AWS::KinesisAnalytics::ApplicationOutput.KinesisStreamsOutput) +// 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 AWSKinesisAnalyticsApplicationOutput_KinesisStreamsOutput struct { +type ApplicationOutput_KinesisStreamsOutput struct { // ResourceARN AWS CloudFormation Property // Required: true @@ -27,42 +29,42 @@ type AWSKinesisAnalyticsApplicationOutput_KinesisStreamsOutput struct { } // AWSCloudFormationType returns the AWS CloudFormation resource type -func (r *AWSKinesisAnalyticsApplicationOutput_KinesisStreamsOutput) AWSCloudFormationType() string { +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 *AWSKinesisAnalyticsApplicationOutput_KinesisStreamsOutput) DependsOn() []string { +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 *AWSKinesisAnalyticsApplicationOutput_KinesisStreamsOutput) SetDependsOn(dependencies []string) { +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 *AWSKinesisAnalyticsApplicationOutput_KinesisStreamsOutput) Metadata() map[string]interface{} { +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 *AWSKinesisAnalyticsApplicationOutput_KinesisStreamsOutput) SetMetadata(metadata map[string]interface{}) { +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 *AWSKinesisAnalyticsApplicationOutput_KinesisStreamsOutput) DeletionPolicy() policies.DeletionPolicy { +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 *AWSKinesisAnalyticsApplicationOutput_KinesisStreamsOutput) SetDeletionPolicy(policy policies.DeletionPolicy) { +func (r *ApplicationOutput_KinesisStreamsOutput) SetDeletionPolicy(policy policies.DeletionPolicy) { r._deletionPolicy = policy } diff --git a/cloudformation/resources/aws-kinesisanalytics-applicationoutput_lambdaoutput.go b/cloudformation/kinesisanalytics/aws-kinesisanalytics-applicationoutput_lambdaoutput.go similarity index 71% rename from cloudformation/resources/aws-kinesisanalytics-applicationoutput_lambdaoutput.go rename to cloudformation/kinesisanalytics/aws-kinesisanalytics-applicationoutput_lambdaoutput.go index 6f045279a2..7855af75cb 100644 --- a/cloudformation/resources/aws-kinesisanalytics-applicationoutput_lambdaoutput.go +++ b/cloudformation/kinesisanalytics/aws-kinesisanalytics-applicationoutput_lambdaoutput.go @@ -1,10 +1,12 @@ -package resources +package kinesisanalytics -import "github.com/awslabs/goformation/v2/cloudformation/policies" +import ( + "github.com/awslabs/goformation/v3/cloudformation/policies" +) -// AWSKinesisAnalyticsApplicationOutput_LambdaOutput AWS CloudFormation Resource (AWS::KinesisAnalytics::ApplicationOutput.LambdaOutput) +// 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 AWSKinesisAnalyticsApplicationOutput_LambdaOutput struct { +type ApplicationOutput_LambdaOutput struct { // ResourceARN AWS CloudFormation Property // Required: true @@ -27,42 +29,42 @@ type AWSKinesisAnalyticsApplicationOutput_LambdaOutput struct { } // AWSCloudFormationType returns the AWS CloudFormation resource type -func (r *AWSKinesisAnalyticsApplicationOutput_LambdaOutput) AWSCloudFormationType() string { +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 *AWSKinesisAnalyticsApplicationOutput_LambdaOutput) DependsOn() []string { +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 *AWSKinesisAnalyticsApplicationOutput_LambdaOutput) SetDependsOn(dependencies []string) { +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 *AWSKinesisAnalyticsApplicationOutput_LambdaOutput) Metadata() map[string]interface{} { +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 *AWSKinesisAnalyticsApplicationOutput_LambdaOutput) SetMetadata(metadata map[string]interface{}) { +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 *AWSKinesisAnalyticsApplicationOutput_LambdaOutput) DeletionPolicy() policies.DeletionPolicy { +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 *AWSKinesisAnalyticsApplicationOutput_LambdaOutput) SetDeletionPolicy(policy policies.DeletionPolicy) { +func (r *ApplicationOutput_LambdaOutput) SetDeletionPolicy(policy policies.DeletionPolicy) { r._deletionPolicy = policy } diff --git a/cloudformation/resources/aws-kinesisanalytics-applicationoutput_output.go b/cloudformation/kinesisanalytics/aws-kinesisanalytics-applicationoutput_output.go similarity index 69% rename from cloudformation/resources/aws-kinesisanalytics-applicationoutput_output.go rename to cloudformation/kinesisanalytics/aws-kinesisanalytics-applicationoutput_output.go index 21c220c0ac..4f0b786b4f 100644 --- a/cloudformation/resources/aws-kinesisanalytics-applicationoutput_output.go +++ b/cloudformation/kinesisanalytics/aws-kinesisanalytics-applicationoutput_output.go @@ -1,30 +1,32 @@ -package resources +package kinesisanalytics -import "github.com/awslabs/goformation/v2/cloudformation/policies" +import ( + "github.com/awslabs/goformation/v3/cloudformation/policies" +) -// AWSKinesisAnalyticsApplicationOutput_Output AWS CloudFormation Resource (AWS::KinesisAnalytics::ApplicationOutput.Output) +// 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 AWSKinesisAnalyticsApplicationOutput_Output struct { +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 *AWSKinesisAnalyticsApplicationOutput_DestinationSchema `json:"DestinationSchema,omitempty"` + 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 *AWSKinesisAnalyticsApplicationOutput_KinesisFirehoseOutput `json:"KinesisFirehoseOutput,omitempty"` + 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 *AWSKinesisAnalyticsApplicationOutput_KinesisStreamsOutput `json:"KinesisStreamsOutput,omitempty"` + 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 *AWSKinesisAnalyticsApplicationOutput_LambdaOutput `json:"LambdaOutput,omitempty"` + LambdaOutput *ApplicationOutput_LambdaOutput `json:"LambdaOutput,omitempty"` // Name AWS CloudFormation Property // Required: false @@ -42,42 +44,42 @@ type AWSKinesisAnalyticsApplicationOutput_Output struct { } // AWSCloudFormationType returns the AWS CloudFormation resource type -func (r *AWSKinesisAnalyticsApplicationOutput_Output) AWSCloudFormationType() string { +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 *AWSKinesisAnalyticsApplicationOutput_Output) DependsOn() []string { +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 *AWSKinesisAnalyticsApplicationOutput_Output) SetDependsOn(dependencies []string) { +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 *AWSKinesisAnalyticsApplicationOutput_Output) Metadata() map[string]interface{} { +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 *AWSKinesisAnalyticsApplicationOutput_Output) SetMetadata(metadata map[string]interface{}) { +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 *AWSKinesisAnalyticsApplicationOutput_Output) DeletionPolicy() policies.DeletionPolicy { +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 *AWSKinesisAnalyticsApplicationOutput_Output) SetDeletionPolicy(policy policies.DeletionPolicy) { +func (r *ApplicationOutput_Output) SetDeletionPolicy(policy policies.DeletionPolicy) { r._deletionPolicy = policy } diff --git a/cloudformation/resources/aws-kinesisanalytics-applicationreferencedatasource.go b/cloudformation/kinesisanalytics/aws-kinesisanalytics-applicationreferencedatasource.go similarity index 72% rename from cloudformation/resources/aws-kinesisanalytics-applicationreferencedatasource.go rename to cloudformation/kinesisanalytics/aws-kinesisanalytics-applicationreferencedatasource.go index 7e8c01c78a..fbfe17bfb4 100644 --- a/cloudformation/resources/aws-kinesisanalytics-applicationreferencedatasource.go +++ b/cloudformation/kinesisanalytics/aws-kinesisanalytics-applicationreferencedatasource.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" ) -// AWSKinesisAnalyticsApplicationReferenceDataSource AWS CloudFormation Resource (AWS::KinesisAnalytics::ApplicationReferenceDataSource) +// ApplicationReferenceDataSource AWS CloudFormation Resource (AWS::KinesisAnalytics::ApplicationReferenceDataSource) // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-kinesisanalytics-applicationreferencedatasource.html -type AWSKinesisAnalyticsApplicationReferenceDataSource struct { +type ApplicationReferenceDataSource struct { // ApplicationName AWS CloudFormation Property // Required: true @@ -19,7 +20,7 @@ type AWSKinesisAnalyticsApplicationReferenceDataSource struct { // 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"` + ReferenceDataSource *ApplicationReferenceDataSource_ReferenceDataSource `json:"ReferenceDataSource,omitempty"` // _deletionPolicy represents a CloudFormation DeletionPolicy _deletionPolicy policies.DeletionPolicy @@ -32,50 +33,50 @@ type AWSKinesisAnalyticsApplicationReferenceDataSource struct { } // AWSCloudFormationType returns the AWS CloudFormation resource type -func (r *AWSKinesisAnalyticsApplicationReferenceDataSource) AWSCloudFormationType() string { +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 *AWSKinesisAnalyticsApplicationReferenceDataSource) DependsOn() []string { +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 *AWSKinesisAnalyticsApplicationReferenceDataSource) SetDependsOn(dependencies []string) { +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 *AWSKinesisAnalyticsApplicationReferenceDataSource) Metadata() map[string]interface{} { +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 *AWSKinesisAnalyticsApplicationReferenceDataSource) SetMetadata(metadata map[string]interface{}) { +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 *AWSKinesisAnalyticsApplicationReferenceDataSource) DeletionPolicy() policies.DeletionPolicy { +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 *AWSKinesisAnalyticsApplicationReferenceDataSource) SetDeletionPolicy(policy policies.DeletionPolicy) { +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 AWSKinesisAnalyticsApplicationReferenceDataSource) MarshalJSON() ([]byte, error) { - type Properties AWSKinesisAnalyticsApplicationReferenceDataSource +func (r ApplicationReferenceDataSource) MarshalJSON() ([]byte, error) { + type Properties ApplicationReferenceDataSource return json.Marshal(&struct { Type string Properties Properties @@ -93,8 +94,8 @@ func (r AWSKinesisAnalyticsApplicationReferenceDataSource) 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 *AWSKinesisAnalyticsApplicationReferenceDataSource) UnmarshalJSON(b []byte) error { - type Properties AWSKinesisAnalyticsApplicationReferenceDataSource +func (r *ApplicationReferenceDataSource) UnmarshalJSON(b []byte) error { + type Properties ApplicationReferenceDataSource res := &struct { Type string Properties *Properties @@ -113,7 +114,7 @@ func (r *AWSKinesisAnalyticsApplicationReferenceDataSource) UnmarshalJSON(b []by // If the resource has no Properties set, it could be nil if res.Properties != nil { - *r = AWSKinesisAnalyticsApplicationReferenceDataSource(*res.Properties) + *r = ApplicationReferenceDataSource(*res.Properties) } if res.DependsOn != nil { r._dependsOn = res.DependsOn diff --git a/cloudformation/resources/aws-kinesisanalytics-applicationreferencedatasource_csvmappingparameters.go b/cloudformation/kinesisanalytics/aws-kinesisanalytics-applicationreferencedatasource_csvmappingparameters.go similarity index 69% rename from cloudformation/resources/aws-kinesisanalytics-applicationreferencedatasource_csvmappingparameters.go rename to cloudformation/kinesisanalytics/aws-kinesisanalytics-applicationreferencedatasource_csvmappingparameters.go index 7ca11df349..0963f60349 100644 --- a/cloudformation/resources/aws-kinesisanalytics-applicationreferencedatasource_csvmappingparameters.go +++ b/cloudformation/kinesisanalytics/aws-kinesisanalytics-applicationreferencedatasource_csvmappingparameters.go @@ -1,10 +1,12 @@ -package resources +package kinesisanalytics -import "github.com/awslabs/goformation/v2/cloudformation/policies" +import ( + "github.com/awslabs/goformation/v3/cloudformation/policies" +) -// AWSKinesisAnalyticsApplicationReferenceDataSource_CSVMappingParameters AWS CloudFormation Resource (AWS::KinesisAnalytics::ApplicationReferenceDataSource.CSVMappingParameters) +// 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 AWSKinesisAnalyticsApplicationReferenceDataSource_CSVMappingParameters struct { +type ApplicationReferenceDataSource_CSVMappingParameters struct { // RecordColumnDelimiter AWS CloudFormation Property // Required: true @@ -27,42 +29,42 @@ type AWSKinesisAnalyticsApplicationReferenceDataSource_CSVMappingParameters stru } // AWSCloudFormationType returns the AWS CloudFormation resource type -func (r *AWSKinesisAnalyticsApplicationReferenceDataSource_CSVMappingParameters) AWSCloudFormationType() string { +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 *AWSKinesisAnalyticsApplicationReferenceDataSource_CSVMappingParameters) DependsOn() []string { +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 *AWSKinesisAnalyticsApplicationReferenceDataSource_CSVMappingParameters) SetDependsOn(dependencies []string) { +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 *AWSKinesisAnalyticsApplicationReferenceDataSource_CSVMappingParameters) Metadata() map[string]interface{} { +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 *AWSKinesisAnalyticsApplicationReferenceDataSource_CSVMappingParameters) SetMetadata(metadata map[string]interface{}) { +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 *AWSKinesisAnalyticsApplicationReferenceDataSource_CSVMappingParameters) DeletionPolicy() policies.DeletionPolicy { +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 *AWSKinesisAnalyticsApplicationReferenceDataSource_CSVMappingParameters) SetDeletionPolicy(policy policies.DeletionPolicy) { +func (r *ApplicationReferenceDataSource_CSVMappingParameters) SetDeletionPolicy(policy policies.DeletionPolicy) { r._deletionPolicy = policy } diff --git a/cloudformation/resources/aws-kinesisanalytics-applicationreferencedatasource_jsonmappingparameters.go b/cloudformation/kinesisanalytics/aws-kinesisanalytics-applicationreferencedatasource_jsonmappingparameters.go similarity index 65% rename from cloudformation/resources/aws-kinesisanalytics-applicationreferencedatasource_jsonmappingparameters.go rename to cloudformation/kinesisanalytics/aws-kinesisanalytics-applicationreferencedatasource_jsonmappingparameters.go index 22f7edd958..2841a91a6d 100644 --- a/cloudformation/resources/aws-kinesisanalytics-applicationreferencedatasource_jsonmappingparameters.go +++ b/cloudformation/kinesisanalytics/aws-kinesisanalytics-applicationreferencedatasource_jsonmappingparameters.go @@ -1,10 +1,12 @@ -package resources +package kinesisanalytics -import "github.com/awslabs/goformation/v2/cloudformation/policies" +import ( + "github.com/awslabs/goformation/v3/cloudformation/policies" +) -// AWSKinesisAnalyticsApplicationReferenceDataSource_JSONMappingParameters AWS CloudFormation Resource (AWS::KinesisAnalytics::ApplicationReferenceDataSource.JSONMappingParameters) +// 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 AWSKinesisAnalyticsApplicationReferenceDataSource_JSONMappingParameters struct { +type ApplicationReferenceDataSource_JSONMappingParameters struct { // RecordRowPath AWS CloudFormation Property // Required: true @@ -22,42 +24,42 @@ type AWSKinesisAnalyticsApplicationReferenceDataSource_JSONMappingParameters str } // AWSCloudFormationType returns the AWS CloudFormation resource type -func (r *AWSKinesisAnalyticsApplicationReferenceDataSource_JSONMappingParameters) AWSCloudFormationType() string { +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 *AWSKinesisAnalyticsApplicationReferenceDataSource_JSONMappingParameters) DependsOn() []string { +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 *AWSKinesisAnalyticsApplicationReferenceDataSource_JSONMappingParameters) SetDependsOn(dependencies []string) { +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 *AWSKinesisAnalyticsApplicationReferenceDataSource_JSONMappingParameters) Metadata() map[string]interface{} { +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 *AWSKinesisAnalyticsApplicationReferenceDataSource_JSONMappingParameters) SetMetadata(metadata map[string]interface{}) { +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 *AWSKinesisAnalyticsApplicationReferenceDataSource_JSONMappingParameters) DeletionPolicy() policies.DeletionPolicy { +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 *AWSKinesisAnalyticsApplicationReferenceDataSource_JSONMappingParameters) SetDeletionPolicy(policy policies.DeletionPolicy) { +func (r *ApplicationReferenceDataSource_JSONMappingParameters) SetDeletionPolicy(policy policies.DeletionPolicy) { r._deletionPolicy = policy } diff --git a/cloudformation/resources/aws-kinesisanalytics-applicationreferencedatasource_mappingparameters.go b/cloudformation/kinesisanalytics/aws-kinesisanalytics-applicationreferencedatasource_mappingparameters.go similarity index 63% rename from cloudformation/resources/aws-kinesisanalytics-applicationreferencedatasource_mappingparameters.go rename to cloudformation/kinesisanalytics/aws-kinesisanalytics-applicationreferencedatasource_mappingparameters.go index 1d5cf0e60b..b50fe4f148 100644 --- a/cloudformation/resources/aws-kinesisanalytics-applicationreferencedatasource_mappingparameters.go +++ b/cloudformation/kinesisanalytics/aws-kinesisanalytics-applicationreferencedatasource_mappingparameters.go @@ -1,20 +1,22 @@ -package resources +package kinesisanalytics -import "github.com/awslabs/goformation/v2/cloudformation/policies" +import ( + "github.com/awslabs/goformation/v3/cloudformation/policies" +) -// AWSKinesisAnalyticsApplicationReferenceDataSource_MappingParameters AWS CloudFormation Resource (AWS::KinesisAnalytics::ApplicationReferenceDataSource.MappingParameters) +// 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 AWSKinesisAnalyticsApplicationReferenceDataSource_MappingParameters struct { +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 *AWSKinesisAnalyticsApplicationReferenceDataSource_CSVMappingParameters `json:"CSVMappingParameters,omitempty"` + 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 *AWSKinesisAnalyticsApplicationReferenceDataSource_JSONMappingParameters `json:"JSONMappingParameters,omitempty"` + JSONMappingParameters *ApplicationReferenceDataSource_JSONMappingParameters `json:"JSONMappingParameters,omitempty"` // _deletionPolicy represents a CloudFormation DeletionPolicy _deletionPolicy policies.DeletionPolicy @@ -27,42 +29,42 @@ type AWSKinesisAnalyticsApplicationReferenceDataSource_MappingParameters struct } // AWSCloudFormationType returns the AWS CloudFormation resource type -func (r *AWSKinesisAnalyticsApplicationReferenceDataSource_MappingParameters) AWSCloudFormationType() string { +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 *AWSKinesisAnalyticsApplicationReferenceDataSource_MappingParameters) DependsOn() []string { +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 *AWSKinesisAnalyticsApplicationReferenceDataSource_MappingParameters) SetDependsOn(dependencies []string) { +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 *AWSKinesisAnalyticsApplicationReferenceDataSource_MappingParameters) Metadata() map[string]interface{} { +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 *AWSKinesisAnalyticsApplicationReferenceDataSource_MappingParameters) SetMetadata(metadata map[string]interface{}) { +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 *AWSKinesisAnalyticsApplicationReferenceDataSource_MappingParameters) DeletionPolicy() policies.DeletionPolicy { +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 *AWSKinesisAnalyticsApplicationReferenceDataSource_MappingParameters) SetDeletionPolicy(policy policies.DeletionPolicy) { +func (r *ApplicationReferenceDataSource_MappingParameters) SetDeletionPolicy(policy policies.DeletionPolicy) { r._deletionPolicy = policy } diff --git a/cloudformation/resources/aws-kinesisanalytics-applicationreferencedatasource_recordcolumn.go b/cloudformation/kinesisanalytics/aws-kinesisanalytics-applicationreferencedatasource_recordcolumn.go similarity index 71% rename from cloudformation/resources/aws-kinesisanalytics-applicationreferencedatasource_recordcolumn.go rename to cloudformation/kinesisanalytics/aws-kinesisanalytics-applicationreferencedatasource_recordcolumn.go index ddafaf8edc..caefa75a5b 100644 --- a/cloudformation/resources/aws-kinesisanalytics-applicationreferencedatasource_recordcolumn.go +++ b/cloudformation/kinesisanalytics/aws-kinesisanalytics-applicationreferencedatasource_recordcolumn.go @@ -1,10 +1,12 @@ -package resources +package kinesisanalytics -import "github.com/awslabs/goformation/v2/cloudformation/policies" +import ( + "github.com/awslabs/goformation/v3/cloudformation/policies" +) -// AWSKinesisAnalyticsApplicationReferenceDataSource_RecordColumn AWS CloudFormation Resource (AWS::KinesisAnalytics::ApplicationReferenceDataSource.RecordColumn) +// 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 AWSKinesisAnalyticsApplicationReferenceDataSource_RecordColumn struct { +type ApplicationReferenceDataSource_RecordColumn struct { // Mapping AWS CloudFormation Property // Required: false @@ -32,42 +34,42 @@ type AWSKinesisAnalyticsApplicationReferenceDataSource_RecordColumn struct { } // AWSCloudFormationType returns the AWS CloudFormation resource type -func (r *AWSKinesisAnalyticsApplicationReferenceDataSource_RecordColumn) AWSCloudFormationType() string { +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 *AWSKinesisAnalyticsApplicationReferenceDataSource_RecordColumn) DependsOn() []string { +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 *AWSKinesisAnalyticsApplicationReferenceDataSource_RecordColumn) SetDependsOn(dependencies []string) { +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 *AWSKinesisAnalyticsApplicationReferenceDataSource_RecordColumn) Metadata() map[string]interface{} { +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 *AWSKinesisAnalyticsApplicationReferenceDataSource_RecordColumn) SetMetadata(metadata map[string]interface{}) { +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 *AWSKinesisAnalyticsApplicationReferenceDataSource_RecordColumn) DeletionPolicy() policies.DeletionPolicy { +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 *AWSKinesisAnalyticsApplicationReferenceDataSource_RecordColumn) SetDeletionPolicy(policy policies.DeletionPolicy) { +func (r *ApplicationReferenceDataSource_RecordColumn) SetDeletionPolicy(policy policies.DeletionPolicy) { r._deletionPolicy = policy } diff --git a/cloudformation/resources/aws-kinesisanalytics-applicationreferencedatasource_recordformat.go b/cloudformation/kinesisanalytics/aws-kinesisanalytics-applicationreferencedatasource_recordformat.go similarity index 67% rename from cloudformation/resources/aws-kinesisanalytics-applicationreferencedatasource_recordformat.go rename to cloudformation/kinesisanalytics/aws-kinesisanalytics-applicationreferencedatasource_recordformat.go index fefd3b3cfa..207594ccc4 100644 --- a/cloudformation/resources/aws-kinesisanalytics-applicationreferencedatasource_recordformat.go +++ b/cloudformation/kinesisanalytics/aws-kinesisanalytics-applicationreferencedatasource_recordformat.go @@ -1,15 +1,17 @@ -package resources +package kinesisanalytics -import "github.com/awslabs/goformation/v2/cloudformation/policies" +import ( + "github.com/awslabs/goformation/v3/cloudformation/policies" +) -// AWSKinesisAnalyticsApplicationReferenceDataSource_RecordFormat AWS CloudFormation Resource (AWS::KinesisAnalytics::ApplicationReferenceDataSource.RecordFormat) +// 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 AWSKinesisAnalyticsApplicationReferenceDataSource_RecordFormat struct { +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 *AWSKinesisAnalyticsApplicationReferenceDataSource_MappingParameters `json:"MappingParameters,omitempty"` + MappingParameters *ApplicationReferenceDataSource_MappingParameters `json:"MappingParameters,omitempty"` // RecordFormatType AWS CloudFormation Property // Required: true @@ -27,42 +29,42 @@ type AWSKinesisAnalyticsApplicationReferenceDataSource_RecordFormat struct { } // AWSCloudFormationType returns the AWS CloudFormation resource type -func (r *AWSKinesisAnalyticsApplicationReferenceDataSource_RecordFormat) AWSCloudFormationType() string { +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 *AWSKinesisAnalyticsApplicationReferenceDataSource_RecordFormat) DependsOn() []string { +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 *AWSKinesisAnalyticsApplicationReferenceDataSource_RecordFormat) SetDependsOn(dependencies []string) { +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 *AWSKinesisAnalyticsApplicationReferenceDataSource_RecordFormat) Metadata() map[string]interface{} { +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 *AWSKinesisAnalyticsApplicationReferenceDataSource_RecordFormat) SetMetadata(metadata map[string]interface{}) { +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 *AWSKinesisAnalyticsApplicationReferenceDataSource_RecordFormat) DeletionPolicy() policies.DeletionPolicy { +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 *AWSKinesisAnalyticsApplicationReferenceDataSource_RecordFormat) SetDeletionPolicy(policy policies.DeletionPolicy) { +func (r *ApplicationReferenceDataSource_RecordFormat) SetDeletionPolicy(policy policies.DeletionPolicy) { r._deletionPolicy = policy } diff --git a/cloudformation/resources/aws-kinesisanalytics-applicationreferencedatasource_referencedatasource.go b/cloudformation/kinesisanalytics/aws-kinesisanalytics-applicationreferencedatasource_referencedatasource.go similarity index 66% rename from cloudformation/resources/aws-kinesisanalytics-applicationreferencedatasource_referencedatasource.go rename to cloudformation/kinesisanalytics/aws-kinesisanalytics-applicationreferencedatasource_referencedatasource.go index f82c208337..8d62488ce2 100644 --- a/cloudformation/resources/aws-kinesisanalytics-applicationreferencedatasource_referencedatasource.go +++ b/cloudformation/kinesisanalytics/aws-kinesisanalytics-applicationreferencedatasource_referencedatasource.go @@ -1,20 +1,22 @@ -package resources +package kinesisanalytics -import "github.com/awslabs/goformation/v2/cloudformation/policies" +import ( + "github.com/awslabs/goformation/v3/cloudformation/policies" +) -// AWSKinesisAnalyticsApplicationReferenceDataSource_ReferenceDataSource AWS CloudFormation Resource (AWS::KinesisAnalytics::ApplicationReferenceDataSource.ReferenceDataSource) +// 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 AWSKinesisAnalyticsApplicationReferenceDataSource_ReferenceDataSource struct { +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 *AWSKinesisAnalyticsApplicationReferenceDataSource_ReferenceSchema `json:"ReferenceSchema,omitempty"` + 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 *AWSKinesisAnalyticsApplicationReferenceDataSource_S3ReferenceDataSource `json:"S3ReferenceDataSource,omitempty"` + S3ReferenceDataSource *ApplicationReferenceDataSource_S3ReferenceDataSource `json:"S3ReferenceDataSource,omitempty"` // TableName AWS CloudFormation Property // Required: false @@ -32,42 +34,42 @@ type AWSKinesisAnalyticsApplicationReferenceDataSource_ReferenceDataSource struc } // AWSCloudFormationType returns the AWS CloudFormation resource type -func (r *AWSKinesisAnalyticsApplicationReferenceDataSource_ReferenceDataSource) AWSCloudFormationType() string { +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 *AWSKinesisAnalyticsApplicationReferenceDataSource_ReferenceDataSource) DependsOn() []string { +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 *AWSKinesisAnalyticsApplicationReferenceDataSource_ReferenceDataSource) SetDependsOn(dependencies []string) { +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 *AWSKinesisAnalyticsApplicationReferenceDataSource_ReferenceDataSource) Metadata() map[string]interface{} { +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 *AWSKinesisAnalyticsApplicationReferenceDataSource_ReferenceDataSource) SetMetadata(metadata map[string]interface{}) { +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 *AWSKinesisAnalyticsApplicationReferenceDataSource_ReferenceDataSource) DeletionPolicy() policies.DeletionPolicy { +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 *AWSKinesisAnalyticsApplicationReferenceDataSource_ReferenceDataSource) SetDeletionPolicy(policy policies.DeletionPolicy) { +func (r *ApplicationReferenceDataSource_ReferenceDataSource) SetDeletionPolicy(policy policies.DeletionPolicy) { r._deletionPolicy = policy } diff --git a/cloudformation/resources/aws-kinesisanalytics-applicationreferencedatasource_referenceschema.go b/cloudformation/kinesisanalytics/aws-kinesisanalytics-applicationreferencedatasource_referenceschema.go similarity index 67% rename from cloudformation/resources/aws-kinesisanalytics-applicationreferencedatasource_referenceschema.go rename to cloudformation/kinesisanalytics/aws-kinesisanalytics-applicationreferencedatasource_referenceschema.go index df2eb4c553..e0ab18ebdc 100644 --- a/cloudformation/resources/aws-kinesisanalytics-applicationreferencedatasource_referenceschema.go +++ b/cloudformation/kinesisanalytics/aws-kinesisanalytics-applicationreferencedatasource_referenceschema.go @@ -1,15 +1,17 @@ -package resources +package kinesisanalytics -import "github.com/awslabs/goformation/v2/cloudformation/policies" +import ( + "github.com/awslabs/goformation/v3/cloudformation/policies" +) -// AWSKinesisAnalyticsApplicationReferenceDataSource_ReferenceSchema AWS CloudFormation Resource (AWS::KinesisAnalytics::ApplicationReferenceDataSource.ReferenceSchema) +// 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 AWSKinesisAnalyticsApplicationReferenceDataSource_ReferenceSchema struct { +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 []AWSKinesisAnalyticsApplicationReferenceDataSource_RecordColumn `json:"RecordColumns,omitempty"` + RecordColumns []ApplicationReferenceDataSource_RecordColumn `json:"RecordColumns,omitempty"` // RecordEncoding AWS CloudFormation Property // Required: false @@ -19,7 +21,7 @@ type AWSKinesisAnalyticsApplicationReferenceDataSource_ReferenceSchema struct { // 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"` + RecordFormat *ApplicationReferenceDataSource_RecordFormat `json:"RecordFormat,omitempty"` // _deletionPolicy represents a CloudFormation DeletionPolicy _deletionPolicy policies.DeletionPolicy @@ -32,42 +34,42 @@ type AWSKinesisAnalyticsApplicationReferenceDataSource_ReferenceSchema struct { } // AWSCloudFormationType returns the AWS CloudFormation resource type -func (r *AWSKinesisAnalyticsApplicationReferenceDataSource_ReferenceSchema) AWSCloudFormationType() string { +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 *AWSKinesisAnalyticsApplicationReferenceDataSource_ReferenceSchema) DependsOn() []string { +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 *AWSKinesisAnalyticsApplicationReferenceDataSource_ReferenceSchema) SetDependsOn(dependencies []string) { +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 *AWSKinesisAnalyticsApplicationReferenceDataSource_ReferenceSchema) Metadata() map[string]interface{} { +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 *AWSKinesisAnalyticsApplicationReferenceDataSource_ReferenceSchema) SetMetadata(metadata map[string]interface{}) { +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 *AWSKinesisAnalyticsApplicationReferenceDataSource_ReferenceSchema) DeletionPolicy() policies.DeletionPolicy { +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 *AWSKinesisAnalyticsApplicationReferenceDataSource_ReferenceSchema) SetDeletionPolicy(policy policies.DeletionPolicy) { +func (r *ApplicationReferenceDataSource_ReferenceSchema) SetDeletionPolicy(policy policies.DeletionPolicy) { r._deletionPolicy = policy } diff --git a/cloudformation/resources/aws-kinesisanalytics-applicationreferencedatasource_s3referencedatasource.go b/cloudformation/kinesisanalytics/aws-kinesisanalytics-applicationreferencedatasource_s3referencedatasource.go similarity index 71% rename from cloudformation/resources/aws-kinesisanalytics-applicationreferencedatasource_s3referencedatasource.go rename to cloudformation/kinesisanalytics/aws-kinesisanalytics-applicationreferencedatasource_s3referencedatasource.go index 7ae45399f7..7bbc012b41 100644 --- a/cloudformation/resources/aws-kinesisanalytics-applicationreferencedatasource_s3referencedatasource.go +++ b/cloudformation/kinesisanalytics/aws-kinesisanalytics-applicationreferencedatasource_s3referencedatasource.go @@ -1,10 +1,12 @@ -package resources +package kinesisanalytics -import "github.com/awslabs/goformation/v2/cloudformation/policies" +import ( + "github.com/awslabs/goformation/v3/cloudformation/policies" +) -// AWSKinesisAnalyticsApplicationReferenceDataSource_S3ReferenceDataSource AWS CloudFormation Resource (AWS::KinesisAnalytics::ApplicationReferenceDataSource.S3ReferenceDataSource) +// 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 AWSKinesisAnalyticsApplicationReferenceDataSource_S3ReferenceDataSource struct { +type ApplicationReferenceDataSource_S3ReferenceDataSource struct { // BucketARN AWS CloudFormation Property // Required: true @@ -32,42 +34,42 @@ type AWSKinesisAnalyticsApplicationReferenceDataSource_S3ReferenceDataSource str } // AWSCloudFormationType returns the AWS CloudFormation resource type -func (r *AWSKinesisAnalyticsApplicationReferenceDataSource_S3ReferenceDataSource) AWSCloudFormationType() string { +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 *AWSKinesisAnalyticsApplicationReferenceDataSource_S3ReferenceDataSource) DependsOn() []string { +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 *AWSKinesisAnalyticsApplicationReferenceDataSource_S3ReferenceDataSource) SetDependsOn(dependencies []string) { +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 *AWSKinesisAnalyticsApplicationReferenceDataSource_S3ReferenceDataSource) Metadata() map[string]interface{} { +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 *AWSKinesisAnalyticsApplicationReferenceDataSource_S3ReferenceDataSource) SetMetadata(metadata map[string]interface{}) { +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 *AWSKinesisAnalyticsApplicationReferenceDataSource_S3ReferenceDataSource) DeletionPolicy() policies.DeletionPolicy { +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 *AWSKinesisAnalyticsApplicationReferenceDataSource_S3ReferenceDataSource) SetDeletionPolicy(policy policies.DeletionPolicy) { +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/resources/aws-kinesisanalyticsv2-application_applicationcodeconfiguration.go b/cloudformation/kinesisanalyticsv2/aws-kinesisanalyticsv2-application_applicationcodeconfiguration.go similarity index 67% rename from cloudformation/resources/aws-kinesisanalyticsv2-application_applicationcodeconfiguration.go rename to cloudformation/kinesisanalyticsv2/aws-kinesisanalyticsv2-application_applicationcodeconfiguration.go index 75968d0ad7..4a5afaeddd 100644 --- a/cloudformation/resources/aws-kinesisanalyticsv2-application_applicationcodeconfiguration.go +++ b/cloudformation/kinesisanalyticsv2/aws-kinesisanalyticsv2-application_applicationcodeconfiguration.go @@ -1,15 +1,17 @@ -package resources +package kinesisanalyticsv2 -import "github.com/awslabs/goformation/v2/cloudformation/policies" +import ( + "github.com/awslabs/goformation/v3/cloudformation/policies" +) -// AWSKinesisAnalyticsV2Application_ApplicationCodeConfiguration AWS CloudFormation Resource (AWS::KinesisAnalyticsV2::Application.ApplicationCodeConfiguration) +// 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 AWSKinesisAnalyticsV2Application_ApplicationCodeConfiguration struct { +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 *AWSKinesisAnalyticsV2Application_CodeContent `json:"CodeContent,omitempty"` + CodeContent *Application_CodeContent `json:"CodeContent,omitempty"` // CodeContentType AWS CloudFormation Property // Required: true @@ -27,42 +29,42 @@ type AWSKinesisAnalyticsV2Application_ApplicationCodeConfiguration struct { } // AWSCloudFormationType returns the AWS CloudFormation resource type -func (r *AWSKinesisAnalyticsV2Application_ApplicationCodeConfiguration) AWSCloudFormationType() string { +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 *AWSKinesisAnalyticsV2Application_ApplicationCodeConfiguration) DependsOn() []string { +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 *AWSKinesisAnalyticsV2Application_ApplicationCodeConfiguration) SetDependsOn(dependencies []string) { +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 *AWSKinesisAnalyticsV2Application_ApplicationCodeConfiguration) Metadata() map[string]interface{} { +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 *AWSKinesisAnalyticsV2Application_ApplicationCodeConfiguration) SetMetadata(metadata map[string]interface{}) { +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 *AWSKinesisAnalyticsV2Application_ApplicationCodeConfiguration) DeletionPolicy() policies.DeletionPolicy { +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 *AWSKinesisAnalyticsV2Application_ApplicationCodeConfiguration) SetDeletionPolicy(policy policies.DeletionPolicy) { +func (r *Application_ApplicationCodeConfiguration) SetDeletionPolicy(policy policies.DeletionPolicy) { r._deletionPolicy = policy } diff --git a/cloudformation/resources/aws-kinesisanalyticsv2-application_applicationconfiguration.go b/cloudformation/kinesisanalyticsv2/aws-kinesisanalyticsv2-application_applicationconfiguration.go similarity index 66% rename from cloudformation/resources/aws-kinesisanalyticsv2-application_applicationconfiguration.go rename to cloudformation/kinesisanalyticsv2/aws-kinesisanalyticsv2-application_applicationconfiguration.go index 86c32b503f..822bd60724 100644 --- a/cloudformation/resources/aws-kinesisanalyticsv2-application_applicationconfiguration.go +++ b/cloudformation/kinesisanalyticsv2/aws-kinesisanalyticsv2-application_applicationconfiguration.go @@ -1,35 +1,37 @@ -package resources +package kinesisanalyticsv2 -import "github.com/awslabs/goformation/v2/cloudformation/policies" +import ( + "github.com/awslabs/goformation/v3/cloudformation/policies" +) -// AWSKinesisAnalyticsV2Application_ApplicationConfiguration AWS CloudFormation Resource (AWS::KinesisAnalyticsV2::Application.ApplicationConfiguration) +// 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 AWSKinesisAnalyticsV2Application_ApplicationConfiguration struct { +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 *AWSKinesisAnalyticsV2Application_ApplicationCodeConfiguration `json:"ApplicationCodeConfiguration,omitempty"` + 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 *AWSKinesisAnalyticsV2Application_ApplicationSnapshotConfiguration `json:"ApplicationSnapshotConfiguration,omitempty"` + 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 *AWSKinesisAnalyticsV2Application_EnvironmentProperties `json:"EnvironmentProperties,omitempty"` + 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 *AWSKinesisAnalyticsV2Application_FlinkApplicationConfiguration `json:"FlinkApplicationConfiguration,omitempty"` + 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 *AWSKinesisAnalyticsV2Application_SqlApplicationConfiguration `json:"SqlApplicationConfiguration,omitempty"` + SqlApplicationConfiguration *Application_SqlApplicationConfiguration `json:"SqlApplicationConfiguration,omitempty"` // _deletionPolicy represents a CloudFormation DeletionPolicy _deletionPolicy policies.DeletionPolicy @@ -42,42 +44,42 @@ type AWSKinesisAnalyticsV2Application_ApplicationConfiguration struct { } // AWSCloudFormationType returns the AWS CloudFormation resource type -func (r *AWSKinesisAnalyticsV2Application_ApplicationConfiguration) AWSCloudFormationType() string { +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 *AWSKinesisAnalyticsV2Application_ApplicationConfiguration) DependsOn() []string { +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 *AWSKinesisAnalyticsV2Application_ApplicationConfiguration) SetDependsOn(dependencies []string) { +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 *AWSKinesisAnalyticsV2Application_ApplicationConfiguration) Metadata() map[string]interface{} { +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 *AWSKinesisAnalyticsV2Application_ApplicationConfiguration) SetMetadata(metadata map[string]interface{}) { +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 *AWSKinesisAnalyticsV2Application_ApplicationConfiguration) DeletionPolicy() policies.DeletionPolicy { +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 *AWSKinesisAnalyticsV2Application_ApplicationConfiguration) SetDeletionPolicy(policy policies.DeletionPolicy) { +func (r *Application_ApplicationConfiguration) SetDeletionPolicy(policy policies.DeletionPolicy) { r._deletionPolicy = policy } diff --git a/cloudformation/resources/aws-kinesisanalyticsv2-application_applicationsnapshotconfiguration.go b/cloudformation/kinesisanalyticsv2/aws-kinesisanalyticsv2-application_applicationsnapshotconfiguration.go similarity index 66% rename from cloudformation/resources/aws-kinesisanalyticsv2-application_applicationsnapshotconfiguration.go rename to cloudformation/kinesisanalyticsv2/aws-kinesisanalyticsv2-application_applicationsnapshotconfiguration.go index 067b76f50b..a4de2c4bc9 100644 --- a/cloudformation/resources/aws-kinesisanalyticsv2-application_applicationsnapshotconfiguration.go +++ b/cloudformation/kinesisanalyticsv2/aws-kinesisanalyticsv2-application_applicationsnapshotconfiguration.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_ApplicationSnapshotConfiguration AWS CloudFormation Resource (AWS::KinesisAnalyticsV2::Application.ApplicationSnapshotConfiguration) +// 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 AWSKinesisAnalyticsV2Application_ApplicationSnapshotConfiguration struct { +type Application_ApplicationSnapshotConfiguration struct { // SnapshotsEnabled AWS CloudFormation Property // Required: true @@ -22,42 +24,42 @@ type AWSKinesisAnalyticsV2Application_ApplicationSnapshotConfiguration struct { } // AWSCloudFormationType returns the AWS CloudFormation resource type -func (r *AWSKinesisAnalyticsV2Application_ApplicationSnapshotConfiguration) AWSCloudFormationType() string { +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 *AWSKinesisAnalyticsV2Application_ApplicationSnapshotConfiguration) DependsOn() []string { +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 *AWSKinesisAnalyticsV2Application_ApplicationSnapshotConfiguration) SetDependsOn(dependencies []string) { +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 *AWSKinesisAnalyticsV2Application_ApplicationSnapshotConfiguration) Metadata() map[string]interface{} { +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 *AWSKinesisAnalyticsV2Application_ApplicationSnapshotConfiguration) SetMetadata(metadata map[string]interface{}) { +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 *AWSKinesisAnalyticsV2Application_ApplicationSnapshotConfiguration) DeletionPolicy() policies.DeletionPolicy { +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 *AWSKinesisAnalyticsV2Application_ApplicationSnapshotConfiguration) SetDeletionPolicy(policy policies.DeletionPolicy) { +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/resources/aws-kinesisanalyticsv2-application_codecontent.go b/cloudformation/kinesisanalyticsv2/aws-kinesisanalyticsv2-application_codecontent.go similarity index 72% rename from cloudformation/resources/aws-kinesisanalyticsv2-application_codecontent.go rename to cloudformation/kinesisanalyticsv2/aws-kinesisanalyticsv2-application_codecontent.go index 7d12e46da5..eb4449583a 100644 --- a/cloudformation/resources/aws-kinesisanalyticsv2-application_codecontent.go +++ b/cloudformation/kinesisanalyticsv2/aws-kinesisanalyticsv2-application_codecontent.go @@ -1,15 +1,17 @@ -package resources +package kinesisanalyticsv2 -import "github.com/awslabs/goformation/v2/cloudformation/policies" +import ( + "github.com/awslabs/goformation/v3/cloudformation/policies" +) -// AWSKinesisAnalyticsV2Application_CodeContent AWS CloudFormation Resource (AWS::KinesisAnalyticsV2::Application.CodeContent) +// 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 AWSKinesisAnalyticsV2Application_CodeContent struct { +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 *AWSKinesisAnalyticsV2Application_S3ContentLocation `json:"S3ContentLocation,omitempty"` + S3ContentLocation *Application_S3ContentLocation `json:"S3ContentLocation,omitempty"` // TextContent AWS CloudFormation Property // Required: false @@ -32,42 +34,42 @@ type AWSKinesisAnalyticsV2Application_CodeContent struct { } // AWSCloudFormationType returns the AWS CloudFormation resource type -func (r *AWSKinesisAnalyticsV2Application_CodeContent) AWSCloudFormationType() string { +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 *AWSKinesisAnalyticsV2Application_CodeContent) DependsOn() []string { +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 *AWSKinesisAnalyticsV2Application_CodeContent) SetDependsOn(dependencies []string) { +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 *AWSKinesisAnalyticsV2Application_CodeContent) Metadata() map[string]interface{} { +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 *AWSKinesisAnalyticsV2Application_CodeContent) SetMetadata(metadata map[string]interface{}) { +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 *AWSKinesisAnalyticsV2Application_CodeContent) DeletionPolicy() policies.DeletionPolicy { +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 *AWSKinesisAnalyticsV2Application_CodeContent) SetDeletionPolicy(policy policies.DeletionPolicy) { +func (r *Application_CodeContent) SetDeletionPolicy(policy policies.DeletionPolicy) { r._deletionPolicy = policy } diff --git a/cloudformation/resources/aws-kinesisanalyticsv2-application_csvmappingparameters.go b/cloudformation/kinesisanalyticsv2/aws-kinesisanalyticsv2-application_csvmappingparameters.go similarity index 71% rename from cloudformation/resources/aws-kinesisanalyticsv2-application_csvmappingparameters.go rename to cloudformation/kinesisanalyticsv2/aws-kinesisanalyticsv2-application_csvmappingparameters.go index aac1294e9f..b624ab5ca4 100644 --- a/cloudformation/resources/aws-kinesisanalyticsv2-application_csvmappingparameters.go +++ b/cloudformation/kinesisanalyticsv2/aws-kinesisanalyticsv2-application_csvmappingparameters.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_CSVMappingParameters AWS CloudFormation Resource (AWS::KinesisAnalyticsV2::Application.CSVMappingParameters) +// 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 AWSKinesisAnalyticsV2Application_CSVMappingParameters struct { +type Application_CSVMappingParameters struct { // RecordColumnDelimiter AWS CloudFormation Property // Required: true @@ -27,42 +29,42 @@ type AWSKinesisAnalyticsV2Application_CSVMappingParameters struct { } // AWSCloudFormationType returns the AWS CloudFormation resource type -func (r *AWSKinesisAnalyticsV2Application_CSVMappingParameters) AWSCloudFormationType() string { +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 *AWSKinesisAnalyticsV2Application_CSVMappingParameters) DependsOn() []string { +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 *AWSKinesisAnalyticsV2Application_CSVMappingParameters) SetDependsOn(dependencies []string) { +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 *AWSKinesisAnalyticsV2Application_CSVMappingParameters) Metadata() map[string]interface{} { +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 *AWSKinesisAnalyticsV2Application_CSVMappingParameters) SetMetadata(metadata map[string]interface{}) { +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 *AWSKinesisAnalyticsV2Application_CSVMappingParameters) DeletionPolicy() policies.DeletionPolicy { +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 *AWSKinesisAnalyticsV2Application_CSVMappingParameters) SetDeletionPolicy(policy policies.DeletionPolicy) { +func (r *Application_CSVMappingParameters) SetDeletionPolicy(policy policies.DeletionPolicy) { r._deletionPolicy = policy } diff --git a/cloudformation/resources/aws-kinesisanalyticsv2-application_environmentproperties.go b/cloudformation/kinesisanalyticsv2/aws-kinesisanalyticsv2-application_environmentproperties.go similarity index 65% rename from cloudformation/resources/aws-kinesisanalyticsv2-application_environmentproperties.go rename to cloudformation/kinesisanalyticsv2/aws-kinesisanalyticsv2-application_environmentproperties.go index 5e779b5e66..bbb459e7f7 100644 --- a/cloudformation/resources/aws-kinesisanalyticsv2-application_environmentproperties.go +++ b/cloudformation/kinesisanalyticsv2/aws-kinesisanalyticsv2-application_environmentproperties.go @@ -1,15 +1,17 @@ -package resources +package kinesisanalyticsv2 -import "github.com/awslabs/goformation/v2/cloudformation/policies" +import ( + "github.com/awslabs/goformation/v3/cloudformation/policies" +) -// AWSKinesisAnalyticsV2Application_EnvironmentProperties AWS CloudFormation Resource (AWS::KinesisAnalyticsV2::Application.EnvironmentProperties) +// 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 AWSKinesisAnalyticsV2Application_EnvironmentProperties struct { +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 []AWSKinesisAnalyticsV2Application_PropertyGroup `json:"PropertyGroups,omitempty"` + PropertyGroups []Application_PropertyGroup `json:"PropertyGroups,omitempty"` // _deletionPolicy represents a CloudFormation DeletionPolicy _deletionPolicy policies.DeletionPolicy @@ -22,42 +24,42 @@ type AWSKinesisAnalyticsV2Application_EnvironmentProperties struct { } // AWSCloudFormationType returns the AWS CloudFormation resource type -func (r *AWSKinesisAnalyticsV2Application_EnvironmentProperties) AWSCloudFormationType() string { +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 *AWSKinesisAnalyticsV2Application_EnvironmentProperties) DependsOn() []string { +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 *AWSKinesisAnalyticsV2Application_EnvironmentProperties) SetDependsOn(dependencies []string) { +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 *AWSKinesisAnalyticsV2Application_EnvironmentProperties) Metadata() map[string]interface{} { +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 *AWSKinesisAnalyticsV2Application_EnvironmentProperties) SetMetadata(metadata map[string]interface{}) { +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 *AWSKinesisAnalyticsV2Application_EnvironmentProperties) DeletionPolicy() policies.DeletionPolicy { +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 *AWSKinesisAnalyticsV2Application_EnvironmentProperties) SetDeletionPolicy(policy policies.DeletionPolicy) { +func (r *Application_EnvironmentProperties) SetDeletionPolicy(policy policies.DeletionPolicy) { r._deletionPolicy = policy } diff --git a/cloudformation/resources/aws-kinesisanalyticsv2-application_flinkapplicationconfiguration.go b/cloudformation/kinesisanalyticsv2/aws-kinesisanalyticsv2-application_flinkapplicationconfiguration.go similarity index 65% rename from cloudformation/resources/aws-kinesisanalyticsv2-application_flinkapplicationconfiguration.go rename to cloudformation/kinesisanalyticsv2/aws-kinesisanalyticsv2-application_flinkapplicationconfiguration.go index 1a177b6331..60884be562 100644 --- a/cloudformation/resources/aws-kinesisanalyticsv2-application_flinkapplicationconfiguration.go +++ b/cloudformation/kinesisanalyticsv2/aws-kinesisanalyticsv2-application_flinkapplicationconfiguration.go @@ -1,25 +1,27 @@ -package resources +package kinesisanalyticsv2 -import "github.com/awslabs/goformation/v2/cloudformation/policies" +import ( + "github.com/awslabs/goformation/v3/cloudformation/policies" +) -// AWSKinesisAnalyticsV2Application_FlinkApplicationConfiguration AWS CloudFormation Resource (AWS::KinesisAnalyticsV2::Application.FlinkApplicationConfiguration) +// 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 AWSKinesisAnalyticsV2Application_FlinkApplicationConfiguration struct { +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 *AWSKinesisAnalyticsV2Application_CheckpointConfiguration `json:"CheckpointConfiguration,omitempty"` + 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 *AWSKinesisAnalyticsV2Application_MonitoringConfiguration `json:"MonitoringConfiguration,omitempty"` + 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 *AWSKinesisAnalyticsV2Application_ParallelismConfiguration `json:"ParallelismConfiguration,omitempty"` + ParallelismConfiguration *Application_ParallelismConfiguration `json:"ParallelismConfiguration,omitempty"` // _deletionPolicy represents a CloudFormation DeletionPolicy _deletionPolicy policies.DeletionPolicy @@ -32,42 +34,42 @@ type AWSKinesisAnalyticsV2Application_FlinkApplicationConfiguration struct { } // AWSCloudFormationType returns the AWS CloudFormation resource type -func (r *AWSKinesisAnalyticsV2Application_FlinkApplicationConfiguration) AWSCloudFormationType() string { +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 *AWSKinesisAnalyticsV2Application_FlinkApplicationConfiguration) DependsOn() []string { +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 *AWSKinesisAnalyticsV2Application_FlinkApplicationConfiguration) SetDependsOn(dependencies []string) { +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 *AWSKinesisAnalyticsV2Application_FlinkApplicationConfiguration) Metadata() map[string]interface{} { +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 *AWSKinesisAnalyticsV2Application_FlinkApplicationConfiguration) SetMetadata(metadata map[string]interface{}) { +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 *AWSKinesisAnalyticsV2Application_FlinkApplicationConfiguration) DeletionPolicy() policies.DeletionPolicy { +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 *AWSKinesisAnalyticsV2Application_FlinkApplicationConfiguration) SetDeletionPolicy(policy policies.DeletionPolicy) { +func (r *Application_FlinkApplicationConfiguration) SetDeletionPolicy(policy policies.DeletionPolicy) { r._deletionPolicy = policy } diff --git a/cloudformation/resources/aws-kinesisanalyticsv2-application_input.go b/cloudformation/kinesisanalyticsv2/aws-kinesisanalyticsv2-application_input.go similarity index 70% rename from cloudformation/resources/aws-kinesisanalyticsv2-application_input.go rename to cloudformation/kinesisanalyticsv2/aws-kinesisanalyticsv2-application_input.go index 3325c5f62f..6e9bcec9f3 100644 --- a/cloudformation/resources/aws-kinesisanalyticsv2-application_input.go +++ b/cloudformation/kinesisanalyticsv2/aws-kinesisanalyticsv2-application_input.go @@ -1,35 +1,37 @@ -package resources +package kinesisanalyticsv2 -import "github.com/awslabs/goformation/v2/cloudformation/policies" +import ( + "github.com/awslabs/goformation/v3/cloudformation/policies" +) -// AWSKinesisAnalyticsV2Application_Input AWS CloudFormation Resource (AWS::KinesisAnalyticsV2::Application.Input) +// 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 AWSKinesisAnalyticsV2Application_Input struct { +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 *AWSKinesisAnalyticsV2Application_InputParallelism `json:"InputParallelism,omitempty"` + 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 *AWSKinesisAnalyticsV2Application_InputProcessingConfiguration `json:"InputProcessingConfiguration,omitempty"` + 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 *AWSKinesisAnalyticsV2Application_InputSchema `json:"InputSchema,omitempty"` + 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 *AWSKinesisAnalyticsV2Application_KinesisFirehoseInput `json:"KinesisFirehoseInput,omitempty"` + 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 *AWSKinesisAnalyticsV2Application_KinesisStreamsInput `json:"KinesisStreamsInput,omitempty"` + KinesisStreamsInput *Application_KinesisStreamsInput `json:"KinesisStreamsInput,omitempty"` // NamePrefix AWS CloudFormation Property // Required: true @@ -47,42 +49,42 @@ type AWSKinesisAnalyticsV2Application_Input struct { } // AWSCloudFormationType returns the AWS CloudFormation resource type -func (r *AWSKinesisAnalyticsV2Application_Input) AWSCloudFormationType() string { +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 *AWSKinesisAnalyticsV2Application_Input) DependsOn() []string { +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 *AWSKinesisAnalyticsV2Application_Input) SetDependsOn(dependencies []string) { +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 *AWSKinesisAnalyticsV2Application_Input) Metadata() map[string]interface{} { +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 *AWSKinesisAnalyticsV2Application_Input) SetMetadata(metadata map[string]interface{}) { +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 *AWSKinesisAnalyticsV2Application_Input) DeletionPolicy() policies.DeletionPolicy { +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 *AWSKinesisAnalyticsV2Application_Input) SetDeletionPolicy(policy policies.DeletionPolicy) { +func (r *Application_Input) SetDeletionPolicy(policy policies.DeletionPolicy) { r._deletionPolicy = policy } diff --git a/cloudformation/resources/aws-kinesisanalyticsv2-application_inputlambdaprocessor.go b/cloudformation/kinesisanalyticsv2/aws-kinesisanalyticsv2-application_inputlambdaprocessor.go similarity index 67% rename from cloudformation/resources/aws-kinesisanalyticsv2-application_inputlambdaprocessor.go rename to cloudformation/kinesisanalyticsv2/aws-kinesisanalyticsv2-application_inputlambdaprocessor.go index e36cc62b0f..aad5106a19 100644 --- a/cloudformation/resources/aws-kinesisanalyticsv2-application_inputlambdaprocessor.go +++ b/cloudformation/kinesisanalyticsv2/aws-kinesisanalyticsv2-application_inputlambdaprocessor.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_InputLambdaProcessor AWS CloudFormation Resource (AWS::KinesisAnalyticsV2::Application.InputLambdaProcessor) +// 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 AWSKinesisAnalyticsV2Application_InputLambdaProcessor struct { +type Application_InputLambdaProcessor struct { // ResourceARN AWS CloudFormation Property // Required: true @@ -22,42 +24,42 @@ type AWSKinesisAnalyticsV2Application_InputLambdaProcessor struct { } // AWSCloudFormationType returns the AWS CloudFormation resource type -func (r *AWSKinesisAnalyticsV2Application_InputLambdaProcessor) AWSCloudFormationType() string { +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 *AWSKinesisAnalyticsV2Application_InputLambdaProcessor) DependsOn() []string { +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 *AWSKinesisAnalyticsV2Application_InputLambdaProcessor) SetDependsOn(dependencies []string) { +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 *AWSKinesisAnalyticsV2Application_InputLambdaProcessor) Metadata() map[string]interface{} { +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 *AWSKinesisAnalyticsV2Application_InputLambdaProcessor) SetMetadata(metadata map[string]interface{}) { +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 *AWSKinesisAnalyticsV2Application_InputLambdaProcessor) DeletionPolicy() policies.DeletionPolicy { +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 *AWSKinesisAnalyticsV2Application_InputLambdaProcessor) SetDeletionPolicy(policy policies.DeletionPolicy) { +func (r *Application_InputLambdaProcessor) SetDeletionPolicy(policy policies.DeletionPolicy) { r._deletionPolicy = policy } diff --git a/cloudformation/resources/aws-kinesisanalyticsv2-application_inputparallelism.go b/cloudformation/kinesisanalyticsv2/aws-kinesisanalyticsv2-application_inputparallelism.go similarity index 68% rename from cloudformation/resources/aws-kinesisanalyticsv2-application_inputparallelism.go rename to cloudformation/kinesisanalyticsv2/aws-kinesisanalyticsv2-application_inputparallelism.go index 296bf8fe63..3b9d8954c0 100644 --- a/cloudformation/resources/aws-kinesisanalyticsv2-application_inputparallelism.go +++ b/cloudformation/kinesisanalyticsv2/aws-kinesisanalyticsv2-application_inputparallelism.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_InputParallelism AWS CloudFormation Resource (AWS::KinesisAnalyticsV2::Application.InputParallelism) +// 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 AWSKinesisAnalyticsV2Application_InputParallelism struct { +type Application_InputParallelism struct { // Count AWS CloudFormation Property // Required: false @@ -22,42 +24,42 @@ type AWSKinesisAnalyticsV2Application_InputParallelism struct { } // AWSCloudFormationType returns the AWS CloudFormation resource type -func (r *AWSKinesisAnalyticsV2Application_InputParallelism) AWSCloudFormationType() string { +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 *AWSKinesisAnalyticsV2Application_InputParallelism) DependsOn() []string { +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 *AWSKinesisAnalyticsV2Application_InputParallelism) SetDependsOn(dependencies []string) { +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 *AWSKinesisAnalyticsV2Application_InputParallelism) Metadata() map[string]interface{} { +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 *AWSKinesisAnalyticsV2Application_InputParallelism) SetMetadata(metadata map[string]interface{}) { +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 *AWSKinesisAnalyticsV2Application_InputParallelism) DeletionPolicy() policies.DeletionPolicy { +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 *AWSKinesisAnalyticsV2Application_InputParallelism) SetDeletionPolicy(policy policies.DeletionPolicy) { +func (r *Application_InputParallelism) SetDeletionPolicy(policy policies.DeletionPolicy) { r._deletionPolicy = policy } diff --git a/cloudformation/resources/aws-kinesisanalyticsv2-application_inputprocessingconfiguration.go b/cloudformation/kinesisanalyticsv2/aws-kinesisanalyticsv2-application_inputprocessingconfiguration.go similarity index 64% rename from cloudformation/resources/aws-kinesisanalyticsv2-application_inputprocessingconfiguration.go rename to cloudformation/kinesisanalyticsv2/aws-kinesisanalyticsv2-application_inputprocessingconfiguration.go index 733df86fac..e20990f8e0 100644 --- a/cloudformation/resources/aws-kinesisanalyticsv2-application_inputprocessingconfiguration.go +++ b/cloudformation/kinesisanalyticsv2/aws-kinesisanalyticsv2-application_inputprocessingconfiguration.go @@ -1,15 +1,17 @@ -package resources +package kinesisanalyticsv2 -import "github.com/awslabs/goformation/v2/cloudformation/policies" +import ( + "github.com/awslabs/goformation/v3/cloudformation/policies" +) -// AWSKinesisAnalyticsV2Application_InputProcessingConfiguration AWS CloudFormation Resource (AWS::KinesisAnalyticsV2::Application.InputProcessingConfiguration) +// 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 AWSKinesisAnalyticsV2Application_InputProcessingConfiguration struct { +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 *AWSKinesisAnalyticsV2Application_InputLambdaProcessor `json:"InputLambdaProcessor,omitempty"` + InputLambdaProcessor *Application_InputLambdaProcessor `json:"InputLambdaProcessor,omitempty"` // _deletionPolicy represents a CloudFormation DeletionPolicy _deletionPolicy policies.DeletionPolicy @@ -22,42 +24,42 @@ type AWSKinesisAnalyticsV2Application_InputProcessingConfiguration struct { } // AWSCloudFormationType returns the AWS CloudFormation resource type -func (r *AWSKinesisAnalyticsV2Application_InputProcessingConfiguration) AWSCloudFormationType() string { +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 *AWSKinesisAnalyticsV2Application_InputProcessingConfiguration) DependsOn() []string { +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 *AWSKinesisAnalyticsV2Application_InputProcessingConfiguration) SetDependsOn(dependencies []string) { +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 *AWSKinesisAnalyticsV2Application_InputProcessingConfiguration) Metadata() map[string]interface{} { +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 *AWSKinesisAnalyticsV2Application_InputProcessingConfiguration) SetMetadata(metadata map[string]interface{}) { +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 *AWSKinesisAnalyticsV2Application_InputProcessingConfiguration) DeletionPolicy() policies.DeletionPolicy { +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 *AWSKinesisAnalyticsV2Application_InputProcessingConfiguration) SetDeletionPolicy(policy policies.DeletionPolicy) { +func (r *Application_InputProcessingConfiguration) SetDeletionPolicy(policy policies.DeletionPolicy) { r._deletionPolicy = policy } diff --git a/cloudformation/resources/aws-kinesisanalyticsv2-application_inputschema.go b/cloudformation/kinesisanalyticsv2/aws-kinesisanalyticsv2-application_inputschema.go similarity index 70% rename from cloudformation/resources/aws-kinesisanalyticsv2-application_inputschema.go rename to cloudformation/kinesisanalyticsv2/aws-kinesisanalyticsv2-application_inputschema.go index cf4f9b4e31..ae4231e6d6 100644 --- a/cloudformation/resources/aws-kinesisanalyticsv2-application_inputschema.go +++ b/cloudformation/kinesisanalyticsv2/aws-kinesisanalyticsv2-application_inputschema.go @@ -1,15 +1,17 @@ -package resources +package kinesisanalyticsv2 -import "github.com/awslabs/goformation/v2/cloudformation/policies" +import ( + "github.com/awslabs/goformation/v3/cloudformation/policies" +) -// AWSKinesisAnalyticsV2Application_InputSchema AWS CloudFormation Resource (AWS::KinesisAnalyticsV2::Application.InputSchema) +// 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 AWSKinesisAnalyticsV2Application_InputSchema struct { +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 []AWSKinesisAnalyticsV2Application_RecordColumn `json:"RecordColumns,omitempty"` + RecordColumns []Application_RecordColumn `json:"RecordColumns,omitempty"` // RecordEncoding AWS CloudFormation Property // Required: false @@ -19,7 +21,7 @@ type AWSKinesisAnalyticsV2Application_InputSchema struct { // 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"` + RecordFormat *Application_RecordFormat `json:"RecordFormat,omitempty"` // _deletionPolicy represents a CloudFormation DeletionPolicy _deletionPolicy policies.DeletionPolicy @@ -32,42 +34,42 @@ type AWSKinesisAnalyticsV2Application_InputSchema struct { } // AWSCloudFormationType returns the AWS CloudFormation resource type -func (r *AWSKinesisAnalyticsV2Application_InputSchema) AWSCloudFormationType() string { +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 *AWSKinesisAnalyticsV2Application_InputSchema) DependsOn() []string { +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 *AWSKinesisAnalyticsV2Application_InputSchema) SetDependsOn(dependencies []string) { +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 *AWSKinesisAnalyticsV2Application_InputSchema) Metadata() map[string]interface{} { +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 *AWSKinesisAnalyticsV2Application_InputSchema) SetMetadata(metadata map[string]interface{}) { +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 *AWSKinesisAnalyticsV2Application_InputSchema) DeletionPolicy() policies.DeletionPolicy { +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 *AWSKinesisAnalyticsV2Application_InputSchema) SetDeletionPolicy(policy policies.DeletionPolicy) { +func (r *Application_InputSchema) SetDeletionPolicy(policy policies.DeletionPolicy) { r._deletionPolicy = policy } diff --git a/cloudformation/resources/aws-kinesisanalyticsv2-application_jsonmappingparameters.go b/cloudformation/kinesisanalyticsv2/aws-kinesisanalyticsv2-application_jsonmappingparameters.go similarity index 67% rename from cloudformation/resources/aws-kinesisanalyticsv2-application_jsonmappingparameters.go rename to cloudformation/kinesisanalyticsv2/aws-kinesisanalyticsv2-application_jsonmappingparameters.go index 9e662a606e..2b1879ed12 100644 --- a/cloudformation/resources/aws-kinesisanalyticsv2-application_jsonmappingparameters.go +++ b/cloudformation/kinesisanalyticsv2/aws-kinesisanalyticsv2-application_jsonmappingparameters.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_JSONMappingParameters AWS CloudFormation Resource (AWS::KinesisAnalyticsV2::Application.JSONMappingParameters) +// 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 AWSKinesisAnalyticsV2Application_JSONMappingParameters struct { +type Application_JSONMappingParameters struct { // RecordRowPath AWS CloudFormation Property // Required: true @@ -22,42 +24,42 @@ type AWSKinesisAnalyticsV2Application_JSONMappingParameters struct { } // AWSCloudFormationType returns the AWS CloudFormation resource type -func (r *AWSKinesisAnalyticsV2Application_JSONMappingParameters) AWSCloudFormationType() string { +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 *AWSKinesisAnalyticsV2Application_JSONMappingParameters) DependsOn() []string { +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 *AWSKinesisAnalyticsV2Application_JSONMappingParameters) SetDependsOn(dependencies []string) { +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 *AWSKinesisAnalyticsV2Application_JSONMappingParameters) Metadata() map[string]interface{} { +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 *AWSKinesisAnalyticsV2Application_JSONMappingParameters) SetMetadata(metadata map[string]interface{}) { +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 *AWSKinesisAnalyticsV2Application_JSONMappingParameters) DeletionPolicy() policies.DeletionPolicy { +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 *AWSKinesisAnalyticsV2Application_JSONMappingParameters) SetDeletionPolicy(policy policies.DeletionPolicy) { +func (r *Application_JSONMappingParameters) SetDeletionPolicy(policy policies.DeletionPolicy) { r._deletionPolicy = policy } diff --git a/cloudformation/resources/aws-kinesisanalyticsv2-application_kinesisfirehoseinput.go b/cloudformation/kinesisanalyticsv2/aws-kinesisanalyticsv2-application_kinesisfirehoseinput.go similarity index 67% rename from cloudformation/resources/aws-kinesisanalyticsv2-application_kinesisfirehoseinput.go rename to cloudformation/kinesisanalyticsv2/aws-kinesisanalyticsv2-application_kinesisfirehoseinput.go index d63cc2827f..a2f99e34c9 100644 --- a/cloudformation/resources/aws-kinesisanalyticsv2-application_kinesisfirehoseinput.go +++ b/cloudformation/kinesisanalyticsv2/aws-kinesisanalyticsv2-application_kinesisfirehoseinput.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_KinesisFirehoseInput AWS CloudFormation Resource (AWS::KinesisAnalyticsV2::Application.KinesisFirehoseInput) +// 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 AWSKinesisAnalyticsV2Application_KinesisFirehoseInput struct { +type Application_KinesisFirehoseInput struct { // ResourceARN AWS CloudFormation Property // Required: true @@ -22,42 +24,42 @@ type AWSKinesisAnalyticsV2Application_KinesisFirehoseInput struct { } // AWSCloudFormationType returns the AWS CloudFormation resource type -func (r *AWSKinesisAnalyticsV2Application_KinesisFirehoseInput) AWSCloudFormationType() string { +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 *AWSKinesisAnalyticsV2Application_KinesisFirehoseInput) DependsOn() []string { +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 *AWSKinesisAnalyticsV2Application_KinesisFirehoseInput) SetDependsOn(dependencies []string) { +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 *AWSKinesisAnalyticsV2Application_KinesisFirehoseInput) Metadata() map[string]interface{} { +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 *AWSKinesisAnalyticsV2Application_KinesisFirehoseInput) SetMetadata(metadata map[string]interface{}) { +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 *AWSKinesisAnalyticsV2Application_KinesisFirehoseInput) DeletionPolicy() policies.DeletionPolicy { +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 *AWSKinesisAnalyticsV2Application_KinesisFirehoseInput) SetDeletionPolicy(policy policies.DeletionPolicy) { +func (r *Application_KinesisFirehoseInput) SetDeletionPolicy(policy policies.DeletionPolicy) { r._deletionPolicy = policy } diff --git a/cloudformation/resources/aws-kinesisanalyticsv2-application_kinesisstreamsinput.go b/cloudformation/kinesisanalyticsv2/aws-kinesisanalyticsv2-application_kinesisstreamsinput.go similarity index 68% rename from cloudformation/resources/aws-kinesisanalyticsv2-application_kinesisstreamsinput.go rename to cloudformation/kinesisanalyticsv2/aws-kinesisanalyticsv2-application_kinesisstreamsinput.go index e4aeb13f29..b5d5253948 100644 --- a/cloudformation/resources/aws-kinesisanalyticsv2-application_kinesisstreamsinput.go +++ b/cloudformation/kinesisanalyticsv2/aws-kinesisanalyticsv2-application_kinesisstreamsinput.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_KinesisStreamsInput AWS CloudFormation Resource (AWS::KinesisAnalyticsV2::Application.KinesisStreamsInput) +// 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 AWSKinesisAnalyticsV2Application_KinesisStreamsInput struct { +type Application_KinesisStreamsInput struct { // ResourceARN AWS CloudFormation Property // Required: true @@ -22,42 +24,42 @@ type AWSKinesisAnalyticsV2Application_KinesisStreamsInput struct { } // AWSCloudFormationType returns the AWS CloudFormation resource type -func (r *AWSKinesisAnalyticsV2Application_KinesisStreamsInput) AWSCloudFormationType() string { +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 *AWSKinesisAnalyticsV2Application_KinesisStreamsInput) DependsOn() []string { +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 *AWSKinesisAnalyticsV2Application_KinesisStreamsInput) SetDependsOn(dependencies []string) { +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 *AWSKinesisAnalyticsV2Application_KinesisStreamsInput) Metadata() map[string]interface{} { +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 *AWSKinesisAnalyticsV2Application_KinesisStreamsInput) SetMetadata(metadata map[string]interface{}) { +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 *AWSKinesisAnalyticsV2Application_KinesisStreamsInput) DeletionPolicy() policies.DeletionPolicy { +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 *AWSKinesisAnalyticsV2Application_KinesisStreamsInput) SetDeletionPolicy(policy policies.DeletionPolicy) { +func (r *Application_KinesisStreamsInput) SetDeletionPolicy(policy policies.DeletionPolicy) { r._deletionPolicy = policy } diff --git a/cloudformation/resources/aws-kinesisanalyticsv2-application_mappingparameters.go b/cloudformation/kinesisanalyticsv2/aws-kinesisanalyticsv2-application_mappingparameters.go similarity index 66% rename from cloudformation/resources/aws-kinesisanalyticsv2-application_mappingparameters.go rename to cloudformation/kinesisanalyticsv2/aws-kinesisanalyticsv2-application_mappingparameters.go index 0b23647fa0..414fb06e0d 100644 --- a/cloudformation/resources/aws-kinesisanalyticsv2-application_mappingparameters.go +++ b/cloudformation/kinesisanalyticsv2/aws-kinesisanalyticsv2-application_mappingparameters.go @@ -1,20 +1,22 @@ -package resources +package kinesisanalyticsv2 -import "github.com/awslabs/goformation/v2/cloudformation/policies" +import ( + "github.com/awslabs/goformation/v3/cloudformation/policies" +) -// AWSKinesisAnalyticsV2Application_MappingParameters AWS CloudFormation Resource (AWS::KinesisAnalyticsV2::Application.MappingParameters) +// 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 AWSKinesisAnalyticsV2Application_MappingParameters struct { +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 *AWSKinesisAnalyticsV2Application_CSVMappingParameters `json:"CSVMappingParameters,omitempty"` + 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 *AWSKinesisAnalyticsV2Application_JSONMappingParameters `json:"JSONMappingParameters,omitempty"` + JSONMappingParameters *Application_JSONMappingParameters `json:"JSONMappingParameters,omitempty"` // _deletionPolicy represents a CloudFormation DeletionPolicy _deletionPolicy policies.DeletionPolicy @@ -27,42 +29,42 @@ type AWSKinesisAnalyticsV2Application_MappingParameters struct { } // AWSCloudFormationType returns the AWS CloudFormation resource type -func (r *AWSKinesisAnalyticsV2Application_MappingParameters) AWSCloudFormationType() string { +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 *AWSKinesisAnalyticsV2Application_MappingParameters) DependsOn() []string { +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 *AWSKinesisAnalyticsV2Application_MappingParameters) SetDependsOn(dependencies []string) { +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 *AWSKinesisAnalyticsV2Application_MappingParameters) Metadata() map[string]interface{} { +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 *AWSKinesisAnalyticsV2Application_MappingParameters) SetMetadata(metadata map[string]interface{}) { +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 *AWSKinesisAnalyticsV2Application_MappingParameters) DeletionPolicy() policies.DeletionPolicy { +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 *AWSKinesisAnalyticsV2Application_MappingParameters) SetDeletionPolicy(policy policies.DeletionPolicy) { +func (r *Application_MappingParameters) SetDeletionPolicy(policy policies.DeletionPolicy) { r._deletionPolicy = policy } diff --git a/cloudformation/resources/aws-kinesisanalyticsv2-application_monitoringconfiguration.go b/cloudformation/kinesisanalyticsv2/aws-kinesisanalyticsv2-application_monitoringconfiguration.go similarity index 73% rename from cloudformation/resources/aws-kinesisanalyticsv2-application_monitoringconfiguration.go rename to cloudformation/kinesisanalyticsv2/aws-kinesisanalyticsv2-application_monitoringconfiguration.go index 9892a0a5b7..482346de3d 100644 --- a/cloudformation/resources/aws-kinesisanalyticsv2-application_monitoringconfiguration.go +++ b/cloudformation/kinesisanalyticsv2/aws-kinesisanalyticsv2-application_monitoringconfiguration.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_MonitoringConfiguration AWS CloudFormation Resource (AWS::KinesisAnalyticsV2::Application.MonitoringConfiguration) +// 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 AWSKinesisAnalyticsV2Application_MonitoringConfiguration struct { +type Application_MonitoringConfiguration struct { // ConfigurationType AWS CloudFormation Property // Required: true @@ -32,42 +34,42 @@ type AWSKinesisAnalyticsV2Application_MonitoringConfiguration struct { } // AWSCloudFormationType returns the AWS CloudFormation resource type -func (r *AWSKinesisAnalyticsV2Application_MonitoringConfiguration) AWSCloudFormationType() string { +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 *AWSKinesisAnalyticsV2Application_MonitoringConfiguration) DependsOn() []string { +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 *AWSKinesisAnalyticsV2Application_MonitoringConfiguration) SetDependsOn(dependencies []string) { +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 *AWSKinesisAnalyticsV2Application_MonitoringConfiguration) Metadata() map[string]interface{} { +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 *AWSKinesisAnalyticsV2Application_MonitoringConfiguration) SetMetadata(metadata map[string]interface{}) { +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 *AWSKinesisAnalyticsV2Application_MonitoringConfiguration) DeletionPolicy() policies.DeletionPolicy { +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 *AWSKinesisAnalyticsV2Application_MonitoringConfiguration) SetDeletionPolicy(policy policies.DeletionPolicy) { +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/resources/aws-kinesisanalyticsv2-application_propertygroup.go b/cloudformation/kinesisanalyticsv2/aws-kinesisanalyticsv2-application_propertygroup.go similarity index 72% rename from cloudformation/resources/aws-kinesisanalyticsv2-application_propertygroup.go rename to cloudformation/kinesisanalyticsv2/aws-kinesisanalyticsv2-application_propertygroup.go index 52d604f857..67b22078ac 100644 --- a/cloudformation/resources/aws-kinesisanalyticsv2-application_propertygroup.go +++ b/cloudformation/kinesisanalyticsv2/aws-kinesisanalyticsv2-application_propertygroup.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_PropertyGroup AWS CloudFormation Resource (AWS::KinesisAnalyticsV2::Application.PropertyGroup) +// 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 AWSKinesisAnalyticsV2Application_PropertyGroup struct { +type Application_PropertyGroup struct { // PropertyGroupId AWS CloudFormation Property // Required: false @@ -27,42 +29,42 @@ type AWSKinesisAnalyticsV2Application_PropertyGroup struct { } // AWSCloudFormationType returns the AWS CloudFormation resource type -func (r *AWSKinesisAnalyticsV2Application_PropertyGroup) AWSCloudFormationType() string { +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 *AWSKinesisAnalyticsV2Application_PropertyGroup) DependsOn() []string { +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 *AWSKinesisAnalyticsV2Application_PropertyGroup) SetDependsOn(dependencies []string) { +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 *AWSKinesisAnalyticsV2Application_PropertyGroup) Metadata() map[string]interface{} { +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 *AWSKinesisAnalyticsV2Application_PropertyGroup) SetMetadata(metadata map[string]interface{}) { +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 *AWSKinesisAnalyticsV2Application_PropertyGroup) DeletionPolicy() policies.DeletionPolicy { +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 *AWSKinesisAnalyticsV2Application_PropertyGroup) SetDeletionPolicy(policy policies.DeletionPolicy) { +func (r *Application_PropertyGroup) SetDeletionPolicy(policy policies.DeletionPolicy) { r._deletionPolicy = policy } diff --git a/cloudformation/resources/aws-kinesisanalyticsv2-application_recordcolumn.go b/cloudformation/kinesisanalyticsv2/aws-kinesisanalyticsv2-application_recordcolumn.go similarity index 74% rename from cloudformation/resources/aws-kinesisanalyticsv2-application_recordcolumn.go rename to cloudformation/kinesisanalyticsv2/aws-kinesisanalyticsv2-application_recordcolumn.go index 6ce7fb9a2f..3cb1635bd8 100644 --- a/cloudformation/resources/aws-kinesisanalyticsv2-application_recordcolumn.go +++ b/cloudformation/kinesisanalyticsv2/aws-kinesisanalyticsv2-application_recordcolumn.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_RecordColumn AWS CloudFormation Resource (AWS::KinesisAnalyticsV2::Application.RecordColumn) +// 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 AWSKinesisAnalyticsV2Application_RecordColumn struct { +type Application_RecordColumn struct { // Mapping AWS CloudFormation Property // Required: false @@ -32,42 +34,42 @@ type AWSKinesisAnalyticsV2Application_RecordColumn struct { } // AWSCloudFormationType returns the AWS CloudFormation resource type -func (r *AWSKinesisAnalyticsV2Application_RecordColumn) AWSCloudFormationType() string { +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 *AWSKinesisAnalyticsV2Application_RecordColumn) DependsOn() []string { +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 *AWSKinesisAnalyticsV2Application_RecordColumn) SetDependsOn(dependencies []string) { +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 *AWSKinesisAnalyticsV2Application_RecordColumn) Metadata() map[string]interface{} { +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 *AWSKinesisAnalyticsV2Application_RecordColumn) SetMetadata(metadata map[string]interface{}) { +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 *AWSKinesisAnalyticsV2Application_RecordColumn) DeletionPolicy() policies.DeletionPolicy { +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 *AWSKinesisAnalyticsV2Application_RecordColumn) SetDeletionPolicy(policy policies.DeletionPolicy) { +func (r *Application_RecordColumn) SetDeletionPolicy(policy policies.DeletionPolicy) { r._deletionPolicy = policy } diff --git a/cloudformation/resources/aws-kinesisanalyticsv2-application_recordformat.go b/cloudformation/kinesisanalyticsv2/aws-kinesisanalyticsv2-application_recordformat.go similarity index 69% rename from cloudformation/resources/aws-kinesisanalyticsv2-application_recordformat.go rename to cloudformation/kinesisanalyticsv2/aws-kinesisanalyticsv2-application_recordformat.go index 450b4143ca..b7157fa045 100644 --- a/cloudformation/resources/aws-kinesisanalyticsv2-application_recordformat.go +++ b/cloudformation/kinesisanalyticsv2/aws-kinesisanalyticsv2-application_recordformat.go @@ -1,15 +1,17 @@ -package resources +package kinesisanalyticsv2 -import "github.com/awslabs/goformation/v2/cloudformation/policies" +import ( + "github.com/awslabs/goformation/v3/cloudformation/policies" +) -// AWSKinesisAnalyticsV2Application_RecordFormat AWS CloudFormation Resource (AWS::KinesisAnalyticsV2::Application.RecordFormat) +// 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 AWSKinesisAnalyticsV2Application_RecordFormat struct { +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 *AWSKinesisAnalyticsV2Application_MappingParameters `json:"MappingParameters,omitempty"` + MappingParameters *Application_MappingParameters `json:"MappingParameters,omitempty"` // RecordFormatType AWS CloudFormation Property // Required: true @@ -27,42 +29,42 @@ type AWSKinesisAnalyticsV2Application_RecordFormat struct { } // AWSCloudFormationType returns the AWS CloudFormation resource type -func (r *AWSKinesisAnalyticsV2Application_RecordFormat) AWSCloudFormationType() string { +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 *AWSKinesisAnalyticsV2Application_RecordFormat) DependsOn() []string { +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 *AWSKinesisAnalyticsV2Application_RecordFormat) SetDependsOn(dependencies []string) { +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 *AWSKinesisAnalyticsV2Application_RecordFormat) Metadata() map[string]interface{} { +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 *AWSKinesisAnalyticsV2Application_RecordFormat) SetMetadata(metadata map[string]interface{}) { +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 *AWSKinesisAnalyticsV2Application_RecordFormat) DeletionPolicy() policies.DeletionPolicy { +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 *AWSKinesisAnalyticsV2Application_RecordFormat) SetDeletionPolicy(policy policies.DeletionPolicy) { +func (r *Application_RecordFormat) SetDeletionPolicy(policy policies.DeletionPolicy) { r._deletionPolicy = policy } diff --git a/cloudformation/resources/aws-kinesisanalyticsv2-application_s3contentlocation.go b/cloudformation/kinesisanalyticsv2/aws-kinesisanalyticsv2-application_s3contentlocation.go similarity index 73% rename from cloudformation/resources/aws-kinesisanalyticsv2-application_s3contentlocation.go rename to cloudformation/kinesisanalyticsv2/aws-kinesisanalyticsv2-application_s3contentlocation.go index 7b530efc35..a184875d91 100644 --- a/cloudformation/resources/aws-kinesisanalyticsv2-application_s3contentlocation.go +++ b/cloudformation/kinesisanalyticsv2/aws-kinesisanalyticsv2-application_s3contentlocation.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_S3ContentLocation AWS CloudFormation Resource (AWS::KinesisAnalyticsV2::Application.S3ContentLocation) +// 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 AWSKinesisAnalyticsV2Application_S3ContentLocation struct { +type Application_S3ContentLocation struct { // BucketARN AWS CloudFormation Property // Required: false @@ -32,42 +34,42 @@ type AWSKinesisAnalyticsV2Application_S3ContentLocation struct { } // AWSCloudFormationType returns the AWS CloudFormation resource type -func (r *AWSKinesisAnalyticsV2Application_S3ContentLocation) AWSCloudFormationType() string { +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 *AWSKinesisAnalyticsV2Application_S3ContentLocation) DependsOn() []string { +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 *AWSKinesisAnalyticsV2Application_S3ContentLocation) SetDependsOn(dependencies []string) { +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 *AWSKinesisAnalyticsV2Application_S3ContentLocation) Metadata() map[string]interface{} { +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 *AWSKinesisAnalyticsV2Application_S3ContentLocation) SetMetadata(metadata map[string]interface{}) { +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 *AWSKinesisAnalyticsV2Application_S3ContentLocation) DeletionPolicy() policies.DeletionPolicy { +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 *AWSKinesisAnalyticsV2Application_S3ContentLocation) SetDeletionPolicy(policy policies.DeletionPolicy) { +func (r *Application_S3ContentLocation) SetDeletionPolicy(policy policies.DeletionPolicy) { r._deletionPolicy = policy } diff --git a/cloudformation/resources/aws-kinesisanalyticsv2-application_sqlapplicationconfiguration.go b/cloudformation/kinesisanalyticsv2/aws-kinesisanalyticsv2-application_sqlapplicationconfiguration.go similarity index 64% rename from cloudformation/resources/aws-kinesisanalyticsv2-application_sqlapplicationconfiguration.go rename to cloudformation/kinesisanalyticsv2/aws-kinesisanalyticsv2-application_sqlapplicationconfiguration.go index 4d84a7d72d..2bb201f988 100644 --- a/cloudformation/resources/aws-kinesisanalyticsv2-application_sqlapplicationconfiguration.go +++ b/cloudformation/kinesisanalyticsv2/aws-kinesisanalyticsv2-application_sqlapplicationconfiguration.go @@ -1,15 +1,17 @@ -package resources +package kinesisanalyticsv2 -import "github.com/awslabs/goformation/v2/cloudformation/policies" +import ( + "github.com/awslabs/goformation/v3/cloudformation/policies" +) -// AWSKinesisAnalyticsV2Application_SqlApplicationConfiguration AWS CloudFormation Resource (AWS::KinesisAnalyticsV2::Application.SqlApplicationConfiguration) +// 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 AWSKinesisAnalyticsV2Application_SqlApplicationConfiguration struct { +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 []AWSKinesisAnalyticsV2Application_Input `json:"Inputs,omitempty"` + Inputs []Application_Input `json:"Inputs,omitempty"` // _deletionPolicy represents a CloudFormation DeletionPolicy _deletionPolicy policies.DeletionPolicy @@ -22,42 +24,42 @@ type AWSKinesisAnalyticsV2Application_SqlApplicationConfiguration struct { } // AWSCloudFormationType returns the AWS CloudFormation resource type -func (r *AWSKinesisAnalyticsV2Application_SqlApplicationConfiguration) AWSCloudFormationType() string { +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 *AWSKinesisAnalyticsV2Application_SqlApplicationConfiguration) DependsOn() []string { +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 *AWSKinesisAnalyticsV2Application_SqlApplicationConfiguration) SetDependsOn(dependencies []string) { +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 *AWSKinesisAnalyticsV2Application_SqlApplicationConfiguration) Metadata() map[string]interface{} { +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 *AWSKinesisAnalyticsV2Application_SqlApplicationConfiguration) SetMetadata(metadata map[string]interface{}) { +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 *AWSKinesisAnalyticsV2Application_SqlApplicationConfiguration) DeletionPolicy() policies.DeletionPolicy { +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 *AWSKinesisAnalyticsV2Application_SqlApplicationConfiguration) SetDeletionPolicy(policy policies.DeletionPolicy) { +func (r *Application_SqlApplicationConfiguration) SetDeletionPolicy(policy policies.DeletionPolicy) { r._deletionPolicy = policy } diff --git a/cloudformation/resources/aws-kinesisanalyticsv2-applicationcloudwatchloggingoption.go b/cloudformation/kinesisanalyticsv2/aws-kinesisanalyticsv2-applicationcloudwatchloggingoption.go similarity index 71% rename from cloudformation/resources/aws-kinesisanalyticsv2-applicationcloudwatchloggingoption.go rename to cloudformation/kinesisanalyticsv2/aws-kinesisanalyticsv2-applicationcloudwatchloggingoption.go index 127e535a58..9ebc030724 100644 --- a/cloudformation/resources/aws-kinesisanalyticsv2-applicationcloudwatchloggingoption.go +++ b/cloudformation/kinesisanalyticsv2/aws-kinesisanalyticsv2-applicationcloudwatchloggingoption.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" ) -// AWSKinesisAnalyticsV2ApplicationCloudWatchLoggingOption AWS CloudFormation Resource (AWS::KinesisAnalyticsV2::ApplicationCloudWatchLoggingOption) +// ApplicationCloudWatchLoggingOption AWS CloudFormation Resource (AWS::KinesisAnalyticsV2::ApplicationCloudWatchLoggingOption) // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-kinesisanalyticsv2-applicationcloudwatchloggingoption.html -type AWSKinesisAnalyticsV2ApplicationCloudWatchLoggingOption struct { +type ApplicationCloudWatchLoggingOption struct { // ApplicationName AWS CloudFormation Property // Required: true @@ -19,7 +20,7 @@ type AWSKinesisAnalyticsV2ApplicationCloudWatchLoggingOption struct { // 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"` + CloudWatchLoggingOption *ApplicationCloudWatchLoggingOption_CloudWatchLoggingOption `json:"CloudWatchLoggingOption,omitempty"` // _deletionPolicy represents a CloudFormation DeletionPolicy _deletionPolicy policies.DeletionPolicy @@ -32,50 +33,50 @@ type AWSKinesisAnalyticsV2ApplicationCloudWatchLoggingOption struct { } // AWSCloudFormationType returns the AWS CloudFormation resource type -func (r *AWSKinesisAnalyticsV2ApplicationCloudWatchLoggingOption) AWSCloudFormationType() string { +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 *AWSKinesisAnalyticsV2ApplicationCloudWatchLoggingOption) DependsOn() []string { +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 *AWSKinesisAnalyticsV2ApplicationCloudWatchLoggingOption) SetDependsOn(dependencies []string) { +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 *AWSKinesisAnalyticsV2ApplicationCloudWatchLoggingOption) Metadata() map[string]interface{} { +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 *AWSKinesisAnalyticsV2ApplicationCloudWatchLoggingOption) SetMetadata(metadata map[string]interface{}) { +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 *AWSKinesisAnalyticsV2ApplicationCloudWatchLoggingOption) DeletionPolicy() policies.DeletionPolicy { +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 *AWSKinesisAnalyticsV2ApplicationCloudWatchLoggingOption) SetDeletionPolicy(policy policies.DeletionPolicy) { +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 AWSKinesisAnalyticsV2ApplicationCloudWatchLoggingOption) MarshalJSON() ([]byte, error) { - type Properties AWSKinesisAnalyticsV2ApplicationCloudWatchLoggingOption +func (r ApplicationCloudWatchLoggingOption) MarshalJSON() ([]byte, error) { + type Properties ApplicationCloudWatchLoggingOption return json.Marshal(&struct { Type string Properties Properties @@ -93,8 +94,8 @@ func (r AWSKinesisAnalyticsV2ApplicationCloudWatchLoggingOption) MarshalJSON() ( // 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 +func (r *ApplicationCloudWatchLoggingOption) UnmarshalJSON(b []byte) error { + type Properties ApplicationCloudWatchLoggingOption res := &struct { Type string Properties *Properties @@ -113,7 +114,7 @@ func (r *AWSKinesisAnalyticsV2ApplicationCloudWatchLoggingOption) UnmarshalJSON( // If the resource has no Properties set, it could be nil if res.Properties != nil { - *r = AWSKinesisAnalyticsV2ApplicationCloudWatchLoggingOption(*res.Properties) + *r = ApplicationCloudWatchLoggingOption(*res.Properties) } if res.DependsOn != nil { r._dependsOn = res.DependsOn diff --git a/cloudformation/resources/aws-kinesisanalyticsv2-applicationcloudwatchloggingoption_cloudwatchloggingoption.go b/cloudformation/kinesisanalyticsv2/aws-kinesisanalyticsv2-applicationcloudwatchloggingoption_cloudwatchloggingoption.go similarity index 63% rename from cloudformation/resources/aws-kinesisanalyticsv2-applicationcloudwatchloggingoption_cloudwatchloggingoption.go rename to cloudformation/kinesisanalyticsv2/aws-kinesisanalyticsv2-applicationcloudwatchloggingoption_cloudwatchloggingoption.go index 64b995593e..1bb1f6043c 100644 --- a/cloudformation/resources/aws-kinesisanalyticsv2-applicationcloudwatchloggingoption_cloudwatchloggingoption.go +++ b/cloudformation/kinesisanalyticsv2/aws-kinesisanalyticsv2-applicationcloudwatchloggingoption_cloudwatchloggingoption.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" +) -// AWSKinesisAnalyticsV2ApplicationCloudWatchLoggingOption_CloudWatchLoggingOption AWS CloudFormation Resource (AWS::KinesisAnalyticsV2::ApplicationCloudWatchLoggingOption.CloudWatchLoggingOption) +// 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 AWSKinesisAnalyticsV2ApplicationCloudWatchLoggingOption_CloudWatchLoggingOption struct { +type ApplicationCloudWatchLoggingOption_CloudWatchLoggingOption struct { // LogStreamARN AWS CloudFormation Property // Required: true @@ -22,42 +24,42 @@ type AWSKinesisAnalyticsV2ApplicationCloudWatchLoggingOption_CloudWatchLoggingOp } // AWSCloudFormationType returns the AWS CloudFormation resource type -func (r *AWSKinesisAnalyticsV2ApplicationCloudWatchLoggingOption_CloudWatchLoggingOption) AWSCloudFormationType() string { +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 *AWSKinesisAnalyticsV2ApplicationCloudWatchLoggingOption_CloudWatchLoggingOption) DependsOn() []string { +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 *AWSKinesisAnalyticsV2ApplicationCloudWatchLoggingOption_CloudWatchLoggingOption) SetDependsOn(dependencies []string) { +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 *AWSKinesisAnalyticsV2ApplicationCloudWatchLoggingOption_CloudWatchLoggingOption) Metadata() map[string]interface{} { +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 *AWSKinesisAnalyticsV2ApplicationCloudWatchLoggingOption_CloudWatchLoggingOption) SetMetadata(metadata map[string]interface{}) { +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 *AWSKinesisAnalyticsV2ApplicationCloudWatchLoggingOption_CloudWatchLoggingOption) DeletionPolicy() policies.DeletionPolicy { +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 *AWSKinesisAnalyticsV2ApplicationCloudWatchLoggingOption_CloudWatchLoggingOption) SetDeletionPolicy(policy policies.DeletionPolicy) { +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/resources/aws-kinesisanalyticsv2-applicationoutput_destinationschema.go b/cloudformation/kinesisanalyticsv2/aws-kinesisanalyticsv2-applicationoutput_destinationschema.go similarity index 67% rename from cloudformation/resources/aws-kinesisanalyticsv2-applicationoutput_destinationschema.go rename to cloudformation/kinesisanalyticsv2/aws-kinesisanalyticsv2-applicationoutput_destinationschema.go index 8ef283278d..3bc7c0b8dc 100644 --- a/cloudformation/resources/aws-kinesisanalyticsv2-applicationoutput_destinationschema.go +++ b/cloudformation/kinesisanalyticsv2/aws-kinesisanalyticsv2-applicationoutput_destinationschema.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" +) -// AWSKinesisAnalyticsV2ApplicationOutput_DestinationSchema AWS CloudFormation Resource (AWS::KinesisAnalyticsV2::ApplicationOutput.DestinationSchema) +// 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 AWSKinesisAnalyticsV2ApplicationOutput_DestinationSchema struct { +type ApplicationOutput_DestinationSchema struct { // RecordFormatType AWS CloudFormation Property // Required: false @@ -22,42 +24,42 @@ type AWSKinesisAnalyticsV2ApplicationOutput_DestinationSchema struct { } // AWSCloudFormationType returns the AWS CloudFormation resource type -func (r *AWSKinesisAnalyticsV2ApplicationOutput_DestinationSchema) AWSCloudFormationType() string { +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 *AWSKinesisAnalyticsV2ApplicationOutput_DestinationSchema) DependsOn() []string { +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 *AWSKinesisAnalyticsV2ApplicationOutput_DestinationSchema) SetDependsOn(dependencies []string) { +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 *AWSKinesisAnalyticsV2ApplicationOutput_DestinationSchema) Metadata() map[string]interface{} { +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 *AWSKinesisAnalyticsV2ApplicationOutput_DestinationSchema) SetMetadata(metadata map[string]interface{}) { +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 *AWSKinesisAnalyticsV2ApplicationOutput_DestinationSchema) DeletionPolicy() policies.DeletionPolicy { +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 *AWSKinesisAnalyticsV2ApplicationOutput_DestinationSchema) SetDeletionPolicy(policy policies.DeletionPolicy) { +func (r *ApplicationOutput_DestinationSchema) SetDeletionPolicy(policy policies.DeletionPolicy) { r._deletionPolicy = policy } diff --git a/cloudformation/resources/aws-kinesisanalyticsv2-applicationoutput_kinesisfirehoseoutput.go b/cloudformation/kinesisanalyticsv2/aws-kinesisanalyticsv2-applicationoutput_kinesisfirehoseoutput.go similarity index 66% rename from cloudformation/resources/aws-kinesisanalyticsv2-applicationoutput_kinesisfirehoseoutput.go rename to cloudformation/kinesisanalyticsv2/aws-kinesisanalyticsv2-applicationoutput_kinesisfirehoseoutput.go index 2e90338ab8..4ca03ff58b 100644 --- a/cloudformation/resources/aws-kinesisanalyticsv2-applicationoutput_kinesisfirehoseoutput.go +++ b/cloudformation/kinesisanalyticsv2/aws-kinesisanalyticsv2-applicationoutput_kinesisfirehoseoutput.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" +) -// AWSKinesisAnalyticsV2ApplicationOutput_KinesisFirehoseOutput AWS CloudFormation Resource (AWS::KinesisAnalyticsV2::ApplicationOutput.KinesisFirehoseOutput) +// 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 AWSKinesisAnalyticsV2ApplicationOutput_KinesisFirehoseOutput struct { +type ApplicationOutput_KinesisFirehoseOutput struct { // ResourceARN AWS CloudFormation Property // Required: true @@ -22,42 +24,42 @@ type AWSKinesisAnalyticsV2ApplicationOutput_KinesisFirehoseOutput struct { } // AWSCloudFormationType returns the AWS CloudFormation resource type -func (r *AWSKinesisAnalyticsV2ApplicationOutput_KinesisFirehoseOutput) AWSCloudFormationType() string { +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 *AWSKinesisAnalyticsV2ApplicationOutput_KinesisFirehoseOutput) DependsOn() []string { +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 *AWSKinesisAnalyticsV2ApplicationOutput_KinesisFirehoseOutput) SetDependsOn(dependencies []string) { +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 *AWSKinesisAnalyticsV2ApplicationOutput_KinesisFirehoseOutput) Metadata() map[string]interface{} { +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 *AWSKinesisAnalyticsV2ApplicationOutput_KinesisFirehoseOutput) SetMetadata(metadata map[string]interface{}) { +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 *AWSKinesisAnalyticsV2ApplicationOutput_KinesisFirehoseOutput) DeletionPolicy() policies.DeletionPolicy { +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 *AWSKinesisAnalyticsV2ApplicationOutput_KinesisFirehoseOutput) SetDeletionPolicy(policy policies.DeletionPolicy) { +func (r *ApplicationOutput_KinesisFirehoseOutput) SetDeletionPolicy(policy policies.DeletionPolicy) { r._deletionPolicy = policy } diff --git a/cloudformation/resources/aws-kinesisanalyticsv2-applicationoutput_kinesisstreamsoutput.go b/cloudformation/kinesisanalyticsv2/aws-kinesisanalyticsv2-applicationoutput_kinesisstreamsoutput.go similarity index 66% rename from cloudformation/resources/aws-kinesisanalyticsv2-applicationoutput_kinesisstreamsoutput.go rename to cloudformation/kinesisanalyticsv2/aws-kinesisanalyticsv2-applicationoutput_kinesisstreamsoutput.go index 7fdbf1a967..81590dbf08 100644 --- a/cloudformation/resources/aws-kinesisanalyticsv2-applicationoutput_kinesisstreamsoutput.go +++ b/cloudformation/kinesisanalyticsv2/aws-kinesisanalyticsv2-applicationoutput_kinesisstreamsoutput.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" +) -// AWSKinesisAnalyticsV2ApplicationOutput_KinesisStreamsOutput AWS CloudFormation Resource (AWS::KinesisAnalyticsV2::ApplicationOutput.KinesisStreamsOutput) +// 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 AWSKinesisAnalyticsV2ApplicationOutput_KinesisStreamsOutput struct { +type ApplicationOutput_KinesisStreamsOutput struct { // ResourceARN AWS CloudFormation Property // Required: true @@ -22,42 +24,42 @@ type AWSKinesisAnalyticsV2ApplicationOutput_KinesisStreamsOutput struct { } // AWSCloudFormationType returns the AWS CloudFormation resource type -func (r *AWSKinesisAnalyticsV2ApplicationOutput_KinesisStreamsOutput) AWSCloudFormationType() string { +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 *AWSKinesisAnalyticsV2ApplicationOutput_KinesisStreamsOutput) DependsOn() []string { +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 *AWSKinesisAnalyticsV2ApplicationOutput_KinesisStreamsOutput) SetDependsOn(dependencies []string) { +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 *AWSKinesisAnalyticsV2ApplicationOutput_KinesisStreamsOutput) Metadata() map[string]interface{} { +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 *AWSKinesisAnalyticsV2ApplicationOutput_KinesisStreamsOutput) SetMetadata(metadata map[string]interface{}) { +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 *AWSKinesisAnalyticsV2ApplicationOutput_KinesisStreamsOutput) DeletionPolicy() policies.DeletionPolicy { +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 *AWSKinesisAnalyticsV2ApplicationOutput_KinesisStreamsOutput) SetDeletionPolicy(policy policies.DeletionPolicy) { +func (r *ApplicationOutput_KinesisStreamsOutput) SetDeletionPolicy(policy policies.DeletionPolicy) { r._deletionPolicy = policy } diff --git a/cloudformation/resources/aws-kinesisanalyticsv2-applicationoutput_lambdaoutput.go b/cloudformation/kinesisanalyticsv2/aws-kinesisanalyticsv2-applicationoutput_lambdaoutput.go similarity index 68% rename from cloudformation/resources/aws-kinesisanalyticsv2-applicationoutput_lambdaoutput.go rename to cloudformation/kinesisanalyticsv2/aws-kinesisanalyticsv2-applicationoutput_lambdaoutput.go index 655561d563..069f25eee4 100644 --- a/cloudformation/resources/aws-kinesisanalyticsv2-applicationoutput_lambdaoutput.go +++ b/cloudformation/kinesisanalyticsv2/aws-kinesisanalyticsv2-applicationoutput_lambdaoutput.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" +) -// AWSKinesisAnalyticsV2ApplicationOutput_LambdaOutput AWS CloudFormation Resource (AWS::KinesisAnalyticsV2::ApplicationOutput.LambdaOutput) +// 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 AWSKinesisAnalyticsV2ApplicationOutput_LambdaOutput struct { +type ApplicationOutput_LambdaOutput struct { // ResourceARN AWS CloudFormation Property // Required: true @@ -22,42 +24,42 @@ type AWSKinesisAnalyticsV2ApplicationOutput_LambdaOutput struct { } // AWSCloudFormationType returns the AWS CloudFormation resource type -func (r *AWSKinesisAnalyticsV2ApplicationOutput_LambdaOutput) AWSCloudFormationType() string { +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 *AWSKinesisAnalyticsV2ApplicationOutput_LambdaOutput) DependsOn() []string { +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 *AWSKinesisAnalyticsV2ApplicationOutput_LambdaOutput) SetDependsOn(dependencies []string) { +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 *AWSKinesisAnalyticsV2ApplicationOutput_LambdaOutput) Metadata() map[string]interface{} { +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 *AWSKinesisAnalyticsV2ApplicationOutput_LambdaOutput) SetMetadata(metadata map[string]interface{}) { +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 *AWSKinesisAnalyticsV2ApplicationOutput_LambdaOutput) DeletionPolicy() policies.DeletionPolicy { +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 *AWSKinesisAnalyticsV2ApplicationOutput_LambdaOutput) SetDeletionPolicy(policy policies.DeletionPolicy) { +func (r *ApplicationOutput_LambdaOutput) SetDeletionPolicy(policy policies.DeletionPolicy) { r._deletionPolicy = policy } diff --git a/cloudformation/resources/aws-kinesisanalyticsv2-applicationoutput_output.go b/cloudformation/kinesisanalyticsv2/aws-kinesisanalyticsv2-applicationoutput_output.go similarity index 69% rename from cloudformation/resources/aws-kinesisanalyticsv2-applicationoutput_output.go rename to cloudformation/kinesisanalyticsv2/aws-kinesisanalyticsv2-applicationoutput_output.go index 1cc37b5ade..7c1ee0f2ac 100644 --- a/cloudformation/resources/aws-kinesisanalyticsv2-applicationoutput_output.go +++ b/cloudformation/kinesisanalyticsv2/aws-kinesisanalyticsv2-applicationoutput_output.go @@ -1,30 +1,32 @@ -package resources +package kinesisanalyticsv2 -import "github.com/awslabs/goformation/v2/cloudformation/policies" +import ( + "github.com/awslabs/goformation/v3/cloudformation/policies" +) -// AWSKinesisAnalyticsV2ApplicationOutput_Output AWS CloudFormation Resource (AWS::KinesisAnalyticsV2::ApplicationOutput.Output) +// 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 AWSKinesisAnalyticsV2ApplicationOutput_Output struct { +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 *AWSKinesisAnalyticsV2ApplicationOutput_DestinationSchema `json:"DestinationSchema,omitempty"` + 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 *AWSKinesisAnalyticsV2ApplicationOutput_KinesisFirehoseOutput `json:"KinesisFirehoseOutput,omitempty"` + 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 *AWSKinesisAnalyticsV2ApplicationOutput_KinesisStreamsOutput `json:"KinesisStreamsOutput,omitempty"` + 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 *AWSKinesisAnalyticsV2ApplicationOutput_LambdaOutput `json:"LambdaOutput,omitempty"` + LambdaOutput *ApplicationOutput_LambdaOutput `json:"LambdaOutput,omitempty"` // Name AWS CloudFormation Property // Required: false @@ -42,42 +44,42 @@ type AWSKinesisAnalyticsV2ApplicationOutput_Output struct { } // AWSCloudFormationType returns the AWS CloudFormation resource type -func (r *AWSKinesisAnalyticsV2ApplicationOutput_Output) AWSCloudFormationType() string { +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 *AWSKinesisAnalyticsV2ApplicationOutput_Output) DependsOn() []string { +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 *AWSKinesisAnalyticsV2ApplicationOutput_Output) SetDependsOn(dependencies []string) { +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 *AWSKinesisAnalyticsV2ApplicationOutput_Output) Metadata() map[string]interface{} { +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 *AWSKinesisAnalyticsV2ApplicationOutput_Output) SetMetadata(metadata map[string]interface{}) { +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 *AWSKinesisAnalyticsV2ApplicationOutput_Output) DeletionPolicy() policies.DeletionPolicy { +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 *AWSKinesisAnalyticsV2ApplicationOutput_Output) SetDeletionPolicy(policy policies.DeletionPolicy) { +func (r *ApplicationOutput_Output) SetDeletionPolicy(policy policies.DeletionPolicy) { r._deletionPolicy = policy } diff --git a/cloudformation/resources/aws-kinesisanalyticsv2-applicationreferencedatasource.go b/cloudformation/kinesisanalyticsv2/aws-kinesisanalyticsv2-applicationreferencedatasource.go similarity index 72% rename from cloudformation/resources/aws-kinesisanalyticsv2-applicationreferencedatasource.go rename to cloudformation/kinesisanalyticsv2/aws-kinesisanalyticsv2-applicationreferencedatasource.go index eb8721d176..a40519545f 100644 --- a/cloudformation/resources/aws-kinesisanalyticsv2-applicationreferencedatasource.go +++ b/cloudformation/kinesisanalyticsv2/aws-kinesisanalyticsv2-applicationreferencedatasource.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" ) -// AWSKinesisAnalyticsV2ApplicationReferenceDataSource AWS CloudFormation Resource (AWS::KinesisAnalyticsV2::ApplicationReferenceDataSource) +// ApplicationReferenceDataSource AWS CloudFormation Resource (AWS::KinesisAnalyticsV2::ApplicationReferenceDataSource) // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-kinesisanalyticsv2-applicationreferencedatasource.html -type AWSKinesisAnalyticsV2ApplicationReferenceDataSource struct { +type ApplicationReferenceDataSource struct { // ApplicationName AWS CloudFormation Property // Required: true @@ -19,7 +20,7 @@ type AWSKinesisAnalyticsV2ApplicationReferenceDataSource struct { // 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"` + ReferenceDataSource *ApplicationReferenceDataSource_ReferenceDataSource `json:"ReferenceDataSource,omitempty"` // _deletionPolicy represents a CloudFormation DeletionPolicy _deletionPolicy policies.DeletionPolicy @@ -32,50 +33,50 @@ type AWSKinesisAnalyticsV2ApplicationReferenceDataSource struct { } // AWSCloudFormationType returns the AWS CloudFormation resource type -func (r *AWSKinesisAnalyticsV2ApplicationReferenceDataSource) AWSCloudFormationType() string { +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 *AWSKinesisAnalyticsV2ApplicationReferenceDataSource) DependsOn() []string { +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 *AWSKinesisAnalyticsV2ApplicationReferenceDataSource) SetDependsOn(dependencies []string) { +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 *AWSKinesisAnalyticsV2ApplicationReferenceDataSource) Metadata() map[string]interface{} { +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 *AWSKinesisAnalyticsV2ApplicationReferenceDataSource) SetMetadata(metadata map[string]interface{}) { +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 *AWSKinesisAnalyticsV2ApplicationReferenceDataSource) DeletionPolicy() policies.DeletionPolicy { +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 *AWSKinesisAnalyticsV2ApplicationReferenceDataSource) SetDeletionPolicy(policy policies.DeletionPolicy) { +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 AWSKinesisAnalyticsV2ApplicationReferenceDataSource) MarshalJSON() ([]byte, error) { - type Properties AWSKinesisAnalyticsV2ApplicationReferenceDataSource +func (r ApplicationReferenceDataSource) MarshalJSON() ([]byte, error) { + type Properties ApplicationReferenceDataSource return json.Marshal(&struct { Type string Properties Properties @@ -93,8 +94,8 @@ func (r AWSKinesisAnalyticsV2ApplicationReferenceDataSource) MarshalJSON() ([]by // 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 +func (r *ApplicationReferenceDataSource) UnmarshalJSON(b []byte) error { + type Properties ApplicationReferenceDataSource res := &struct { Type string Properties *Properties @@ -113,7 +114,7 @@ func (r *AWSKinesisAnalyticsV2ApplicationReferenceDataSource) UnmarshalJSON(b [] // If the resource has no Properties set, it could be nil if res.Properties != nil { - *r = AWSKinesisAnalyticsV2ApplicationReferenceDataSource(*res.Properties) + *r = ApplicationReferenceDataSource(*res.Properties) } if res.DependsOn != nil { r._dependsOn = res.DependsOn diff --git a/cloudformation/resources/aws-kinesisanalyticsv2-applicationreferencedatasource_csvmappingparameters.go b/cloudformation/kinesisanalyticsv2/aws-kinesisanalyticsv2-applicationreferencedatasource_csvmappingparameters.go similarity index 68% rename from cloudformation/resources/aws-kinesisanalyticsv2-applicationreferencedatasource_csvmappingparameters.go rename to cloudformation/kinesisanalyticsv2/aws-kinesisanalyticsv2-applicationreferencedatasource_csvmappingparameters.go index d9670d917f..742c61dd3c 100644 --- a/cloudformation/resources/aws-kinesisanalyticsv2-applicationreferencedatasource_csvmappingparameters.go +++ b/cloudformation/kinesisanalyticsv2/aws-kinesisanalyticsv2-applicationreferencedatasource_csvmappingparameters.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" +) -// AWSKinesisAnalyticsV2ApplicationReferenceDataSource_CSVMappingParameters AWS CloudFormation Resource (AWS::KinesisAnalyticsV2::ApplicationReferenceDataSource.CSVMappingParameters) +// 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 AWSKinesisAnalyticsV2ApplicationReferenceDataSource_CSVMappingParameters struct { +type ApplicationReferenceDataSource_CSVMappingParameters struct { // RecordColumnDelimiter AWS CloudFormation Property // Required: true @@ -27,42 +29,42 @@ type AWSKinesisAnalyticsV2ApplicationReferenceDataSource_CSVMappingParameters st } // AWSCloudFormationType returns the AWS CloudFormation resource type -func (r *AWSKinesisAnalyticsV2ApplicationReferenceDataSource_CSVMappingParameters) AWSCloudFormationType() string { +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 *AWSKinesisAnalyticsV2ApplicationReferenceDataSource_CSVMappingParameters) DependsOn() []string { +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 *AWSKinesisAnalyticsV2ApplicationReferenceDataSource_CSVMappingParameters) SetDependsOn(dependencies []string) { +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 *AWSKinesisAnalyticsV2ApplicationReferenceDataSource_CSVMappingParameters) Metadata() map[string]interface{} { +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 *AWSKinesisAnalyticsV2ApplicationReferenceDataSource_CSVMappingParameters) SetMetadata(metadata map[string]interface{}) { +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 *AWSKinesisAnalyticsV2ApplicationReferenceDataSource_CSVMappingParameters) DeletionPolicy() policies.DeletionPolicy { +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 *AWSKinesisAnalyticsV2ApplicationReferenceDataSource_CSVMappingParameters) SetDeletionPolicy(policy policies.DeletionPolicy) { +func (r *ApplicationReferenceDataSource_CSVMappingParameters) SetDeletionPolicy(policy policies.DeletionPolicy) { r._deletionPolicy = policy } diff --git a/cloudformation/resources/aws-kinesisanalyticsv2-applicationreferencedatasource_jsonmappingparameters.go b/cloudformation/kinesisanalyticsv2/aws-kinesisanalyticsv2-applicationreferencedatasource_jsonmappingparameters.go similarity index 64% rename from cloudformation/resources/aws-kinesisanalyticsv2-applicationreferencedatasource_jsonmappingparameters.go rename to cloudformation/kinesisanalyticsv2/aws-kinesisanalyticsv2-applicationreferencedatasource_jsonmappingparameters.go index 81e5f37202..7d4ea50c4f 100644 --- a/cloudformation/resources/aws-kinesisanalyticsv2-applicationreferencedatasource_jsonmappingparameters.go +++ b/cloudformation/kinesisanalyticsv2/aws-kinesisanalyticsv2-applicationreferencedatasource_jsonmappingparameters.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" +) -// AWSKinesisAnalyticsV2ApplicationReferenceDataSource_JSONMappingParameters AWS CloudFormation Resource (AWS::KinesisAnalyticsV2::ApplicationReferenceDataSource.JSONMappingParameters) +// 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 AWSKinesisAnalyticsV2ApplicationReferenceDataSource_JSONMappingParameters struct { +type ApplicationReferenceDataSource_JSONMappingParameters struct { // RecordRowPath AWS CloudFormation Property // Required: true @@ -22,42 +24,42 @@ type AWSKinesisAnalyticsV2ApplicationReferenceDataSource_JSONMappingParameters s } // AWSCloudFormationType returns the AWS CloudFormation resource type -func (r *AWSKinesisAnalyticsV2ApplicationReferenceDataSource_JSONMappingParameters) AWSCloudFormationType() string { +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 *AWSKinesisAnalyticsV2ApplicationReferenceDataSource_JSONMappingParameters) DependsOn() []string { +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 *AWSKinesisAnalyticsV2ApplicationReferenceDataSource_JSONMappingParameters) SetDependsOn(dependencies []string) { +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 *AWSKinesisAnalyticsV2ApplicationReferenceDataSource_JSONMappingParameters) Metadata() map[string]interface{} { +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 *AWSKinesisAnalyticsV2ApplicationReferenceDataSource_JSONMappingParameters) SetMetadata(metadata map[string]interface{}) { +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 *AWSKinesisAnalyticsV2ApplicationReferenceDataSource_JSONMappingParameters) DeletionPolicy() policies.DeletionPolicy { +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 *AWSKinesisAnalyticsV2ApplicationReferenceDataSource_JSONMappingParameters) SetDeletionPolicy(policy policies.DeletionPolicy) { +func (r *ApplicationReferenceDataSource_JSONMappingParameters) SetDeletionPolicy(policy policies.DeletionPolicy) { r._deletionPolicy = policy } diff --git a/cloudformation/resources/aws-kinesisanalyticsv2-applicationreferencedatasource_mappingparameters.go b/cloudformation/kinesisanalyticsv2/aws-kinesisanalyticsv2-applicationreferencedatasource_mappingparameters.go similarity index 63% rename from cloudformation/resources/aws-kinesisanalyticsv2-applicationreferencedatasource_mappingparameters.go rename to cloudformation/kinesisanalyticsv2/aws-kinesisanalyticsv2-applicationreferencedatasource_mappingparameters.go index 067194102d..541bb050cc 100644 --- a/cloudformation/resources/aws-kinesisanalyticsv2-applicationreferencedatasource_mappingparameters.go +++ b/cloudformation/kinesisanalyticsv2/aws-kinesisanalyticsv2-applicationreferencedatasource_mappingparameters.go @@ -1,20 +1,22 @@ -package resources +package kinesisanalyticsv2 -import "github.com/awslabs/goformation/v2/cloudformation/policies" +import ( + "github.com/awslabs/goformation/v3/cloudformation/policies" +) -// AWSKinesisAnalyticsV2ApplicationReferenceDataSource_MappingParameters AWS CloudFormation Resource (AWS::KinesisAnalyticsV2::ApplicationReferenceDataSource.MappingParameters) +// 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 AWSKinesisAnalyticsV2ApplicationReferenceDataSource_MappingParameters struct { +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 *AWSKinesisAnalyticsV2ApplicationReferenceDataSource_CSVMappingParameters `json:"CSVMappingParameters,omitempty"` + 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 *AWSKinesisAnalyticsV2ApplicationReferenceDataSource_JSONMappingParameters `json:"JSONMappingParameters,omitempty"` + JSONMappingParameters *ApplicationReferenceDataSource_JSONMappingParameters `json:"JSONMappingParameters,omitempty"` // _deletionPolicy represents a CloudFormation DeletionPolicy _deletionPolicy policies.DeletionPolicy @@ -27,42 +29,42 @@ type AWSKinesisAnalyticsV2ApplicationReferenceDataSource_MappingParameters struc } // AWSCloudFormationType returns the AWS CloudFormation resource type -func (r *AWSKinesisAnalyticsV2ApplicationReferenceDataSource_MappingParameters) AWSCloudFormationType() string { +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 *AWSKinesisAnalyticsV2ApplicationReferenceDataSource_MappingParameters) DependsOn() []string { +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 *AWSKinesisAnalyticsV2ApplicationReferenceDataSource_MappingParameters) SetDependsOn(dependencies []string) { +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 *AWSKinesisAnalyticsV2ApplicationReferenceDataSource_MappingParameters) Metadata() map[string]interface{} { +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 *AWSKinesisAnalyticsV2ApplicationReferenceDataSource_MappingParameters) SetMetadata(metadata map[string]interface{}) { +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 *AWSKinesisAnalyticsV2ApplicationReferenceDataSource_MappingParameters) DeletionPolicy() policies.DeletionPolicy { +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 *AWSKinesisAnalyticsV2ApplicationReferenceDataSource_MappingParameters) SetDeletionPolicy(policy policies.DeletionPolicy) { +func (r *ApplicationReferenceDataSource_MappingParameters) SetDeletionPolicy(policy policies.DeletionPolicy) { r._deletionPolicy = policy } diff --git a/cloudformation/resources/aws-kinesisanalyticsv2-applicationreferencedatasource_recordcolumn.go b/cloudformation/kinesisanalyticsv2/aws-kinesisanalyticsv2-applicationreferencedatasource_recordcolumn.go similarity index 71% rename from cloudformation/resources/aws-kinesisanalyticsv2-applicationreferencedatasource_recordcolumn.go rename to cloudformation/kinesisanalyticsv2/aws-kinesisanalyticsv2-applicationreferencedatasource_recordcolumn.go index 517bcfe743..24d9afbbbb 100644 --- a/cloudformation/resources/aws-kinesisanalyticsv2-applicationreferencedatasource_recordcolumn.go +++ b/cloudformation/kinesisanalyticsv2/aws-kinesisanalyticsv2-applicationreferencedatasource_recordcolumn.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" +) -// AWSKinesisAnalyticsV2ApplicationReferenceDataSource_RecordColumn AWS CloudFormation Resource (AWS::KinesisAnalyticsV2::ApplicationReferenceDataSource.RecordColumn) +// 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 AWSKinesisAnalyticsV2ApplicationReferenceDataSource_RecordColumn struct { +type ApplicationReferenceDataSource_RecordColumn struct { // Mapping AWS CloudFormation Property // Required: false @@ -32,42 +34,42 @@ type AWSKinesisAnalyticsV2ApplicationReferenceDataSource_RecordColumn struct { } // AWSCloudFormationType returns the AWS CloudFormation resource type -func (r *AWSKinesisAnalyticsV2ApplicationReferenceDataSource_RecordColumn) AWSCloudFormationType() string { +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 *AWSKinesisAnalyticsV2ApplicationReferenceDataSource_RecordColumn) DependsOn() []string { +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 *AWSKinesisAnalyticsV2ApplicationReferenceDataSource_RecordColumn) SetDependsOn(dependencies []string) { +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 *AWSKinesisAnalyticsV2ApplicationReferenceDataSource_RecordColumn) Metadata() map[string]interface{} { +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 *AWSKinesisAnalyticsV2ApplicationReferenceDataSource_RecordColumn) SetMetadata(metadata map[string]interface{}) { +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 *AWSKinesisAnalyticsV2ApplicationReferenceDataSource_RecordColumn) DeletionPolicy() policies.DeletionPolicy { +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 *AWSKinesisAnalyticsV2ApplicationReferenceDataSource_RecordColumn) SetDeletionPolicy(policy policies.DeletionPolicy) { +func (r *ApplicationReferenceDataSource_RecordColumn) SetDeletionPolicy(policy policies.DeletionPolicy) { r._deletionPolicy = policy } diff --git a/cloudformation/resources/aws-kinesisanalyticsv2-applicationreferencedatasource_recordformat.go b/cloudformation/kinesisanalyticsv2/aws-kinesisanalyticsv2-applicationreferencedatasource_recordformat.go similarity index 66% rename from cloudformation/resources/aws-kinesisanalyticsv2-applicationreferencedatasource_recordformat.go rename to cloudformation/kinesisanalyticsv2/aws-kinesisanalyticsv2-applicationreferencedatasource_recordformat.go index b506272bba..05806edce3 100644 --- a/cloudformation/resources/aws-kinesisanalyticsv2-applicationreferencedatasource_recordformat.go +++ b/cloudformation/kinesisanalyticsv2/aws-kinesisanalyticsv2-applicationreferencedatasource_recordformat.go @@ -1,15 +1,17 @@ -package resources +package kinesisanalyticsv2 -import "github.com/awslabs/goformation/v2/cloudformation/policies" +import ( + "github.com/awslabs/goformation/v3/cloudformation/policies" +) -// AWSKinesisAnalyticsV2ApplicationReferenceDataSource_RecordFormat AWS CloudFormation Resource (AWS::KinesisAnalyticsV2::ApplicationReferenceDataSource.RecordFormat) +// 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 AWSKinesisAnalyticsV2ApplicationReferenceDataSource_RecordFormat struct { +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 *AWSKinesisAnalyticsV2ApplicationReferenceDataSource_MappingParameters `json:"MappingParameters,omitempty"` + MappingParameters *ApplicationReferenceDataSource_MappingParameters `json:"MappingParameters,omitempty"` // RecordFormatType AWS CloudFormation Property // Required: true @@ -27,42 +29,42 @@ type AWSKinesisAnalyticsV2ApplicationReferenceDataSource_RecordFormat struct { } // AWSCloudFormationType returns the AWS CloudFormation resource type -func (r *AWSKinesisAnalyticsV2ApplicationReferenceDataSource_RecordFormat) AWSCloudFormationType() string { +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 *AWSKinesisAnalyticsV2ApplicationReferenceDataSource_RecordFormat) DependsOn() []string { +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 *AWSKinesisAnalyticsV2ApplicationReferenceDataSource_RecordFormat) SetDependsOn(dependencies []string) { +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 *AWSKinesisAnalyticsV2ApplicationReferenceDataSource_RecordFormat) Metadata() map[string]interface{} { +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 *AWSKinesisAnalyticsV2ApplicationReferenceDataSource_RecordFormat) SetMetadata(metadata map[string]interface{}) { +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 *AWSKinesisAnalyticsV2ApplicationReferenceDataSource_RecordFormat) DeletionPolicy() policies.DeletionPolicy { +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 *AWSKinesisAnalyticsV2ApplicationReferenceDataSource_RecordFormat) SetDeletionPolicy(policy policies.DeletionPolicy) { +func (r *ApplicationReferenceDataSource_RecordFormat) SetDeletionPolicy(policy policies.DeletionPolicy) { r._deletionPolicy = policy } diff --git a/cloudformation/resources/aws-kinesisanalyticsv2-applicationreferencedatasource_referencedatasource.go b/cloudformation/kinesisanalyticsv2/aws-kinesisanalyticsv2-applicationreferencedatasource_referencedatasource.go similarity index 66% rename from cloudformation/resources/aws-kinesisanalyticsv2-applicationreferencedatasource_referencedatasource.go rename to cloudformation/kinesisanalyticsv2/aws-kinesisanalyticsv2-applicationreferencedatasource_referencedatasource.go index 9be8a75925..9db425a10f 100644 --- a/cloudformation/resources/aws-kinesisanalyticsv2-applicationreferencedatasource_referencedatasource.go +++ b/cloudformation/kinesisanalyticsv2/aws-kinesisanalyticsv2-applicationreferencedatasource_referencedatasource.go @@ -1,20 +1,22 @@ -package resources +package kinesisanalyticsv2 -import "github.com/awslabs/goformation/v2/cloudformation/policies" +import ( + "github.com/awslabs/goformation/v3/cloudformation/policies" +) -// AWSKinesisAnalyticsV2ApplicationReferenceDataSource_ReferenceDataSource AWS CloudFormation Resource (AWS::KinesisAnalyticsV2::ApplicationReferenceDataSource.ReferenceDataSource) +// 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 AWSKinesisAnalyticsV2ApplicationReferenceDataSource_ReferenceDataSource struct { +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 *AWSKinesisAnalyticsV2ApplicationReferenceDataSource_ReferenceSchema `json:"ReferenceSchema,omitempty"` + 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 *AWSKinesisAnalyticsV2ApplicationReferenceDataSource_S3ReferenceDataSource `json:"S3ReferenceDataSource,omitempty"` + S3ReferenceDataSource *ApplicationReferenceDataSource_S3ReferenceDataSource `json:"S3ReferenceDataSource,omitempty"` // TableName AWS CloudFormation Property // Required: false @@ -32,42 +34,42 @@ type AWSKinesisAnalyticsV2ApplicationReferenceDataSource_ReferenceDataSource str } // AWSCloudFormationType returns the AWS CloudFormation resource type -func (r *AWSKinesisAnalyticsV2ApplicationReferenceDataSource_ReferenceDataSource) AWSCloudFormationType() string { +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 *AWSKinesisAnalyticsV2ApplicationReferenceDataSource_ReferenceDataSource) DependsOn() []string { +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 *AWSKinesisAnalyticsV2ApplicationReferenceDataSource_ReferenceDataSource) SetDependsOn(dependencies []string) { +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 *AWSKinesisAnalyticsV2ApplicationReferenceDataSource_ReferenceDataSource) Metadata() map[string]interface{} { +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 *AWSKinesisAnalyticsV2ApplicationReferenceDataSource_ReferenceDataSource) SetMetadata(metadata map[string]interface{}) { +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 *AWSKinesisAnalyticsV2ApplicationReferenceDataSource_ReferenceDataSource) DeletionPolicy() policies.DeletionPolicy { +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 *AWSKinesisAnalyticsV2ApplicationReferenceDataSource_ReferenceDataSource) SetDeletionPolicy(policy policies.DeletionPolicy) { +func (r *ApplicationReferenceDataSource_ReferenceDataSource) SetDeletionPolicy(policy policies.DeletionPolicy) { r._deletionPolicy = policy } diff --git a/cloudformation/resources/aws-kinesisanalyticsv2-applicationreferencedatasource_referenceschema.go b/cloudformation/kinesisanalyticsv2/aws-kinesisanalyticsv2-applicationreferencedatasource_referenceschema.go similarity index 67% rename from cloudformation/resources/aws-kinesisanalyticsv2-applicationreferencedatasource_referenceschema.go rename to cloudformation/kinesisanalyticsv2/aws-kinesisanalyticsv2-applicationreferencedatasource_referenceschema.go index 3f6d4b6de3..eeeb7e13b1 100644 --- a/cloudformation/resources/aws-kinesisanalyticsv2-applicationreferencedatasource_referenceschema.go +++ b/cloudformation/kinesisanalyticsv2/aws-kinesisanalyticsv2-applicationreferencedatasource_referenceschema.go @@ -1,15 +1,17 @@ -package resources +package kinesisanalyticsv2 -import "github.com/awslabs/goformation/v2/cloudformation/policies" +import ( + "github.com/awslabs/goformation/v3/cloudformation/policies" +) -// AWSKinesisAnalyticsV2ApplicationReferenceDataSource_ReferenceSchema AWS CloudFormation Resource (AWS::KinesisAnalyticsV2::ApplicationReferenceDataSource.ReferenceSchema) +// 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 AWSKinesisAnalyticsV2ApplicationReferenceDataSource_ReferenceSchema struct { +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 []AWSKinesisAnalyticsV2ApplicationReferenceDataSource_RecordColumn `json:"RecordColumns,omitempty"` + RecordColumns []ApplicationReferenceDataSource_RecordColumn `json:"RecordColumns,omitempty"` // RecordEncoding AWS CloudFormation Property // Required: false @@ -19,7 +21,7 @@ type AWSKinesisAnalyticsV2ApplicationReferenceDataSource_ReferenceSchema struct // 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"` + RecordFormat *ApplicationReferenceDataSource_RecordFormat `json:"RecordFormat,omitempty"` // _deletionPolicy represents a CloudFormation DeletionPolicy _deletionPolicy policies.DeletionPolicy @@ -32,42 +34,42 @@ type AWSKinesisAnalyticsV2ApplicationReferenceDataSource_ReferenceSchema struct } // AWSCloudFormationType returns the AWS CloudFormation resource type -func (r *AWSKinesisAnalyticsV2ApplicationReferenceDataSource_ReferenceSchema) AWSCloudFormationType() string { +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 *AWSKinesisAnalyticsV2ApplicationReferenceDataSource_ReferenceSchema) DependsOn() []string { +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 *AWSKinesisAnalyticsV2ApplicationReferenceDataSource_ReferenceSchema) SetDependsOn(dependencies []string) { +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 *AWSKinesisAnalyticsV2ApplicationReferenceDataSource_ReferenceSchema) Metadata() map[string]interface{} { +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 *AWSKinesisAnalyticsV2ApplicationReferenceDataSource_ReferenceSchema) SetMetadata(metadata map[string]interface{}) { +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 *AWSKinesisAnalyticsV2ApplicationReferenceDataSource_ReferenceSchema) DeletionPolicy() policies.DeletionPolicy { +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 *AWSKinesisAnalyticsV2ApplicationReferenceDataSource_ReferenceSchema) SetDeletionPolicy(policy policies.DeletionPolicy) { +func (r *ApplicationReferenceDataSource_ReferenceSchema) SetDeletionPolicy(policy policies.DeletionPolicy) { r._deletionPolicy = policy } diff --git a/cloudformation/resources/aws-kinesisanalyticsv2-applicationreferencedatasource_s3referencedatasource.go b/cloudformation/kinesisanalyticsv2/aws-kinesisanalyticsv2-applicationreferencedatasource_s3referencedatasource.go similarity index 68% rename from cloudformation/resources/aws-kinesisanalyticsv2-applicationreferencedatasource_s3referencedatasource.go rename to cloudformation/kinesisanalyticsv2/aws-kinesisanalyticsv2-applicationreferencedatasource_s3referencedatasource.go index f6d91aa13a..217da9b2e8 100644 --- a/cloudformation/resources/aws-kinesisanalyticsv2-applicationreferencedatasource_s3referencedatasource.go +++ b/cloudformation/kinesisanalyticsv2/aws-kinesisanalyticsv2-applicationreferencedatasource_s3referencedatasource.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" +) -// AWSKinesisAnalyticsV2ApplicationReferenceDataSource_S3ReferenceDataSource AWS CloudFormation Resource (AWS::KinesisAnalyticsV2::ApplicationReferenceDataSource.S3ReferenceDataSource) +// 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 AWSKinesisAnalyticsV2ApplicationReferenceDataSource_S3ReferenceDataSource struct { +type ApplicationReferenceDataSource_S3ReferenceDataSource struct { // BucketARN AWS CloudFormation Property // Required: true @@ -27,42 +29,42 @@ type AWSKinesisAnalyticsV2ApplicationReferenceDataSource_S3ReferenceDataSource s } // AWSCloudFormationType returns the AWS CloudFormation resource type -func (r *AWSKinesisAnalyticsV2ApplicationReferenceDataSource_S3ReferenceDataSource) AWSCloudFormationType() string { +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 *AWSKinesisAnalyticsV2ApplicationReferenceDataSource_S3ReferenceDataSource) DependsOn() []string { +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 *AWSKinesisAnalyticsV2ApplicationReferenceDataSource_S3ReferenceDataSource) SetDependsOn(dependencies []string) { +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 *AWSKinesisAnalyticsV2ApplicationReferenceDataSource_S3ReferenceDataSource) Metadata() map[string]interface{} { +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 *AWSKinesisAnalyticsV2ApplicationReferenceDataSource_S3ReferenceDataSource) SetMetadata(metadata map[string]interface{}) { +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 *AWSKinesisAnalyticsV2ApplicationReferenceDataSource_S3ReferenceDataSource) DeletionPolicy() policies.DeletionPolicy { +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 *AWSKinesisAnalyticsV2ApplicationReferenceDataSource_S3ReferenceDataSource) SetDeletionPolicy(policy policies.DeletionPolicy) { +func (r *ApplicationReferenceDataSource_S3ReferenceDataSource) SetDeletionPolicy(policy policies.DeletionPolicy) { r._deletionPolicy = policy } diff --git a/cloudformation/resources/aws-kinesisfirehose-deliverystream.go b/cloudformation/kinesisfirehose/aws-kinesisfirehose-deliverystream.go similarity index 73% rename from cloudformation/resources/aws-kinesisfirehose-deliverystream.go rename to cloudformation/kinesisfirehose/aws-kinesisfirehose-deliverystream.go index 3b56b16baf..007f984331 100644 --- a/cloudformation/resources/aws-kinesisfirehose-deliverystream.go +++ b/cloudformation/kinesisfirehose/aws-kinesisfirehose-deliverystream.go @@ -1,15 +1,16 @@ -package resources +package kinesisfirehose import ( "bytes" "encoding/json" "fmt" - "github.com/awslabs/goformation/v2/cloudformation/policies" + + "github.com/awslabs/goformation/v3/cloudformation/policies" ) -// AWSKinesisFirehoseDeliveryStream AWS CloudFormation Resource (AWS::KinesisFirehose::DeliveryStream) +// DeliveryStream AWS CloudFormation Resource (AWS::KinesisFirehose::DeliveryStream) // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-kinesisfirehose-deliverystream.html -type AWSKinesisFirehoseDeliveryStream struct { +type DeliveryStream struct { // DeliveryStreamName AWS CloudFormation Property // Required: false @@ -24,32 +25,32 @@ type AWSKinesisFirehoseDeliveryStream struct { // 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"` + 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 *AWSKinesisFirehoseDeliveryStream_ExtendedS3DestinationConfiguration `json:"ExtendedS3DestinationConfiguration,omitempty"` + 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 *AWSKinesisFirehoseDeliveryStream_KinesisStreamSourceConfiguration `json:"KinesisStreamSourceConfiguration,omitempty"` + 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 *AWSKinesisFirehoseDeliveryStream_RedshiftDestinationConfiguration `json:"RedshiftDestinationConfiguration,omitempty"` + 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 *AWSKinesisFirehoseDeliveryStream_S3DestinationConfiguration `json:"S3DestinationConfiguration,omitempty"` + 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 *AWSKinesisFirehoseDeliveryStream_SplunkDestinationConfiguration `json:"SplunkDestinationConfiguration,omitempty"` + SplunkDestinationConfiguration *DeliveryStream_SplunkDestinationConfiguration `json:"SplunkDestinationConfiguration,omitempty"` // _deletionPolicy represents a CloudFormation DeletionPolicy _deletionPolicy policies.DeletionPolicy @@ -62,50 +63,50 @@ type AWSKinesisFirehoseDeliveryStream struct { } // AWSCloudFormationType returns the AWS CloudFormation resource type -func (r *AWSKinesisFirehoseDeliveryStream) AWSCloudFormationType() string { +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 *AWSKinesisFirehoseDeliveryStream) DependsOn() []string { +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 *AWSKinesisFirehoseDeliveryStream) SetDependsOn(dependencies []string) { +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 *AWSKinesisFirehoseDeliveryStream) Metadata() map[string]interface{} { +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 *AWSKinesisFirehoseDeliveryStream) SetMetadata(metadata map[string]interface{}) { +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 *AWSKinesisFirehoseDeliveryStream) DeletionPolicy() policies.DeletionPolicy { +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 *AWSKinesisFirehoseDeliveryStream) SetDeletionPolicy(policy policies.DeletionPolicy) { +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 AWSKinesisFirehoseDeliveryStream) MarshalJSON() ([]byte, error) { - type Properties AWSKinesisFirehoseDeliveryStream +func (r DeliveryStream) MarshalJSON() ([]byte, error) { + type Properties DeliveryStream return json.Marshal(&struct { Type string Properties Properties @@ -123,8 +124,8 @@ func (r AWSKinesisFirehoseDeliveryStream) MarshalJSON() ([]byte, error) { // 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 +func (r *DeliveryStream) UnmarshalJSON(b []byte) error { + type Properties DeliveryStream res := &struct { Type string Properties *Properties @@ -143,7 +144,7 @@ func (r *AWSKinesisFirehoseDeliveryStream) UnmarshalJSON(b []byte) error { // If the resource has no Properties set, it could be nil if res.Properties != nil { - *r = AWSKinesisFirehoseDeliveryStream(*res.Properties) + *r = DeliveryStream(*res.Properties) } if res.DependsOn != nil { r._dependsOn = res.DependsOn diff --git a/cloudformation/resources/aws-kinesisfirehose-deliverystream_bufferinghints.go b/cloudformation/kinesisfirehose/aws-kinesisfirehose-deliverystream_bufferinghints.go similarity index 71% rename from cloudformation/resources/aws-kinesisfirehose-deliverystream_bufferinghints.go rename to cloudformation/kinesisfirehose/aws-kinesisfirehose-deliverystream_bufferinghints.go index 36c96e25e2..5bb213b08d 100644 --- a/cloudformation/resources/aws-kinesisfirehose-deliverystream_bufferinghints.go +++ b/cloudformation/kinesisfirehose/aws-kinesisfirehose-deliverystream_bufferinghints.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_BufferingHints AWS CloudFormation Resource (AWS::KinesisFirehose::DeliveryStream.BufferingHints) +// 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 AWSKinesisFirehoseDeliveryStream_BufferingHints struct { +type DeliveryStream_BufferingHints struct { // IntervalInSeconds AWS CloudFormation Property // Required: true @@ -27,42 +29,42 @@ type AWSKinesisFirehoseDeliveryStream_BufferingHints struct { } // AWSCloudFormationType returns the AWS CloudFormation resource type -func (r *AWSKinesisFirehoseDeliveryStream_BufferingHints) AWSCloudFormationType() string { +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 *AWSKinesisFirehoseDeliveryStream_BufferingHints) DependsOn() []string { +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 *AWSKinesisFirehoseDeliveryStream_BufferingHints) SetDependsOn(dependencies []string) { +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 *AWSKinesisFirehoseDeliveryStream_BufferingHints) Metadata() map[string]interface{} { +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 *AWSKinesisFirehoseDeliveryStream_BufferingHints) SetMetadata(metadata map[string]interface{}) { +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 *AWSKinesisFirehoseDeliveryStream_BufferingHints) DeletionPolicy() policies.DeletionPolicy { +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 *AWSKinesisFirehoseDeliveryStream_BufferingHints) SetDeletionPolicy(policy policies.DeletionPolicy) { +func (r *DeliveryStream_BufferingHints) SetDeletionPolicy(policy policies.DeletionPolicy) { r._deletionPolicy = policy } diff --git a/cloudformation/resources/aws-kinesisfirehose-deliverystream_cloudwatchloggingoptions.go b/cloudformation/kinesisfirehose/aws-kinesisfirehose-deliverystream_cloudwatchloggingoptions.go similarity index 72% rename from cloudformation/resources/aws-kinesisfirehose-deliverystream_cloudwatchloggingoptions.go rename to cloudformation/kinesisfirehose/aws-kinesisfirehose-deliverystream_cloudwatchloggingoptions.go index d940e926ad..332f69ab5e 100644 --- a/cloudformation/resources/aws-kinesisfirehose-deliverystream_cloudwatchloggingoptions.go +++ b/cloudformation/kinesisfirehose/aws-kinesisfirehose-deliverystream_cloudwatchloggingoptions.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_CloudWatchLoggingOptions AWS CloudFormation Resource (AWS::KinesisFirehose::DeliveryStream.CloudWatchLoggingOptions) +// 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 AWSKinesisFirehoseDeliveryStream_CloudWatchLoggingOptions struct { +type DeliveryStream_CloudWatchLoggingOptions struct { // Enabled AWS CloudFormation Property // Required: false @@ -32,42 +34,42 @@ type AWSKinesisFirehoseDeliveryStream_CloudWatchLoggingOptions struct { } // AWSCloudFormationType returns the AWS CloudFormation resource type -func (r *AWSKinesisFirehoseDeliveryStream_CloudWatchLoggingOptions) AWSCloudFormationType() string { +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 *AWSKinesisFirehoseDeliveryStream_CloudWatchLoggingOptions) DependsOn() []string { +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 *AWSKinesisFirehoseDeliveryStream_CloudWatchLoggingOptions) SetDependsOn(dependencies []string) { +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 *AWSKinesisFirehoseDeliveryStream_CloudWatchLoggingOptions) Metadata() map[string]interface{} { +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 *AWSKinesisFirehoseDeliveryStream_CloudWatchLoggingOptions) SetMetadata(metadata map[string]interface{}) { +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 *AWSKinesisFirehoseDeliveryStream_CloudWatchLoggingOptions) DeletionPolicy() policies.DeletionPolicy { +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 *AWSKinesisFirehoseDeliveryStream_CloudWatchLoggingOptions) SetDeletionPolicy(policy policies.DeletionPolicy) { +func (r *DeliveryStream_CloudWatchLoggingOptions) SetDeletionPolicy(policy policies.DeletionPolicy) { r._deletionPolicy = policy } diff --git a/cloudformation/resources/aws-kinesisfirehose-deliverystream_copycommand.go b/cloudformation/kinesisfirehose/aws-kinesisfirehose-deliverystream_copycommand.go similarity index 74% rename from cloudformation/resources/aws-kinesisfirehose-deliverystream_copycommand.go rename to cloudformation/kinesisfirehose/aws-kinesisfirehose-deliverystream_copycommand.go index 2e4acbfbff..c01c73a0e5 100644 --- a/cloudformation/resources/aws-kinesisfirehose-deliverystream_copycommand.go +++ b/cloudformation/kinesisfirehose/aws-kinesisfirehose-deliverystream_copycommand.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_CopyCommand AWS CloudFormation Resource (AWS::KinesisFirehose::DeliveryStream.CopyCommand) +// 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 AWSKinesisFirehoseDeliveryStream_CopyCommand struct { +type DeliveryStream_CopyCommand struct { // CopyOptions AWS CloudFormation Property // Required: false @@ -32,42 +34,42 @@ type AWSKinesisFirehoseDeliveryStream_CopyCommand struct { } // AWSCloudFormationType returns the AWS CloudFormation resource type -func (r *AWSKinesisFirehoseDeliveryStream_CopyCommand) AWSCloudFormationType() string { +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 *AWSKinesisFirehoseDeliveryStream_CopyCommand) DependsOn() []string { +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 *AWSKinesisFirehoseDeliveryStream_CopyCommand) SetDependsOn(dependencies []string) { +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 *AWSKinesisFirehoseDeliveryStream_CopyCommand) Metadata() map[string]interface{} { +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 *AWSKinesisFirehoseDeliveryStream_CopyCommand) SetMetadata(metadata map[string]interface{}) { +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 *AWSKinesisFirehoseDeliveryStream_CopyCommand) DeletionPolicy() policies.DeletionPolicy { +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 *AWSKinesisFirehoseDeliveryStream_CopyCommand) SetDeletionPolicy(policy policies.DeletionPolicy) { +func (r *DeliveryStream_CopyCommand) SetDeletionPolicy(policy policies.DeletionPolicy) { r._deletionPolicy = policy } diff --git a/cloudformation/resources/aws-kinesisfirehose-deliverystream_dataformatconversionconfiguration.go b/cloudformation/kinesisfirehose/aws-kinesisfirehose-deliverystream_dataformatconversionconfiguration.go similarity index 67% rename from cloudformation/resources/aws-kinesisfirehose-deliverystream_dataformatconversionconfiguration.go rename to cloudformation/kinesisfirehose/aws-kinesisfirehose-deliverystream_dataformatconversionconfiguration.go index 12e0c176fc..183921bcfc 100644 --- a/cloudformation/resources/aws-kinesisfirehose-deliverystream_dataformatconversionconfiguration.go +++ b/cloudformation/kinesisfirehose/aws-kinesisfirehose-deliverystream_dataformatconversionconfiguration.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_DataFormatConversionConfiguration AWS CloudFormation Resource (AWS::KinesisFirehose::DeliveryStream.DataFormatConversionConfiguration) +// 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 AWSKinesisFirehoseDeliveryStream_DataFormatConversionConfiguration struct { +type DeliveryStream_DataFormatConversionConfiguration struct { // Enabled AWS CloudFormation Property // Required: true @@ -14,17 +16,17 @@ type AWSKinesisFirehoseDeliveryStream_DataFormatConversionConfiguration struct { // 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"` + 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 *AWSKinesisFirehoseDeliveryStream_OutputFormatConfiguration `json:"OutputFormatConfiguration,omitempty"` + 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 *AWSKinesisFirehoseDeliveryStream_SchemaConfiguration `json:"SchemaConfiguration,omitempty"` + SchemaConfiguration *DeliveryStream_SchemaConfiguration `json:"SchemaConfiguration,omitempty"` // _deletionPolicy represents a CloudFormation DeletionPolicy _deletionPolicy policies.DeletionPolicy @@ -37,42 +39,42 @@ type AWSKinesisFirehoseDeliveryStream_DataFormatConversionConfiguration struct { } // AWSCloudFormationType returns the AWS CloudFormation resource type -func (r *AWSKinesisFirehoseDeliveryStream_DataFormatConversionConfiguration) AWSCloudFormationType() string { +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 *AWSKinesisFirehoseDeliveryStream_DataFormatConversionConfiguration) DependsOn() []string { +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 *AWSKinesisFirehoseDeliveryStream_DataFormatConversionConfiguration) SetDependsOn(dependencies []string) { +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 *AWSKinesisFirehoseDeliveryStream_DataFormatConversionConfiguration) Metadata() map[string]interface{} { +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 *AWSKinesisFirehoseDeliveryStream_DataFormatConversionConfiguration) SetMetadata(metadata map[string]interface{}) { +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 *AWSKinesisFirehoseDeliveryStream_DataFormatConversionConfiguration) DeletionPolicy() policies.DeletionPolicy { +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 *AWSKinesisFirehoseDeliveryStream_DataFormatConversionConfiguration) SetDeletionPolicy(policy policies.DeletionPolicy) { +func (r *DeliveryStream_DataFormatConversionConfiguration) SetDeletionPolicy(policy policies.DeletionPolicy) { r._deletionPolicy = policy } diff --git a/cloudformation/resources/aws-kinesisfirehose-deliverystream_deserializer.go b/cloudformation/kinesisfirehose/aws-kinesisfirehose-deliverystream_deserializer.go similarity index 67% rename from cloudformation/resources/aws-kinesisfirehose-deliverystream_deserializer.go rename to cloudformation/kinesisfirehose/aws-kinesisfirehose-deliverystream_deserializer.go index 5152be20f3..22bd8c1bfc 100644 --- a/cloudformation/resources/aws-kinesisfirehose-deliverystream_deserializer.go +++ b/cloudformation/kinesisfirehose/aws-kinesisfirehose-deliverystream_deserializer.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_Deserializer AWS CloudFormation Resource (AWS::KinesisFirehose::DeliveryStream.Deserializer) +// 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 AWSKinesisFirehoseDeliveryStream_Deserializer struct { +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 *AWSKinesisFirehoseDeliveryStream_HiveJsonSerDe `json:"HiveJsonSerDe,omitempty"` + 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 *AWSKinesisFirehoseDeliveryStream_OpenXJsonSerDe `json:"OpenXJsonSerDe,omitempty"` + OpenXJsonSerDe *DeliveryStream_OpenXJsonSerDe `json:"OpenXJsonSerDe,omitempty"` // _deletionPolicy represents a CloudFormation DeletionPolicy _deletionPolicy policies.DeletionPolicy @@ -27,42 +29,42 @@ type AWSKinesisFirehoseDeliveryStream_Deserializer struct { } // AWSCloudFormationType returns the AWS CloudFormation resource type -func (r *AWSKinesisFirehoseDeliveryStream_Deserializer) AWSCloudFormationType() string { +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 *AWSKinesisFirehoseDeliveryStream_Deserializer) DependsOn() []string { +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 *AWSKinesisFirehoseDeliveryStream_Deserializer) SetDependsOn(dependencies []string) { +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 *AWSKinesisFirehoseDeliveryStream_Deserializer) Metadata() map[string]interface{} { +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 *AWSKinesisFirehoseDeliveryStream_Deserializer) SetMetadata(metadata map[string]interface{}) { +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 *AWSKinesisFirehoseDeliveryStream_Deserializer) DeletionPolicy() policies.DeletionPolicy { +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 *AWSKinesisFirehoseDeliveryStream_Deserializer) SetDeletionPolicy(policy policies.DeletionPolicy) { +func (r *DeliveryStream_Deserializer) SetDeletionPolicy(policy policies.DeletionPolicy) { r._deletionPolicy = policy } diff --git a/cloudformation/resources/aws-kinesisfirehose-deliverystream_elasticsearchbufferinghints.go b/cloudformation/kinesisfirehose/aws-kinesisfirehose-deliverystream_elasticsearchbufferinghints.go similarity index 69% rename from cloudformation/resources/aws-kinesisfirehose-deliverystream_elasticsearchbufferinghints.go rename to cloudformation/kinesisfirehose/aws-kinesisfirehose-deliverystream_elasticsearchbufferinghints.go index 1b88e23765..a56582b079 100644 --- a/cloudformation/resources/aws-kinesisfirehose-deliverystream_elasticsearchbufferinghints.go +++ b/cloudformation/kinesisfirehose/aws-kinesisfirehose-deliverystream_elasticsearchbufferinghints.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_ElasticsearchBufferingHints AWS CloudFormation Resource (AWS::KinesisFirehose::DeliveryStream.ElasticsearchBufferingHints) +// 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 AWSKinesisFirehoseDeliveryStream_ElasticsearchBufferingHints struct { +type DeliveryStream_ElasticsearchBufferingHints struct { // IntervalInSeconds AWS CloudFormation Property // Required: true @@ -27,42 +29,42 @@ type AWSKinesisFirehoseDeliveryStream_ElasticsearchBufferingHints struct { } // AWSCloudFormationType returns the AWS CloudFormation resource type -func (r *AWSKinesisFirehoseDeliveryStream_ElasticsearchBufferingHints) AWSCloudFormationType() string { +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 *AWSKinesisFirehoseDeliveryStream_ElasticsearchBufferingHints) DependsOn() []string { +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 *AWSKinesisFirehoseDeliveryStream_ElasticsearchBufferingHints) SetDependsOn(dependencies []string) { +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 *AWSKinesisFirehoseDeliveryStream_ElasticsearchBufferingHints) Metadata() map[string]interface{} { +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 *AWSKinesisFirehoseDeliveryStream_ElasticsearchBufferingHints) SetMetadata(metadata map[string]interface{}) { +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 *AWSKinesisFirehoseDeliveryStream_ElasticsearchBufferingHints) DeletionPolicy() policies.DeletionPolicy { +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 *AWSKinesisFirehoseDeliveryStream_ElasticsearchBufferingHints) SetDeletionPolicy(policy policies.DeletionPolicy) { +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/resources/aws-kinesisfirehose-deliverystream_elasticsearchretryoptions.go b/cloudformation/kinesisfirehose/aws-kinesisfirehose-deliverystream_elasticsearchretryoptions.go similarity index 67% rename from cloudformation/resources/aws-kinesisfirehose-deliverystream_elasticsearchretryoptions.go rename to cloudformation/kinesisfirehose/aws-kinesisfirehose-deliverystream_elasticsearchretryoptions.go index 9d52ac2c08..1a877fc073 100644 --- a/cloudformation/resources/aws-kinesisfirehose-deliverystream_elasticsearchretryoptions.go +++ b/cloudformation/kinesisfirehose/aws-kinesisfirehose-deliverystream_elasticsearchretryoptions.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_ElasticsearchRetryOptions AWS CloudFormation Resource (AWS::KinesisFirehose::DeliveryStream.ElasticsearchRetryOptions) +// 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 AWSKinesisFirehoseDeliveryStream_ElasticsearchRetryOptions struct { +type DeliveryStream_ElasticsearchRetryOptions struct { // DurationInSeconds AWS CloudFormation Property // Required: true @@ -22,42 +24,42 @@ type AWSKinesisFirehoseDeliveryStream_ElasticsearchRetryOptions struct { } // AWSCloudFormationType returns the AWS CloudFormation resource type -func (r *AWSKinesisFirehoseDeliveryStream_ElasticsearchRetryOptions) AWSCloudFormationType() string { +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 *AWSKinesisFirehoseDeliveryStream_ElasticsearchRetryOptions) DependsOn() []string { +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 *AWSKinesisFirehoseDeliveryStream_ElasticsearchRetryOptions) SetDependsOn(dependencies []string) { +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 *AWSKinesisFirehoseDeliveryStream_ElasticsearchRetryOptions) Metadata() map[string]interface{} { +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 *AWSKinesisFirehoseDeliveryStream_ElasticsearchRetryOptions) SetMetadata(metadata map[string]interface{}) { +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 *AWSKinesisFirehoseDeliveryStream_ElasticsearchRetryOptions) DeletionPolicy() policies.DeletionPolicy { +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 *AWSKinesisFirehoseDeliveryStream_ElasticsearchRetryOptions) SetDeletionPolicy(policy policies.DeletionPolicy) { +func (r *DeliveryStream_ElasticsearchRetryOptions) SetDeletionPolicy(policy policies.DeletionPolicy) { r._deletionPolicy = policy } diff --git a/cloudformation/resources/aws-kinesisfirehose-deliverystream_encryptionconfiguration.go b/cloudformation/kinesisfirehose/aws-kinesisfirehose-deliverystream_encryptionconfiguration.go similarity index 68% rename from cloudformation/resources/aws-kinesisfirehose-deliverystream_encryptionconfiguration.go rename to cloudformation/kinesisfirehose/aws-kinesisfirehose-deliverystream_encryptionconfiguration.go index 89b36d69fb..46f00bb8f0 100644 --- a/cloudformation/resources/aws-kinesisfirehose-deliverystream_encryptionconfiguration.go +++ b/cloudformation/kinesisfirehose/aws-kinesisfirehose-deliverystream_encryptionconfiguration.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_EncryptionConfiguration AWS CloudFormation Resource (AWS::KinesisFirehose::DeliveryStream.EncryptionConfiguration) +// 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 AWSKinesisFirehoseDeliveryStream_EncryptionConfiguration struct { +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 *AWSKinesisFirehoseDeliveryStream_KMSEncryptionConfig `json:"KMSEncryptionConfig,omitempty"` + KMSEncryptionConfig *DeliveryStream_KMSEncryptionConfig `json:"KMSEncryptionConfig,omitempty"` // NoEncryptionConfig AWS CloudFormation Property // Required: false @@ -27,42 +29,42 @@ type AWSKinesisFirehoseDeliveryStream_EncryptionConfiguration struct { } // AWSCloudFormationType returns the AWS CloudFormation resource type -func (r *AWSKinesisFirehoseDeliveryStream_EncryptionConfiguration) AWSCloudFormationType() string { +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 *AWSKinesisFirehoseDeliveryStream_EncryptionConfiguration) DependsOn() []string { +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 *AWSKinesisFirehoseDeliveryStream_EncryptionConfiguration) SetDependsOn(dependencies []string) { +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 *AWSKinesisFirehoseDeliveryStream_EncryptionConfiguration) Metadata() map[string]interface{} { +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 *AWSKinesisFirehoseDeliveryStream_EncryptionConfiguration) SetMetadata(metadata map[string]interface{}) { +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 *AWSKinesisFirehoseDeliveryStream_EncryptionConfiguration) DeletionPolicy() policies.DeletionPolicy { +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 *AWSKinesisFirehoseDeliveryStream_EncryptionConfiguration) SetDeletionPolicy(policy policies.DeletionPolicy) { +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/resources/aws-kinesisfirehose-deliverystream_hivejsonserde.go b/cloudformation/kinesisfirehose/aws-kinesisfirehose-deliverystream_hivejsonserde.go similarity index 69% rename from cloudformation/resources/aws-kinesisfirehose-deliverystream_hivejsonserde.go rename to cloudformation/kinesisfirehose/aws-kinesisfirehose-deliverystream_hivejsonserde.go index 368f95190c..eec3be8862 100644 --- a/cloudformation/resources/aws-kinesisfirehose-deliverystream_hivejsonserde.go +++ b/cloudformation/kinesisfirehose/aws-kinesisfirehose-deliverystream_hivejsonserde.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_HiveJsonSerDe AWS CloudFormation Resource (AWS::KinesisFirehose::DeliveryStream.HiveJsonSerDe) +// 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 AWSKinesisFirehoseDeliveryStream_HiveJsonSerDe struct { +type DeliveryStream_HiveJsonSerDe struct { // TimestampFormats AWS CloudFormation Property // Required: false @@ -22,42 +24,42 @@ type AWSKinesisFirehoseDeliveryStream_HiveJsonSerDe struct { } // AWSCloudFormationType returns the AWS CloudFormation resource type -func (r *AWSKinesisFirehoseDeliveryStream_HiveJsonSerDe) AWSCloudFormationType() string { +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 *AWSKinesisFirehoseDeliveryStream_HiveJsonSerDe) DependsOn() []string { +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 *AWSKinesisFirehoseDeliveryStream_HiveJsonSerDe) SetDependsOn(dependencies []string) { +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 *AWSKinesisFirehoseDeliveryStream_HiveJsonSerDe) Metadata() map[string]interface{} { +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 *AWSKinesisFirehoseDeliveryStream_HiveJsonSerDe) SetMetadata(metadata map[string]interface{}) { +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 *AWSKinesisFirehoseDeliveryStream_HiveJsonSerDe) DeletionPolicy() policies.DeletionPolicy { +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 *AWSKinesisFirehoseDeliveryStream_HiveJsonSerDe) SetDeletionPolicy(policy policies.DeletionPolicy) { +func (r *DeliveryStream_HiveJsonSerDe) SetDeletionPolicy(policy policies.DeletionPolicy) { r._deletionPolicy = policy } diff --git a/cloudformation/resources/aws-kinesisfirehose-deliverystream_inputformatconfiguration.go b/cloudformation/kinesisfirehose/aws-kinesisfirehose-deliverystream_inputformatconfiguration.go similarity index 64% rename from cloudformation/resources/aws-kinesisfirehose-deliverystream_inputformatconfiguration.go rename to cloudformation/kinesisfirehose/aws-kinesisfirehose-deliverystream_inputformatconfiguration.go index 511c53e3d2..8b7879dc4a 100644 --- a/cloudformation/resources/aws-kinesisfirehose-deliverystream_inputformatconfiguration.go +++ b/cloudformation/kinesisfirehose/aws-kinesisfirehose-deliverystream_inputformatconfiguration.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_InputFormatConfiguration AWS CloudFormation Resource (AWS::KinesisFirehose::DeliveryStream.InputFormatConfiguration) +// 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 AWSKinesisFirehoseDeliveryStream_InputFormatConfiguration struct { +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 *AWSKinesisFirehoseDeliveryStream_Deserializer `json:"Deserializer,omitempty"` + Deserializer *DeliveryStream_Deserializer `json:"Deserializer,omitempty"` // _deletionPolicy represents a CloudFormation DeletionPolicy _deletionPolicy policies.DeletionPolicy @@ -22,42 +24,42 @@ type AWSKinesisFirehoseDeliveryStream_InputFormatConfiguration struct { } // AWSCloudFormationType returns the AWS CloudFormation resource type -func (r *AWSKinesisFirehoseDeliveryStream_InputFormatConfiguration) AWSCloudFormationType() string { +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 *AWSKinesisFirehoseDeliveryStream_InputFormatConfiguration) DependsOn() []string { +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 *AWSKinesisFirehoseDeliveryStream_InputFormatConfiguration) SetDependsOn(dependencies []string) { +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 *AWSKinesisFirehoseDeliveryStream_InputFormatConfiguration) Metadata() map[string]interface{} { +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 *AWSKinesisFirehoseDeliveryStream_InputFormatConfiguration) SetMetadata(metadata map[string]interface{}) { +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 *AWSKinesisFirehoseDeliveryStream_InputFormatConfiguration) DeletionPolicy() policies.DeletionPolicy { +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 *AWSKinesisFirehoseDeliveryStream_InputFormatConfiguration) SetDeletionPolicy(policy policies.DeletionPolicy) { +func (r *DeliveryStream_InputFormatConfiguration) SetDeletionPolicy(policy policies.DeletionPolicy) { r._deletionPolicy = policy } diff --git a/cloudformation/resources/aws-kinesisfirehose-deliverystream_kinesisstreamsourceconfiguration.go b/cloudformation/kinesisfirehose/aws-kinesisfirehose-deliverystream_kinesisstreamsourceconfiguration.go similarity index 69% rename from cloudformation/resources/aws-kinesisfirehose-deliverystream_kinesisstreamsourceconfiguration.go rename to cloudformation/kinesisfirehose/aws-kinesisfirehose-deliverystream_kinesisstreamsourceconfiguration.go index 39e95adc88..634ec20ca9 100644 --- a/cloudformation/resources/aws-kinesisfirehose-deliverystream_kinesisstreamsourceconfiguration.go +++ b/cloudformation/kinesisfirehose/aws-kinesisfirehose-deliverystream_kinesisstreamsourceconfiguration.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_KinesisStreamSourceConfiguration AWS CloudFormation Resource (AWS::KinesisFirehose::DeliveryStream.KinesisStreamSourceConfiguration) +// 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 AWSKinesisFirehoseDeliveryStream_KinesisStreamSourceConfiguration struct { +type DeliveryStream_KinesisStreamSourceConfiguration struct { // KinesisStreamARN AWS CloudFormation Property // Required: true @@ -27,42 +29,42 @@ type AWSKinesisFirehoseDeliveryStream_KinesisStreamSourceConfiguration struct { } // AWSCloudFormationType returns the AWS CloudFormation resource type -func (r *AWSKinesisFirehoseDeliveryStream_KinesisStreamSourceConfiguration) AWSCloudFormationType() string { +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 *AWSKinesisFirehoseDeliveryStream_KinesisStreamSourceConfiguration) DependsOn() []string { +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 *AWSKinesisFirehoseDeliveryStream_KinesisStreamSourceConfiguration) SetDependsOn(dependencies []string) { +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 *AWSKinesisFirehoseDeliveryStream_KinesisStreamSourceConfiguration) Metadata() map[string]interface{} { +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 *AWSKinesisFirehoseDeliveryStream_KinesisStreamSourceConfiguration) SetMetadata(metadata map[string]interface{}) { +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 *AWSKinesisFirehoseDeliveryStream_KinesisStreamSourceConfiguration) DeletionPolicy() policies.DeletionPolicy { +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 *AWSKinesisFirehoseDeliveryStream_KinesisStreamSourceConfiguration) SetDeletionPolicy(policy policies.DeletionPolicy) { +func (r *DeliveryStream_KinesisStreamSourceConfiguration) SetDeletionPolicy(policy policies.DeletionPolicy) { r._deletionPolicy = policy } diff --git a/cloudformation/resources/aws-kinesisfirehose-deliverystream_kmsencryptionconfig.go b/cloudformation/kinesisfirehose/aws-kinesisfirehose-deliverystream_kmsencryptionconfig.go similarity index 68% rename from cloudformation/resources/aws-kinesisfirehose-deliverystream_kmsencryptionconfig.go rename to cloudformation/kinesisfirehose/aws-kinesisfirehose-deliverystream_kmsencryptionconfig.go index e047a69d2d..acd46eb85d 100644 --- a/cloudformation/resources/aws-kinesisfirehose-deliverystream_kmsencryptionconfig.go +++ b/cloudformation/kinesisfirehose/aws-kinesisfirehose-deliverystream_kmsencryptionconfig.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_KMSEncryptionConfig AWS CloudFormation Resource (AWS::KinesisFirehose::DeliveryStream.KMSEncryptionConfig) +// 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 AWSKinesisFirehoseDeliveryStream_KMSEncryptionConfig struct { +type DeliveryStream_KMSEncryptionConfig struct { // AWSKMSKeyARN AWS CloudFormation Property // Required: true @@ -22,42 +24,42 @@ type AWSKinesisFirehoseDeliveryStream_KMSEncryptionConfig struct { } // AWSCloudFormationType returns the AWS CloudFormation resource type -func (r *AWSKinesisFirehoseDeliveryStream_KMSEncryptionConfig) AWSCloudFormationType() string { +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 *AWSKinesisFirehoseDeliveryStream_KMSEncryptionConfig) DependsOn() []string { +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 *AWSKinesisFirehoseDeliveryStream_KMSEncryptionConfig) SetDependsOn(dependencies []string) { +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 *AWSKinesisFirehoseDeliveryStream_KMSEncryptionConfig) Metadata() map[string]interface{} { +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 *AWSKinesisFirehoseDeliveryStream_KMSEncryptionConfig) SetMetadata(metadata map[string]interface{}) { +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 *AWSKinesisFirehoseDeliveryStream_KMSEncryptionConfig) DeletionPolicy() policies.DeletionPolicy { +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 *AWSKinesisFirehoseDeliveryStream_KMSEncryptionConfig) SetDeletionPolicy(policy policies.DeletionPolicy) { +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/resources/aws-kinesisfirehose-deliverystream_outputformatconfiguration.go b/cloudformation/kinesisfirehose/aws-kinesisfirehose-deliverystream_outputformatconfiguration.go similarity index 64% rename from cloudformation/resources/aws-kinesisfirehose-deliverystream_outputformatconfiguration.go rename to cloudformation/kinesisfirehose/aws-kinesisfirehose-deliverystream_outputformatconfiguration.go index ce24df3e27..9aad2126a9 100644 --- a/cloudformation/resources/aws-kinesisfirehose-deliverystream_outputformatconfiguration.go +++ b/cloudformation/kinesisfirehose/aws-kinesisfirehose-deliverystream_outputformatconfiguration.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_OutputFormatConfiguration AWS CloudFormation Resource (AWS::KinesisFirehose::DeliveryStream.OutputFormatConfiguration) +// 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 AWSKinesisFirehoseDeliveryStream_OutputFormatConfiguration struct { +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 *AWSKinesisFirehoseDeliveryStream_Serializer `json:"Serializer,omitempty"` + Serializer *DeliveryStream_Serializer `json:"Serializer,omitempty"` // _deletionPolicy represents a CloudFormation DeletionPolicy _deletionPolicy policies.DeletionPolicy @@ -22,42 +24,42 @@ type AWSKinesisFirehoseDeliveryStream_OutputFormatConfiguration struct { } // AWSCloudFormationType returns the AWS CloudFormation resource type -func (r *AWSKinesisFirehoseDeliveryStream_OutputFormatConfiguration) AWSCloudFormationType() string { +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 *AWSKinesisFirehoseDeliveryStream_OutputFormatConfiguration) DependsOn() []string { +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 *AWSKinesisFirehoseDeliveryStream_OutputFormatConfiguration) SetDependsOn(dependencies []string) { +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 *AWSKinesisFirehoseDeliveryStream_OutputFormatConfiguration) Metadata() map[string]interface{} { +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 *AWSKinesisFirehoseDeliveryStream_OutputFormatConfiguration) SetMetadata(metadata map[string]interface{}) { +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 *AWSKinesisFirehoseDeliveryStream_OutputFormatConfiguration) DeletionPolicy() policies.DeletionPolicy { +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 *AWSKinesisFirehoseDeliveryStream_OutputFormatConfiguration) SetDeletionPolicy(policy policies.DeletionPolicy) { +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/resources/aws-kinesisfirehose-deliverystream_processingconfiguration.go b/cloudformation/kinesisfirehose/aws-kinesisfirehose-deliverystream_processingconfiguration.go similarity index 68% rename from cloudformation/resources/aws-kinesisfirehose-deliverystream_processingconfiguration.go rename to cloudformation/kinesisfirehose/aws-kinesisfirehose-deliverystream_processingconfiguration.go index 64b50d6dca..55c1c62f29 100644 --- a/cloudformation/resources/aws-kinesisfirehose-deliverystream_processingconfiguration.go +++ b/cloudformation/kinesisfirehose/aws-kinesisfirehose-deliverystream_processingconfiguration.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_ProcessingConfiguration AWS CloudFormation Resource (AWS::KinesisFirehose::DeliveryStream.ProcessingConfiguration) +// 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 AWSKinesisFirehoseDeliveryStream_ProcessingConfiguration struct { +type DeliveryStream_ProcessingConfiguration struct { // Enabled AWS CloudFormation Property // Required: false @@ -14,7 +16,7 @@ type AWSKinesisFirehoseDeliveryStream_ProcessingConfiguration struct { // 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"` + Processors []DeliveryStream_Processor `json:"Processors,omitempty"` // _deletionPolicy represents a CloudFormation DeletionPolicy _deletionPolicy policies.DeletionPolicy @@ -27,42 +29,42 @@ type AWSKinesisFirehoseDeliveryStream_ProcessingConfiguration struct { } // AWSCloudFormationType returns the AWS CloudFormation resource type -func (r *AWSKinesisFirehoseDeliveryStream_ProcessingConfiguration) AWSCloudFormationType() string { +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 *AWSKinesisFirehoseDeliveryStream_ProcessingConfiguration) DependsOn() []string { +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 *AWSKinesisFirehoseDeliveryStream_ProcessingConfiguration) SetDependsOn(dependencies []string) { +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 *AWSKinesisFirehoseDeliveryStream_ProcessingConfiguration) Metadata() map[string]interface{} { +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 *AWSKinesisFirehoseDeliveryStream_ProcessingConfiguration) SetMetadata(metadata map[string]interface{}) { +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 *AWSKinesisFirehoseDeliveryStream_ProcessingConfiguration) DeletionPolicy() policies.DeletionPolicy { +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 *AWSKinesisFirehoseDeliveryStream_ProcessingConfiguration) SetDeletionPolicy(policy policies.DeletionPolicy) { +func (r *DeliveryStream_ProcessingConfiguration) SetDeletionPolicy(policy policies.DeletionPolicy) { r._deletionPolicy = policy } diff --git a/cloudformation/resources/aws-kinesisfirehose-deliverystream_processor.go b/cloudformation/kinesisfirehose/aws-kinesisfirehose-deliverystream_processor.go similarity index 69% rename from cloudformation/resources/aws-kinesisfirehose-deliverystream_processor.go rename to cloudformation/kinesisfirehose/aws-kinesisfirehose-deliverystream_processor.go index caf65928be..ec8c9d20db 100644 --- a/cloudformation/resources/aws-kinesisfirehose-deliverystream_processor.go +++ b/cloudformation/kinesisfirehose/aws-kinesisfirehose-deliverystream_processor.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_Processor AWS CloudFormation Resource (AWS::KinesisFirehose::DeliveryStream.Processor) +// 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 AWSKinesisFirehoseDeliveryStream_Processor struct { +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 []AWSKinesisFirehoseDeliveryStream_ProcessorParameter `json:"Parameters,omitempty"` + Parameters []DeliveryStream_ProcessorParameter `json:"Parameters,omitempty"` // Type AWS CloudFormation Property // Required: true @@ -27,42 +29,42 @@ type AWSKinesisFirehoseDeliveryStream_Processor struct { } // AWSCloudFormationType returns the AWS CloudFormation resource type -func (r *AWSKinesisFirehoseDeliveryStream_Processor) AWSCloudFormationType() string { +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 *AWSKinesisFirehoseDeliveryStream_Processor) DependsOn() []string { +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 *AWSKinesisFirehoseDeliveryStream_Processor) SetDependsOn(dependencies []string) { +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 *AWSKinesisFirehoseDeliveryStream_Processor) Metadata() map[string]interface{} { +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 *AWSKinesisFirehoseDeliveryStream_Processor) SetMetadata(metadata map[string]interface{}) { +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 *AWSKinesisFirehoseDeliveryStream_Processor) DeletionPolicy() policies.DeletionPolicy { +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 *AWSKinesisFirehoseDeliveryStream_Processor) SetDeletionPolicy(policy policies.DeletionPolicy) { +func (r *DeliveryStream_Processor) SetDeletionPolicy(policy policies.DeletionPolicy) { r._deletionPolicy = policy } diff --git a/cloudformation/resources/aws-kinesisfirehose-deliverystream_processorparameter.go b/cloudformation/kinesisfirehose/aws-kinesisfirehose-deliverystream_processorparameter.go similarity index 71% rename from cloudformation/resources/aws-kinesisfirehose-deliverystream_processorparameter.go rename to cloudformation/kinesisfirehose/aws-kinesisfirehose-deliverystream_processorparameter.go index cce0a2b2fe..32259f54be 100644 --- a/cloudformation/resources/aws-kinesisfirehose-deliverystream_processorparameter.go +++ b/cloudformation/kinesisfirehose/aws-kinesisfirehose-deliverystream_processorparameter.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_ProcessorParameter AWS CloudFormation Resource (AWS::KinesisFirehose::DeliveryStream.ProcessorParameter) +// 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 AWSKinesisFirehoseDeliveryStream_ProcessorParameter struct { +type DeliveryStream_ProcessorParameter struct { // ParameterName AWS CloudFormation Property // Required: true @@ -27,42 +29,42 @@ type AWSKinesisFirehoseDeliveryStream_ProcessorParameter struct { } // AWSCloudFormationType returns the AWS CloudFormation resource type -func (r *AWSKinesisFirehoseDeliveryStream_ProcessorParameter) AWSCloudFormationType() string { +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 *AWSKinesisFirehoseDeliveryStream_ProcessorParameter) DependsOn() []string { +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 *AWSKinesisFirehoseDeliveryStream_ProcessorParameter) SetDependsOn(dependencies []string) { +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 *AWSKinesisFirehoseDeliveryStream_ProcessorParameter) Metadata() map[string]interface{} { +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 *AWSKinesisFirehoseDeliveryStream_ProcessorParameter) SetMetadata(metadata map[string]interface{}) { +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 *AWSKinesisFirehoseDeliveryStream_ProcessorParameter) DeletionPolicy() policies.DeletionPolicy { +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 *AWSKinesisFirehoseDeliveryStream_ProcessorParameter) SetDeletionPolicy(policy policies.DeletionPolicy) { +func (r *DeliveryStream_ProcessorParameter) SetDeletionPolicy(policy policies.DeletionPolicy) { r._deletionPolicy = policy } diff --git a/cloudformation/resources/aws-kinesisfirehose-deliverystream_redshiftdestinationconfiguration.go b/cloudformation/kinesisfirehose/aws-kinesisfirehose-deliverystream_redshiftdestinationconfiguration.go similarity index 73% rename from cloudformation/resources/aws-kinesisfirehose-deliverystream_redshiftdestinationconfiguration.go rename to cloudformation/kinesisfirehose/aws-kinesisfirehose-deliverystream_redshiftdestinationconfiguration.go index c546819c8f..3baa5ca8b1 100644 --- a/cloudformation/resources/aws-kinesisfirehose-deliverystream_redshiftdestinationconfiguration.go +++ b/cloudformation/kinesisfirehose/aws-kinesisfirehose-deliverystream_redshiftdestinationconfiguration.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_RedshiftDestinationConfiguration AWS CloudFormation Resource (AWS::KinesisFirehose::DeliveryStream.RedshiftDestinationConfiguration) +// 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 AWSKinesisFirehoseDeliveryStream_RedshiftDestinationConfiguration struct { +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 *AWSKinesisFirehoseDeliveryStream_CloudWatchLoggingOptions `json:"CloudWatchLoggingOptions,omitempty"` + CloudWatchLoggingOptions *DeliveryStream_CloudWatchLoggingOptions `json:"CloudWatchLoggingOptions,omitempty"` // ClusterJDBCURL AWS CloudFormation Property // Required: true @@ -19,7 +21,7 @@ type AWSKinesisFirehoseDeliveryStream_RedshiftDestinationConfiguration struct { // 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"` + CopyCommand *DeliveryStream_CopyCommand `json:"CopyCommand,omitempty"` // Password AWS CloudFormation Property // Required: true @@ -29,7 +31,7 @@ type AWSKinesisFirehoseDeliveryStream_RedshiftDestinationConfiguration struct { // 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"` + ProcessingConfiguration *DeliveryStream_ProcessingConfiguration `json:"ProcessingConfiguration,omitempty"` // RoleARN AWS CloudFormation Property // Required: true @@ -39,7 +41,7 @@ type AWSKinesisFirehoseDeliveryStream_RedshiftDestinationConfiguration struct { // 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"` + S3Configuration *DeliveryStream_S3DestinationConfiguration `json:"S3Configuration,omitempty"` // Username AWS CloudFormation Property // Required: true @@ -57,42 +59,42 @@ type AWSKinesisFirehoseDeliveryStream_RedshiftDestinationConfiguration struct { } // AWSCloudFormationType returns the AWS CloudFormation resource type -func (r *AWSKinesisFirehoseDeliveryStream_RedshiftDestinationConfiguration) AWSCloudFormationType() string { +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 *AWSKinesisFirehoseDeliveryStream_RedshiftDestinationConfiguration) DependsOn() []string { +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 *AWSKinesisFirehoseDeliveryStream_RedshiftDestinationConfiguration) SetDependsOn(dependencies []string) { +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 *AWSKinesisFirehoseDeliveryStream_RedshiftDestinationConfiguration) Metadata() map[string]interface{} { +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 *AWSKinesisFirehoseDeliveryStream_RedshiftDestinationConfiguration) SetMetadata(metadata map[string]interface{}) { +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 *AWSKinesisFirehoseDeliveryStream_RedshiftDestinationConfiguration) DeletionPolicy() policies.DeletionPolicy { +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 *AWSKinesisFirehoseDeliveryStream_RedshiftDestinationConfiguration) SetDeletionPolicy(policy policies.DeletionPolicy) { +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/resources/aws-kinesisfirehose-deliverystream_serializer.go b/cloudformation/kinesisfirehose/aws-kinesisfirehose-deliverystream_serializer.go similarity index 68% rename from cloudformation/resources/aws-kinesisfirehose-deliverystream_serializer.go rename to cloudformation/kinesisfirehose/aws-kinesisfirehose-deliverystream_serializer.go index d9827081b9..1ddd374ed4 100644 --- a/cloudformation/resources/aws-kinesisfirehose-deliverystream_serializer.go +++ b/cloudformation/kinesisfirehose/aws-kinesisfirehose-deliverystream_serializer.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_Serializer AWS CloudFormation Resource (AWS::KinesisFirehose::DeliveryStream.Serializer) +// 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 AWSKinesisFirehoseDeliveryStream_Serializer struct { +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 *AWSKinesisFirehoseDeliveryStream_OrcSerDe `json:"OrcSerDe,omitempty"` + 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 *AWSKinesisFirehoseDeliveryStream_ParquetSerDe `json:"ParquetSerDe,omitempty"` + ParquetSerDe *DeliveryStream_ParquetSerDe `json:"ParquetSerDe,omitempty"` // _deletionPolicy represents a CloudFormation DeletionPolicy _deletionPolicy policies.DeletionPolicy @@ -27,42 +29,42 @@ type AWSKinesisFirehoseDeliveryStream_Serializer struct { } // AWSCloudFormationType returns the AWS CloudFormation resource type -func (r *AWSKinesisFirehoseDeliveryStream_Serializer) AWSCloudFormationType() string { +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 *AWSKinesisFirehoseDeliveryStream_Serializer) DependsOn() []string { +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 *AWSKinesisFirehoseDeliveryStream_Serializer) SetDependsOn(dependencies []string) { +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 *AWSKinesisFirehoseDeliveryStream_Serializer) Metadata() map[string]interface{} { +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 *AWSKinesisFirehoseDeliveryStream_Serializer) SetMetadata(metadata map[string]interface{}) { +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 *AWSKinesisFirehoseDeliveryStream_Serializer) DeletionPolicy() policies.DeletionPolicy { +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 *AWSKinesisFirehoseDeliveryStream_Serializer) SetDeletionPolicy(policy policies.DeletionPolicy) { +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/resources/aws-kinesisfirehose-deliverystream_splunkretryoptions.go b/cloudformation/kinesisfirehose/aws-kinesisfirehose-deliverystream_splunkretryoptions.go similarity index 68% rename from cloudformation/resources/aws-kinesisfirehose-deliverystream_splunkretryoptions.go rename to cloudformation/kinesisfirehose/aws-kinesisfirehose-deliverystream_splunkretryoptions.go index b1a68dd83a..fd0f361486 100644 --- a/cloudformation/resources/aws-kinesisfirehose-deliverystream_splunkretryoptions.go +++ b/cloudformation/kinesisfirehose/aws-kinesisfirehose-deliverystream_splunkretryoptions.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_SplunkRetryOptions AWS CloudFormation Resource (AWS::KinesisFirehose::DeliveryStream.SplunkRetryOptions) +// 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 AWSKinesisFirehoseDeliveryStream_SplunkRetryOptions struct { +type DeliveryStream_SplunkRetryOptions struct { // DurationInSeconds AWS CloudFormation Property // Required: true @@ -22,42 +24,42 @@ type AWSKinesisFirehoseDeliveryStream_SplunkRetryOptions struct { } // AWSCloudFormationType returns the AWS CloudFormation resource type -func (r *AWSKinesisFirehoseDeliveryStream_SplunkRetryOptions) AWSCloudFormationType() string { +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 *AWSKinesisFirehoseDeliveryStream_SplunkRetryOptions) DependsOn() []string { +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 *AWSKinesisFirehoseDeliveryStream_SplunkRetryOptions) SetDependsOn(dependencies []string) { +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 *AWSKinesisFirehoseDeliveryStream_SplunkRetryOptions) Metadata() map[string]interface{} { +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 *AWSKinesisFirehoseDeliveryStream_SplunkRetryOptions) SetMetadata(metadata map[string]interface{}) { +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 *AWSKinesisFirehoseDeliveryStream_SplunkRetryOptions) DeletionPolicy() policies.DeletionPolicy { +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 *AWSKinesisFirehoseDeliveryStream_SplunkRetryOptions) SetDeletionPolicy(policy policies.DeletionPolicy) { +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/resources/aws-lakeformation-datalakesettings_admins.go b/cloudformation/lakeformation/aws-lakeformation-datalakesettings_admins.go similarity index 67% rename from cloudformation/resources/aws-lakeformation-datalakesettings_admins.go rename to cloudformation/lakeformation/aws-lakeformation-datalakesettings_admins.go index 43292c6e1c..72459a14ef 100644 --- a/cloudformation/resources/aws-lakeformation-datalakesettings_admins.go +++ b/cloudformation/lakeformation/aws-lakeformation-datalakesettings_admins.go @@ -1,10 +1,12 @@ -package resources +package lakeformation -import "github.com/awslabs/goformation/v2/cloudformation/policies" +import ( + "github.com/awslabs/goformation/v3/cloudformation/policies" +) -// AWSLakeFormationDataLakeSettings_Admins AWS CloudFormation Resource (AWS::LakeFormation::DataLakeSettings.Admins) +// 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 AWSLakeFormationDataLakeSettings_Admins struct { +type DataLakeSettings_Admins struct { // _deletionPolicy represents a CloudFormation DeletionPolicy _deletionPolicy policies.DeletionPolicy @@ -17,42 +19,42 @@ type AWSLakeFormationDataLakeSettings_Admins struct { } // AWSCloudFormationType returns the AWS CloudFormation resource type -func (r *AWSLakeFormationDataLakeSettings_Admins) AWSCloudFormationType() string { +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 *AWSLakeFormationDataLakeSettings_Admins) DependsOn() []string { +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 *AWSLakeFormationDataLakeSettings_Admins) SetDependsOn(dependencies []string) { +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 *AWSLakeFormationDataLakeSettings_Admins) Metadata() map[string]interface{} { +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 *AWSLakeFormationDataLakeSettings_Admins) SetMetadata(metadata map[string]interface{}) { +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 *AWSLakeFormationDataLakeSettings_Admins) DeletionPolicy() policies.DeletionPolicy { +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 *AWSLakeFormationDataLakeSettings_Admins) SetDeletionPolicy(policy policies.DeletionPolicy) { +func (r *DataLakeSettings_Admins) SetDeletionPolicy(policy policies.DeletionPolicy) { r._deletionPolicy = policy } diff --git a/cloudformation/resources/aws-lakeformation-datalakesettings_datalakeprincipal.go b/cloudformation/lakeformation/aws-lakeformation-datalakesettings_datalakeprincipal.go similarity index 69% rename from cloudformation/resources/aws-lakeformation-datalakesettings_datalakeprincipal.go rename to cloudformation/lakeformation/aws-lakeformation-datalakesettings_datalakeprincipal.go index ef96ea624a..82a36136dd 100644 --- a/cloudformation/resources/aws-lakeformation-datalakesettings_datalakeprincipal.go +++ b/cloudformation/lakeformation/aws-lakeformation-datalakesettings_datalakeprincipal.go @@ -1,10 +1,12 @@ -package resources +package lakeformation -import "github.com/awslabs/goformation/v2/cloudformation/policies" +import ( + "github.com/awslabs/goformation/v3/cloudformation/policies" +) -// AWSLakeFormationDataLakeSettings_DataLakePrincipal AWS CloudFormation Resource (AWS::LakeFormation::DataLakeSettings.DataLakePrincipal) +// 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 AWSLakeFormationDataLakeSettings_DataLakePrincipal struct { +type DataLakeSettings_DataLakePrincipal struct { // DataLakePrincipalIdentifier AWS CloudFormation Property // Required: false @@ -22,42 +24,42 @@ type AWSLakeFormationDataLakeSettings_DataLakePrincipal struct { } // AWSCloudFormationType returns the AWS CloudFormation resource type -func (r *AWSLakeFormationDataLakeSettings_DataLakePrincipal) AWSCloudFormationType() string { +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 *AWSLakeFormationDataLakeSettings_DataLakePrincipal) DependsOn() []string { +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 *AWSLakeFormationDataLakeSettings_DataLakePrincipal) SetDependsOn(dependencies []string) { +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 *AWSLakeFormationDataLakeSettings_DataLakePrincipal) Metadata() map[string]interface{} { +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 *AWSLakeFormationDataLakeSettings_DataLakePrincipal) SetMetadata(metadata map[string]interface{}) { +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 *AWSLakeFormationDataLakeSettings_DataLakePrincipal) DeletionPolicy() policies.DeletionPolicy { +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 *AWSLakeFormationDataLakeSettings_DataLakePrincipal) SetDeletionPolicy(policy policies.DeletionPolicy) { +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/resources/aws-lakeformation-permissions_databaseresource.go b/cloudformation/lakeformation/aws-lakeformation-permissions_databaseresource.go similarity index 69% rename from cloudformation/resources/aws-lakeformation-permissions_databaseresource.go rename to cloudformation/lakeformation/aws-lakeformation-permissions_databaseresource.go index 6fa1767427..5f5bf5d5bd 100644 --- a/cloudformation/resources/aws-lakeformation-permissions_databaseresource.go +++ b/cloudformation/lakeformation/aws-lakeformation-permissions_databaseresource.go @@ -1,10 +1,12 @@ -package resources +package lakeformation -import "github.com/awslabs/goformation/v2/cloudformation/policies" +import ( + "github.com/awslabs/goformation/v3/cloudformation/policies" +) -// AWSLakeFormationPermissions_DatabaseResource AWS CloudFormation Resource (AWS::LakeFormation::Permissions.DatabaseResource) +// 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 AWSLakeFormationPermissions_DatabaseResource struct { +type Permissions_DatabaseResource struct { // Name AWS CloudFormation Property // Required: false @@ -22,42 +24,42 @@ type AWSLakeFormationPermissions_DatabaseResource struct { } // AWSCloudFormationType returns the AWS CloudFormation resource type -func (r *AWSLakeFormationPermissions_DatabaseResource) AWSCloudFormationType() string { +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 *AWSLakeFormationPermissions_DatabaseResource) DependsOn() []string { +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 *AWSLakeFormationPermissions_DatabaseResource) SetDependsOn(dependencies []string) { +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 *AWSLakeFormationPermissions_DatabaseResource) Metadata() map[string]interface{} { +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 *AWSLakeFormationPermissions_DatabaseResource) SetMetadata(metadata map[string]interface{}) { +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 *AWSLakeFormationPermissions_DatabaseResource) DeletionPolicy() policies.DeletionPolicy { +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 *AWSLakeFormationPermissions_DatabaseResource) SetDeletionPolicy(policy policies.DeletionPolicy) { +func (r *Permissions_DatabaseResource) SetDeletionPolicy(policy policies.DeletionPolicy) { r._deletionPolicy = policy } diff --git a/cloudformation/resources/aws-lakeformation-permissions_datalakeprincipal.go b/cloudformation/lakeformation/aws-lakeformation-permissions_datalakeprincipal.go similarity index 70% rename from cloudformation/resources/aws-lakeformation-permissions_datalakeprincipal.go rename to cloudformation/lakeformation/aws-lakeformation-permissions_datalakeprincipal.go index 7e769369d7..ccf5bf6d0e 100644 --- a/cloudformation/resources/aws-lakeformation-permissions_datalakeprincipal.go +++ b/cloudformation/lakeformation/aws-lakeformation-permissions_datalakeprincipal.go @@ -1,10 +1,12 @@ -package resources +package lakeformation -import "github.com/awslabs/goformation/v2/cloudformation/policies" +import ( + "github.com/awslabs/goformation/v3/cloudformation/policies" +) -// AWSLakeFormationPermissions_DataLakePrincipal AWS CloudFormation Resource (AWS::LakeFormation::Permissions.DataLakePrincipal) +// 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 AWSLakeFormationPermissions_DataLakePrincipal struct { +type Permissions_DataLakePrincipal struct { // DataLakePrincipalIdentifier AWS CloudFormation Property // Required: false @@ -22,42 +24,42 @@ type AWSLakeFormationPermissions_DataLakePrincipal struct { } // AWSCloudFormationType returns the AWS CloudFormation resource type -func (r *AWSLakeFormationPermissions_DataLakePrincipal) AWSCloudFormationType() string { +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 *AWSLakeFormationPermissions_DataLakePrincipal) DependsOn() []string { +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 *AWSLakeFormationPermissions_DataLakePrincipal) SetDependsOn(dependencies []string) { +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 *AWSLakeFormationPermissions_DataLakePrincipal) Metadata() map[string]interface{} { +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 *AWSLakeFormationPermissions_DataLakePrincipal) SetMetadata(metadata map[string]interface{}) { +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 *AWSLakeFormationPermissions_DataLakePrincipal) DeletionPolicy() policies.DeletionPolicy { +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 *AWSLakeFormationPermissions_DataLakePrincipal) SetDeletionPolicy(policy policies.DeletionPolicy) { +func (r *Permissions_DataLakePrincipal) SetDeletionPolicy(policy policies.DeletionPolicy) { r._deletionPolicy = policy } diff --git a/cloudformation/resources/aws-lakeformation-permissions_resource.go b/cloudformation/lakeformation/aws-lakeformation-permissions_resource.go similarity index 68% rename from cloudformation/resources/aws-lakeformation-permissions_resource.go rename to cloudformation/lakeformation/aws-lakeformation-permissions_resource.go index 0b7b76aad8..41da6cec36 100644 --- a/cloudformation/resources/aws-lakeformation-permissions_resource.go +++ b/cloudformation/lakeformation/aws-lakeformation-permissions_resource.go @@ -1,20 +1,22 @@ -package resources +package lakeformation -import "github.com/awslabs/goformation/v2/cloudformation/policies" +import ( + "github.com/awslabs/goformation/v3/cloudformation/policies" +) -// AWSLakeFormationPermissions_Resource AWS CloudFormation Resource (AWS::LakeFormation::Permissions.Resource) +// 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 AWSLakeFormationPermissions_Resource struct { +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 *AWSLakeFormationPermissions_DatabaseResource `json:"DatabaseResource,omitempty"` + 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 *AWSLakeFormationPermissions_TableResource `json:"TableResource,omitempty"` + TableResource *Permissions_TableResource `json:"TableResource,omitempty"` // _deletionPolicy represents a CloudFormation DeletionPolicy _deletionPolicy policies.DeletionPolicy @@ -27,42 +29,42 @@ type AWSLakeFormationPermissions_Resource struct { } // AWSCloudFormationType returns the AWS CloudFormation resource type -func (r *AWSLakeFormationPermissions_Resource) AWSCloudFormationType() string { +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 *AWSLakeFormationPermissions_Resource) DependsOn() []string { +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 *AWSLakeFormationPermissions_Resource) SetDependsOn(dependencies []string) { +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 *AWSLakeFormationPermissions_Resource) Metadata() map[string]interface{} { +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 *AWSLakeFormationPermissions_Resource) SetMetadata(metadata map[string]interface{}) { +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 *AWSLakeFormationPermissions_Resource) DeletionPolicy() policies.DeletionPolicy { +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 *AWSLakeFormationPermissions_Resource) SetDeletionPolicy(policy policies.DeletionPolicy) { +func (r *Permissions_Resource) SetDeletionPolicy(policy policies.DeletionPolicy) { r._deletionPolicy = policy } diff --git a/cloudformation/resources/aws-lakeformation-permissions_tableresource.go b/cloudformation/lakeformation/aws-lakeformation-permissions_tableresource.go similarity index 72% rename from cloudformation/resources/aws-lakeformation-permissions_tableresource.go rename to cloudformation/lakeformation/aws-lakeformation-permissions_tableresource.go index 2821f692ff..bdfed4dea3 100644 --- a/cloudformation/resources/aws-lakeformation-permissions_tableresource.go +++ b/cloudformation/lakeformation/aws-lakeformation-permissions_tableresource.go @@ -1,10 +1,12 @@ -package resources +package lakeformation -import "github.com/awslabs/goformation/v2/cloudformation/policies" +import ( + "github.com/awslabs/goformation/v3/cloudformation/policies" +) -// AWSLakeFormationPermissions_TableResource AWS CloudFormation Resource (AWS::LakeFormation::Permissions.TableResource) +// 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 AWSLakeFormationPermissions_TableResource struct { +type Permissions_TableResource struct { // DatabaseName AWS CloudFormation Property // Required: false @@ -27,42 +29,42 @@ type AWSLakeFormationPermissions_TableResource struct { } // AWSCloudFormationType returns the AWS CloudFormation resource type -func (r *AWSLakeFormationPermissions_TableResource) AWSCloudFormationType() string { +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 *AWSLakeFormationPermissions_TableResource) DependsOn() []string { +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 *AWSLakeFormationPermissions_TableResource) SetDependsOn(dependencies []string) { +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 *AWSLakeFormationPermissions_TableResource) Metadata() map[string]interface{} { +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 *AWSLakeFormationPermissions_TableResource) SetMetadata(metadata map[string]interface{}) { +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 *AWSLakeFormationPermissions_TableResource) DeletionPolicy() policies.DeletionPolicy { +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 *AWSLakeFormationPermissions_TableResource) SetDeletionPolicy(policy policies.DeletionPolicy) { +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/resources/aws-lambda-alias_aliasroutingconfiguration.go b/cloudformation/lambda/aws-lambda-alias_aliasroutingconfiguration.go similarity index 67% rename from cloudformation/resources/aws-lambda-alias_aliasroutingconfiguration.go rename to cloudformation/lambda/aws-lambda-alias_aliasroutingconfiguration.go index d72ed8dde5..1e3668e06f 100644 --- a/cloudformation/resources/aws-lambda-alias_aliasroutingconfiguration.go +++ b/cloudformation/lambda/aws-lambda-alias_aliasroutingconfiguration.go @@ -1,15 +1,17 @@ -package resources +package lambda -import "github.com/awslabs/goformation/v2/cloudformation/policies" +import ( + "github.com/awslabs/goformation/v3/cloudformation/policies" +) -// AWSLambdaAlias_AliasRoutingConfiguration AWS CloudFormation Resource (AWS::Lambda::Alias.AliasRoutingConfiguration) +// 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 AWSLambdaAlias_AliasRoutingConfiguration struct { +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 []AWSLambdaAlias_VersionWeight `json:"AdditionalVersionWeights,omitempty"` + AdditionalVersionWeights []Alias_VersionWeight `json:"AdditionalVersionWeights,omitempty"` // _deletionPolicy represents a CloudFormation DeletionPolicy _deletionPolicy policies.DeletionPolicy @@ -22,42 +24,42 @@ type AWSLambdaAlias_AliasRoutingConfiguration struct { } // AWSCloudFormationType returns the AWS CloudFormation resource type -func (r *AWSLambdaAlias_AliasRoutingConfiguration) AWSCloudFormationType() string { +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 *AWSLambdaAlias_AliasRoutingConfiguration) DependsOn() []string { +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 *AWSLambdaAlias_AliasRoutingConfiguration) SetDependsOn(dependencies []string) { +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 *AWSLambdaAlias_AliasRoutingConfiguration) Metadata() map[string]interface{} { +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 *AWSLambdaAlias_AliasRoutingConfiguration) SetMetadata(metadata map[string]interface{}) { +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 *AWSLambdaAlias_AliasRoutingConfiguration) DeletionPolicy() policies.DeletionPolicy { +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 *AWSLambdaAlias_AliasRoutingConfiguration) SetDeletionPolicy(policy policies.DeletionPolicy) { +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/resources/aws-lambda-function_deadletterconfig.go b/cloudformation/lambda/aws-lambda-function_deadletterconfig.go similarity index 71% rename from cloudformation/resources/aws-lambda-function_deadletterconfig.go rename to cloudformation/lambda/aws-lambda-function_deadletterconfig.go index 912f1c239e..31ede23166 100644 --- a/cloudformation/resources/aws-lambda-function_deadletterconfig.go +++ b/cloudformation/lambda/aws-lambda-function_deadletterconfig.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_DeadLetterConfig AWS CloudFormation Resource (AWS::Lambda::Function.DeadLetterConfig) +// 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 AWSLambdaFunction_DeadLetterConfig struct { +type Function_DeadLetterConfig struct { // TargetArn AWS CloudFormation Property // Required: false @@ -22,42 +24,42 @@ type AWSLambdaFunction_DeadLetterConfig struct { } // AWSCloudFormationType returns the AWS CloudFormation resource type -func (r *AWSLambdaFunction_DeadLetterConfig) AWSCloudFormationType() string { +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 *AWSLambdaFunction_DeadLetterConfig) DependsOn() []string { +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 *AWSLambdaFunction_DeadLetterConfig) SetDependsOn(dependencies []string) { +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 *AWSLambdaFunction_DeadLetterConfig) Metadata() map[string]interface{} { +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 *AWSLambdaFunction_DeadLetterConfig) SetMetadata(metadata map[string]interface{}) { +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 *AWSLambdaFunction_DeadLetterConfig) DeletionPolicy() policies.DeletionPolicy { +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 *AWSLambdaFunction_DeadLetterConfig) SetDeletionPolicy(policy policies.DeletionPolicy) { +func (r *Function_DeadLetterConfig) SetDeletionPolicy(policy policies.DeletionPolicy) { r._deletionPolicy = policy } diff --git a/cloudformation/resources/aws-lambda-function_environment.go b/cloudformation/lambda/aws-lambda-function_environment.go similarity index 72% rename from cloudformation/resources/aws-lambda-function_environment.go rename to cloudformation/lambda/aws-lambda-function_environment.go index 4f74ae6987..8832903875 100644 --- a/cloudformation/resources/aws-lambda-function_environment.go +++ b/cloudformation/lambda/aws-lambda-function_environment.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_Environment AWS CloudFormation Resource (AWS::Lambda::Function.Environment) +// 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 AWSLambdaFunction_Environment struct { +type Function_Environment struct { // Variables AWS CloudFormation Property // Required: false @@ -22,42 +24,42 @@ type AWSLambdaFunction_Environment struct { } // AWSCloudFormationType returns the AWS CloudFormation resource type -func (r *AWSLambdaFunction_Environment) AWSCloudFormationType() string { +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 *AWSLambdaFunction_Environment) DependsOn() []string { +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 *AWSLambdaFunction_Environment) SetDependsOn(dependencies []string) { +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 *AWSLambdaFunction_Environment) Metadata() map[string]interface{} { +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 *AWSLambdaFunction_Environment) SetMetadata(metadata map[string]interface{}) { +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 *AWSLambdaFunction_Environment) DeletionPolicy() policies.DeletionPolicy { +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 *AWSLambdaFunction_Environment) SetDeletionPolicy(policy policies.DeletionPolicy) { +func (r *Function_Environment) SetDeletionPolicy(policy policies.DeletionPolicy) { r._deletionPolicy = policy } diff --git a/cloudformation/resources/aws-lambda-function_tracingconfig.go b/cloudformation/lambda/aws-lambda-function_tracingconfig.go similarity index 71% rename from cloudformation/resources/aws-lambda-function_tracingconfig.go rename to cloudformation/lambda/aws-lambda-function_tracingconfig.go index c6348f51aa..f265c99f6b 100644 --- a/cloudformation/resources/aws-lambda-function_tracingconfig.go +++ b/cloudformation/lambda/aws-lambda-function_tracingconfig.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_TracingConfig AWS CloudFormation Resource (AWS::Lambda::Function.TracingConfig) +// 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 AWSLambdaFunction_TracingConfig struct { +type Function_TracingConfig struct { // Mode AWS CloudFormation Property // Required: false @@ -22,42 +24,42 @@ type AWSLambdaFunction_TracingConfig struct { } // AWSCloudFormationType returns the AWS CloudFormation resource type -func (r *AWSLambdaFunction_TracingConfig) AWSCloudFormationType() string { +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 *AWSLambdaFunction_TracingConfig) DependsOn() []string { +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 *AWSLambdaFunction_TracingConfig) SetDependsOn(dependencies []string) { +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 *AWSLambdaFunction_TracingConfig) Metadata() map[string]interface{} { +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 *AWSLambdaFunction_TracingConfig) SetMetadata(metadata map[string]interface{}) { +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 *AWSLambdaFunction_TracingConfig) DeletionPolicy() policies.DeletionPolicy { +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 *AWSLambdaFunction_TracingConfig) SetDeletionPolicy(policy policies.DeletionPolicy) { +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/resources/aws-managedblockchain-member_approvalthresholdpolicy.go b/cloudformation/managedblockchain/aws-managedblockchain-member_approvalthresholdpolicy.go similarity index 74% rename from cloudformation/resources/aws-managedblockchain-member_approvalthresholdpolicy.go rename to cloudformation/managedblockchain/aws-managedblockchain-member_approvalthresholdpolicy.go index 5a00cdd66c..936c4dd794 100644 --- a/cloudformation/resources/aws-managedblockchain-member_approvalthresholdpolicy.go +++ b/cloudformation/managedblockchain/aws-managedblockchain-member_approvalthresholdpolicy.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_ApprovalThresholdPolicy AWS CloudFormation Resource (AWS::ManagedBlockchain::Member.ApprovalThresholdPolicy) +// 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 AWSManagedBlockchainMember_ApprovalThresholdPolicy struct { +type Member_ApprovalThresholdPolicy struct { // ProposalDurationInHours AWS CloudFormation Property // Required: false @@ -32,42 +34,42 @@ type AWSManagedBlockchainMember_ApprovalThresholdPolicy struct { } // AWSCloudFormationType returns the AWS CloudFormation resource type -func (r *AWSManagedBlockchainMember_ApprovalThresholdPolicy) AWSCloudFormationType() string { +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 *AWSManagedBlockchainMember_ApprovalThresholdPolicy) DependsOn() []string { +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 *AWSManagedBlockchainMember_ApprovalThresholdPolicy) SetDependsOn(dependencies []string) { +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 *AWSManagedBlockchainMember_ApprovalThresholdPolicy) Metadata() map[string]interface{} { +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 *AWSManagedBlockchainMember_ApprovalThresholdPolicy) SetMetadata(metadata map[string]interface{}) { +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 *AWSManagedBlockchainMember_ApprovalThresholdPolicy) DeletionPolicy() policies.DeletionPolicy { +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 *AWSManagedBlockchainMember_ApprovalThresholdPolicy) SetDeletionPolicy(policy policies.DeletionPolicy) { +func (r *Member_ApprovalThresholdPolicy) SetDeletionPolicy(policy policies.DeletionPolicy) { r._deletionPolicy = policy } diff --git a/cloudformation/resources/aws-managedblockchain-member_memberconfiguration.go b/cloudformation/managedblockchain/aws-managedblockchain-member_memberconfiguration.go similarity index 71% rename from cloudformation/resources/aws-managedblockchain-member_memberconfiguration.go rename to cloudformation/managedblockchain/aws-managedblockchain-member_memberconfiguration.go index 08aa54a839..4d0f4aa204 100644 --- a/cloudformation/resources/aws-managedblockchain-member_memberconfiguration.go +++ b/cloudformation/managedblockchain/aws-managedblockchain-member_memberconfiguration.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_MemberConfiguration AWS CloudFormation Resource (AWS::ManagedBlockchain::Member.MemberConfiguration) +// 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 AWSManagedBlockchainMember_MemberConfiguration struct { +type Member_MemberConfiguration struct { // Description AWS CloudFormation Property // Required: false @@ -14,7 +16,7 @@ type AWSManagedBlockchainMember_MemberConfiguration struct { // 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"` + MemberFrameworkConfiguration *Member_MemberFrameworkConfiguration `json:"MemberFrameworkConfiguration,omitempty"` // Name AWS CloudFormation Property // Required: true @@ -32,42 +34,42 @@ type AWSManagedBlockchainMember_MemberConfiguration struct { } // AWSCloudFormationType returns the AWS CloudFormation resource type -func (r *AWSManagedBlockchainMember_MemberConfiguration) AWSCloudFormationType() string { +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 *AWSManagedBlockchainMember_MemberConfiguration) DependsOn() []string { +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 *AWSManagedBlockchainMember_MemberConfiguration) SetDependsOn(dependencies []string) { +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 *AWSManagedBlockchainMember_MemberConfiguration) Metadata() map[string]interface{} { +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 *AWSManagedBlockchainMember_MemberConfiguration) SetMetadata(metadata map[string]interface{}) { +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 *AWSManagedBlockchainMember_MemberConfiguration) DeletionPolicy() policies.DeletionPolicy { +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 *AWSManagedBlockchainMember_MemberConfiguration) SetDeletionPolicy(policy policies.DeletionPolicy) { +func (r *Member_MemberConfiguration) SetDeletionPolicy(policy policies.DeletionPolicy) { r._deletionPolicy = policy } diff --git a/cloudformation/resources/aws-managedblockchain-member_memberfabricconfiguration.go b/cloudformation/managedblockchain/aws-managedblockchain-member_memberfabricconfiguration.go similarity index 71% rename from cloudformation/resources/aws-managedblockchain-member_memberfabricconfiguration.go rename to cloudformation/managedblockchain/aws-managedblockchain-member_memberfabricconfiguration.go index 4984ad8756..fb3b9bd90e 100644 --- a/cloudformation/resources/aws-managedblockchain-member_memberfabricconfiguration.go +++ b/cloudformation/managedblockchain/aws-managedblockchain-member_memberfabricconfiguration.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_MemberFabricConfiguration AWS CloudFormation Resource (AWS::ManagedBlockchain::Member.MemberFabricConfiguration) +// 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 AWSManagedBlockchainMember_MemberFabricConfiguration struct { +type Member_MemberFabricConfiguration struct { // AdminPassword AWS CloudFormation Property // Required: true @@ -27,42 +29,42 @@ type AWSManagedBlockchainMember_MemberFabricConfiguration struct { } // AWSCloudFormationType returns the AWS CloudFormation resource type -func (r *AWSManagedBlockchainMember_MemberFabricConfiguration) AWSCloudFormationType() string { +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 *AWSManagedBlockchainMember_MemberFabricConfiguration) DependsOn() []string { +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 *AWSManagedBlockchainMember_MemberFabricConfiguration) SetDependsOn(dependencies []string) { +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 *AWSManagedBlockchainMember_MemberFabricConfiguration) Metadata() map[string]interface{} { +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 *AWSManagedBlockchainMember_MemberFabricConfiguration) SetMetadata(metadata map[string]interface{}) { +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 *AWSManagedBlockchainMember_MemberFabricConfiguration) DeletionPolicy() policies.DeletionPolicy { +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 *AWSManagedBlockchainMember_MemberFabricConfiguration) SetDeletionPolicy(policy policies.DeletionPolicy) { +func (r *Member_MemberFabricConfiguration) SetDeletionPolicy(policy policies.DeletionPolicy) { r._deletionPolicy = policy } diff --git a/cloudformation/resources/aws-managedblockchain-member_memberframeworkconfiguration.go b/cloudformation/managedblockchain/aws-managedblockchain-member_memberframeworkconfiguration.go similarity index 64% rename from cloudformation/resources/aws-managedblockchain-member_memberframeworkconfiguration.go rename to cloudformation/managedblockchain/aws-managedblockchain-member_memberframeworkconfiguration.go index ca3265c21d..2581d96bb1 100644 --- a/cloudformation/resources/aws-managedblockchain-member_memberframeworkconfiguration.go +++ b/cloudformation/managedblockchain/aws-managedblockchain-member_memberframeworkconfiguration.go @@ -1,15 +1,17 @@ -package resources +package managedblockchain -import "github.com/awslabs/goformation/v2/cloudformation/policies" +import ( + "github.com/awslabs/goformation/v3/cloudformation/policies" +) -// AWSManagedBlockchainMember_MemberFrameworkConfiguration AWS CloudFormation Resource (AWS::ManagedBlockchain::Member.MemberFrameworkConfiguration) +// 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 AWSManagedBlockchainMember_MemberFrameworkConfiguration struct { +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 *AWSManagedBlockchainMember_MemberFabricConfiguration `json:"MemberFabricConfiguration,omitempty"` + MemberFabricConfiguration *Member_MemberFabricConfiguration `json:"MemberFabricConfiguration,omitempty"` // _deletionPolicy represents a CloudFormation DeletionPolicy _deletionPolicy policies.DeletionPolicy @@ -22,42 +24,42 @@ type AWSManagedBlockchainMember_MemberFrameworkConfiguration struct { } // AWSCloudFormationType returns the AWS CloudFormation resource type -func (r *AWSManagedBlockchainMember_MemberFrameworkConfiguration) AWSCloudFormationType() string { +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 *AWSManagedBlockchainMember_MemberFrameworkConfiguration) DependsOn() []string { +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 *AWSManagedBlockchainMember_MemberFrameworkConfiguration) SetDependsOn(dependencies []string) { +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 *AWSManagedBlockchainMember_MemberFrameworkConfiguration) Metadata() map[string]interface{} { +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 *AWSManagedBlockchainMember_MemberFrameworkConfiguration) SetMetadata(metadata map[string]interface{}) { +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 *AWSManagedBlockchainMember_MemberFrameworkConfiguration) DeletionPolicy() policies.DeletionPolicy { +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 *AWSManagedBlockchainMember_MemberFrameworkConfiguration) SetDeletionPolicy(policy policies.DeletionPolicy) { +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/resources/aws-managedblockchain-member_networkfabricconfiguration.go b/cloudformation/managedblockchain/aws-managedblockchain-member_networkfabricconfiguration.go similarity index 67% rename from cloudformation/resources/aws-managedblockchain-member_networkfabricconfiguration.go rename to cloudformation/managedblockchain/aws-managedblockchain-member_networkfabricconfiguration.go index d4bf9c363f..20b548e5bf 100644 --- a/cloudformation/resources/aws-managedblockchain-member_networkfabricconfiguration.go +++ b/cloudformation/managedblockchain/aws-managedblockchain-member_networkfabricconfiguration.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_NetworkFabricConfiguration AWS CloudFormation Resource (AWS::ManagedBlockchain::Member.NetworkFabricConfiguration) +// 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 AWSManagedBlockchainMember_NetworkFabricConfiguration struct { +type Member_NetworkFabricConfiguration struct { // Edition AWS CloudFormation Property // Required: true @@ -22,42 +24,42 @@ type AWSManagedBlockchainMember_NetworkFabricConfiguration struct { } // AWSCloudFormationType returns the AWS CloudFormation resource type -func (r *AWSManagedBlockchainMember_NetworkFabricConfiguration) AWSCloudFormationType() string { +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 *AWSManagedBlockchainMember_NetworkFabricConfiguration) DependsOn() []string { +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 *AWSManagedBlockchainMember_NetworkFabricConfiguration) SetDependsOn(dependencies []string) { +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 *AWSManagedBlockchainMember_NetworkFabricConfiguration) Metadata() map[string]interface{} { +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 *AWSManagedBlockchainMember_NetworkFabricConfiguration) SetMetadata(metadata map[string]interface{}) { +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 *AWSManagedBlockchainMember_NetworkFabricConfiguration) DeletionPolicy() policies.DeletionPolicy { +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 *AWSManagedBlockchainMember_NetworkFabricConfiguration) SetDeletionPolicy(policy policies.DeletionPolicy) { +func (r *Member_NetworkFabricConfiguration) SetDeletionPolicy(policy policies.DeletionPolicy) { r._deletionPolicy = policy } diff --git a/cloudformation/resources/aws-managedblockchain-member_networkframeworkconfiguration.go b/cloudformation/managedblockchain/aws-managedblockchain-member_networkframeworkconfiguration.go similarity index 64% rename from cloudformation/resources/aws-managedblockchain-member_networkframeworkconfiguration.go rename to cloudformation/managedblockchain/aws-managedblockchain-member_networkframeworkconfiguration.go index 6c94e83f24..ef30e49602 100644 --- a/cloudformation/resources/aws-managedblockchain-member_networkframeworkconfiguration.go +++ b/cloudformation/managedblockchain/aws-managedblockchain-member_networkframeworkconfiguration.go @@ -1,15 +1,17 @@ -package resources +package managedblockchain -import "github.com/awslabs/goformation/v2/cloudformation/policies" +import ( + "github.com/awslabs/goformation/v3/cloudformation/policies" +) -// AWSManagedBlockchainMember_NetworkFrameworkConfiguration AWS CloudFormation Resource (AWS::ManagedBlockchain::Member.NetworkFrameworkConfiguration) +// 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 AWSManagedBlockchainMember_NetworkFrameworkConfiguration struct { +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 *AWSManagedBlockchainMember_NetworkFabricConfiguration `json:"NetworkFabricConfiguration,omitempty"` + NetworkFabricConfiguration *Member_NetworkFabricConfiguration `json:"NetworkFabricConfiguration,omitempty"` // _deletionPolicy represents a CloudFormation DeletionPolicy _deletionPolicy policies.DeletionPolicy @@ -22,42 +24,42 @@ type AWSManagedBlockchainMember_NetworkFrameworkConfiguration struct { } // AWSCloudFormationType returns the AWS CloudFormation resource type -func (r *AWSManagedBlockchainMember_NetworkFrameworkConfiguration) AWSCloudFormationType() string { +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 *AWSManagedBlockchainMember_NetworkFrameworkConfiguration) DependsOn() []string { +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 *AWSManagedBlockchainMember_NetworkFrameworkConfiguration) SetDependsOn(dependencies []string) { +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 *AWSManagedBlockchainMember_NetworkFrameworkConfiguration) Metadata() map[string]interface{} { +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 *AWSManagedBlockchainMember_NetworkFrameworkConfiguration) SetMetadata(metadata map[string]interface{}) { +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 *AWSManagedBlockchainMember_NetworkFrameworkConfiguration) DeletionPolicy() policies.DeletionPolicy { +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 *AWSManagedBlockchainMember_NetworkFrameworkConfiguration) SetDeletionPolicy(policy policies.DeletionPolicy) { +func (r *Member_NetworkFrameworkConfiguration) SetDeletionPolicy(policy policies.DeletionPolicy) { r._deletionPolicy = policy } diff --git a/cloudformation/resources/aws-managedblockchain-member_votingpolicy.go b/cloudformation/managedblockchain/aws-managedblockchain-member_votingpolicy.go similarity index 67% rename from cloudformation/resources/aws-managedblockchain-member_votingpolicy.go rename to cloudformation/managedblockchain/aws-managedblockchain-member_votingpolicy.go index b0f2761e4d..db5d13d0cd 100644 --- a/cloudformation/resources/aws-managedblockchain-member_votingpolicy.go +++ b/cloudformation/managedblockchain/aws-managedblockchain-member_votingpolicy.go @@ -1,15 +1,17 @@ -package resources +package managedblockchain -import "github.com/awslabs/goformation/v2/cloudformation/policies" +import ( + "github.com/awslabs/goformation/v3/cloudformation/policies" +) -// AWSManagedBlockchainMember_VotingPolicy AWS CloudFormation Resource (AWS::ManagedBlockchain::Member.VotingPolicy) +// 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 AWSManagedBlockchainMember_VotingPolicy struct { +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 *AWSManagedBlockchainMember_ApprovalThresholdPolicy `json:"ApprovalThresholdPolicy,omitempty"` + ApprovalThresholdPolicy *Member_ApprovalThresholdPolicy `json:"ApprovalThresholdPolicy,omitempty"` // _deletionPolicy represents a CloudFormation DeletionPolicy _deletionPolicy policies.DeletionPolicy @@ -22,42 +24,42 @@ type AWSManagedBlockchainMember_VotingPolicy struct { } // AWSCloudFormationType returns the AWS CloudFormation resource type -func (r *AWSManagedBlockchainMember_VotingPolicy) AWSCloudFormationType() string { +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 *AWSManagedBlockchainMember_VotingPolicy) DependsOn() []string { +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 *AWSManagedBlockchainMember_VotingPolicy) SetDependsOn(dependencies []string) { +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 *AWSManagedBlockchainMember_VotingPolicy) Metadata() map[string]interface{} { +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 *AWSManagedBlockchainMember_VotingPolicy) SetMetadata(metadata map[string]interface{}) { +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 *AWSManagedBlockchainMember_VotingPolicy) DeletionPolicy() policies.DeletionPolicy { +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 *AWSManagedBlockchainMember_VotingPolicy) SetDeletionPolicy(policy policies.DeletionPolicy) { +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/resources/aws-managedblockchain-node_nodeconfiguration.go b/cloudformation/managedblockchain/aws-managedblockchain-node_nodeconfiguration.go similarity index 72% rename from cloudformation/resources/aws-managedblockchain-node_nodeconfiguration.go rename to cloudformation/managedblockchain/aws-managedblockchain-node_nodeconfiguration.go index a875f57d31..86d39ed284 100644 --- a/cloudformation/resources/aws-managedblockchain-node_nodeconfiguration.go +++ b/cloudformation/managedblockchain/aws-managedblockchain-node_nodeconfiguration.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" +) -// AWSManagedBlockchainNode_NodeConfiguration AWS CloudFormation Resource (AWS::ManagedBlockchain::Node.NodeConfiguration) +// 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 AWSManagedBlockchainNode_NodeConfiguration struct { +type Node_NodeConfiguration struct { // AvailabilityZone AWS CloudFormation Property // Required: true @@ -27,42 +29,42 @@ type AWSManagedBlockchainNode_NodeConfiguration struct { } // AWSCloudFormationType returns the AWS CloudFormation resource type -func (r *AWSManagedBlockchainNode_NodeConfiguration) AWSCloudFormationType() string { +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 *AWSManagedBlockchainNode_NodeConfiguration) DependsOn() []string { +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 *AWSManagedBlockchainNode_NodeConfiguration) SetDependsOn(dependencies []string) { +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 *AWSManagedBlockchainNode_NodeConfiguration) Metadata() map[string]interface{} { +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 *AWSManagedBlockchainNode_NodeConfiguration) SetMetadata(metadata map[string]interface{}) { +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 *AWSManagedBlockchainNode_NodeConfiguration) DeletionPolicy() policies.DeletionPolicy { +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 *AWSManagedBlockchainNode_NodeConfiguration) SetDeletionPolicy(policy policies.DeletionPolicy) { +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/resources/aws-medialive-channel_aribsourcesettings.go b/cloudformation/medialive/aws-medialive-channel_aribsourcesettings.go similarity index 67% rename from cloudformation/resources/aws-medialive-channel_aribsourcesettings.go rename to cloudformation/medialive/aws-medialive-channel_aribsourcesettings.go index 85a6015b76..56f15267d1 100644 --- a/cloudformation/resources/aws-medialive-channel_aribsourcesettings.go +++ b/cloudformation/medialive/aws-medialive-channel_aribsourcesettings.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_AribSourceSettings AWS CloudFormation Resource (AWS::MediaLive::Channel.AribSourceSettings) +// 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 AWSMediaLiveChannel_AribSourceSettings struct { +type Channel_AribSourceSettings struct { // _deletionPolicy represents a CloudFormation DeletionPolicy _deletionPolicy policies.DeletionPolicy @@ -17,42 +19,42 @@ type AWSMediaLiveChannel_AribSourceSettings struct { } // AWSCloudFormationType returns the AWS CloudFormation resource type -func (r *AWSMediaLiveChannel_AribSourceSettings) AWSCloudFormationType() string { +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 *AWSMediaLiveChannel_AribSourceSettings) DependsOn() []string { +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 *AWSMediaLiveChannel_AribSourceSettings) SetDependsOn(dependencies []string) { +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 *AWSMediaLiveChannel_AribSourceSettings) Metadata() map[string]interface{} { +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 *AWSMediaLiveChannel_AribSourceSettings) SetMetadata(metadata map[string]interface{}) { +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 *AWSMediaLiveChannel_AribSourceSettings) DeletionPolicy() policies.DeletionPolicy { +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 *AWSMediaLiveChannel_AribSourceSettings) SetDeletionPolicy(policy policies.DeletionPolicy) { +func (r *Channel_AribSourceSettings) SetDeletionPolicy(policy policies.DeletionPolicy) { r._deletionPolicy = policy } diff --git a/cloudformation/resources/aws-medialive-channel_audiolanguageselection.go b/cloudformation/medialive/aws-medialive-channel_audiolanguageselection.go similarity index 73% rename from cloudformation/resources/aws-medialive-channel_audiolanguageselection.go rename to cloudformation/medialive/aws-medialive-channel_audiolanguageselection.go index 565fe06a31..42c31f6740 100644 --- a/cloudformation/resources/aws-medialive-channel_audiolanguageselection.go +++ b/cloudformation/medialive/aws-medialive-channel_audiolanguageselection.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_AudioLanguageSelection AWS CloudFormation Resource (AWS::MediaLive::Channel.AudioLanguageSelection) +// 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 AWSMediaLiveChannel_AudioLanguageSelection struct { +type Channel_AudioLanguageSelection struct { // LanguageCode AWS CloudFormation Property // Required: false @@ -27,42 +29,42 @@ type AWSMediaLiveChannel_AudioLanguageSelection struct { } // AWSCloudFormationType returns the AWS CloudFormation resource type -func (r *AWSMediaLiveChannel_AudioLanguageSelection) AWSCloudFormationType() string { +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 *AWSMediaLiveChannel_AudioLanguageSelection) DependsOn() []string { +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 *AWSMediaLiveChannel_AudioLanguageSelection) SetDependsOn(dependencies []string) { +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 *AWSMediaLiveChannel_AudioLanguageSelection) Metadata() map[string]interface{} { +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 *AWSMediaLiveChannel_AudioLanguageSelection) SetMetadata(metadata map[string]interface{}) { +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 *AWSMediaLiveChannel_AudioLanguageSelection) DeletionPolicy() policies.DeletionPolicy { +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 *AWSMediaLiveChannel_AudioLanguageSelection) SetDeletionPolicy(policy policies.DeletionPolicy) { +func (r *Channel_AudioLanguageSelection) SetDeletionPolicy(policy policies.DeletionPolicy) { r._deletionPolicy = policy } diff --git a/cloudformation/resources/aws-medialive-channel_audiopidselection.go b/cloudformation/medialive/aws-medialive-channel_audiopidselection.go similarity index 70% rename from cloudformation/resources/aws-medialive-channel_audiopidselection.go rename to cloudformation/medialive/aws-medialive-channel_audiopidselection.go index 77aae7e543..952051f54a 100644 --- a/cloudformation/resources/aws-medialive-channel_audiopidselection.go +++ b/cloudformation/medialive/aws-medialive-channel_audiopidselection.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_AudioPidSelection AWS CloudFormation Resource (AWS::MediaLive::Channel.AudioPidSelection) +// 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 AWSMediaLiveChannel_AudioPidSelection struct { +type Channel_AudioPidSelection struct { // Pid AWS CloudFormation Property // Required: false @@ -22,42 +24,42 @@ type AWSMediaLiveChannel_AudioPidSelection struct { } // AWSCloudFormationType returns the AWS CloudFormation resource type -func (r *AWSMediaLiveChannel_AudioPidSelection) AWSCloudFormationType() string { +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 *AWSMediaLiveChannel_AudioPidSelection) DependsOn() []string { +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 *AWSMediaLiveChannel_AudioPidSelection) SetDependsOn(dependencies []string) { +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 *AWSMediaLiveChannel_AudioPidSelection) Metadata() map[string]interface{} { +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 *AWSMediaLiveChannel_AudioPidSelection) SetMetadata(metadata map[string]interface{}) { +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 *AWSMediaLiveChannel_AudioPidSelection) DeletionPolicy() policies.DeletionPolicy { +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 *AWSMediaLiveChannel_AudioPidSelection) SetDeletionPolicy(policy policies.DeletionPolicy) { +func (r *Channel_AudioPidSelection) SetDeletionPolicy(policy policies.DeletionPolicy) { r._deletionPolicy = policy } diff --git a/cloudformation/resources/aws-medialive-channel_audioselector.go b/cloudformation/medialive/aws-medialive-channel_audioselector.go similarity index 71% rename from cloudformation/resources/aws-medialive-channel_audioselector.go rename to cloudformation/medialive/aws-medialive-channel_audioselector.go index 0e6b1515d4..34aa991be3 100644 --- a/cloudformation/resources/aws-medialive-channel_audioselector.go +++ b/cloudformation/medialive/aws-medialive-channel_audioselector.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_AudioSelector AWS CloudFormation Resource (AWS::MediaLive::Channel.AudioSelector) +// 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 AWSMediaLiveChannel_AudioSelector struct { +type Channel_AudioSelector struct { // Name AWS CloudFormation Property // Required: false @@ -14,7 +16,7 @@ type AWSMediaLiveChannel_AudioSelector struct { // 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"` + SelectorSettings *Channel_AudioSelectorSettings `json:"SelectorSettings,omitempty"` // _deletionPolicy represents a CloudFormation DeletionPolicy _deletionPolicy policies.DeletionPolicy @@ -27,42 +29,42 @@ type AWSMediaLiveChannel_AudioSelector struct { } // AWSCloudFormationType returns the AWS CloudFormation resource type -func (r *AWSMediaLiveChannel_AudioSelector) AWSCloudFormationType() string { +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 *AWSMediaLiveChannel_AudioSelector) DependsOn() []string { +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 *AWSMediaLiveChannel_AudioSelector) SetDependsOn(dependencies []string) { +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 *AWSMediaLiveChannel_AudioSelector) Metadata() map[string]interface{} { +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 *AWSMediaLiveChannel_AudioSelector) SetMetadata(metadata map[string]interface{}) { +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 *AWSMediaLiveChannel_AudioSelector) DeletionPolicy() policies.DeletionPolicy { +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 *AWSMediaLiveChannel_AudioSelector) SetDeletionPolicy(policy policies.DeletionPolicy) { +func (r *Channel_AudioSelector) SetDeletionPolicy(policy policies.DeletionPolicy) { r._deletionPolicy = policy } diff --git a/cloudformation/resources/aws-medialive-channel_audioselectorsettings.go b/cloudformation/medialive/aws-medialive-channel_audioselectorsettings.go similarity index 68% rename from cloudformation/resources/aws-medialive-channel_audioselectorsettings.go rename to cloudformation/medialive/aws-medialive-channel_audioselectorsettings.go index dbb78ff53c..a1c905e28f 100644 --- a/cloudformation/resources/aws-medialive-channel_audioselectorsettings.go +++ b/cloudformation/medialive/aws-medialive-channel_audioselectorsettings.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_AudioSelectorSettings AWS CloudFormation Resource (AWS::MediaLive::Channel.AudioSelectorSettings) +// 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 AWSMediaLiveChannel_AudioSelectorSettings struct { +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 *AWSMediaLiveChannel_AudioLanguageSelection `json:"AudioLanguageSelection,omitempty"` + 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 *AWSMediaLiveChannel_AudioPidSelection `json:"AudioPidSelection,omitempty"` + AudioPidSelection *Channel_AudioPidSelection `json:"AudioPidSelection,omitempty"` // _deletionPolicy represents a CloudFormation DeletionPolicy _deletionPolicy policies.DeletionPolicy @@ -27,42 +29,42 @@ type AWSMediaLiveChannel_AudioSelectorSettings struct { } // AWSCloudFormationType returns the AWS CloudFormation resource type -func (r *AWSMediaLiveChannel_AudioSelectorSettings) AWSCloudFormationType() string { +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 *AWSMediaLiveChannel_AudioSelectorSettings) DependsOn() []string { +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 *AWSMediaLiveChannel_AudioSelectorSettings) SetDependsOn(dependencies []string) { +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 *AWSMediaLiveChannel_AudioSelectorSettings) Metadata() map[string]interface{} { +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 *AWSMediaLiveChannel_AudioSelectorSettings) SetMetadata(metadata map[string]interface{}) { +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 *AWSMediaLiveChannel_AudioSelectorSettings) DeletionPolicy() policies.DeletionPolicy { +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 *AWSMediaLiveChannel_AudioSelectorSettings) SetDeletionPolicy(policy policies.DeletionPolicy) { +func (r *Channel_AudioSelectorSettings) SetDeletionPolicy(policy policies.DeletionPolicy) { r._deletionPolicy = policy } diff --git a/cloudformation/resources/aws-medialive-channel_captionselector.go b/cloudformation/medialive/aws-medialive-channel_captionselector.go similarity index 73% rename from cloudformation/resources/aws-medialive-channel_captionselector.go rename to cloudformation/medialive/aws-medialive-channel_captionselector.go index aacba6d0ab..71317f0401 100644 --- a/cloudformation/resources/aws-medialive-channel_captionselector.go +++ b/cloudformation/medialive/aws-medialive-channel_captionselector.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_CaptionSelector AWS CloudFormation Resource (AWS::MediaLive::Channel.CaptionSelector) +// 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 AWSMediaLiveChannel_CaptionSelector struct { +type Channel_CaptionSelector struct { // LanguageCode AWS CloudFormation Property // Required: false @@ -19,7 +21,7 @@ type AWSMediaLiveChannel_CaptionSelector struct { // 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"` + SelectorSettings *Channel_CaptionSelectorSettings `json:"SelectorSettings,omitempty"` // _deletionPolicy represents a CloudFormation DeletionPolicy _deletionPolicy policies.DeletionPolicy @@ -32,42 +34,42 @@ type AWSMediaLiveChannel_CaptionSelector struct { } // AWSCloudFormationType returns the AWS CloudFormation resource type -func (r *AWSMediaLiveChannel_CaptionSelector) AWSCloudFormationType() string { +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 *AWSMediaLiveChannel_CaptionSelector) DependsOn() []string { +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 *AWSMediaLiveChannel_CaptionSelector) SetDependsOn(dependencies []string) { +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 *AWSMediaLiveChannel_CaptionSelector) Metadata() map[string]interface{} { +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 *AWSMediaLiveChannel_CaptionSelector) SetMetadata(metadata map[string]interface{}) { +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 *AWSMediaLiveChannel_CaptionSelector) DeletionPolicy() policies.DeletionPolicy { +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 *AWSMediaLiveChannel_CaptionSelector) SetDeletionPolicy(policy policies.DeletionPolicy) { +func (r *Channel_CaptionSelector) SetDeletionPolicy(policy policies.DeletionPolicy) { r._deletionPolicy = policy } diff --git a/cloudformation/resources/aws-medialive-channel_captionselectorsettings.go b/cloudformation/medialive/aws-medialive-channel_captionselectorsettings.go similarity index 69% rename from cloudformation/resources/aws-medialive-channel_captionselectorsettings.go rename to cloudformation/medialive/aws-medialive-channel_captionselectorsettings.go index 8ac20f8495..c4aeffbda5 100644 --- a/cloudformation/resources/aws-medialive-channel_captionselectorsettings.go +++ b/cloudformation/medialive/aws-medialive-channel_captionselectorsettings.go @@ -1,40 +1,42 @@ -package resources +package medialive -import "github.com/awslabs/goformation/v2/cloudformation/policies" +import ( + "github.com/awslabs/goformation/v3/cloudformation/policies" +) -// AWSMediaLiveChannel_CaptionSelectorSettings AWS CloudFormation Resource (AWS::MediaLive::Channel.CaptionSelectorSettings) +// 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 AWSMediaLiveChannel_CaptionSelectorSettings struct { +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 *AWSMediaLiveChannel_AribSourceSettings `json:"AribSourceSettings,omitempty"` + 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 *AWSMediaLiveChannel_DvbSubSourceSettings `json:"DvbSubSourceSettings,omitempty"` + 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 *AWSMediaLiveChannel_EmbeddedSourceSettings `json:"EmbeddedSourceSettings,omitempty"` + 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 *AWSMediaLiveChannel_Scte20SourceSettings `json:"Scte20SourceSettings,omitempty"` + 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 *AWSMediaLiveChannel_Scte27SourceSettings `json:"Scte27SourceSettings,omitempty"` + 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 *AWSMediaLiveChannel_TeletextSourceSettings `json:"TeletextSourceSettings,omitempty"` + TeletextSourceSettings *Channel_TeletextSourceSettings `json:"TeletextSourceSettings,omitempty"` // _deletionPolicy represents a CloudFormation DeletionPolicy _deletionPolicy policies.DeletionPolicy @@ -47,42 +49,42 @@ type AWSMediaLiveChannel_CaptionSelectorSettings struct { } // AWSCloudFormationType returns the AWS CloudFormation resource type -func (r *AWSMediaLiveChannel_CaptionSelectorSettings) AWSCloudFormationType() string { +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 *AWSMediaLiveChannel_CaptionSelectorSettings) DependsOn() []string { +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 *AWSMediaLiveChannel_CaptionSelectorSettings) SetDependsOn(dependencies []string) { +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 *AWSMediaLiveChannel_CaptionSelectorSettings) Metadata() map[string]interface{} { +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 *AWSMediaLiveChannel_CaptionSelectorSettings) SetMetadata(metadata map[string]interface{}) { +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 *AWSMediaLiveChannel_CaptionSelectorSettings) DeletionPolicy() policies.DeletionPolicy { +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 *AWSMediaLiveChannel_CaptionSelectorSettings) SetDeletionPolicy(policy policies.DeletionPolicy) { +func (r *Channel_CaptionSelectorSettings) SetDeletionPolicy(policy policies.DeletionPolicy) { r._deletionPolicy = policy } diff --git a/cloudformation/resources/aws-medialive-channel_dvbsubsourcesettings.go b/cloudformation/medialive/aws-medialive-channel_dvbsubsourcesettings.go similarity index 70% rename from cloudformation/resources/aws-medialive-channel_dvbsubsourcesettings.go rename to cloudformation/medialive/aws-medialive-channel_dvbsubsourcesettings.go index efc2cb03e7..4c5adaa8e6 100644 --- a/cloudformation/resources/aws-medialive-channel_dvbsubsourcesettings.go +++ b/cloudformation/medialive/aws-medialive-channel_dvbsubsourcesettings.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_DvbSubSourceSettings AWS CloudFormation Resource (AWS::MediaLive::Channel.DvbSubSourceSettings) +// 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 AWSMediaLiveChannel_DvbSubSourceSettings struct { +type Channel_DvbSubSourceSettings struct { // Pid AWS CloudFormation Property // Required: false @@ -22,42 +24,42 @@ type AWSMediaLiveChannel_DvbSubSourceSettings struct { } // AWSCloudFormationType returns the AWS CloudFormation resource type -func (r *AWSMediaLiveChannel_DvbSubSourceSettings) AWSCloudFormationType() string { +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 *AWSMediaLiveChannel_DvbSubSourceSettings) DependsOn() []string { +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 *AWSMediaLiveChannel_DvbSubSourceSettings) SetDependsOn(dependencies []string) { +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 *AWSMediaLiveChannel_DvbSubSourceSettings) Metadata() map[string]interface{} { +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 *AWSMediaLiveChannel_DvbSubSourceSettings) SetMetadata(metadata map[string]interface{}) { +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 *AWSMediaLiveChannel_DvbSubSourceSettings) DeletionPolicy() policies.DeletionPolicy { +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 *AWSMediaLiveChannel_DvbSubSourceSettings) SetDeletionPolicy(policy policies.DeletionPolicy) { +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/resources/aws-medialive-channel_inputattachment.go b/cloudformation/medialive/aws-medialive-channel_inputattachment.go similarity index 74% rename from cloudformation/resources/aws-medialive-channel_inputattachment.go rename to cloudformation/medialive/aws-medialive-channel_inputattachment.go index 7b1c8f2c48..ac7386d92c 100644 --- a/cloudformation/resources/aws-medialive-channel_inputattachment.go +++ b/cloudformation/medialive/aws-medialive-channel_inputattachment.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_InputAttachment AWS CloudFormation Resource (AWS::MediaLive::Channel.InputAttachment) +// 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 AWSMediaLiveChannel_InputAttachment struct { +type Channel_InputAttachment struct { // InputAttachmentName AWS CloudFormation Property // Required: false @@ -19,7 +21,7 @@ type AWSMediaLiveChannel_InputAttachment struct { // 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"` + InputSettings *Channel_InputSettings `json:"InputSettings,omitempty"` // _deletionPolicy represents a CloudFormation DeletionPolicy _deletionPolicy policies.DeletionPolicy @@ -32,42 +34,42 @@ type AWSMediaLiveChannel_InputAttachment struct { } // AWSCloudFormationType returns the AWS CloudFormation resource type -func (r *AWSMediaLiveChannel_InputAttachment) AWSCloudFormationType() string { +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 *AWSMediaLiveChannel_InputAttachment) DependsOn() []string { +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 *AWSMediaLiveChannel_InputAttachment) SetDependsOn(dependencies []string) { +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 *AWSMediaLiveChannel_InputAttachment) Metadata() map[string]interface{} { +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 *AWSMediaLiveChannel_InputAttachment) SetMetadata(metadata map[string]interface{}) { +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 *AWSMediaLiveChannel_InputAttachment) DeletionPolicy() policies.DeletionPolicy { +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 *AWSMediaLiveChannel_InputAttachment) SetDeletionPolicy(policy policies.DeletionPolicy) { +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/resources/aws-medialive-channel_mediapackageoutputdestinationsettings.go b/cloudformation/medialive/aws-medialive-channel_mediapackageoutputdestinationsettings.go similarity index 67% rename from cloudformation/resources/aws-medialive-channel_mediapackageoutputdestinationsettings.go rename to cloudformation/medialive/aws-medialive-channel_mediapackageoutputdestinationsettings.go index abc0e352a3..f159a140f2 100644 --- a/cloudformation/resources/aws-medialive-channel_mediapackageoutputdestinationsettings.go +++ b/cloudformation/medialive/aws-medialive-channel_mediapackageoutputdestinationsettings.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_MediaPackageOutputDestinationSettings AWS CloudFormation Resource (AWS::MediaLive::Channel.MediaPackageOutputDestinationSettings) +// 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 AWSMediaLiveChannel_MediaPackageOutputDestinationSettings struct { +type Channel_MediaPackageOutputDestinationSettings struct { // ChannelId AWS CloudFormation Property // Required: false @@ -22,42 +24,42 @@ type AWSMediaLiveChannel_MediaPackageOutputDestinationSettings struct { } // AWSCloudFormationType returns the AWS CloudFormation resource type -func (r *AWSMediaLiveChannel_MediaPackageOutputDestinationSettings) AWSCloudFormationType() string { +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 *AWSMediaLiveChannel_MediaPackageOutputDestinationSettings) DependsOn() []string { +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 *AWSMediaLiveChannel_MediaPackageOutputDestinationSettings) SetDependsOn(dependencies []string) { +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 *AWSMediaLiveChannel_MediaPackageOutputDestinationSettings) Metadata() map[string]interface{} { +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 *AWSMediaLiveChannel_MediaPackageOutputDestinationSettings) SetMetadata(metadata map[string]interface{}) { +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 *AWSMediaLiveChannel_MediaPackageOutputDestinationSettings) DeletionPolicy() policies.DeletionPolicy { +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 *AWSMediaLiveChannel_MediaPackageOutputDestinationSettings) SetDeletionPolicy(policy policies.DeletionPolicy) { +func (r *Channel_MediaPackageOutputDestinationSettings) SetDeletionPolicy(policy policies.DeletionPolicy) { r._deletionPolicy = policy } diff --git a/cloudformation/resources/aws-medialive-channel_networkinputsettings.go b/cloudformation/medialive/aws-medialive-channel_networkinputsettings.go similarity index 70% rename from cloudformation/resources/aws-medialive-channel_networkinputsettings.go rename to cloudformation/medialive/aws-medialive-channel_networkinputsettings.go index 10cded4947..d3917ce52b 100644 --- a/cloudformation/resources/aws-medialive-channel_networkinputsettings.go +++ b/cloudformation/medialive/aws-medialive-channel_networkinputsettings.go @@ -1,15 +1,17 @@ -package resources +package medialive -import "github.com/awslabs/goformation/v2/cloudformation/policies" +import ( + "github.com/awslabs/goformation/v3/cloudformation/policies" +) -// AWSMediaLiveChannel_NetworkInputSettings AWS CloudFormation Resource (AWS::MediaLive::Channel.NetworkInputSettings) +// 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 AWSMediaLiveChannel_NetworkInputSettings struct { +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 *AWSMediaLiveChannel_HlsInputSettings `json:"HlsInputSettings,omitempty"` + HlsInputSettings *Channel_HlsInputSettings `json:"HlsInputSettings,omitempty"` // ServerValidation AWS CloudFormation Property // Required: false @@ -27,42 +29,42 @@ type AWSMediaLiveChannel_NetworkInputSettings struct { } // AWSCloudFormationType returns the AWS CloudFormation resource type -func (r *AWSMediaLiveChannel_NetworkInputSettings) AWSCloudFormationType() string { +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 *AWSMediaLiveChannel_NetworkInputSettings) DependsOn() []string { +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 *AWSMediaLiveChannel_NetworkInputSettings) SetDependsOn(dependencies []string) { +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 *AWSMediaLiveChannel_NetworkInputSettings) Metadata() map[string]interface{} { +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 *AWSMediaLiveChannel_NetworkInputSettings) SetMetadata(metadata map[string]interface{}) { +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 *AWSMediaLiveChannel_NetworkInputSettings) DeletionPolicy() policies.DeletionPolicy { +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 *AWSMediaLiveChannel_NetworkInputSettings) SetDeletionPolicy(policy policies.DeletionPolicy) { +func (r *Channel_NetworkInputSettings) SetDeletionPolicy(policy policies.DeletionPolicy) { r._deletionPolicy = policy } diff --git a/cloudformation/resources/aws-medialive-channel_outputdestination.go b/cloudformation/medialive/aws-medialive-channel_outputdestination.go similarity index 70% rename from cloudformation/resources/aws-medialive-channel_outputdestination.go rename to cloudformation/medialive/aws-medialive-channel_outputdestination.go index 57798f7695..ba8f68a243 100644 --- a/cloudformation/resources/aws-medialive-channel_outputdestination.go +++ b/cloudformation/medialive/aws-medialive-channel_outputdestination.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_OutputDestination AWS CloudFormation Resource (AWS::MediaLive::Channel.OutputDestination) +// 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 AWSMediaLiveChannel_OutputDestination struct { +type Channel_OutputDestination struct { // Id AWS CloudFormation Property // Required: false @@ -14,12 +16,12 @@ type AWSMediaLiveChannel_OutputDestination struct { // 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"` + 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 []AWSMediaLiveChannel_OutputDestinationSettings `json:"Settings,omitempty"` + Settings []Channel_OutputDestinationSettings `json:"Settings,omitempty"` // _deletionPolicy represents a CloudFormation DeletionPolicy _deletionPolicy policies.DeletionPolicy @@ -32,42 +34,42 @@ type AWSMediaLiveChannel_OutputDestination struct { } // AWSCloudFormationType returns the AWS CloudFormation resource type -func (r *AWSMediaLiveChannel_OutputDestination) AWSCloudFormationType() string { +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 *AWSMediaLiveChannel_OutputDestination) DependsOn() []string { +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 *AWSMediaLiveChannel_OutputDestination) SetDependsOn(dependencies []string) { +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 *AWSMediaLiveChannel_OutputDestination) Metadata() map[string]interface{} { +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 *AWSMediaLiveChannel_OutputDestination) SetMetadata(metadata map[string]interface{}) { +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 *AWSMediaLiveChannel_OutputDestination) DeletionPolicy() policies.DeletionPolicy { +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 *AWSMediaLiveChannel_OutputDestination) SetDeletionPolicy(policy policies.DeletionPolicy) { +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/resources/aws-medialive-channel_scte20sourcesettings.go b/cloudformation/medialive/aws-medialive-channel_scte20sourcesettings.go similarity index 73% rename from cloudformation/resources/aws-medialive-channel_scte20sourcesettings.go rename to cloudformation/medialive/aws-medialive-channel_scte20sourcesettings.go index 2867ae7149..ebe354dd3e 100644 --- a/cloudformation/resources/aws-medialive-channel_scte20sourcesettings.go +++ b/cloudformation/medialive/aws-medialive-channel_scte20sourcesettings.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_Scte20SourceSettings AWS CloudFormation Resource (AWS::MediaLive::Channel.Scte20SourceSettings) +// 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 AWSMediaLiveChannel_Scte20SourceSettings struct { +type Channel_Scte20SourceSettings struct { // Convert608To708 AWS CloudFormation Property // Required: false @@ -27,42 +29,42 @@ type AWSMediaLiveChannel_Scte20SourceSettings struct { } // AWSCloudFormationType returns the AWS CloudFormation resource type -func (r *AWSMediaLiveChannel_Scte20SourceSettings) AWSCloudFormationType() string { +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 *AWSMediaLiveChannel_Scte20SourceSettings) DependsOn() []string { +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 *AWSMediaLiveChannel_Scte20SourceSettings) SetDependsOn(dependencies []string) { +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 *AWSMediaLiveChannel_Scte20SourceSettings) Metadata() map[string]interface{} { +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 *AWSMediaLiveChannel_Scte20SourceSettings) SetMetadata(metadata map[string]interface{}) { +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 *AWSMediaLiveChannel_Scte20SourceSettings) DeletionPolicy() policies.DeletionPolicy { +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 *AWSMediaLiveChannel_Scte20SourceSettings) SetDeletionPolicy(policy policies.DeletionPolicy) { +func (r *Channel_Scte20SourceSettings) SetDeletionPolicy(policy policies.DeletionPolicy) { r._deletionPolicy = policy } diff --git a/cloudformation/resources/aws-medialive-channel_scte27sourcesettings.go b/cloudformation/medialive/aws-medialive-channel_scte27sourcesettings.go similarity index 70% rename from cloudformation/resources/aws-medialive-channel_scte27sourcesettings.go rename to cloudformation/medialive/aws-medialive-channel_scte27sourcesettings.go index 0c6ee5a427..395e437af5 100644 --- a/cloudformation/resources/aws-medialive-channel_scte27sourcesettings.go +++ b/cloudformation/medialive/aws-medialive-channel_scte27sourcesettings.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_Scte27SourceSettings AWS CloudFormation Resource (AWS::MediaLive::Channel.Scte27SourceSettings) +// 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 AWSMediaLiveChannel_Scte27SourceSettings struct { +type Channel_Scte27SourceSettings struct { // Pid AWS CloudFormation Property // Required: false @@ -22,42 +24,42 @@ type AWSMediaLiveChannel_Scte27SourceSettings struct { } // AWSCloudFormationType returns the AWS CloudFormation resource type -func (r *AWSMediaLiveChannel_Scte27SourceSettings) AWSCloudFormationType() string { +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 *AWSMediaLiveChannel_Scte27SourceSettings) DependsOn() []string { +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 *AWSMediaLiveChannel_Scte27SourceSettings) SetDependsOn(dependencies []string) { +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 *AWSMediaLiveChannel_Scte27SourceSettings) Metadata() map[string]interface{} { +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 *AWSMediaLiveChannel_Scte27SourceSettings) SetMetadata(metadata map[string]interface{}) { +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 *AWSMediaLiveChannel_Scte27SourceSettings) DeletionPolicy() policies.DeletionPolicy { +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 *AWSMediaLiveChannel_Scte27SourceSettings) SetDeletionPolicy(policy policies.DeletionPolicy) { +func (r *Channel_Scte27SourceSettings) SetDeletionPolicy(policy policies.DeletionPolicy) { r._deletionPolicy = policy } diff --git a/cloudformation/resources/aws-medialive-channel_teletextsourcesettings.go b/cloudformation/medialive/aws-medialive-channel_teletextsourcesettings.go similarity index 69% rename from cloudformation/resources/aws-medialive-channel_teletextsourcesettings.go rename to cloudformation/medialive/aws-medialive-channel_teletextsourcesettings.go index d71b737383..8d56b3b704 100644 --- a/cloudformation/resources/aws-medialive-channel_teletextsourcesettings.go +++ b/cloudformation/medialive/aws-medialive-channel_teletextsourcesettings.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_TeletextSourceSettings AWS CloudFormation Resource (AWS::MediaLive::Channel.TeletextSourceSettings) +// 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 AWSMediaLiveChannel_TeletextSourceSettings struct { +type Channel_TeletextSourceSettings struct { // PageNumber AWS CloudFormation Property // Required: false @@ -22,42 +24,42 @@ type AWSMediaLiveChannel_TeletextSourceSettings struct { } // AWSCloudFormationType returns the AWS CloudFormation resource type -func (r *AWSMediaLiveChannel_TeletextSourceSettings) AWSCloudFormationType() string { +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 *AWSMediaLiveChannel_TeletextSourceSettings) DependsOn() []string { +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 *AWSMediaLiveChannel_TeletextSourceSettings) SetDependsOn(dependencies []string) { +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 *AWSMediaLiveChannel_TeletextSourceSettings) Metadata() map[string]interface{} { +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 *AWSMediaLiveChannel_TeletextSourceSettings) SetMetadata(metadata map[string]interface{}) { +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 *AWSMediaLiveChannel_TeletextSourceSettings) DeletionPolicy() policies.DeletionPolicy { +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 *AWSMediaLiveChannel_TeletextSourceSettings) SetDeletionPolicy(policy policies.DeletionPolicy) { +func (r *Channel_TeletextSourceSettings) SetDeletionPolicy(policy policies.DeletionPolicy) { r._deletionPolicy = policy } diff --git a/cloudformation/resources/aws-medialive-channel_videoselector.go b/cloudformation/medialive/aws-medialive-channel_videoselector.go similarity index 74% rename from cloudformation/resources/aws-medialive-channel_videoselector.go rename to cloudformation/medialive/aws-medialive-channel_videoselector.go index 6c91eff7f3..91263bc887 100644 --- a/cloudformation/resources/aws-medialive-channel_videoselector.go +++ b/cloudformation/medialive/aws-medialive-channel_videoselector.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_VideoSelector AWS CloudFormation Resource (AWS::MediaLive::Channel.VideoSelector) +// 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 AWSMediaLiveChannel_VideoSelector struct { +type Channel_VideoSelector struct { // ColorSpace AWS CloudFormation Property // Required: false @@ -19,7 +21,7 @@ type AWSMediaLiveChannel_VideoSelector struct { // 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"` + SelectorSettings *Channel_VideoSelectorSettings `json:"SelectorSettings,omitempty"` // _deletionPolicy represents a CloudFormation DeletionPolicy _deletionPolicy policies.DeletionPolicy @@ -32,42 +34,42 @@ type AWSMediaLiveChannel_VideoSelector struct { } // AWSCloudFormationType returns the AWS CloudFormation resource type -func (r *AWSMediaLiveChannel_VideoSelector) AWSCloudFormationType() string { +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 *AWSMediaLiveChannel_VideoSelector) DependsOn() []string { +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 *AWSMediaLiveChannel_VideoSelector) SetDependsOn(dependencies []string) { +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 *AWSMediaLiveChannel_VideoSelector) Metadata() map[string]interface{} { +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 *AWSMediaLiveChannel_VideoSelector) SetMetadata(metadata map[string]interface{}) { +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 *AWSMediaLiveChannel_VideoSelector) DeletionPolicy() policies.DeletionPolicy { +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 *AWSMediaLiveChannel_VideoSelector) SetDeletionPolicy(policy policies.DeletionPolicy) { +func (r *Channel_VideoSelector) SetDeletionPolicy(policy policies.DeletionPolicy) { r._deletionPolicy = policy } diff --git a/cloudformation/resources/aws-medialive-channel_videoselectorpid.go b/cloudformation/medialive/aws-medialive-channel_videoselectorpid.go similarity index 70% rename from cloudformation/resources/aws-medialive-channel_videoselectorpid.go rename to cloudformation/medialive/aws-medialive-channel_videoselectorpid.go index 8bd6d980bc..6970cff46a 100644 --- a/cloudformation/resources/aws-medialive-channel_videoselectorpid.go +++ b/cloudformation/medialive/aws-medialive-channel_videoselectorpid.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_VideoSelectorPid AWS CloudFormation Resource (AWS::MediaLive::Channel.VideoSelectorPid) +// 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 AWSMediaLiveChannel_VideoSelectorPid struct { +type Channel_VideoSelectorPid struct { // Pid AWS CloudFormation Property // Required: false @@ -22,42 +24,42 @@ type AWSMediaLiveChannel_VideoSelectorPid struct { } // AWSCloudFormationType returns the AWS CloudFormation resource type -func (r *AWSMediaLiveChannel_VideoSelectorPid) AWSCloudFormationType() string { +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 *AWSMediaLiveChannel_VideoSelectorPid) DependsOn() []string { +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 *AWSMediaLiveChannel_VideoSelectorPid) SetDependsOn(dependencies []string) { +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 *AWSMediaLiveChannel_VideoSelectorPid) Metadata() map[string]interface{} { +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 *AWSMediaLiveChannel_VideoSelectorPid) SetMetadata(metadata map[string]interface{}) { +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 *AWSMediaLiveChannel_VideoSelectorPid) DeletionPolicy() policies.DeletionPolicy { +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 *AWSMediaLiveChannel_VideoSelectorPid) SetDeletionPolicy(policy policies.DeletionPolicy) { +func (r *Channel_VideoSelectorPid) SetDeletionPolicy(policy policies.DeletionPolicy) { r._deletionPolicy = policy } diff --git a/cloudformation/resources/aws-medialive-channel_videoselectorprogramid.go b/cloudformation/medialive/aws-medialive-channel_videoselectorprogramid.go similarity index 69% rename from cloudformation/resources/aws-medialive-channel_videoselectorprogramid.go rename to cloudformation/medialive/aws-medialive-channel_videoselectorprogramid.go index a9e9c85e67..59c1ff1f1c 100644 --- a/cloudformation/resources/aws-medialive-channel_videoselectorprogramid.go +++ b/cloudformation/medialive/aws-medialive-channel_videoselectorprogramid.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_VideoSelectorProgramId AWS CloudFormation Resource (AWS::MediaLive::Channel.VideoSelectorProgramId) +// 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 AWSMediaLiveChannel_VideoSelectorProgramId struct { +type Channel_VideoSelectorProgramId struct { // ProgramId AWS CloudFormation Property // Required: false @@ -22,42 +24,42 @@ type AWSMediaLiveChannel_VideoSelectorProgramId struct { } // AWSCloudFormationType returns the AWS CloudFormation resource type -func (r *AWSMediaLiveChannel_VideoSelectorProgramId) AWSCloudFormationType() string { +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 *AWSMediaLiveChannel_VideoSelectorProgramId) DependsOn() []string { +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 *AWSMediaLiveChannel_VideoSelectorProgramId) SetDependsOn(dependencies []string) { +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 *AWSMediaLiveChannel_VideoSelectorProgramId) Metadata() map[string]interface{} { +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 *AWSMediaLiveChannel_VideoSelectorProgramId) SetMetadata(metadata map[string]interface{}) { +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 *AWSMediaLiveChannel_VideoSelectorProgramId) DeletionPolicy() policies.DeletionPolicy { +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 *AWSMediaLiveChannel_VideoSelectorProgramId) SetDeletionPolicy(policy policies.DeletionPolicy) { +func (r *Channel_VideoSelectorProgramId) SetDeletionPolicy(policy policies.DeletionPolicy) { r._deletionPolicy = policy } diff --git a/cloudformation/resources/aws-medialive-channel_videoselectorsettings.go b/cloudformation/medialive/aws-medialive-channel_videoselectorsettings.go similarity index 68% rename from cloudformation/resources/aws-medialive-channel_videoselectorsettings.go rename to cloudformation/medialive/aws-medialive-channel_videoselectorsettings.go index 05be9c3918..f46c1db983 100644 --- a/cloudformation/resources/aws-medialive-channel_videoselectorsettings.go +++ b/cloudformation/medialive/aws-medialive-channel_videoselectorsettings.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_VideoSelectorSettings AWS CloudFormation Resource (AWS::MediaLive::Channel.VideoSelectorSettings) +// 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 AWSMediaLiveChannel_VideoSelectorSettings struct { +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 *AWSMediaLiveChannel_VideoSelectorPid `json:"VideoSelectorPid,omitempty"` + 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 *AWSMediaLiveChannel_VideoSelectorProgramId `json:"VideoSelectorProgramId,omitempty"` + VideoSelectorProgramId *Channel_VideoSelectorProgramId `json:"VideoSelectorProgramId,omitempty"` // _deletionPolicy represents a CloudFormation DeletionPolicy _deletionPolicy policies.DeletionPolicy @@ -27,42 +29,42 @@ type AWSMediaLiveChannel_VideoSelectorSettings struct { } // AWSCloudFormationType returns the AWS CloudFormation resource type -func (r *AWSMediaLiveChannel_VideoSelectorSettings) AWSCloudFormationType() string { +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 *AWSMediaLiveChannel_VideoSelectorSettings) DependsOn() []string { +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 *AWSMediaLiveChannel_VideoSelectorSettings) SetDependsOn(dependencies []string) { +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 *AWSMediaLiveChannel_VideoSelectorSettings) Metadata() map[string]interface{} { +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 *AWSMediaLiveChannel_VideoSelectorSettings) SetMetadata(metadata map[string]interface{}) { +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 *AWSMediaLiveChannel_VideoSelectorSettings) DeletionPolicy() policies.DeletionPolicy { +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 *AWSMediaLiveChannel_VideoSelectorSettings) SetDeletionPolicy(policy policies.DeletionPolicy) { +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/resources/aws-medialive-input_inputdestinationrequest.go b/cloudformation/medialive/aws-medialive-input_inputdestinationrequest.go similarity index 70% rename from cloudformation/resources/aws-medialive-input_inputdestinationrequest.go rename to cloudformation/medialive/aws-medialive-input_inputdestinationrequest.go index b78e863f3d..ab477bf04a 100644 --- a/cloudformation/resources/aws-medialive-input_inputdestinationrequest.go +++ b/cloudformation/medialive/aws-medialive-input_inputdestinationrequest.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_InputDestinationRequest AWS CloudFormation Resource (AWS::MediaLive::Input.InputDestinationRequest) +// 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 AWSMediaLiveInput_InputDestinationRequest struct { +type Input_InputDestinationRequest struct { // StreamName AWS CloudFormation Property // Required: false @@ -22,42 +24,42 @@ type AWSMediaLiveInput_InputDestinationRequest struct { } // AWSCloudFormationType returns the AWS CloudFormation resource type -func (r *AWSMediaLiveInput_InputDestinationRequest) AWSCloudFormationType() string { +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 *AWSMediaLiveInput_InputDestinationRequest) DependsOn() []string { +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 *AWSMediaLiveInput_InputDestinationRequest) SetDependsOn(dependencies []string) { +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 *AWSMediaLiveInput_InputDestinationRequest) Metadata() map[string]interface{} { +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 *AWSMediaLiveInput_InputDestinationRequest) SetMetadata(metadata map[string]interface{}) { +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 *AWSMediaLiveInput_InputDestinationRequest) DeletionPolicy() policies.DeletionPolicy { +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 *AWSMediaLiveInput_InputDestinationRequest) SetDeletionPolicy(policy policies.DeletionPolicy) { +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/resources/aws-medialive-input_inputvpcrequest.go b/cloudformation/medialive/aws-medialive-input_inputvpcrequest.go similarity index 74% rename from cloudformation/resources/aws-medialive-input_inputvpcrequest.go rename to cloudformation/medialive/aws-medialive-input_inputvpcrequest.go index d71cebd6d4..316a5d0d91 100644 --- a/cloudformation/resources/aws-medialive-input_inputvpcrequest.go +++ b/cloudformation/medialive/aws-medialive-input_inputvpcrequest.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_InputVpcRequest AWS CloudFormation Resource (AWS::MediaLive::Input.InputVpcRequest) +// 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 AWSMediaLiveInput_InputVpcRequest struct { +type Input_InputVpcRequest struct { // SecurityGroupIds AWS CloudFormation Property // Required: false @@ -27,42 +29,42 @@ type AWSMediaLiveInput_InputVpcRequest struct { } // AWSCloudFormationType returns the AWS CloudFormation resource type -func (r *AWSMediaLiveInput_InputVpcRequest) AWSCloudFormationType() string { +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 *AWSMediaLiveInput_InputVpcRequest) DependsOn() []string { +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 *AWSMediaLiveInput_InputVpcRequest) SetDependsOn(dependencies []string) { +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 *AWSMediaLiveInput_InputVpcRequest) Metadata() map[string]interface{} { +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 *AWSMediaLiveInput_InputVpcRequest) SetMetadata(metadata map[string]interface{}) { +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 *AWSMediaLiveInput_InputVpcRequest) DeletionPolicy() policies.DeletionPolicy { +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 *AWSMediaLiveInput_InputVpcRequest) SetDeletionPolicy(policy policies.DeletionPolicy) { +func (r *Input_InputVpcRequest) SetDeletionPolicy(policy policies.DeletionPolicy) { r._deletionPolicy = policy } diff --git a/cloudformation/resources/aws-medialive-input_mediaconnectflowrequest.go b/cloudformation/medialive/aws-medialive-input_mediaconnectflowrequest.go similarity index 70% rename from cloudformation/resources/aws-medialive-input_mediaconnectflowrequest.go rename to cloudformation/medialive/aws-medialive-input_mediaconnectflowrequest.go index c69c7fa7cb..4e38546736 100644 --- a/cloudformation/resources/aws-medialive-input_mediaconnectflowrequest.go +++ b/cloudformation/medialive/aws-medialive-input_mediaconnectflowrequest.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_MediaConnectFlowRequest AWS CloudFormation Resource (AWS::MediaLive::Input.MediaConnectFlowRequest) +// 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 AWSMediaLiveInput_MediaConnectFlowRequest struct { +type Input_MediaConnectFlowRequest struct { // FlowArn AWS CloudFormation Property // Required: false @@ -22,42 +24,42 @@ type AWSMediaLiveInput_MediaConnectFlowRequest struct { } // AWSCloudFormationType returns the AWS CloudFormation resource type -func (r *AWSMediaLiveInput_MediaConnectFlowRequest) AWSCloudFormationType() string { +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 *AWSMediaLiveInput_MediaConnectFlowRequest) DependsOn() []string { +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 *AWSMediaLiveInput_MediaConnectFlowRequest) SetDependsOn(dependencies []string) { +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 *AWSMediaLiveInput_MediaConnectFlowRequest) Metadata() map[string]interface{} { +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 *AWSMediaLiveInput_MediaConnectFlowRequest) SetMetadata(metadata map[string]interface{}) { +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 *AWSMediaLiveInput_MediaConnectFlowRequest) DeletionPolicy() policies.DeletionPolicy { +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 *AWSMediaLiveInput_MediaConnectFlowRequest) SetDeletionPolicy(policy policies.DeletionPolicy) { +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/resources/aws-medialive-inputsecuritygroup_inputwhitelistrulecidr.go b/cloudformation/medialive/aws-medialive-inputsecuritygroup_inputwhitelistrulecidr.go similarity index 67% rename from cloudformation/resources/aws-medialive-inputsecuritygroup_inputwhitelistrulecidr.go rename to cloudformation/medialive/aws-medialive-inputsecuritygroup_inputwhitelistrulecidr.go index d77051053b..9f5d013fa3 100644 --- a/cloudformation/resources/aws-medialive-inputsecuritygroup_inputwhitelistrulecidr.go +++ b/cloudformation/medialive/aws-medialive-inputsecuritygroup_inputwhitelistrulecidr.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" +) -// AWSMediaLiveInputSecurityGroup_InputWhitelistRuleCidr AWS CloudFormation Resource (AWS::MediaLive::InputSecurityGroup.InputWhitelistRuleCidr) +// 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 AWSMediaLiveInputSecurityGroup_InputWhitelistRuleCidr struct { +type InputSecurityGroup_InputWhitelistRuleCidr struct { // Cidr AWS CloudFormation Property // Required: false @@ -22,42 +24,42 @@ type AWSMediaLiveInputSecurityGroup_InputWhitelistRuleCidr struct { } // AWSCloudFormationType returns the AWS CloudFormation resource type -func (r *AWSMediaLiveInputSecurityGroup_InputWhitelistRuleCidr) AWSCloudFormationType() string { +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 *AWSMediaLiveInputSecurityGroup_InputWhitelistRuleCidr) DependsOn() []string { +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 *AWSMediaLiveInputSecurityGroup_InputWhitelistRuleCidr) SetDependsOn(dependencies []string) { +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 *AWSMediaLiveInputSecurityGroup_InputWhitelistRuleCidr) Metadata() map[string]interface{} { +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 *AWSMediaLiveInputSecurityGroup_InputWhitelistRuleCidr) SetMetadata(metadata map[string]interface{}) { +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 *AWSMediaLiveInputSecurityGroup_InputWhitelistRuleCidr) DeletionPolicy() policies.DeletionPolicy { +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 *AWSMediaLiveInputSecurityGroup_InputWhitelistRuleCidr) SetDeletionPolicy(policy policies.DeletionPolicy) { +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/resources/aws-msk-cluster_clientauthentication.go b/cloudformation/msk/aws-msk-cluster_clientauthentication.go similarity index 69% rename from cloudformation/resources/aws-msk-cluster_clientauthentication.go rename to cloudformation/msk/aws-msk-cluster_clientauthentication.go index e012b2a0f6..18d6762556 100644 --- a/cloudformation/resources/aws-msk-cluster_clientauthentication.go +++ b/cloudformation/msk/aws-msk-cluster_clientauthentication.go @@ -1,15 +1,17 @@ -package resources +package msk -import "github.com/awslabs/goformation/v2/cloudformation/policies" +import ( + "github.com/awslabs/goformation/v3/cloudformation/policies" +) -// AWSMSKCluster_ClientAuthentication AWS CloudFormation Resource (AWS::MSK::Cluster.ClientAuthentication) +// 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 AWSMSKCluster_ClientAuthentication struct { +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 *AWSMSKCluster_Tls `json:"Tls,omitempty"` + Tls *Cluster_Tls `json:"Tls,omitempty"` // _deletionPolicy represents a CloudFormation DeletionPolicy _deletionPolicy policies.DeletionPolicy @@ -22,42 +24,42 @@ type AWSMSKCluster_ClientAuthentication struct { } // AWSCloudFormationType returns the AWS CloudFormation resource type -func (r *AWSMSKCluster_ClientAuthentication) AWSCloudFormationType() string { +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 *AWSMSKCluster_ClientAuthentication) DependsOn() []string { +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 *AWSMSKCluster_ClientAuthentication) SetDependsOn(dependencies []string) { +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 *AWSMSKCluster_ClientAuthentication) Metadata() map[string]interface{} { +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 *AWSMSKCluster_ClientAuthentication) SetMetadata(metadata map[string]interface{}) { +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 *AWSMSKCluster_ClientAuthentication) DeletionPolicy() policies.DeletionPolicy { +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 *AWSMSKCluster_ClientAuthentication) SetDeletionPolicy(policy policies.DeletionPolicy) { +func (r *Cluster_ClientAuthentication) SetDeletionPolicy(policy policies.DeletionPolicy) { r._deletionPolicy = policy } diff --git a/cloudformation/resources/aws-msk-cluster_configurationinfo.go b/cloudformation/msk/aws-msk-cluster_configurationinfo.go similarity index 74% rename from cloudformation/resources/aws-msk-cluster_configurationinfo.go rename to cloudformation/msk/aws-msk-cluster_configurationinfo.go index 262d537b5a..6dadc1d96c 100644 --- a/cloudformation/resources/aws-msk-cluster_configurationinfo.go +++ b/cloudformation/msk/aws-msk-cluster_configurationinfo.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_ConfigurationInfo AWS CloudFormation Resource (AWS::MSK::Cluster.ConfigurationInfo) +// 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 AWSMSKCluster_ConfigurationInfo struct { +type Cluster_ConfigurationInfo struct { // Arn AWS CloudFormation Property // Required: true @@ -27,42 +29,42 @@ type AWSMSKCluster_ConfigurationInfo struct { } // AWSCloudFormationType returns the AWS CloudFormation resource type -func (r *AWSMSKCluster_ConfigurationInfo) AWSCloudFormationType() string { +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 *AWSMSKCluster_ConfigurationInfo) DependsOn() []string { +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 *AWSMSKCluster_ConfigurationInfo) SetDependsOn(dependencies []string) { +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 *AWSMSKCluster_ConfigurationInfo) Metadata() map[string]interface{} { +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 *AWSMSKCluster_ConfigurationInfo) SetMetadata(metadata map[string]interface{}) { +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 *AWSMSKCluster_ConfigurationInfo) DeletionPolicy() policies.DeletionPolicy { +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 *AWSMSKCluster_ConfigurationInfo) SetDeletionPolicy(policy policies.DeletionPolicy) { +func (r *Cluster_ConfigurationInfo) SetDeletionPolicy(policy policies.DeletionPolicy) { r._deletionPolicy = policy } diff --git a/cloudformation/resources/aws-msk-cluster_ebsstorageinfo.go b/cloudformation/msk/aws-msk-cluster_ebsstorageinfo.go similarity index 72% rename from cloudformation/resources/aws-msk-cluster_ebsstorageinfo.go rename to cloudformation/msk/aws-msk-cluster_ebsstorageinfo.go index 098f46d917..c2ea66efc8 100644 --- a/cloudformation/resources/aws-msk-cluster_ebsstorageinfo.go +++ b/cloudformation/msk/aws-msk-cluster_ebsstorageinfo.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_EBSStorageInfo AWS CloudFormation Resource (AWS::MSK::Cluster.EBSStorageInfo) +// 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 AWSMSKCluster_EBSStorageInfo struct { +type Cluster_EBSStorageInfo struct { // VolumeSize AWS CloudFormation Property // Required: false @@ -22,42 +24,42 @@ type AWSMSKCluster_EBSStorageInfo struct { } // AWSCloudFormationType returns the AWS CloudFormation resource type -func (r *AWSMSKCluster_EBSStorageInfo) AWSCloudFormationType() string { +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 *AWSMSKCluster_EBSStorageInfo) DependsOn() []string { +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 *AWSMSKCluster_EBSStorageInfo) SetDependsOn(dependencies []string) { +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 *AWSMSKCluster_EBSStorageInfo) Metadata() map[string]interface{} { +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 *AWSMSKCluster_EBSStorageInfo) SetMetadata(metadata map[string]interface{}) { +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 *AWSMSKCluster_EBSStorageInfo) DeletionPolicy() policies.DeletionPolicy { +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 *AWSMSKCluster_EBSStorageInfo) SetDeletionPolicy(policy policies.DeletionPolicy) { +func (r *Cluster_EBSStorageInfo) SetDeletionPolicy(policy policies.DeletionPolicy) { r._deletionPolicy = policy } diff --git a/cloudformation/resources/aws-msk-cluster_encryptionatrest.go b/cloudformation/msk/aws-msk-cluster_encryptionatrest.go similarity index 72% rename from cloudformation/resources/aws-msk-cluster_encryptionatrest.go rename to cloudformation/msk/aws-msk-cluster_encryptionatrest.go index cbf7c72035..458db53479 100644 --- a/cloudformation/resources/aws-msk-cluster_encryptionatrest.go +++ b/cloudformation/msk/aws-msk-cluster_encryptionatrest.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_EncryptionAtRest AWS CloudFormation Resource (AWS::MSK::Cluster.EncryptionAtRest) +// 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 AWSMSKCluster_EncryptionAtRest struct { +type Cluster_EncryptionAtRest struct { // DataVolumeKMSKeyId AWS CloudFormation Property // Required: true @@ -22,42 +24,42 @@ type AWSMSKCluster_EncryptionAtRest struct { } // AWSCloudFormationType returns the AWS CloudFormation resource type -func (r *AWSMSKCluster_EncryptionAtRest) AWSCloudFormationType() string { +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 *AWSMSKCluster_EncryptionAtRest) DependsOn() []string { +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 *AWSMSKCluster_EncryptionAtRest) SetDependsOn(dependencies []string) { +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 *AWSMSKCluster_EncryptionAtRest) Metadata() map[string]interface{} { +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 *AWSMSKCluster_EncryptionAtRest) SetMetadata(metadata map[string]interface{}) { +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 *AWSMSKCluster_EncryptionAtRest) DeletionPolicy() policies.DeletionPolicy { +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 *AWSMSKCluster_EncryptionAtRest) SetDeletionPolicy(policy policies.DeletionPolicy) { +func (r *Cluster_EncryptionAtRest) SetDeletionPolicy(policy policies.DeletionPolicy) { r._deletionPolicy = policy } diff --git a/cloudformation/resources/aws-msk-cluster_encryptioninfo.go b/cloudformation/msk/aws-msk-cluster_encryptioninfo.go similarity index 70% rename from cloudformation/resources/aws-msk-cluster_encryptioninfo.go rename to cloudformation/msk/aws-msk-cluster_encryptioninfo.go index edbf8795cb..294a4099a2 100644 --- a/cloudformation/resources/aws-msk-cluster_encryptioninfo.go +++ b/cloudformation/msk/aws-msk-cluster_encryptioninfo.go @@ -1,20 +1,22 @@ -package resources +package msk -import "github.com/awslabs/goformation/v2/cloudformation/policies" +import ( + "github.com/awslabs/goformation/v3/cloudformation/policies" +) -// AWSMSKCluster_EncryptionInfo AWS CloudFormation Resource (AWS::MSK::Cluster.EncryptionInfo) +// 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 AWSMSKCluster_EncryptionInfo struct { +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 *AWSMSKCluster_EncryptionAtRest `json:"EncryptionAtRest,omitempty"` + 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 *AWSMSKCluster_EncryptionInTransit `json:"EncryptionInTransit,omitempty"` + EncryptionInTransit *Cluster_EncryptionInTransit `json:"EncryptionInTransit,omitempty"` // _deletionPolicy represents a CloudFormation DeletionPolicy _deletionPolicy policies.DeletionPolicy @@ -27,42 +29,42 @@ type AWSMSKCluster_EncryptionInfo struct { } // AWSCloudFormationType returns the AWS CloudFormation resource type -func (r *AWSMSKCluster_EncryptionInfo) AWSCloudFormationType() string { +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 *AWSMSKCluster_EncryptionInfo) DependsOn() []string { +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 *AWSMSKCluster_EncryptionInfo) SetDependsOn(dependencies []string) { +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 *AWSMSKCluster_EncryptionInfo) Metadata() map[string]interface{} { +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 *AWSMSKCluster_EncryptionInfo) SetMetadata(metadata map[string]interface{}) { +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 *AWSMSKCluster_EncryptionInfo) DeletionPolicy() policies.DeletionPolicy { +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 *AWSMSKCluster_EncryptionInfo) SetDeletionPolicy(policy policies.DeletionPolicy) { +func (r *Cluster_EncryptionInfo) SetDeletionPolicy(policy policies.DeletionPolicy) { r._deletionPolicy = policy } diff --git a/cloudformation/resources/aws-msk-cluster_encryptionintransit.go b/cloudformation/msk/aws-msk-cluster_encryptionintransit.go similarity index 74% rename from cloudformation/resources/aws-msk-cluster_encryptionintransit.go rename to cloudformation/msk/aws-msk-cluster_encryptionintransit.go index 5653c1db70..90ccdebf80 100644 --- a/cloudformation/resources/aws-msk-cluster_encryptionintransit.go +++ b/cloudformation/msk/aws-msk-cluster_encryptionintransit.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_EncryptionInTransit AWS CloudFormation Resource (AWS::MSK::Cluster.EncryptionInTransit) +// 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 AWSMSKCluster_EncryptionInTransit struct { +type Cluster_EncryptionInTransit struct { // ClientBroker AWS CloudFormation Property // Required: false @@ -27,42 +29,42 @@ type AWSMSKCluster_EncryptionInTransit struct { } // AWSCloudFormationType returns the AWS CloudFormation resource type -func (r *AWSMSKCluster_EncryptionInTransit) AWSCloudFormationType() string { +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 *AWSMSKCluster_EncryptionInTransit) DependsOn() []string { +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 *AWSMSKCluster_EncryptionInTransit) SetDependsOn(dependencies []string) { +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 *AWSMSKCluster_EncryptionInTransit) Metadata() map[string]interface{} { +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 *AWSMSKCluster_EncryptionInTransit) SetMetadata(metadata map[string]interface{}) { +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 *AWSMSKCluster_EncryptionInTransit) DeletionPolicy() policies.DeletionPolicy { +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 *AWSMSKCluster_EncryptionInTransit) SetDeletionPolicy(policy policies.DeletionPolicy) { +func (r *Cluster_EncryptionInTransit) SetDeletionPolicy(policy policies.DeletionPolicy) { r._deletionPolicy = policy } diff --git a/cloudformation/resources/aws-msk-cluster_storageinfo.go b/cloudformation/msk/aws-msk-cluster_storageinfo.go similarity index 71% rename from cloudformation/resources/aws-msk-cluster_storageinfo.go rename to cloudformation/msk/aws-msk-cluster_storageinfo.go index 15617af70e..72452c18d3 100644 --- a/cloudformation/resources/aws-msk-cluster_storageinfo.go +++ b/cloudformation/msk/aws-msk-cluster_storageinfo.go @@ -1,15 +1,17 @@ -package resources +package msk -import "github.com/awslabs/goformation/v2/cloudformation/policies" +import ( + "github.com/awslabs/goformation/v3/cloudformation/policies" +) -// AWSMSKCluster_StorageInfo AWS CloudFormation Resource (AWS::MSK::Cluster.StorageInfo) +// 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 AWSMSKCluster_StorageInfo struct { +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 *AWSMSKCluster_EBSStorageInfo `json:"EBSStorageInfo,omitempty"` + EBSStorageInfo *Cluster_EBSStorageInfo `json:"EBSStorageInfo,omitempty"` // _deletionPolicy represents a CloudFormation DeletionPolicy _deletionPolicy policies.DeletionPolicy @@ -22,42 +24,42 @@ type AWSMSKCluster_StorageInfo struct { } // AWSCloudFormationType returns the AWS CloudFormation resource type -func (r *AWSMSKCluster_StorageInfo) AWSCloudFormationType() string { +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 *AWSMSKCluster_StorageInfo) DependsOn() []string { +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 *AWSMSKCluster_StorageInfo) SetDependsOn(dependencies []string) { +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 *AWSMSKCluster_StorageInfo) Metadata() map[string]interface{} { +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 *AWSMSKCluster_StorageInfo) SetMetadata(metadata map[string]interface{}) { +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 *AWSMSKCluster_StorageInfo) DeletionPolicy() policies.DeletionPolicy { +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 *AWSMSKCluster_StorageInfo) SetDeletionPolicy(policy policies.DeletionPolicy) { +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/resources/aws-opsworks-layer_lifecycleeventconfiguration.go b/cloudformation/opsworks/aws-opsworks-layer_lifecycleeventconfiguration.go similarity index 66% rename from cloudformation/resources/aws-opsworks-layer_lifecycleeventconfiguration.go rename to cloudformation/opsworks/aws-opsworks-layer_lifecycleeventconfiguration.go index f98be3d71c..aa69bd1309 100644 --- a/cloudformation/resources/aws-opsworks-layer_lifecycleeventconfiguration.go +++ b/cloudformation/opsworks/aws-opsworks-layer_lifecycleeventconfiguration.go @@ -1,15 +1,17 @@ -package resources +package opsworks -import "github.com/awslabs/goformation/v2/cloudformation/policies" +import ( + "github.com/awslabs/goformation/v3/cloudformation/policies" +) -// AWSOpsWorksLayer_LifecycleEventConfiguration AWS CloudFormation Resource (AWS::OpsWorks::Layer.LifecycleEventConfiguration) +// 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 AWSOpsWorksLayer_LifecycleEventConfiguration struct { +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 *AWSOpsWorksLayer_ShutdownEventConfiguration `json:"ShutdownEventConfiguration,omitempty"` + ShutdownEventConfiguration *Layer_ShutdownEventConfiguration `json:"ShutdownEventConfiguration,omitempty"` // _deletionPolicy represents a CloudFormation DeletionPolicy _deletionPolicy policies.DeletionPolicy @@ -22,42 +24,42 @@ type AWSOpsWorksLayer_LifecycleEventConfiguration struct { } // AWSCloudFormationType returns the AWS CloudFormation resource type -func (r *AWSOpsWorksLayer_LifecycleEventConfiguration) AWSCloudFormationType() string { +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 *AWSOpsWorksLayer_LifecycleEventConfiguration) DependsOn() []string { +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 *AWSOpsWorksLayer_LifecycleEventConfiguration) SetDependsOn(dependencies []string) { +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 *AWSOpsWorksLayer_LifecycleEventConfiguration) Metadata() map[string]interface{} { +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 *AWSOpsWorksLayer_LifecycleEventConfiguration) SetMetadata(metadata map[string]interface{}) { +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 *AWSOpsWorksLayer_LifecycleEventConfiguration) DeletionPolicy() policies.DeletionPolicy { +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 *AWSOpsWorksLayer_LifecycleEventConfiguration) SetDeletionPolicy(policy policies.DeletionPolicy) { +func (r *Layer_LifecycleEventConfiguration) SetDeletionPolicy(policy policies.DeletionPolicy) { r._deletionPolicy = policy } diff --git a/cloudformation/resources/aws-opsworks-layer_loadbasedautoscaling.go b/cloudformation/opsworks/aws-opsworks-layer_loadbasedautoscaling.go similarity index 71% rename from cloudformation/resources/aws-opsworks-layer_loadbasedautoscaling.go rename to cloudformation/opsworks/aws-opsworks-layer_loadbasedautoscaling.go index acde3658ed..a791b7c303 100644 --- a/cloudformation/resources/aws-opsworks-layer_loadbasedautoscaling.go +++ b/cloudformation/opsworks/aws-opsworks-layer_loadbasedautoscaling.go @@ -1,15 +1,17 @@ -package resources +package opsworks -import "github.com/awslabs/goformation/v2/cloudformation/policies" +import ( + "github.com/awslabs/goformation/v3/cloudformation/policies" +) -// AWSOpsWorksLayer_LoadBasedAutoScaling AWS CloudFormation Resource (AWS::OpsWorks::Layer.LoadBasedAutoScaling) +// 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 AWSOpsWorksLayer_LoadBasedAutoScaling struct { +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 *AWSOpsWorksLayer_AutoScalingThresholds `json:"DownScaling,omitempty"` + DownScaling *Layer_AutoScalingThresholds `json:"DownScaling,omitempty"` // Enable AWS CloudFormation Property // Required: false @@ -19,7 +21,7 @@ type AWSOpsWorksLayer_LoadBasedAutoScaling struct { // 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"` + UpScaling *Layer_AutoScalingThresholds `json:"UpScaling,omitempty"` // _deletionPolicy represents a CloudFormation DeletionPolicy _deletionPolicy policies.DeletionPolicy @@ -32,42 +34,42 @@ type AWSOpsWorksLayer_LoadBasedAutoScaling struct { } // AWSCloudFormationType returns the AWS CloudFormation resource type -func (r *AWSOpsWorksLayer_LoadBasedAutoScaling) AWSCloudFormationType() string { +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 *AWSOpsWorksLayer_LoadBasedAutoScaling) DependsOn() []string { +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 *AWSOpsWorksLayer_LoadBasedAutoScaling) SetDependsOn(dependencies []string) { +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 *AWSOpsWorksLayer_LoadBasedAutoScaling) Metadata() map[string]interface{} { +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 *AWSOpsWorksLayer_LoadBasedAutoScaling) SetMetadata(metadata map[string]interface{}) { +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 *AWSOpsWorksLayer_LoadBasedAutoScaling) DeletionPolicy() policies.DeletionPolicy { +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 *AWSOpsWorksLayer_LoadBasedAutoScaling) SetDeletionPolicy(policy policies.DeletionPolicy) { +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/resources/aws-opsworks-layer_shutdowneventconfiguration.go b/cloudformation/opsworks/aws-opsworks-layer_shutdowneventconfiguration.go similarity index 74% rename from cloudformation/resources/aws-opsworks-layer_shutdowneventconfiguration.go rename to cloudformation/opsworks/aws-opsworks-layer_shutdowneventconfiguration.go index 49975a5b19..f7164e1cef 100644 --- a/cloudformation/resources/aws-opsworks-layer_shutdowneventconfiguration.go +++ b/cloudformation/opsworks/aws-opsworks-layer_shutdowneventconfiguration.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_ShutdownEventConfiguration AWS CloudFormation Resource (AWS::OpsWorks::Layer.ShutdownEventConfiguration) +// 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 AWSOpsWorksLayer_ShutdownEventConfiguration struct { +type Layer_ShutdownEventConfiguration struct { // DelayUntilElbConnectionsDrained AWS CloudFormation Property // Required: false @@ -27,42 +29,42 @@ type AWSOpsWorksLayer_ShutdownEventConfiguration struct { } // AWSCloudFormationType returns the AWS CloudFormation resource type -func (r *AWSOpsWorksLayer_ShutdownEventConfiguration) AWSCloudFormationType() string { +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 *AWSOpsWorksLayer_ShutdownEventConfiguration) DependsOn() []string { +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 *AWSOpsWorksLayer_ShutdownEventConfiguration) SetDependsOn(dependencies []string) { +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 *AWSOpsWorksLayer_ShutdownEventConfiguration) Metadata() map[string]interface{} { +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 *AWSOpsWorksLayer_ShutdownEventConfiguration) SetMetadata(metadata map[string]interface{}) { +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 *AWSOpsWorksLayer_ShutdownEventConfiguration) DeletionPolicy() policies.DeletionPolicy { +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 *AWSOpsWorksLayer_ShutdownEventConfiguration) SetDeletionPolicy(policy policies.DeletionPolicy) { +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/resources/aws-opsworks-stack_chefconfiguration.go b/cloudformation/opsworks/aws-opsworks-stack_chefconfiguration.go similarity index 74% rename from cloudformation/resources/aws-opsworks-stack_chefconfiguration.go rename to cloudformation/opsworks/aws-opsworks-stack_chefconfiguration.go index 6f6ba91845..eb3c0cf4c6 100644 --- a/cloudformation/resources/aws-opsworks-stack_chefconfiguration.go +++ b/cloudformation/opsworks/aws-opsworks-stack_chefconfiguration.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_ChefConfiguration AWS CloudFormation Resource (AWS::OpsWorks::Stack.ChefConfiguration) +// 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 AWSOpsWorksStack_ChefConfiguration struct { +type Stack_ChefConfiguration struct { // BerkshelfVersion AWS CloudFormation Property // Required: false @@ -27,42 +29,42 @@ type AWSOpsWorksStack_ChefConfiguration struct { } // AWSCloudFormationType returns the AWS CloudFormation resource type -func (r *AWSOpsWorksStack_ChefConfiguration) AWSCloudFormationType() string { +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 *AWSOpsWorksStack_ChefConfiguration) DependsOn() []string { +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 *AWSOpsWorksStack_ChefConfiguration) SetDependsOn(dependencies []string) { +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 *AWSOpsWorksStack_ChefConfiguration) Metadata() map[string]interface{} { +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 *AWSOpsWorksStack_ChefConfiguration) SetMetadata(metadata map[string]interface{}) { +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 *AWSOpsWorksStack_ChefConfiguration) DeletionPolicy() policies.DeletionPolicy { +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 *AWSOpsWorksStack_ChefConfiguration) SetDeletionPolicy(policy policies.DeletionPolicy) { +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/resources/aws-opsworks-stack_stackconfigurationmanager.go b/cloudformation/opsworks/aws-opsworks-stack_stackconfigurationmanager.go similarity index 71% rename from cloudformation/resources/aws-opsworks-stack_stackconfigurationmanager.go rename to cloudformation/opsworks/aws-opsworks-stack_stackconfigurationmanager.go index 97190c517f..20eeb2de59 100644 --- a/cloudformation/resources/aws-opsworks-stack_stackconfigurationmanager.go +++ b/cloudformation/opsworks/aws-opsworks-stack_stackconfigurationmanager.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_StackConfigurationManager AWS CloudFormation Resource (AWS::OpsWorks::Stack.StackConfigurationManager) +// 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 AWSOpsWorksStack_StackConfigurationManager struct { +type Stack_StackConfigurationManager struct { // Name AWS CloudFormation Property // Required: false @@ -27,42 +29,42 @@ type AWSOpsWorksStack_StackConfigurationManager struct { } // AWSCloudFormationType returns the AWS CloudFormation resource type -func (r *AWSOpsWorksStack_StackConfigurationManager) AWSCloudFormationType() string { +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 *AWSOpsWorksStack_StackConfigurationManager) DependsOn() []string { +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 *AWSOpsWorksStack_StackConfigurationManager) SetDependsOn(dependencies []string) { +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 *AWSOpsWorksStack_StackConfigurationManager) Metadata() map[string]interface{} { +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 *AWSOpsWorksStack_StackConfigurationManager) SetMetadata(metadata map[string]interface{}) { +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 *AWSOpsWorksStack_StackConfigurationManager) DeletionPolicy() policies.DeletionPolicy { +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 *AWSOpsWorksStack_StackConfigurationManager) SetDeletionPolicy(policy policies.DeletionPolicy) { +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/resources/aws-opsworkscm-server_engineattribute.go b/cloudformation/opsworkscm/aws-opsworkscm-server_engineattribute.go similarity index 73% rename from cloudformation/resources/aws-opsworkscm-server_engineattribute.go rename to cloudformation/opsworkscm/aws-opsworkscm-server_engineattribute.go index 8d65ef700c..431b35931f 100644 --- a/cloudformation/resources/aws-opsworkscm-server_engineattribute.go +++ b/cloudformation/opsworkscm/aws-opsworkscm-server_engineattribute.go @@ -1,10 +1,12 @@ -package resources +package opsworkscm -import "github.com/awslabs/goformation/v2/cloudformation/policies" +import ( + "github.com/awslabs/goformation/v3/cloudformation/policies" +) -// AWSOpsWorksCMServer_EngineAttribute AWS CloudFormation Resource (AWS::OpsWorksCM::Server.EngineAttribute) +// 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 AWSOpsWorksCMServer_EngineAttribute struct { +type Server_EngineAttribute struct { // Name AWS CloudFormation Property // Required: false @@ -27,42 +29,42 @@ type AWSOpsWorksCMServer_EngineAttribute struct { } // AWSCloudFormationType returns the AWS CloudFormation resource type -func (r *AWSOpsWorksCMServer_EngineAttribute) AWSCloudFormationType() string { +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 *AWSOpsWorksCMServer_EngineAttribute) DependsOn() []string { +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 *AWSOpsWorksCMServer_EngineAttribute) SetDependsOn(dependencies []string) { +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 *AWSOpsWorksCMServer_EngineAttribute) Metadata() map[string]interface{} { +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 *AWSOpsWorksCMServer_EngineAttribute) SetMetadata(metadata map[string]interface{}) { +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 *AWSOpsWorksCMServer_EngineAttribute) DeletionPolicy() policies.DeletionPolicy { +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 *AWSOpsWorksCMServer_EngineAttribute) SetDeletionPolicy(policy policies.DeletionPolicy) { +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/resources/aws-pinpoint-applicationsettings_campaignhook.go b/cloudformation/pinpoint/aws-pinpoint-applicationsettings_campaignhook.go similarity index 74% rename from cloudformation/resources/aws-pinpoint-applicationsettings_campaignhook.go rename to cloudformation/pinpoint/aws-pinpoint-applicationsettings_campaignhook.go index 73ef04d6d5..52cb0399a7 100644 --- a/cloudformation/resources/aws-pinpoint-applicationsettings_campaignhook.go +++ b/cloudformation/pinpoint/aws-pinpoint-applicationsettings_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" +) -// AWSPinpointApplicationSettings_CampaignHook AWS CloudFormation Resource (AWS::Pinpoint::ApplicationSettings.CampaignHook) +// 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 AWSPinpointApplicationSettings_CampaignHook struct { +type ApplicationSettings_CampaignHook struct { // LambdaFunctionName AWS CloudFormation Property // Required: false @@ -32,42 +34,42 @@ type AWSPinpointApplicationSettings_CampaignHook struct { } // AWSCloudFormationType returns the AWS CloudFormation resource type -func (r *AWSPinpointApplicationSettings_CampaignHook) AWSCloudFormationType() string { +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 *AWSPinpointApplicationSettings_CampaignHook) DependsOn() []string { +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 *AWSPinpointApplicationSettings_CampaignHook) SetDependsOn(dependencies []string) { +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 *AWSPinpointApplicationSettings_CampaignHook) Metadata() map[string]interface{} { +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 *AWSPinpointApplicationSettings_CampaignHook) SetMetadata(metadata map[string]interface{}) { +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 *AWSPinpointApplicationSettings_CampaignHook) DeletionPolicy() policies.DeletionPolicy { +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 *AWSPinpointApplicationSettings_CampaignHook) SetDeletionPolicy(policy policies.DeletionPolicy) { +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/resources/aws-pinpoint-applicationsettings_quiettime.go b/cloudformation/pinpoint/aws-pinpoint-applicationsettings_quiettime.go similarity index 72% rename from cloudformation/resources/aws-pinpoint-applicationsettings_quiettime.go rename to cloudformation/pinpoint/aws-pinpoint-applicationsettings_quiettime.go index 8753ff675a..7d33b63446 100644 --- a/cloudformation/resources/aws-pinpoint-applicationsettings_quiettime.go +++ b/cloudformation/pinpoint/aws-pinpoint-applicationsettings_quiettime.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_QuietTime AWS CloudFormation Resource (AWS::Pinpoint::ApplicationSettings.QuietTime) +// 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 AWSPinpointApplicationSettings_QuietTime struct { +type ApplicationSettings_QuietTime struct { // End AWS CloudFormation Property // Required: true @@ -27,42 +29,42 @@ type AWSPinpointApplicationSettings_QuietTime struct { } // AWSCloudFormationType returns the AWS CloudFormation resource type -func (r *AWSPinpointApplicationSettings_QuietTime) AWSCloudFormationType() string { +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 *AWSPinpointApplicationSettings_QuietTime) DependsOn() []string { +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 *AWSPinpointApplicationSettings_QuietTime) SetDependsOn(dependencies []string) { +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 *AWSPinpointApplicationSettings_QuietTime) Metadata() map[string]interface{} { +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 *AWSPinpointApplicationSettings_QuietTime) SetMetadata(metadata map[string]interface{}) { +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 *AWSPinpointApplicationSettings_QuietTime) DeletionPolicy() policies.DeletionPolicy { +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 *AWSPinpointApplicationSettings_QuietTime) SetDeletionPolicy(policy policies.DeletionPolicy) { +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/resources/aws-pinpoint-campaign_attributedimension.go b/cloudformation/pinpoint/aws-pinpoint-campaign_attributedimension.go similarity index 73% rename from cloudformation/resources/aws-pinpoint-campaign_attributedimension.go rename to cloudformation/pinpoint/aws-pinpoint-campaign_attributedimension.go index 1acd914027..1085073518 100644 --- a/cloudformation/resources/aws-pinpoint-campaign_attributedimension.go +++ b/cloudformation/pinpoint/aws-pinpoint-campaign_attributedimension.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_AttributeDimension AWS CloudFormation Resource (AWS::Pinpoint::Campaign.AttributeDimension) +// 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 AWSPinpointCampaign_AttributeDimension struct { +type Campaign_AttributeDimension struct { // AttributeType AWS CloudFormation Property // Required: false @@ -27,42 +29,42 @@ type AWSPinpointCampaign_AttributeDimension struct { } // AWSCloudFormationType returns the AWS CloudFormation resource type -func (r *AWSPinpointCampaign_AttributeDimension) AWSCloudFormationType() string { +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 *AWSPinpointCampaign_AttributeDimension) DependsOn() []string { +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 *AWSPinpointCampaign_AttributeDimension) SetDependsOn(dependencies []string) { +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 *AWSPinpointCampaign_AttributeDimension) Metadata() map[string]interface{} { +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 *AWSPinpointCampaign_AttributeDimension) SetMetadata(metadata map[string]interface{}) { +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 *AWSPinpointCampaign_AttributeDimension) DeletionPolicy() policies.DeletionPolicy { +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 *AWSPinpointCampaign_AttributeDimension) SetDeletionPolicy(policy policies.DeletionPolicy) { +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/resources/aws-pinpoint-campaign_campaigneventfilter.go b/cloudformation/pinpoint/aws-pinpoint-campaign_campaigneventfilter.go similarity index 71% rename from cloudformation/resources/aws-pinpoint-campaign_campaigneventfilter.go rename to cloudformation/pinpoint/aws-pinpoint-campaign_campaigneventfilter.go index 87b7cd4c1e..74ba79d936 100644 --- a/cloudformation/resources/aws-pinpoint-campaign_campaigneventfilter.go +++ b/cloudformation/pinpoint/aws-pinpoint-campaign_campaigneventfilter.go @@ -1,15 +1,17 @@ -package resources +package pinpoint -import "github.com/awslabs/goformation/v2/cloudformation/policies" +import ( + "github.com/awslabs/goformation/v3/cloudformation/policies" +) -// AWSPinpointCampaign_CampaignEventFilter AWS CloudFormation Resource (AWS::Pinpoint::Campaign.CampaignEventFilter) +// 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 AWSPinpointCampaign_CampaignEventFilter struct { +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 *AWSPinpointCampaign_EventDimensions `json:"Dimensions,omitempty"` + Dimensions *Campaign_EventDimensions `json:"Dimensions,omitempty"` // FilterType AWS CloudFormation Property // Required: false @@ -27,42 +29,42 @@ type AWSPinpointCampaign_CampaignEventFilter struct { } // AWSCloudFormationType returns the AWS CloudFormation resource type -func (r *AWSPinpointCampaign_CampaignEventFilter) AWSCloudFormationType() string { +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 *AWSPinpointCampaign_CampaignEventFilter) DependsOn() []string { +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 *AWSPinpointCampaign_CampaignEventFilter) SetDependsOn(dependencies []string) { +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 *AWSPinpointCampaign_CampaignEventFilter) Metadata() map[string]interface{} { +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 *AWSPinpointCampaign_CampaignEventFilter) SetMetadata(metadata map[string]interface{}) { +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 *AWSPinpointCampaign_CampaignEventFilter) DeletionPolicy() policies.DeletionPolicy { +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 *AWSPinpointCampaign_CampaignEventFilter) SetDeletionPolicy(policy policies.DeletionPolicy) { +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/resources/aws-pinpoint-campaign_eventdimensions.go b/cloudformation/pinpoint/aws-pinpoint-campaign_eventdimensions.go similarity index 74% rename from cloudformation/resources/aws-pinpoint-campaign_eventdimensions.go rename to cloudformation/pinpoint/aws-pinpoint-campaign_eventdimensions.go index 7e88489ea1..1c6104f397 100644 --- a/cloudformation/resources/aws-pinpoint-campaign_eventdimensions.go +++ b/cloudformation/pinpoint/aws-pinpoint-campaign_eventdimensions.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_EventDimensions AWS CloudFormation Resource (AWS::Pinpoint::Campaign.EventDimensions) +// 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 AWSPinpointCampaign_EventDimensions struct { +type Campaign_EventDimensions struct { // Attributes AWS CloudFormation Property // Required: false @@ -14,7 +16,7 @@ type AWSPinpointCampaign_EventDimensions struct { // 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"` + EventType *Campaign_SetDimension `json:"EventType,omitempty"` // Metrics AWS CloudFormation Property // Required: false @@ -32,42 +34,42 @@ type AWSPinpointCampaign_EventDimensions struct { } // AWSCloudFormationType returns the AWS CloudFormation resource type -func (r *AWSPinpointCampaign_EventDimensions) AWSCloudFormationType() string { +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 *AWSPinpointCampaign_EventDimensions) DependsOn() []string { +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 *AWSPinpointCampaign_EventDimensions) SetDependsOn(dependencies []string) { +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 *AWSPinpointCampaign_EventDimensions) Metadata() map[string]interface{} { +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 *AWSPinpointCampaign_EventDimensions) SetMetadata(metadata map[string]interface{}) { +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 *AWSPinpointCampaign_EventDimensions) DeletionPolicy() policies.DeletionPolicy { +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 *AWSPinpointCampaign_EventDimensions) SetDeletionPolicy(policy policies.DeletionPolicy) { +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/resources/aws-pinpoint-campaign_messageconfiguration.go b/cloudformation/pinpoint/aws-pinpoint-campaign_messageconfiguration.go similarity index 71% rename from cloudformation/resources/aws-pinpoint-campaign_messageconfiguration.go rename to cloudformation/pinpoint/aws-pinpoint-campaign_messageconfiguration.go index a7a50b0b45..0e127ff402 100644 --- a/cloudformation/resources/aws-pinpoint-campaign_messageconfiguration.go +++ b/cloudformation/pinpoint/aws-pinpoint-campaign_messageconfiguration.go @@ -1,45 +1,47 @@ -package resources +package pinpoint -import "github.com/awslabs/goformation/v2/cloudformation/policies" +import ( + "github.com/awslabs/goformation/v3/cloudformation/policies" +) -// AWSPinpointCampaign_MessageConfiguration AWS CloudFormation Resource (AWS::Pinpoint::Campaign.MessageConfiguration) +// 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 AWSPinpointCampaign_MessageConfiguration struct { +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 *AWSPinpointCampaign_Message `json:"ADMMessage,omitempty"` + 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 *AWSPinpointCampaign_Message `json:"APNSMessage,omitempty"` + 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 *AWSPinpointCampaign_Message `json:"BaiduMessage,omitempty"` + 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 *AWSPinpointCampaign_Message `json:"DefaultMessage,omitempty"` + 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 *AWSPinpointCampaign_CampaignEmailMessage `json:"EmailMessage,omitempty"` + 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 *AWSPinpointCampaign_Message `json:"GCMMessage,omitempty"` + 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 *AWSPinpointCampaign_CampaignSmsMessage `json:"SMSMessage,omitempty"` + SMSMessage *Campaign_CampaignSmsMessage `json:"SMSMessage,omitempty"` // _deletionPolicy represents a CloudFormation DeletionPolicy _deletionPolicy policies.DeletionPolicy @@ -52,42 +54,42 @@ type AWSPinpointCampaign_MessageConfiguration struct { } // AWSCloudFormationType returns the AWS CloudFormation resource type -func (r *AWSPinpointCampaign_MessageConfiguration) AWSCloudFormationType() string { +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 *AWSPinpointCampaign_MessageConfiguration) DependsOn() []string { +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 *AWSPinpointCampaign_MessageConfiguration) SetDependsOn(dependencies []string) { +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 *AWSPinpointCampaign_MessageConfiguration) Metadata() map[string]interface{} { +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 *AWSPinpointCampaign_MessageConfiguration) SetMetadata(metadata map[string]interface{}) { +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 *AWSPinpointCampaign_MessageConfiguration) DeletionPolicy() policies.DeletionPolicy { +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 *AWSPinpointCampaign_MessageConfiguration) SetDeletionPolicy(policy policies.DeletionPolicy) { +func (r *Campaign_MessageConfiguration) SetDeletionPolicy(policy policies.DeletionPolicy) { r._deletionPolicy = policy } diff --git a/cloudformation/resources/aws-pinpoint-campaign_metricdimension.go b/cloudformation/pinpoint/aws-pinpoint-campaign_metricdimension.go similarity index 73% rename from cloudformation/resources/aws-pinpoint-campaign_metricdimension.go rename to cloudformation/pinpoint/aws-pinpoint-campaign_metricdimension.go index 49636e7a50..4aa383f109 100644 --- a/cloudformation/resources/aws-pinpoint-campaign_metricdimension.go +++ b/cloudformation/pinpoint/aws-pinpoint-campaign_metricdimension.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_MetricDimension AWS CloudFormation Resource (AWS::Pinpoint::Campaign.MetricDimension) +// 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 AWSPinpointCampaign_MetricDimension struct { +type Campaign_MetricDimension struct { // ComparisonOperator AWS CloudFormation Property // Required: false @@ -27,42 +29,42 @@ type AWSPinpointCampaign_MetricDimension struct { } // AWSCloudFormationType returns the AWS CloudFormation resource type -func (r *AWSPinpointCampaign_MetricDimension) AWSCloudFormationType() string { +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 *AWSPinpointCampaign_MetricDimension) DependsOn() []string { +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 *AWSPinpointCampaign_MetricDimension) SetDependsOn(dependencies []string) { +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 *AWSPinpointCampaign_MetricDimension) Metadata() map[string]interface{} { +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 *AWSPinpointCampaign_MetricDimension) SetMetadata(metadata map[string]interface{}) { +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 *AWSPinpointCampaign_MetricDimension) DeletionPolicy() policies.DeletionPolicy { +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 *AWSPinpointCampaign_MetricDimension) SetDeletionPolicy(policy policies.DeletionPolicy) { +func (r *Campaign_MetricDimension) SetDeletionPolicy(policy policies.DeletionPolicy) { r._deletionPolicy = policy } diff --git a/cloudformation/resources/aws-pinpoint-campaign_quiettime.go b/cloudformation/pinpoint/aws-pinpoint-campaign_quiettime.go similarity index 74% rename from cloudformation/resources/aws-pinpoint-campaign_quiettime.go rename to cloudformation/pinpoint/aws-pinpoint-campaign_quiettime.go index 5a45b1d736..ba93f26ddf 100644 --- a/cloudformation/resources/aws-pinpoint-campaign_quiettime.go +++ b/cloudformation/pinpoint/aws-pinpoint-campaign_quiettime.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_QuietTime AWS CloudFormation Resource (AWS::Pinpoint::Campaign.QuietTime) +// 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 AWSPinpointCampaign_QuietTime struct { +type Campaign_QuietTime struct { // End AWS CloudFormation Property // Required: true @@ -27,42 +29,42 @@ type AWSPinpointCampaign_QuietTime struct { } // AWSCloudFormationType returns the AWS CloudFormation resource type -func (r *AWSPinpointCampaign_QuietTime) AWSCloudFormationType() string { +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 *AWSPinpointCampaign_QuietTime) DependsOn() []string { +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 *AWSPinpointCampaign_QuietTime) SetDependsOn(dependencies []string) { +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 *AWSPinpointCampaign_QuietTime) Metadata() map[string]interface{} { +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 *AWSPinpointCampaign_QuietTime) SetMetadata(metadata map[string]interface{}) { +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 *AWSPinpointCampaign_QuietTime) DeletionPolicy() policies.DeletionPolicy { +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 *AWSPinpointCampaign_QuietTime) SetDeletionPolicy(policy policies.DeletionPolicy) { +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/resources/aws-pinpoint-campaign_setdimension.go b/cloudformation/pinpoint/aws-pinpoint-campaign_setdimension.go similarity index 74% rename from cloudformation/resources/aws-pinpoint-campaign_setdimension.go rename to cloudformation/pinpoint/aws-pinpoint-campaign_setdimension.go index 000771049b..04ed5e7c01 100644 --- a/cloudformation/resources/aws-pinpoint-campaign_setdimension.go +++ b/cloudformation/pinpoint/aws-pinpoint-campaign_setdimension.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_SetDimension AWS CloudFormation Resource (AWS::Pinpoint::Campaign.SetDimension) +// 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 AWSPinpointCampaign_SetDimension struct { +type Campaign_SetDimension struct { // DimensionType AWS CloudFormation Property // Required: false @@ -27,42 +29,42 @@ type AWSPinpointCampaign_SetDimension struct { } // AWSCloudFormationType returns the AWS CloudFormation resource type -func (r *AWSPinpointCampaign_SetDimension) AWSCloudFormationType() string { +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 *AWSPinpointCampaign_SetDimension) DependsOn() []string { +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 *AWSPinpointCampaign_SetDimension) SetDependsOn(dependencies []string) { +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 *AWSPinpointCampaign_SetDimension) Metadata() map[string]interface{} { +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 *AWSPinpointCampaign_SetDimension) SetMetadata(metadata map[string]interface{}) { +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 *AWSPinpointCampaign_SetDimension) DeletionPolicy() policies.DeletionPolicy { +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 *AWSPinpointCampaign_SetDimension) SetDeletionPolicy(policy policies.DeletionPolicy) { +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/resources/aws-pinpoint-segment_attributedimension.go b/cloudformation/pinpoint/aws-pinpoint-segment_attributedimension.go similarity index 73% rename from cloudformation/resources/aws-pinpoint-segment_attributedimension.go rename to cloudformation/pinpoint/aws-pinpoint-segment_attributedimension.go index 9e8325cc2b..a7608822a7 100644 --- a/cloudformation/resources/aws-pinpoint-segment_attributedimension.go +++ b/cloudformation/pinpoint/aws-pinpoint-segment_attributedimension.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_AttributeDimension AWS CloudFormation Resource (AWS::Pinpoint::Segment.AttributeDimension) +// 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 AWSPinpointSegment_AttributeDimension struct { +type Segment_AttributeDimension struct { // AttributeType AWS CloudFormation Property // Required: false @@ -27,42 +29,42 @@ type AWSPinpointSegment_AttributeDimension struct { } // AWSCloudFormationType returns the AWS CloudFormation resource type -func (r *AWSPinpointSegment_AttributeDimension) AWSCloudFormationType() string { +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 *AWSPinpointSegment_AttributeDimension) DependsOn() []string { +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 *AWSPinpointSegment_AttributeDimension) SetDependsOn(dependencies []string) { +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 *AWSPinpointSegment_AttributeDimension) Metadata() map[string]interface{} { +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 *AWSPinpointSegment_AttributeDimension) SetMetadata(metadata map[string]interface{}) { +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 *AWSPinpointSegment_AttributeDimension) DeletionPolicy() policies.DeletionPolicy { +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 *AWSPinpointSegment_AttributeDimension) SetDeletionPolicy(policy policies.DeletionPolicy) { +func (r *Segment_AttributeDimension) SetDeletionPolicy(policy policies.DeletionPolicy) { r._deletionPolicy = policy } diff --git a/cloudformation/resources/aws-pinpoint-segment_behavior.go b/cloudformation/pinpoint/aws-pinpoint-segment_behavior.go similarity index 71% rename from cloudformation/resources/aws-pinpoint-segment_behavior.go rename to cloudformation/pinpoint/aws-pinpoint-segment_behavior.go index e7e8803c0d..962d09f265 100644 --- a/cloudformation/resources/aws-pinpoint-segment_behavior.go +++ b/cloudformation/pinpoint/aws-pinpoint-segment_behavior.go @@ -1,15 +1,17 @@ -package resources +package pinpoint -import "github.com/awslabs/goformation/v2/cloudformation/policies" +import ( + "github.com/awslabs/goformation/v3/cloudformation/policies" +) -// AWSPinpointSegment_Behavior AWS CloudFormation Resource (AWS::Pinpoint::Segment.Behavior) +// 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 AWSPinpointSegment_Behavior struct { +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 *AWSPinpointSegment_Recency `json:"Recency,omitempty"` + Recency *Segment_Recency `json:"Recency,omitempty"` // _deletionPolicy represents a CloudFormation DeletionPolicy _deletionPolicy policies.DeletionPolicy @@ -22,42 +24,42 @@ type AWSPinpointSegment_Behavior struct { } // AWSCloudFormationType returns the AWS CloudFormation resource type -func (r *AWSPinpointSegment_Behavior) AWSCloudFormationType() string { +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 *AWSPinpointSegment_Behavior) DependsOn() []string { +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 *AWSPinpointSegment_Behavior) SetDependsOn(dependencies []string) { +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 *AWSPinpointSegment_Behavior) Metadata() map[string]interface{} { +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 *AWSPinpointSegment_Behavior) SetMetadata(metadata map[string]interface{}) { +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 *AWSPinpointSegment_Behavior) DeletionPolicy() policies.DeletionPolicy { +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 *AWSPinpointSegment_Behavior) SetDeletionPolicy(policy policies.DeletionPolicy) { +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/resources/aws-pinpoint-segment_demographic.go b/cloudformation/pinpoint/aws-pinpoint-segment_demographic.go similarity index 73% rename from cloudformation/resources/aws-pinpoint-segment_demographic.go rename to cloudformation/pinpoint/aws-pinpoint-segment_demographic.go index fe07761939..527ef77b16 100644 --- a/cloudformation/resources/aws-pinpoint-segment_demographic.go +++ b/cloudformation/pinpoint/aws-pinpoint-segment_demographic.go @@ -1,40 +1,42 @@ -package resources +package pinpoint -import "github.com/awslabs/goformation/v2/cloudformation/policies" +import ( + "github.com/awslabs/goformation/v3/cloudformation/policies" +) -// AWSPinpointSegment_Demographic AWS CloudFormation Resource (AWS::Pinpoint::Segment.Demographic) +// 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 AWSPinpointSegment_Demographic struct { +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 *AWSPinpointSegment_SetDimension `json:"AppVersion,omitempty"` + 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 *AWSPinpointSegment_SetDimension `json:"Channel,omitempty"` + 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 *AWSPinpointSegment_SetDimension `json:"DeviceType,omitempty"` + 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 *AWSPinpointSegment_SetDimension `json:"Make,omitempty"` + 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 *AWSPinpointSegment_SetDimension `json:"Model,omitempty"` + 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 *AWSPinpointSegment_SetDimension `json:"Platform,omitempty"` + Platform *Segment_SetDimension `json:"Platform,omitempty"` // _deletionPolicy represents a CloudFormation DeletionPolicy _deletionPolicy policies.DeletionPolicy @@ -47,42 +49,42 @@ type AWSPinpointSegment_Demographic struct { } // AWSCloudFormationType returns the AWS CloudFormation resource type -func (r *AWSPinpointSegment_Demographic) AWSCloudFormationType() string { +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 *AWSPinpointSegment_Demographic) DependsOn() []string { +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 *AWSPinpointSegment_Demographic) SetDependsOn(dependencies []string) { +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 *AWSPinpointSegment_Demographic) Metadata() map[string]interface{} { +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 *AWSPinpointSegment_Demographic) SetMetadata(metadata map[string]interface{}) { +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 *AWSPinpointSegment_Demographic) DeletionPolicy() policies.DeletionPolicy { +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 *AWSPinpointSegment_Demographic) SetDeletionPolicy(policy policies.DeletionPolicy) { +func (r *Segment_Demographic) SetDeletionPolicy(policy policies.DeletionPolicy) { r._deletionPolicy = policy } diff --git a/cloudformation/resources/aws-pinpoint-segment_gpspoint.go b/cloudformation/pinpoint/aws-pinpoint-segment_gpspoint.go similarity index 74% rename from cloudformation/resources/aws-pinpoint-segment_gpspoint.go rename to cloudformation/pinpoint/aws-pinpoint-segment_gpspoint.go index a32c7ede55..ec227b72a6 100644 --- a/cloudformation/resources/aws-pinpoint-segment_gpspoint.go +++ b/cloudformation/pinpoint/aws-pinpoint-segment_gpspoint.go @@ -1,15 +1,17 @@ -package resources +package pinpoint -import "github.com/awslabs/goformation/v2/cloudformation/policies" +import ( + "github.com/awslabs/goformation/v3/cloudformation/policies" +) -// AWSPinpointSegment_GPSPoint AWS CloudFormation Resource (AWS::Pinpoint::Segment.GPSPoint) +// 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 AWSPinpointSegment_GPSPoint struct { +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 *AWSPinpointSegment_Coordinates `json:"Coordinates,omitempty"` + Coordinates *Segment_Coordinates `json:"Coordinates,omitempty"` // RangeInKilometers AWS CloudFormation Property // Required: true @@ -27,42 +29,42 @@ type AWSPinpointSegment_GPSPoint struct { } // AWSCloudFormationType returns the AWS CloudFormation resource type -func (r *AWSPinpointSegment_GPSPoint) AWSCloudFormationType() string { +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 *AWSPinpointSegment_GPSPoint) DependsOn() []string { +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 *AWSPinpointSegment_GPSPoint) SetDependsOn(dependencies []string) { +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 *AWSPinpointSegment_GPSPoint) Metadata() map[string]interface{} { +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 *AWSPinpointSegment_GPSPoint) SetMetadata(metadata map[string]interface{}) { +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 *AWSPinpointSegment_GPSPoint) DeletionPolicy() policies.DeletionPolicy { +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 *AWSPinpointSegment_GPSPoint) SetDeletionPolicy(policy policies.DeletionPolicy) { +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/resources/aws-pinpoint-segment_location.go b/cloudformation/pinpoint/aws-pinpoint-segment_location.go similarity index 72% rename from cloudformation/resources/aws-pinpoint-segment_location.go rename to cloudformation/pinpoint/aws-pinpoint-segment_location.go index 032789d2d7..ce3ef691a9 100644 --- a/cloudformation/resources/aws-pinpoint-segment_location.go +++ b/cloudformation/pinpoint/aws-pinpoint-segment_location.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_Location AWS CloudFormation Resource (AWS::Pinpoint::Segment.Location) +// 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 AWSPinpointSegment_Location struct { +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 *AWSPinpointSegment_SetDimension `json:"Country,omitempty"` + 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 *AWSPinpointSegment_GPSPoint `json:"GPSPoint,omitempty"` + GPSPoint *Segment_GPSPoint `json:"GPSPoint,omitempty"` // _deletionPolicy represents a CloudFormation DeletionPolicy _deletionPolicy policies.DeletionPolicy @@ -27,42 +29,42 @@ type AWSPinpointSegment_Location struct { } // AWSCloudFormationType returns the AWS CloudFormation resource type -func (r *AWSPinpointSegment_Location) AWSCloudFormationType() string { +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 *AWSPinpointSegment_Location) DependsOn() []string { +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 *AWSPinpointSegment_Location) SetDependsOn(dependencies []string) { +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 *AWSPinpointSegment_Location) Metadata() map[string]interface{} { +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 *AWSPinpointSegment_Location) SetMetadata(metadata map[string]interface{}) { +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 *AWSPinpointSegment_Location) DeletionPolicy() policies.DeletionPolicy { +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 *AWSPinpointSegment_Location) SetDeletionPolicy(policy policies.DeletionPolicy) { +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/resources/aws-pinpoint-segment_segmentgroups.go b/cloudformation/pinpoint/aws-pinpoint-segment_segmentgroups.go similarity index 72% rename from cloudformation/resources/aws-pinpoint-segment_segmentgroups.go rename to cloudformation/pinpoint/aws-pinpoint-segment_segmentgroups.go index 31cb3dba0c..976cc23e9d 100644 --- a/cloudformation/resources/aws-pinpoint-segment_segmentgroups.go +++ b/cloudformation/pinpoint/aws-pinpoint-segment_segmentgroups.go @@ -1,15 +1,17 @@ -package resources +package pinpoint -import "github.com/awslabs/goformation/v2/cloudformation/policies" +import ( + "github.com/awslabs/goformation/v3/cloudformation/policies" +) -// AWSPinpointSegment_SegmentGroups AWS CloudFormation Resource (AWS::Pinpoint::Segment.SegmentGroups) +// 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 AWSPinpointSegment_SegmentGroups struct { +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 []AWSPinpointSegment_Groups `json:"Groups,omitempty"` + Groups []Segment_Groups `json:"Groups,omitempty"` // Include AWS CloudFormation Property // Required: false @@ -27,42 +29,42 @@ type AWSPinpointSegment_SegmentGroups struct { } // AWSCloudFormationType returns the AWS CloudFormation resource type -func (r *AWSPinpointSegment_SegmentGroups) AWSCloudFormationType() string { +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 *AWSPinpointSegment_SegmentGroups) DependsOn() []string { +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 *AWSPinpointSegment_SegmentGroups) SetDependsOn(dependencies []string) { +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 *AWSPinpointSegment_SegmentGroups) Metadata() map[string]interface{} { +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 *AWSPinpointSegment_SegmentGroups) SetMetadata(metadata map[string]interface{}) { +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 *AWSPinpointSegment_SegmentGroups) DeletionPolicy() policies.DeletionPolicy { +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 *AWSPinpointSegment_SegmentGroups) SetDeletionPolicy(policy policies.DeletionPolicy) { +func (r *Segment_SegmentGroups) SetDeletionPolicy(policy policies.DeletionPolicy) { r._deletionPolicy = policy } diff --git a/cloudformation/resources/aws-pinpoint-segment_setdimension.go b/cloudformation/pinpoint/aws-pinpoint-segment_setdimension.go similarity index 74% rename from cloudformation/resources/aws-pinpoint-segment_setdimension.go rename to cloudformation/pinpoint/aws-pinpoint-segment_setdimension.go index fa4e471949..a98c00b134 100644 --- a/cloudformation/resources/aws-pinpoint-segment_setdimension.go +++ b/cloudformation/pinpoint/aws-pinpoint-segment_setdimension.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_SetDimension AWS CloudFormation Resource (AWS::Pinpoint::Segment.SetDimension) +// 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 AWSPinpointSegment_SetDimension struct { +type Segment_SetDimension struct { // DimensionType AWS CloudFormation Property // Required: false @@ -27,42 +29,42 @@ type AWSPinpointSegment_SetDimension struct { } // AWSCloudFormationType returns the AWS CloudFormation resource type -func (r *AWSPinpointSegment_SetDimension) AWSCloudFormationType() string { +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 *AWSPinpointSegment_SetDimension) DependsOn() []string { +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 *AWSPinpointSegment_SetDimension) SetDependsOn(dependencies []string) { +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 *AWSPinpointSegment_SetDimension) Metadata() map[string]interface{} { +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 *AWSPinpointSegment_SetDimension) SetMetadata(metadata map[string]interface{}) { +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 *AWSPinpointSegment_SetDimension) DeletionPolicy() policies.DeletionPolicy { +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 *AWSPinpointSegment_SetDimension) SetDeletionPolicy(policy policies.DeletionPolicy) { +func (r *Segment_SetDimension) SetDeletionPolicy(policy policies.DeletionPolicy) { r._deletionPolicy = policy } diff --git a/cloudformation/resources/aws-pinpoint-segment_sourcesegments.go b/cloudformation/pinpoint/aws-pinpoint-segment_sourcesegments.go similarity index 74% rename from cloudformation/resources/aws-pinpoint-segment_sourcesegments.go rename to cloudformation/pinpoint/aws-pinpoint-segment_sourcesegments.go index e75bb4b504..e51214eb41 100644 --- a/cloudformation/resources/aws-pinpoint-segment_sourcesegments.go +++ b/cloudformation/pinpoint/aws-pinpoint-segment_sourcesegments.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_SourceSegments AWS CloudFormation Resource (AWS::Pinpoint::Segment.SourceSegments) +// 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 AWSPinpointSegment_SourceSegments struct { +type Segment_SourceSegments struct { // Id AWS CloudFormation Property // Required: true @@ -27,42 +29,42 @@ type AWSPinpointSegment_SourceSegments struct { } // AWSCloudFormationType returns the AWS CloudFormation resource type -func (r *AWSPinpointSegment_SourceSegments) AWSCloudFormationType() string { +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 *AWSPinpointSegment_SourceSegments) DependsOn() []string { +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 *AWSPinpointSegment_SourceSegments) SetDependsOn(dependencies []string) { +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 *AWSPinpointSegment_SourceSegments) Metadata() map[string]interface{} { +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 *AWSPinpointSegment_SourceSegments) SetMetadata(metadata map[string]interface{}) { +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 *AWSPinpointSegment_SourceSegments) DeletionPolicy() policies.DeletionPolicy { +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 *AWSPinpointSegment_SourceSegments) SetDeletionPolicy(policy policies.DeletionPolicy) { +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/resources/aws-pinpointemail-configurationset.go b/cloudformation/pinpointemail/aws-pinpointemail-configurationset.go similarity index 74% rename from cloudformation/resources/aws-pinpointemail-configurationset.go rename to cloudformation/pinpointemail/aws-pinpointemail-configurationset.go index b87c3e75a7..b1b35fd880 100644 --- a/cloudformation/resources/aws-pinpointemail-configurationset.go +++ b/cloudformation/pinpointemail/aws-pinpointemail-configurationset.go @@ -1,20 +1,21 @@ -package resources +package pinpointemail import ( "bytes" "encoding/json" "fmt" - "github.com/awslabs/goformation/v2/cloudformation/policies" + + "github.com/awslabs/goformation/v3/cloudformation/policies" ) -// AWSPinpointEmailConfigurationSet AWS CloudFormation Resource (AWS::PinpointEmail::ConfigurationSet) +// ConfigurationSet AWS CloudFormation Resource (AWS::PinpointEmail::ConfigurationSet) // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-pinpointemail-configurationset.html -type AWSPinpointEmailConfigurationSet struct { +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 *AWSPinpointEmailConfigurationSet_DeliveryOptions `json:"DeliveryOptions,omitempty"` + DeliveryOptions *ConfigurationSet_DeliveryOptions `json:"DeliveryOptions,omitempty"` // Name AWS CloudFormation Property // Required: true @@ -24,22 +25,22 @@ type AWSPinpointEmailConfigurationSet struct { // 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"` + 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 *AWSPinpointEmailConfigurationSet_SendingOptions `json:"SendingOptions,omitempty"` + 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 []AWSPinpointEmailConfigurationSet_Tags `json:"Tags,omitempty"` + 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 *AWSPinpointEmailConfigurationSet_TrackingOptions `json:"TrackingOptions,omitempty"` + TrackingOptions *ConfigurationSet_TrackingOptions `json:"TrackingOptions,omitempty"` // _deletionPolicy represents a CloudFormation DeletionPolicy _deletionPolicy policies.DeletionPolicy @@ -52,50 +53,50 @@ type AWSPinpointEmailConfigurationSet struct { } // AWSCloudFormationType returns the AWS CloudFormation resource type -func (r *AWSPinpointEmailConfigurationSet) AWSCloudFormationType() string { +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 *AWSPinpointEmailConfigurationSet) 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 *AWSPinpointEmailConfigurationSet) 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 *AWSPinpointEmailConfigurationSet) 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 *AWSPinpointEmailConfigurationSet) 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 *AWSPinpointEmailConfigurationSet) 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 *AWSPinpointEmailConfigurationSet) 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 AWSPinpointEmailConfigurationSet) MarshalJSON() ([]byte, error) { - type Properties AWSPinpointEmailConfigurationSet +func (r ConfigurationSet) MarshalJSON() ([]byte, error) { + type Properties ConfigurationSet return json.Marshal(&struct { Type string Properties Properties @@ -113,8 +114,8 @@ func (r AWSPinpointEmailConfigurationSet) MarshalJSON() ([]byte, error) { // 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 +func (r *ConfigurationSet) UnmarshalJSON(b []byte) error { + type Properties ConfigurationSet res := &struct { Type string Properties *Properties @@ -133,7 +134,7 @@ func (r *AWSPinpointEmailConfigurationSet) UnmarshalJSON(b []byte) error { // If the resource has no Properties set, it could be nil if res.Properties != nil { - *r = AWSPinpointEmailConfigurationSet(*res.Properties) + *r = ConfigurationSet(*res.Properties) } if res.DependsOn != nil { r._dependsOn = res.DependsOn diff --git a/cloudformation/resources/aws-pinpointemail-configurationset_deliveryoptions.go b/cloudformation/pinpointemail/aws-pinpointemail-configurationset_deliveryoptions.go similarity index 69% rename from cloudformation/resources/aws-pinpointemail-configurationset_deliveryoptions.go rename to cloudformation/pinpointemail/aws-pinpointemail-configurationset_deliveryoptions.go index 484e864ef1..e1305501e2 100644 --- a/cloudformation/resources/aws-pinpointemail-configurationset_deliveryoptions.go +++ b/cloudformation/pinpointemail/aws-pinpointemail-configurationset_deliveryoptions.go @@ -1,10 +1,12 @@ -package resources +package pinpointemail -import "github.com/awslabs/goformation/v2/cloudformation/policies" +import ( + "github.com/awslabs/goformation/v3/cloudformation/policies" +) -// AWSPinpointEmailConfigurationSet_DeliveryOptions AWS CloudFormation Resource (AWS::PinpointEmail::ConfigurationSet.DeliveryOptions) +// 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 AWSPinpointEmailConfigurationSet_DeliveryOptions struct { +type ConfigurationSet_DeliveryOptions struct { // SendingPoolName AWS CloudFormation Property // Required: false @@ -22,42 +24,42 @@ type AWSPinpointEmailConfigurationSet_DeliveryOptions struct { } // AWSCloudFormationType returns the AWS CloudFormation resource type -func (r *AWSPinpointEmailConfigurationSet_DeliveryOptions) AWSCloudFormationType() string { +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 *AWSPinpointEmailConfigurationSet_DeliveryOptions) DependsOn() []string { +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 *AWSPinpointEmailConfigurationSet_DeliveryOptions) SetDependsOn(dependencies []string) { +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 *AWSPinpointEmailConfigurationSet_DeliveryOptions) Metadata() map[string]interface{} { +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 *AWSPinpointEmailConfigurationSet_DeliveryOptions) SetMetadata(metadata map[string]interface{}) { +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 *AWSPinpointEmailConfigurationSet_DeliveryOptions) DeletionPolicy() policies.DeletionPolicy { +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 *AWSPinpointEmailConfigurationSet_DeliveryOptions) SetDeletionPolicy(policy policies.DeletionPolicy) { +func (r *ConfigurationSet_DeliveryOptions) SetDeletionPolicy(policy policies.DeletionPolicy) { r._deletionPolicy = policy } diff --git a/cloudformation/resources/aws-pinpointemail-configurationset_reputationoptions.go b/cloudformation/pinpointemail/aws-pinpointemail-configurationset_reputationoptions.go similarity index 68% rename from cloudformation/resources/aws-pinpointemail-configurationset_reputationoptions.go rename to cloudformation/pinpointemail/aws-pinpointemail-configurationset_reputationoptions.go index 6312621f41..ac942ae561 100644 --- a/cloudformation/resources/aws-pinpointemail-configurationset_reputationoptions.go +++ b/cloudformation/pinpointemail/aws-pinpointemail-configurationset_reputationoptions.go @@ -1,10 +1,12 @@ -package resources +package pinpointemail -import "github.com/awslabs/goformation/v2/cloudformation/policies" +import ( + "github.com/awslabs/goformation/v3/cloudformation/policies" +) -// AWSPinpointEmailConfigurationSet_ReputationOptions AWS CloudFormation Resource (AWS::PinpointEmail::ConfigurationSet.ReputationOptions) +// 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 AWSPinpointEmailConfigurationSet_ReputationOptions struct { +type ConfigurationSet_ReputationOptions struct { // ReputationMetricsEnabled AWS CloudFormation Property // Required: false @@ -22,42 +24,42 @@ type AWSPinpointEmailConfigurationSet_ReputationOptions struct { } // AWSCloudFormationType returns the AWS CloudFormation resource type -func (r *AWSPinpointEmailConfigurationSet_ReputationOptions) AWSCloudFormationType() string { +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 *AWSPinpointEmailConfigurationSet_ReputationOptions) DependsOn() []string { +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 *AWSPinpointEmailConfigurationSet_ReputationOptions) SetDependsOn(dependencies []string) { +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 *AWSPinpointEmailConfigurationSet_ReputationOptions) Metadata() map[string]interface{} { +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 *AWSPinpointEmailConfigurationSet_ReputationOptions) SetMetadata(metadata map[string]interface{}) { +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 *AWSPinpointEmailConfigurationSet_ReputationOptions) DeletionPolicy() policies.DeletionPolicy { +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 *AWSPinpointEmailConfigurationSet_ReputationOptions) SetDeletionPolicy(policy policies.DeletionPolicy) { +func (r *ConfigurationSet_ReputationOptions) SetDeletionPolicy(policy policies.DeletionPolicy) { r._deletionPolicy = policy } diff --git a/cloudformation/resources/aws-pinpointemail-configurationset_sendingoptions.go b/cloudformation/pinpointemail/aws-pinpointemail-configurationset_sendingoptions.go similarity index 69% rename from cloudformation/resources/aws-pinpointemail-configurationset_sendingoptions.go rename to cloudformation/pinpointemail/aws-pinpointemail-configurationset_sendingoptions.go index 9f0bb533e8..955aeb9b38 100644 --- a/cloudformation/resources/aws-pinpointemail-configurationset_sendingoptions.go +++ b/cloudformation/pinpointemail/aws-pinpointemail-configurationset_sendingoptions.go @@ -1,10 +1,12 @@ -package resources +package pinpointemail -import "github.com/awslabs/goformation/v2/cloudformation/policies" +import ( + "github.com/awslabs/goformation/v3/cloudformation/policies" +) -// AWSPinpointEmailConfigurationSet_SendingOptions AWS CloudFormation Resource (AWS::PinpointEmail::ConfigurationSet.SendingOptions) +// 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 AWSPinpointEmailConfigurationSet_SendingOptions struct { +type ConfigurationSet_SendingOptions struct { // SendingEnabled AWS CloudFormation Property // Required: false @@ -22,42 +24,42 @@ type AWSPinpointEmailConfigurationSet_SendingOptions struct { } // AWSCloudFormationType returns the AWS CloudFormation resource type -func (r *AWSPinpointEmailConfigurationSet_SendingOptions) AWSCloudFormationType() string { +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 *AWSPinpointEmailConfigurationSet_SendingOptions) DependsOn() []string { +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 *AWSPinpointEmailConfigurationSet_SendingOptions) SetDependsOn(dependencies []string) { +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 *AWSPinpointEmailConfigurationSet_SendingOptions) Metadata() map[string]interface{} { +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 *AWSPinpointEmailConfigurationSet_SendingOptions) SetMetadata(metadata map[string]interface{}) { +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 *AWSPinpointEmailConfigurationSet_SendingOptions) DeletionPolicy() policies.DeletionPolicy { +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 *AWSPinpointEmailConfigurationSet_SendingOptions) SetDeletionPolicy(policy policies.DeletionPolicy) { +func (r *ConfigurationSet_SendingOptions) SetDeletionPolicy(policy policies.DeletionPolicy) { r._deletionPolicy = policy } diff --git a/cloudformation/resources/aws-pinpointemail-configurationset_tags.go b/cloudformation/pinpointemail/aws-pinpointemail-configurationset_tags.go similarity index 73% rename from cloudformation/resources/aws-pinpointemail-configurationset_tags.go rename to cloudformation/pinpointemail/aws-pinpointemail-configurationset_tags.go index 06a703eb42..ed4b26a027 100644 --- a/cloudformation/resources/aws-pinpointemail-configurationset_tags.go +++ b/cloudformation/pinpointemail/aws-pinpointemail-configurationset_tags.go @@ -1,10 +1,12 @@ -package resources +package pinpointemail -import "github.com/awslabs/goformation/v2/cloudformation/policies" +import ( + "github.com/awslabs/goformation/v3/cloudformation/policies" +) -// AWSPinpointEmailConfigurationSet_Tags AWS CloudFormation Resource (AWS::PinpointEmail::ConfigurationSet.Tags) +// 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 AWSPinpointEmailConfigurationSet_Tags struct { +type ConfigurationSet_Tags struct { // Key AWS CloudFormation Property // Required: false @@ -27,42 +29,42 @@ type AWSPinpointEmailConfigurationSet_Tags struct { } // AWSCloudFormationType returns the AWS CloudFormation resource type -func (r *AWSPinpointEmailConfigurationSet_Tags) AWSCloudFormationType() string { +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 *AWSPinpointEmailConfigurationSet_Tags) DependsOn() []string { +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 *AWSPinpointEmailConfigurationSet_Tags) SetDependsOn(dependencies []string) { +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 *AWSPinpointEmailConfigurationSet_Tags) Metadata() map[string]interface{} { +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 *AWSPinpointEmailConfigurationSet_Tags) SetMetadata(metadata map[string]interface{}) { +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 *AWSPinpointEmailConfigurationSet_Tags) DeletionPolicy() policies.DeletionPolicy { +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 *AWSPinpointEmailConfigurationSet_Tags) SetDeletionPolicy(policy policies.DeletionPolicy) { +func (r *ConfigurationSet_Tags) SetDeletionPolicy(policy policies.DeletionPolicy) { r._deletionPolicy = policy } diff --git a/cloudformation/resources/aws-pinpointemail-configurationset_trackingoptions.go b/cloudformation/pinpointemail/aws-pinpointemail-configurationset_trackingoptions.go similarity index 69% rename from cloudformation/resources/aws-pinpointemail-configurationset_trackingoptions.go rename to cloudformation/pinpointemail/aws-pinpointemail-configurationset_trackingoptions.go index 6a60baf529..690f66db04 100644 --- a/cloudformation/resources/aws-pinpointemail-configurationset_trackingoptions.go +++ b/cloudformation/pinpointemail/aws-pinpointemail-configurationset_trackingoptions.go @@ -1,10 +1,12 @@ -package resources +package pinpointemail -import "github.com/awslabs/goformation/v2/cloudformation/policies" +import ( + "github.com/awslabs/goformation/v3/cloudformation/policies" +) -// AWSPinpointEmailConfigurationSet_TrackingOptions AWS CloudFormation Resource (AWS::PinpointEmail::ConfigurationSet.TrackingOptions) +// 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 AWSPinpointEmailConfigurationSet_TrackingOptions struct { +type ConfigurationSet_TrackingOptions struct { // CustomRedirectDomain AWS CloudFormation Property // Required: false @@ -22,42 +24,42 @@ type AWSPinpointEmailConfigurationSet_TrackingOptions struct { } // AWSCloudFormationType returns the AWS CloudFormation resource type -func (r *AWSPinpointEmailConfigurationSet_TrackingOptions) AWSCloudFormationType() string { +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 *AWSPinpointEmailConfigurationSet_TrackingOptions) DependsOn() []string { +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 *AWSPinpointEmailConfigurationSet_TrackingOptions) SetDependsOn(dependencies []string) { +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 *AWSPinpointEmailConfigurationSet_TrackingOptions) Metadata() map[string]interface{} { +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 *AWSPinpointEmailConfigurationSet_TrackingOptions) SetMetadata(metadata map[string]interface{}) { +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 *AWSPinpointEmailConfigurationSet_TrackingOptions) DeletionPolicy() policies.DeletionPolicy { +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 *AWSPinpointEmailConfigurationSet_TrackingOptions) SetDeletionPolicy(policy policies.DeletionPolicy) { +func (r *ConfigurationSet_TrackingOptions) SetDeletionPolicy(policy policies.DeletionPolicy) { r._deletionPolicy = policy } diff --git a/cloudformation/resources/aws-pinpointemail-configurationseteventdestination.go b/cloudformation/pinpointemail/aws-pinpointemail-configurationseteventdestination.go similarity index 74% rename from cloudformation/resources/aws-pinpointemail-configurationseteventdestination.go rename to cloudformation/pinpointemail/aws-pinpointemail-configurationseteventdestination.go index 6dc3c5008c..45cd50cc1a 100644 --- a/cloudformation/resources/aws-pinpointemail-configurationseteventdestination.go +++ b/cloudformation/pinpointemail/aws-pinpointemail-configurationseteventdestination.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" ) -// AWSPinpointEmailConfigurationSetEventDestination AWS CloudFormation Resource (AWS::PinpointEmail::ConfigurationSetEventDestination) +// ConfigurationSetEventDestination AWS CloudFormation Resource (AWS::PinpointEmail::ConfigurationSetEventDestination) // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-pinpointemail-configurationseteventdestination.html -type AWSPinpointEmailConfigurationSetEventDestination struct { +type ConfigurationSetEventDestination struct { // ConfigurationSetName AWS CloudFormation Property // Required: true @@ -19,7 +20,7 @@ type AWSPinpointEmailConfigurationSetEventDestination struct { // 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"` + EventDestination *ConfigurationSetEventDestination_EventDestination `json:"EventDestination,omitempty"` // EventDestinationName AWS CloudFormation Property // Required: true @@ -37,50 +38,50 @@ type AWSPinpointEmailConfigurationSetEventDestination struct { } // AWSCloudFormationType returns the AWS CloudFormation resource type -func (r *AWSPinpointEmailConfigurationSetEventDestination) AWSCloudFormationType() string { +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 *AWSPinpointEmailConfigurationSetEventDestination) DependsOn() []string { +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 *AWSPinpointEmailConfigurationSetEventDestination) SetDependsOn(dependencies []string) { +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 *AWSPinpointEmailConfigurationSetEventDestination) Metadata() map[string]interface{} { +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 *AWSPinpointEmailConfigurationSetEventDestination) SetMetadata(metadata map[string]interface{}) { +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 *AWSPinpointEmailConfigurationSetEventDestination) DeletionPolicy() policies.DeletionPolicy { +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 *AWSPinpointEmailConfigurationSetEventDestination) SetDeletionPolicy(policy policies.DeletionPolicy) { +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 AWSPinpointEmailConfigurationSetEventDestination) MarshalJSON() ([]byte, error) { - type Properties AWSPinpointEmailConfigurationSetEventDestination +func (r ConfigurationSetEventDestination) MarshalJSON() ([]byte, error) { + type Properties ConfigurationSetEventDestination return json.Marshal(&struct { Type string Properties Properties @@ -98,8 +99,8 @@ func (r AWSPinpointEmailConfigurationSetEventDestination) 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 *AWSPinpointEmailConfigurationSetEventDestination) UnmarshalJSON(b []byte) error { - type Properties AWSPinpointEmailConfigurationSetEventDestination +func (r *ConfigurationSetEventDestination) UnmarshalJSON(b []byte) error { + type Properties ConfigurationSetEventDestination res := &struct { Type string Properties *Properties @@ -118,7 +119,7 @@ func (r *AWSPinpointEmailConfigurationSetEventDestination) UnmarshalJSON(b []byt // If the resource has no Properties set, it could be nil if res.Properties != nil { - *r = AWSPinpointEmailConfigurationSetEventDestination(*res.Properties) + *r = ConfigurationSetEventDestination(*res.Properties) } if res.DependsOn != nil { r._dependsOn = res.DependsOn diff --git a/cloudformation/resources/aws-pinpointemail-configurationseteventdestination_cloudwatchdestination.go b/cloudformation/pinpointemail/aws-pinpointemail-configurationseteventdestination_cloudwatchdestination.go similarity index 62% rename from cloudformation/resources/aws-pinpointemail-configurationseteventdestination_cloudwatchdestination.go rename to cloudformation/pinpointemail/aws-pinpointemail-configurationseteventdestination_cloudwatchdestination.go index 8ec6368f4c..cf7d7f37e7 100644 --- a/cloudformation/resources/aws-pinpointemail-configurationseteventdestination_cloudwatchdestination.go +++ b/cloudformation/pinpointemail/aws-pinpointemail-configurationseteventdestination_cloudwatchdestination.go @@ -1,15 +1,17 @@ -package resources +package pinpointemail -import "github.com/awslabs/goformation/v2/cloudformation/policies" +import ( + "github.com/awslabs/goformation/v3/cloudformation/policies" +) -// AWSPinpointEmailConfigurationSetEventDestination_CloudWatchDestination AWS CloudFormation Resource (AWS::PinpointEmail::ConfigurationSetEventDestination.CloudWatchDestination) +// 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 AWSPinpointEmailConfigurationSetEventDestination_CloudWatchDestination struct { +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 []AWSPinpointEmailConfigurationSetEventDestination_DimensionConfiguration `json:"DimensionConfigurations,omitempty"` + DimensionConfigurations []ConfigurationSetEventDestination_DimensionConfiguration `json:"DimensionConfigurations,omitempty"` // _deletionPolicy represents a CloudFormation DeletionPolicy _deletionPolicy policies.DeletionPolicy @@ -22,42 +24,42 @@ type AWSPinpointEmailConfigurationSetEventDestination_CloudWatchDestination stru } // AWSCloudFormationType returns the AWS CloudFormation resource type -func (r *AWSPinpointEmailConfigurationSetEventDestination_CloudWatchDestination) AWSCloudFormationType() string { +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 *AWSPinpointEmailConfigurationSetEventDestination_CloudWatchDestination) DependsOn() []string { +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 *AWSPinpointEmailConfigurationSetEventDestination_CloudWatchDestination) SetDependsOn(dependencies []string) { +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 *AWSPinpointEmailConfigurationSetEventDestination_CloudWatchDestination) Metadata() map[string]interface{} { +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 *AWSPinpointEmailConfigurationSetEventDestination_CloudWatchDestination) SetMetadata(metadata map[string]interface{}) { +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 *AWSPinpointEmailConfigurationSetEventDestination_CloudWatchDestination) DeletionPolicy() policies.DeletionPolicy { +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 *AWSPinpointEmailConfigurationSetEventDestination_CloudWatchDestination) SetDeletionPolicy(policy policies.DeletionPolicy) { +func (r *ConfigurationSetEventDestination_CloudWatchDestination) SetDeletionPolicy(policy policies.DeletionPolicy) { r._deletionPolicy = policy } diff --git a/cloudformation/resources/aws-pinpointemail-configurationseteventdestination_dimensionconfiguration.go b/cloudformation/pinpointemail/aws-pinpointemail-configurationseteventdestination_dimensionconfiguration.go similarity index 71% rename from cloudformation/resources/aws-pinpointemail-configurationseteventdestination_dimensionconfiguration.go rename to cloudformation/pinpointemail/aws-pinpointemail-configurationseteventdestination_dimensionconfiguration.go index c2754c7a1a..eb117d1a93 100644 --- a/cloudformation/resources/aws-pinpointemail-configurationseteventdestination_dimensionconfiguration.go +++ b/cloudformation/pinpointemail/aws-pinpointemail-configurationseteventdestination_dimensionconfiguration.go @@ -1,10 +1,12 @@ -package resources +package pinpointemail -import "github.com/awslabs/goformation/v2/cloudformation/policies" +import ( + "github.com/awslabs/goformation/v3/cloudformation/policies" +) -// AWSPinpointEmailConfigurationSetEventDestination_DimensionConfiguration AWS CloudFormation Resource (AWS::PinpointEmail::ConfigurationSetEventDestination.DimensionConfiguration) +// 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 AWSPinpointEmailConfigurationSetEventDestination_DimensionConfiguration struct { +type ConfigurationSetEventDestination_DimensionConfiguration struct { // DefaultDimensionValue AWS CloudFormation Property // Required: true @@ -32,42 +34,42 @@ type AWSPinpointEmailConfigurationSetEventDestination_DimensionConfiguration str } // AWSCloudFormationType returns the AWS CloudFormation resource type -func (r *AWSPinpointEmailConfigurationSetEventDestination_DimensionConfiguration) AWSCloudFormationType() string { +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 *AWSPinpointEmailConfigurationSetEventDestination_DimensionConfiguration) DependsOn() []string { +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 *AWSPinpointEmailConfigurationSetEventDestination_DimensionConfiguration) SetDependsOn(dependencies []string) { +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 *AWSPinpointEmailConfigurationSetEventDestination_DimensionConfiguration) Metadata() map[string]interface{} { +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 *AWSPinpointEmailConfigurationSetEventDestination_DimensionConfiguration) SetMetadata(metadata map[string]interface{}) { +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 *AWSPinpointEmailConfigurationSetEventDestination_DimensionConfiguration) DeletionPolicy() policies.DeletionPolicy { +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 *AWSPinpointEmailConfigurationSetEventDestination_DimensionConfiguration) SetDeletionPolicy(policy policies.DeletionPolicy) { +func (r *ConfigurationSetEventDestination_DimensionConfiguration) SetDeletionPolicy(policy policies.DeletionPolicy) { r._deletionPolicy = policy } diff --git a/cloudformation/resources/aws-pinpointemail-configurationseteventdestination_eventdestination.go b/cloudformation/pinpointemail/aws-pinpointemail-configurationseteventdestination_eventdestination.go similarity index 69% rename from cloudformation/resources/aws-pinpointemail-configurationseteventdestination_eventdestination.go rename to cloudformation/pinpointemail/aws-pinpointemail-configurationseteventdestination_eventdestination.go index 6f6c761f45..1437c6a015 100644 --- a/cloudformation/resources/aws-pinpointemail-configurationseteventdestination_eventdestination.go +++ b/cloudformation/pinpointemail/aws-pinpointemail-configurationseteventdestination_eventdestination.go @@ -1,15 +1,17 @@ -package resources +package pinpointemail -import "github.com/awslabs/goformation/v2/cloudformation/policies" +import ( + "github.com/awslabs/goformation/v3/cloudformation/policies" +) -// AWSPinpointEmailConfigurationSetEventDestination_EventDestination AWS CloudFormation Resource (AWS::PinpointEmail::ConfigurationSetEventDestination.EventDestination) +// 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 AWSPinpointEmailConfigurationSetEventDestination_EventDestination struct { +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 *AWSPinpointEmailConfigurationSetEventDestination_CloudWatchDestination `json:"CloudWatchDestination,omitempty"` + CloudWatchDestination *ConfigurationSetEventDestination_CloudWatchDestination `json:"CloudWatchDestination,omitempty"` // Enabled AWS CloudFormation Property // Required: false @@ -19,7 +21,7 @@ type AWSPinpointEmailConfigurationSetEventDestination_EventDestination struct { // 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"` + KinesisFirehoseDestination *ConfigurationSetEventDestination_KinesisFirehoseDestination `json:"KinesisFirehoseDestination,omitempty"` // MatchingEventTypes AWS CloudFormation Property // Required: true @@ -29,12 +31,12 @@ type AWSPinpointEmailConfigurationSetEventDestination_EventDestination struct { // 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"` + 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 *AWSPinpointEmailConfigurationSetEventDestination_SnsDestination `json:"SnsDestination,omitempty"` + SnsDestination *ConfigurationSetEventDestination_SnsDestination `json:"SnsDestination,omitempty"` // _deletionPolicy represents a CloudFormation DeletionPolicy _deletionPolicy policies.DeletionPolicy @@ -47,42 +49,42 @@ type AWSPinpointEmailConfigurationSetEventDestination_EventDestination struct { } // AWSCloudFormationType returns the AWS CloudFormation resource type -func (r *AWSPinpointEmailConfigurationSetEventDestination_EventDestination) AWSCloudFormationType() string { +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 *AWSPinpointEmailConfigurationSetEventDestination_EventDestination) DependsOn() []string { +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 *AWSPinpointEmailConfigurationSetEventDestination_EventDestination) SetDependsOn(dependencies []string) { +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 *AWSPinpointEmailConfigurationSetEventDestination_EventDestination) Metadata() map[string]interface{} { +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 *AWSPinpointEmailConfigurationSetEventDestination_EventDestination) SetMetadata(metadata map[string]interface{}) { +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 *AWSPinpointEmailConfigurationSetEventDestination_EventDestination) DeletionPolicy() policies.DeletionPolicy { +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 *AWSPinpointEmailConfigurationSetEventDestination_EventDestination) SetDeletionPolicy(policy policies.DeletionPolicy) { +func (r *ConfigurationSetEventDestination_EventDestination) SetDeletionPolicy(policy policies.DeletionPolicy) { r._deletionPolicy = policy } diff --git a/cloudformation/resources/aws-pinpointemail-configurationseteventdestination_kinesisfirehosedestination.go b/cloudformation/pinpointemail/aws-pinpointemail-configurationseteventdestination_kinesisfirehosedestination.go similarity index 68% rename from cloudformation/resources/aws-pinpointemail-configurationseteventdestination_kinesisfirehosedestination.go rename to cloudformation/pinpointemail/aws-pinpointemail-configurationseteventdestination_kinesisfirehosedestination.go index 931cf97b13..8e378613c9 100644 --- a/cloudformation/resources/aws-pinpointemail-configurationseteventdestination_kinesisfirehosedestination.go +++ b/cloudformation/pinpointemail/aws-pinpointemail-configurationseteventdestination_kinesisfirehosedestination.go @@ -1,10 +1,12 @@ -package resources +package pinpointemail -import "github.com/awslabs/goformation/v2/cloudformation/policies" +import ( + "github.com/awslabs/goformation/v3/cloudformation/policies" +) -// AWSPinpointEmailConfigurationSetEventDestination_KinesisFirehoseDestination AWS CloudFormation Resource (AWS::PinpointEmail::ConfigurationSetEventDestination.KinesisFirehoseDestination) +// 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 AWSPinpointEmailConfigurationSetEventDestination_KinesisFirehoseDestination struct { +type ConfigurationSetEventDestination_KinesisFirehoseDestination struct { // DeliveryStreamArn AWS CloudFormation Property // Required: true @@ -27,42 +29,42 @@ type AWSPinpointEmailConfigurationSetEventDestination_KinesisFirehoseDestination } // AWSCloudFormationType returns the AWS CloudFormation resource type -func (r *AWSPinpointEmailConfigurationSetEventDestination_KinesisFirehoseDestination) AWSCloudFormationType() string { +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 *AWSPinpointEmailConfigurationSetEventDestination_KinesisFirehoseDestination) DependsOn() []string { +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 *AWSPinpointEmailConfigurationSetEventDestination_KinesisFirehoseDestination) SetDependsOn(dependencies []string) { +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 *AWSPinpointEmailConfigurationSetEventDestination_KinesisFirehoseDestination) Metadata() map[string]interface{} { +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 *AWSPinpointEmailConfigurationSetEventDestination_KinesisFirehoseDestination) SetMetadata(metadata map[string]interface{}) { +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 *AWSPinpointEmailConfigurationSetEventDestination_KinesisFirehoseDestination) DeletionPolicy() policies.DeletionPolicy { +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 *AWSPinpointEmailConfigurationSetEventDestination_KinesisFirehoseDestination) SetDeletionPolicy(policy policies.DeletionPolicy) { +func (r *ConfigurationSetEventDestination_KinesisFirehoseDestination) SetDeletionPolicy(policy policies.DeletionPolicy) { r._deletionPolicy = policy } diff --git a/cloudformation/resources/aws-pinpointemail-configurationseteventdestination_pinpointdestination.go b/cloudformation/pinpointemail/aws-pinpointemail-configurationseteventdestination_pinpointdestination.go similarity index 65% rename from cloudformation/resources/aws-pinpointemail-configurationseteventdestination_pinpointdestination.go rename to cloudformation/pinpointemail/aws-pinpointemail-configurationseteventdestination_pinpointdestination.go index 606d820cc1..9ec3fdcaa9 100644 --- a/cloudformation/resources/aws-pinpointemail-configurationseteventdestination_pinpointdestination.go +++ b/cloudformation/pinpointemail/aws-pinpointemail-configurationseteventdestination_pinpointdestination.go @@ -1,10 +1,12 @@ -package resources +package pinpointemail -import "github.com/awslabs/goformation/v2/cloudformation/policies" +import ( + "github.com/awslabs/goformation/v3/cloudformation/policies" +) -// AWSPinpointEmailConfigurationSetEventDestination_PinpointDestination AWS CloudFormation Resource (AWS::PinpointEmail::ConfigurationSetEventDestination.PinpointDestination) +// 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 AWSPinpointEmailConfigurationSetEventDestination_PinpointDestination struct { +type ConfigurationSetEventDestination_PinpointDestination struct { // ApplicationArn AWS CloudFormation Property // Required: false @@ -22,42 +24,42 @@ type AWSPinpointEmailConfigurationSetEventDestination_PinpointDestination struct } // AWSCloudFormationType returns the AWS CloudFormation resource type -func (r *AWSPinpointEmailConfigurationSetEventDestination_PinpointDestination) AWSCloudFormationType() string { +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 *AWSPinpointEmailConfigurationSetEventDestination_PinpointDestination) DependsOn() []string { +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 *AWSPinpointEmailConfigurationSetEventDestination_PinpointDestination) SetDependsOn(dependencies []string) { +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 *AWSPinpointEmailConfigurationSetEventDestination_PinpointDestination) Metadata() map[string]interface{} { +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 *AWSPinpointEmailConfigurationSetEventDestination_PinpointDestination) SetMetadata(metadata map[string]interface{}) { +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 *AWSPinpointEmailConfigurationSetEventDestination_PinpointDestination) DeletionPolicy() policies.DeletionPolicy { +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 *AWSPinpointEmailConfigurationSetEventDestination_PinpointDestination) SetDeletionPolicy(policy policies.DeletionPolicy) { +func (r *ConfigurationSetEventDestination_PinpointDestination) SetDeletionPolicy(policy policies.DeletionPolicy) { r._deletionPolicy = policy } diff --git a/cloudformation/resources/aws-pinpointemail-configurationseteventdestination_snsdestination.go b/cloudformation/pinpointemail/aws-pinpointemail-configurationseteventdestination_snsdestination.go similarity index 66% rename from cloudformation/resources/aws-pinpointemail-configurationseteventdestination_snsdestination.go rename to cloudformation/pinpointemail/aws-pinpointemail-configurationseteventdestination_snsdestination.go index 482c2b1f22..dc9025859d 100644 --- a/cloudformation/resources/aws-pinpointemail-configurationseteventdestination_snsdestination.go +++ b/cloudformation/pinpointemail/aws-pinpointemail-configurationseteventdestination_snsdestination.go @@ -1,10 +1,12 @@ -package resources +package pinpointemail -import "github.com/awslabs/goformation/v2/cloudformation/policies" +import ( + "github.com/awslabs/goformation/v3/cloudformation/policies" +) -// AWSPinpointEmailConfigurationSetEventDestination_SnsDestination AWS CloudFormation Resource (AWS::PinpointEmail::ConfigurationSetEventDestination.SnsDestination) +// 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 AWSPinpointEmailConfigurationSetEventDestination_SnsDestination struct { +type ConfigurationSetEventDestination_SnsDestination struct { // TopicArn AWS CloudFormation Property // Required: true @@ -22,42 +24,42 @@ type AWSPinpointEmailConfigurationSetEventDestination_SnsDestination struct { } // AWSCloudFormationType returns the AWS CloudFormation resource type -func (r *AWSPinpointEmailConfigurationSetEventDestination_SnsDestination) AWSCloudFormationType() string { +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 *AWSPinpointEmailConfigurationSetEventDestination_SnsDestination) DependsOn() []string { +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 *AWSPinpointEmailConfigurationSetEventDestination_SnsDestination) SetDependsOn(dependencies []string) { +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 *AWSPinpointEmailConfigurationSetEventDestination_SnsDestination) Metadata() map[string]interface{} { +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 *AWSPinpointEmailConfigurationSetEventDestination_SnsDestination) SetMetadata(metadata map[string]interface{}) { +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 *AWSPinpointEmailConfigurationSetEventDestination_SnsDestination) DeletionPolicy() policies.DeletionPolicy { +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 *AWSPinpointEmailConfigurationSetEventDestination_SnsDestination) SetDeletionPolicy(policy policies.DeletionPolicy) { +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/resources/aws-pinpointemail-dedicatedippool_tags.go b/cloudformation/pinpointemail/aws-pinpointemail-dedicatedippool_tags.go similarity index 73% rename from cloudformation/resources/aws-pinpointemail-dedicatedippool_tags.go rename to cloudformation/pinpointemail/aws-pinpointemail-dedicatedippool_tags.go index 3a1cb157f9..a4ea49b3d5 100644 --- a/cloudformation/resources/aws-pinpointemail-dedicatedippool_tags.go +++ b/cloudformation/pinpointemail/aws-pinpointemail-dedicatedippool_tags.go @@ -1,10 +1,12 @@ -package resources +package pinpointemail -import "github.com/awslabs/goformation/v2/cloudformation/policies" +import ( + "github.com/awslabs/goformation/v3/cloudformation/policies" +) -// AWSPinpointEmailDedicatedIpPool_Tags AWS CloudFormation Resource (AWS::PinpointEmail::DedicatedIpPool.Tags) +// 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 AWSPinpointEmailDedicatedIpPool_Tags struct { +type DedicatedIpPool_Tags struct { // Key AWS CloudFormation Property // Required: false @@ -27,42 +29,42 @@ type AWSPinpointEmailDedicatedIpPool_Tags struct { } // AWSCloudFormationType returns the AWS CloudFormation resource type -func (r *AWSPinpointEmailDedicatedIpPool_Tags) AWSCloudFormationType() string { +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 *AWSPinpointEmailDedicatedIpPool_Tags) DependsOn() []string { +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 *AWSPinpointEmailDedicatedIpPool_Tags) SetDependsOn(dependencies []string) { +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 *AWSPinpointEmailDedicatedIpPool_Tags) Metadata() map[string]interface{} { +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 *AWSPinpointEmailDedicatedIpPool_Tags) SetMetadata(metadata map[string]interface{}) { +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 *AWSPinpointEmailDedicatedIpPool_Tags) DeletionPolicy() policies.DeletionPolicy { +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 *AWSPinpointEmailDedicatedIpPool_Tags) SetDeletionPolicy(policy policies.DeletionPolicy) { +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/resources/aws-pinpointemail-identity_mailfromattributes.go b/cloudformation/pinpointemail/aws-pinpointemail-identity_mailfromattributes.go similarity index 72% rename from cloudformation/resources/aws-pinpointemail-identity_mailfromattributes.go rename to cloudformation/pinpointemail/aws-pinpointemail-identity_mailfromattributes.go index 55a763030e..9cd54e88d3 100644 --- a/cloudformation/resources/aws-pinpointemail-identity_mailfromattributes.go +++ b/cloudformation/pinpointemail/aws-pinpointemail-identity_mailfromattributes.go @@ -1,10 +1,12 @@ -package resources +package pinpointemail -import "github.com/awslabs/goformation/v2/cloudformation/policies" +import ( + "github.com/awslabs/goformation/v3/cloudformation/policies" +) -// AWSPinpointEmailIdentity_MailFromAttributes AWS CloudFormation Resource (AWS::PinpointEmail::Identity.MailFromAttributes) +// 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 AWSPinpointEmailIdentity_MailFromAttributes struct { +type Identity_MailFromAttributes struct { // BehaviorOnMxFailure AWS CloudFormation Property // Required: false @@ -27,42 +29,42 @@ type AWSPinpointEmailIdentity_MailFromAttributes struct { } // AWSCloudFormationType returns the AWS CloudFormation resource type -func (r *AWSPinpointEmailIdentity_MailFromAttributes) AWSCloudFormationType() string { +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 *AWSPinpointEmailIdentity_MailFromAttributes) DependsOn() []string { +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 *AWSPinpointEmailIdentity_MailFromAttributes) SetDependsOn(dependencies []string) { +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 *AWSPinpointEmailIdentity_MailFromAttributes) Metadata() map[string]interface{} { +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 *AWSPinpointEmailIdentity_MailFromAttributes) SetMetadata(metadata map[string]interface{}) { +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 *AWSPinpointEmailIdentity_MailFromAttributes) DeletionPolicy() policies.DeletionPolicy { +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 *AWSPinpointEmailIdentity_MailFromAttributes) SetDeletionPolicy(policy policies.DeletionPolicy) { +func (r *Identity_MailFromAttributes) SetDeletionPolicy(policy policies.DeletionPolicy) { r._deletionPolicy = policy } diff --git a/cloudformation/resources/aws-pinpointemail-identity_tags.go b/cloudformation/pinpointemail/aws-pinpointemail-identity_tags.go similarity index 74% rename from cloudformation/resources/aws-pinpointemail-identity_tags.go rename to cloudformation/pinpointemail/aws-pinpointemail-identity_tags.go index 14e0cee3d3..993232f1ae 100644 --- a/cloudformation/resources/aws-pinpointemail-identity_tags.go +++ b/cloudformation/pinpointemail/aws-pinpointemail-identity_tags.go @@ -1,10 +1,12 @@ -package resources +package pinpointemail -import "github.com/awslabs/goformation/v2/cloudformation/policies" +import ( + "github.com/awslabs/goformation/v3/cloudformation/policies" +) -// AWSPinpointEmailIdentity_Tags AWS CloudFormation Resource (AWS::PinpointEmail::Identity.Tags) +// 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 AWSPinpointEmailIdentity_Tags struct { +type Identity_Tags struct { // Key AWS CloudFormation Property // Required: false @@ -27,42 +29,42 @@ type AWSPinpointEmailIdentity_Tags struct { } // AWSCloudFormationType returns the AWS CloudFormation resource type -func (r *AWSPinpointEmailIdentity_Tags) AWSCloudFormationType() string { +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 *AWSPinpointEmailIdentity_Tags) DependsOn() []string { +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 *AWSPinpointEmailIdentity_Tags) SetDependsOn(dependencies []string) { +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 *AWSPinpointEmailIdentity_Tags) Metadata() map[string]interface{} { +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 *AWSPinpointEmailIdentity_Tags) SetMetadata(metadata map[string]interface{}) { +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 *AWSPinpointEmailIdentity_Tags) DeletionPolicy() policies.DeletionPolicy { +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 *AWSPinpointEmailIdentity_Tags) SetDeletionPolicy(policy policies.DeletionPolicy) { +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/resources/aws-rds-dbinstance_processorfeature.go b/cloudformation/rds/aws-rds-dbinstance_processorfeature.go similarity index 73% rename from cloudformation/resources/aws-rds-dbinstance_processorfeature.go rename to cloudformation/rds/aws-rds-dbinstance_processorfeature.go index b197243ce6..3632857e76 100644 --- a/cloudformation/resources/aws-rds-dbinstance_processorfeature.go +++ b/cloudformation/rds/aws-rds-dbinstance_processorfeature.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_ProcessorFeature AWS CloudFormation Resource (AWS::RDS::DBInstance.ProcessorFeature) +// 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 AWSRDSDBInstance_ProcessorFeature struct { +type DBInstance_ProcessorFeature struct { // Name AWS CloudFormation Property // Required: false @@ -27,42 +29,42 @@ type AWSRDSDBInstance_ProcessorFeature struct { } // AWSCloudFormationType returns the AWS CloudFormation resource type -func (r *AWSRDSDBInstance_ProcessorFeature) AWSCloudFormationType() string { +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 *AWSRDSDBInstance_ProcessorFeature) DependsOn() []string { +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 *AWSRDSDBInstance_ProcessorFeature) SetDependsOn(dependencies []string) { +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 *AWSRDSDBInstance_ProcessorFeature) Metadata() map[string]interface{} { +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 *AWSRDSDBInstance_ProcessorFeature) SetMetadata(metadata map[string]interface{}) { +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 *AWSRDSDBInstance_ProcessorFeature) DeletionPolicy() policies.DeletionPolicy { +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 *AWSRDSDBInstance_ProcessorFeature) SetDeletionPolicy(policy policies.DeletionPolicy) { +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/resources/aws-redshift-cluster_loggingproperties.go b/cloudformation/redshift/aws-redshift-cluster_loggingproperties.go similarity index 73% rename from cloudformation/resources/aws-redshift-cluster_loggingproperties.go rename to cloudformation/redshift/aws-redshift-cluster_loggingproperties.go index 412f78f08a..9445bbe747 100644 --- a/cloudformation/resources/aws-redshift-cluster_loggingproperties.go +++ b/cloudformation/redshift/aws-redshift-cluster_loggingproperties.go @@ -1,10 +1,12 @@ -package resources +package redshift -import "github.com/awslabs/goformation/v2/cloudformation/policies" +import ( + "github.com/awslabs/goformation/v3/cloudformation/policies" +) -// AWSRedshiftCluster_LoggingProperties AWS CloudFormation Resource (AWS::Redshift::Cluster.LoggingProperties) +// 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 AWSRedshiftCluster_LoggingProperties struct { +type Cluster_LoggingProperties struct { // BucketName AWS CloudFormation Property // Required: true @@ -27,42 +29,42 @@ type AWSRedshiftCluster_LoggingProperties struct { } // AWSCloudFormationType returns the AWS CloudFormation resource type -func (r *AWSRedshiftCluster_LoggingProperties) AWSCloudFormationType() string { +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 *AWSRedshiftCluster_LoggingProperties) DependsOn() []string { +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 *AWSRedshiftCluster_LoggingProperties) SetDependsOn(dependencies []string) { +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 *AWSRedshiftCluster_LoggingProperties) Metadata() map[string]interface{} { +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 *AWSRedshiftCluster_LoggingProperties) SetMetadata(metadata map[string]interface{}) { +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 *AWSRedshiftCluster_LoggingProperties) DeletionPolicy() policies.DeletionPolicy { +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 *AWSRedshiftCluster_LoggingProperties) SetDeletionPolicy(policy policies.DeletionPolicy) { +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/resources/aws-redshift-clusterparametergroup_parameter.go b/cloudformation/redshift/aws-redshift-clusterparametergroup_parameter.go similarity index 72% rename from cloudformation/resources/aws-redshift-clusterparametergroup_parameter.go rename to cloudformation/redshift/aws-redshift-clusterparametergroup_parameter.go index 77df63fc21..a78655a861 100644 --- a/cloudformation/resources/aws-redshift-clusterparametergroup_parameter.go +++ b/cloudformation/redshift/aws-redshift-clusterparametergroup_parameter.go @@ -1,10 +1,12 @@ -package resources +package redshift -import "github.com/awslabs/goformation/v2/cloudformation/policies" +import ( + "github.com/awslabs/goformation/v3/cloudformation/policies" +) -// AWSRedshiftClusterParameterGroup_Parameter AWS CloudFormation Resource (AWS::Redshift::ClusterParameterGroup.Parameter) +// 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 AWSRedshiftClusterParameterGroup_Parameter struct { +type ClusterParameterGroup_Parameter struct { // ParameterName AWS CloudFormation Property // Required: true @@ -27,42 +29,42 @@ type AWSRedshiftClusterParameterGroup_Parameter struct { } // AWSCloudFormationType returns the AWS CloudFormation resource type -func (r *AWSRedshiftClusterParameterGroup_Parameter) AWSCloudFormationType() string { +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 *AWSRedshiftClusterParameterGroup_Parameter) DependsOn() []string { +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 *AWSRedshiftClusterParameterGroup_Parameter) SetDependsOn(dependencies []string) { +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 *AWSRedshiftClusterParameterGroup_Parameter) Metadata() map[string]interface{} { +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 *AWSRedshiftClusterParameterGroup_Parameter) SetMetadata(metadata map[string]interface{}) { +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 *AWSRedshiftClusterParameterGroup_Parameter) DeletionPolicy() policies.DeletionPolicy { +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 *AWSRedshiftClusterParameterGroup_Parameter) SetDeletionPolicy(policy policies.DeletionPolicy) { +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/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/resources/aws-robomaker-robotapplication_robotsoftwaresuite.go b/cloudformation/robomaker/aws-robomaker-robotapplication_robotsoftwaresuite.go similarity index 71% rename from cloudformation/resources/aws-robomaker-robotapplication_robotsoftwaresuite.go rename to cloudformation/robomaker/aws-robomaker-robotapplication_robotsoftwaresuite.go index e664828bc4..3f351c993f 100644 --- a/cloudformation/resources/aws-robomaker-robotapplication_robotsoftwaresuite.go +++ b/cloudformation/robomaker/aws-robomaker-robotapplication_robotsoftwaresuite.go @@ -1,10 +1,12 @@ -package resources +package robomaker -import "github.com/awslabs/goformation/v2/cloudformation/policies" +import ( + "github.com/awslabs/goformation/v3/cloudformation/policies" +) -// AWSRoboMakerRobotApplication_RobotSoftwareSuite AWS CloudFormation Resource (AWS::RoboMaker::RobotApplication.RobotSoftwareSuite) +// 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 AWSRoboMakerRobotApplication_RobotSoftwareSuite struct { +type RobotApplication_RobotSoftwareSuite struct { // Name AWS CloudFormation Property // Required: true @@ -27,42 +29,42 @@ type AWSRoboMakerRobotApplication_RobotSoftwareSuite struct { } // AWSCloudFormationType returns the AWS CloudFormation resource type -func (r *AWSRoboMakerRobotApplication_RobotSoftwareSuite) AWSCloudFormationType() string { +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 *AWSRoboMakerRobotApplication_RobotSoftwareSuite) DependsOn() []string { +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 *AWSRoboMakerRobotApplication_RobotSoftwareSuite) SetDependsOn(dependencies []string) { +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 *AWSRoboMakerRobotApplication_RobotSoftwareSuite) Metadata() map[string]interface{} { +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 *AWSRoboMakerRobotApplication_RobotSoftwareSuite) SetMetadata(metadata map[string]interface{}) { +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 *AWSRoboMakerRobotApplication_RobotSoftwareSuite) DeletionPolicy() policies.DeletionPolicy { +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 *AWSRoboMakerRobotApplication_RobotSoftwareSuite) SetDeletionPolicy(policy policies.DeletionPolicy) { +func (r *RobotApplication_RobotSoftwareSuite) SetDeletionPolicy(policy policies.DeletionPolicy) { r._deletionPolicy = policy } diff --git a/cloudformation/resources/aws-robomaker-robotapplication_sourceconfig.go b/cloudformation/robomaker/aws-robomaker-robotapplication_sourceconfig.go similarity index 74% rename from cloudformation/resources/aws-robomaker-robotapplication_sourceconfig.go rename to cloudformation/robomaker/aws-robomaker-robotapplication_sourceconfig.go index 0144cebc2d..612e081f33 100644 --- a/cloudformation/resources/aws-robomaker-robotapplication_sourceconfig.go +++ b/cloudformation/robomaker/aws-robomaker-robotapplication_sourceconfig.go @@ -1,10 +1,12 @@ -package resources +package robomaker -import "github.com/awslabs/goformation/v2/cloudformation/policies" +import ( + "github.com/awslabs/goformation/v3/cloudformation/policies" +) -// AWSRoboMakerRobotApplication_SourceConfig AWS CloudFormation Resource (AWS::RoboMaker::RobotApplication.SourceConfig) +// 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 AWSRoboMakerRobotApplication_SourceConfig struct { +type RobotApplication_SourceConfig struct { // Architecture AWS CloudFormation Property // Required: true @@ -32,42 +34,42 @@ type AWSRoboMakerRobotApplication_SourceConfig struct { } // AWSCloudFormationType returns the AWS CloudFormation resource type -func (r *AWSRoboMakerRobotApplication_SourceConfig) AWSCloudFormationType() string { +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 *AWSRoboMakerRobotApplication_SourceConfig) DependsOn() []string { +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 *AWSRoboMakerRobotApplication_SourceConfig) SetDependsOn(dependencies []string) { +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 *AWSRoboMakerRobotApplication_SourceConfig) Metadata() map[string]interface{} { +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 *AWSRoboMakerRobotApplication_SourceConfig) SetMetadata(metadata map[string]interface{}) { +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 *AWSRoboMakerRobotApplication_SourceConfig) DeletionPolicy() policies.DeletionPolicy { +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 *AWSRoboMakerRobotApplication_SourceConfig) SetDeletionPolicy(policy policies.DeletionPolicy) { +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/resources/aws-robomaker-simulationapplication_renderingengine.go b/cloudformation/robomaker/aws-robomaker-simulationapplication_renderingengine.go similarity index 71% rename from cloudformation/resources/aws-robomaker-simulationapplication_renderingengine.go rename to cloudformation/robomaker/aws-robomaker-simulationapplication_renderingengine.go index 236d6d3869..4de83a2564 100644 --- a/cloudformation/resources/aws-robomaker-simulationapplication_renderingengine.go +++ b/cloudformation/robomaker/aws-robomaker-simulationapplication_renderingengine.go @@ -1,10 +1,12 @@ -package resources +package robomaker -import "github.com/awslabs/goformation/v2/cloudformation/policies" +import ( + "github.com/awslabs/goformation/v3/cloudformation/policies" +) -// AWSRoboMakerSimulationApplication_RenderingEngine AWS CloudFormation Resource (AWS::RoboMaker::SimulationApplication.RenderingEngine) +// 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 AWSRoboMakerSimulationApplication_RenderingEngine struct { +type SimulationApplication_RenderingEngine struct { // Name AWS CloudFormation Property // Required: true @@ -27,42 +29,42 @@ type AWSRoboMakerSimulationApplication_RenderingEngine struct { } // AWSCloudFormationType returns the AWS CloudFormation resource type -func (r *AWSRoboMakerSimulationApplication_RenderingEngine) AWSCloudFormationType() string { +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 *AWSRoboMakerSimulationApplication_RenderingEngine) DependsOn() []string { +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 *AWSRoboMakerSimulationApplication_RenderingEngine) SetDependsOn(dependencies []string) { +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 *AWSRoboMakerSimulationApplication_RenderingEngine) Metadata() map[string]interface{} { +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 *AWSRoboMakerSimulationApplication_RenderingEngine) SetMetadata(metadata map[string]interface{}) { +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 *AWSRoboMakerSimulationApplication_RenderingEngine) DeletionPolicy() policies.DeletionPolicy { +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 *AWSRoboMakerSimulationApplication_RenderingEngine) SetDeletionPolicy(policy policies.DeletionPolicy) { +func (r *SimulationApplication_RenderingEngine) SetDeletionPolicy(policy policies.DeletionPolicy) { r._deletionPolicy = policy } diff --git a/cloudformation/resources/aws-robomaker-simulationapplication_robotsoftwaresuite.go b/cloudformation/robomaker/aws-robomaker-simulationapplication_robotsoftwaresuite.go similarity index 70% rename from cloudformation/resources/aws-robomaker-simulationapplication_robotsoftwaresuite.go rename to cloudformation/robomaker/aws-robomaker-simulationapplication_robotsoftwaresuite.go index 452ad7e007..885558ab6d 100644 --- a/cloudformation/resources/aws-robomaker-simulationapplication_robotsoftwaresuite.go +++ b/cloudformation/robomaker/aws-robomaker-simulationapplication_robotsoftwaresuite.go @@ -1,10 +1,12 @@ -package resources +package robomaker -import "github.com/awslabs/goformation/v2/cloudformation/policies" +import ( + "github.com/awslabs/goformation/v3/cloudformation/policies" +) -// AWSRoboMakerSimulationApplication_RobotSoftwareSuite AWS CloudFormation Resource (AWS::RoboMaker::SimulationApplication.RobotSoftwareSuite) +// 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 AWSRoboMakerSimulationApplication_RobotSoftwareSuite struct { +type SimulationApplication_RobotSoftwareSuite struct { // Name AWS CloudFormation Property // Required: true @@ -27,42 +29,42 @@ type AWSRoboMakerSimulationApplication_RobotSoftwareSuite struct { } // AWSCloudFormationType returns the AWS CloudFormation resource type -func (r *AWSRoboMakerSimulationApplication_RobotSoftwareSuite) AWSCloudFormationType() string { +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 *AWSRoboMakerSimulationApplication_RobotSoftwareSuite) DependsOn() []string { +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 *AWSRoboMakerSimulationApplication_RobotSoftwareSuite) SetDependsOn(dependencies []string) { +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 *AWSRoboMakerSimulationApplication_RobotSoftwareSuite) Metadata() map[string]interface{} { +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 *AWSRoboMakerSimulationApplication_RobotSoftwareSuite) SetMetadata(metadata map[string]interface{}) { +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 *AWSRoboMakerSimulationApplication_RobotSoftwareSuite) DeletionPolicy() policies.DeletionPolicy { +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 *AWSRoboMakerSimulationApplication_RobotSoftwareSuite) SetDeletionPolicy(policy policies.DeletionPolicy) { +func (r *SimulationApplication_RobotSoftwareSuite) SetDeletionPolicy(policy policies.DeletionPolicy) { r._deletionPolicy = policy } diff --git a/cloudformation/resources/aws-robomaker-simulationapplication_simulationsoftwaresuite.go b/cloudformation/robomaker/aws-robomaker-simulationapplication_simulationsoftwaresuite.go similarity index 69% rename from cloudformation/resources/aws-robomaker-simulationapplication_simulationsoftwaresuite.go rename to cloudformation/robomaker/aws-robomaker-simulationapplication_simulationsoftwaresuite.go index c1874477ed..ba7f1d3060 100644 --- a/cloudformation/resources/aws-robomaker-simulationapplication_simulationsoftwaresuite.go +++ b/cloudformation/robomaker/aws-robomaker-simulationapplication_simulationsoftwaresuite.go @@ -1,10 +1,12 @@ -package resources +package robomaker -import "github.com/awslabs/goformation/v2/cloudformation/policies" +import ( + "github.com/awslabs/goformation/v3/cloudformation/policies" +) -// AWSRoboMakerSimulationApplication_SimulationSoftwareSuite AWS CloudFormation Resource (AWS::RoboMaker::SimulationApplication.SimulationSoftwareSuite) +// 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 AWSRoboMakerSimulationApplication_SimulationSoftwareSuite struct { +type SimulationApplication_SimulationSoftwareSuite struct { // Name AWS CloudFormation Property // Required: true @@ -27,42 +29,42 @@ type AWSRoboMakerSimulationApplication_SimulationSoftwareSuite struct { } // AWSCloudFormationType returns the AWS CloudFormation resource type -func (r *AWSRoboMakerSimulationApplication_SimulationSoftwareSuite) AWSCloudFormationType() string { +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 *AWSRoboMakerSimulationApplication_SimulationSoftwareSuite) DependsOn() []string { +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 *AWSRoboMakerSimulationApplication_SimulationSoftwareSuite) SetDependsOn(dependencies []string) { +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 *AWSRoboMakerSimulationApplication_SimulationSoftwareSuite) Metadata() map[string]interface{} { +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 *AWSRoboMakerSimulationApplication_SimulationSoftwareSuite) SetMetadata(metadata map[string]interface{}) { +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 *AWSRoboMakerSimulationApplication_SimulationSoftwareSuite) DeletionPolicy() policies.DeletionPolicy { +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 *AWSRoboMakerSimulationApplication_SimulationSoftwareSuite) SetDeletionPolicy(policy policies.DeletionPolicy) { +func (r *SimulationApplication_SimulationSoftwareSuite) SetDeletionPolicy(policy policies.DeletionPolicy) { r._deletionPolicy = policy } diff --git a/cloudformation/resources/aws-robomaker-simulationapplication_sourceconfig.go b/cloudformation/robomaker/aws-robomaker-simulationapplication_sourceconfig.go similarity index 74% rename from cloudformation/resources/aws-robomaker-simulationapplication_sourceconfig.go rename to cloudformation/robomaker/aws-robomaker-simulationapplication_sourceconfig.go index e4a31b6e8c..193831d9ba 100644 --- a/cloudformation/resources/aws-robomaker-simulationapplication_sourceconfig.go +++ b/cloudformation/robomaker/aws-robomaker-simulationapplication_sourceconfig.go @@ -1,10 +1,12 @@ -package resources +package robomaker -import "github.com/awslabs/goformation/v2/cloudformation/policies" +import ( + "github.com/awslabs/goformation/v3/cloudformation/policies" +) -// AWSRoboMakerSimulationApplication_SourceConfig AWS CloudFormation Resource (AWS::RoboMaker::SimulationApplication.SourceConfig) +// 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 AWSRoboMakerSimulationApplication_SourceConfig struct { +type SimulationApplication_SourceConfig struct { // Architecture AWS CloudFormation Property // Required: true @@ -32,42 +34,42 @@ type AWSRoboMakerSimulationApplication_SourceConfig struct { } // AWSCloudFormationType returns the AWS CloudFormation resource type -func (r *AWSRoboMakerSimulationApplication_SourceConfig) AWSCloudFormationType() string { +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 *AWSRoboMakerSimulationApplication_SourceConfig) DependsOn() []string { +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 *AWSRoboMakerSimulationApplication_SourceConfig) SetDependsOn(dependencies []string) { +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 *AWSRoboMakerSimulationApplication_SourceConfig) Metadata() map[string]interface{} { +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 *AWSRoboMakerSimulationApplication_SourceConfig) SetMetadata(metadata map[string]interface{}) { +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 *AWSRoboMakerSimulationApplication_SourceConfig) DeletionPolicy() policies.DeletionPolicy { +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 *AWSRoboMakerSimulationApplication_SourceConfig) SetDeletionPolicy(policy policies.DeletionPolicy) { +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/resources/aws-route53-healthcheck_alarmidentifier.go b/cloudformation/route53/aws-route53-healthcheck_alarmidentifier.go similarity index 73% rename from cloudformation/resources/aws-route53-healthcheck_alarmidentifier.go rename to cloudformation/route53/aws-route53-healthcheck_alarmidentifier.go index b713c8aa8a..162e4df6eb 100644 --- a/cloudformation/resources/aws-route53-healthcheck_alarmidentifier.go +++ b/cloudformation/route53/aws-route53-healthcheck_alarmidentifier.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" +) -// AWSRoute53HealthCheck_AlarmIdentifier AWS CloudFormation Resource (AWS::Route53::HealthCheck.AlarmIdentifier) +// 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 AWSRoute53HealthCheck_AlarmIdentifier struct { +type HealthCheck_AlarmIdentifier struct { // Name AWS CloudFormation Property // Required: true @@ -27,42 +29,42 @@ type AWSRoute53HealthCheck_AlarmIdentifier struct { } // AWSCloudFormationType returns the AWS CloudFormation resource type -func (r *AWSRoute53HealthCheck_AlarmIdentifier) AWSCloudFormationType() string { +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 *AWSRoute53HealthCheck_AlarmIdentifier) DependsOn() []string { +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 *AWSRoute53HealthCheck_AlarmIdentifier) SetDependsOn(dependencies []string) { +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 *AWSRoute53HealthCheck_AlarmIdentifier) Metadata() map[string]interface{} { +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 *AWSRoute53HealthCheck_AlarmIdentifier) SetMetadata(metadata map[string]interface{}) { +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 *AWSRoute53HealthCheck_AlarmIdentifier) DeletionPolicy() policies.DeletionPolicy { +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 *AWSRoute53HealthCheck_AlarmIdentifier) SetDeletionPolicy(policy policies.DeletionPolicy) { +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/resources/aws-route53-healthcheck_healthchecktag.go b/cloudformation/route53/aws-route53-healthcheck_healthchecktag.go similarity index 73% rename from cloudformation/resources/aws-route53-healthcheck_healthchecktag.go rename to cloudformation/route53/aws-route53-healthcheck_healthchecktag.go index 7c4d51f887..c453f10279 100644 --- a/cloudformation/resources/aws-route53-healthcheck_healthchecktag.go +++ b/cloudformation/route53/aws-route53-healthcheck_healthchecktag.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" +) -// AWSRoute53HealthCheck_HealthCheckTag AWS CloudFormation Resource (AWS::Route53::HealthCheck.HealthCheckTag) +// 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 AWSRoute53HealthCheck_HealthCheckTag struct { +type HealthCheck_HealthCheckTag struct { // Key AWS CloudFormation Property // Required: true @@ -27,42 +29,42 @@ type AWSRoute53HealthCheck_HealthCheckTag struct { } // AWSCloudFormationType returns the AWS CloudFormation resource type -func (r *AWSRoute53HealthCheck_HealthCheckTag) AWSCloudFormationType() string { +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 *AWSRoute53HealthCheck_HealthCheckTag) DependsOn() []string { +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 *AWSRoute53HealthCheck_HealthCheckTag) SetDependsOn(dependencies []string) { +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 *AWSRoute53HealthCheck_HealthCheckTag) Metadata() map[string]interface{} { +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 *AWSRoute53HealthCheck_HealthCheckTag) SetMetadata(metadata map[string]interface{}) { +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 *AWSRoute53HealthCheck_HealthCheckTag) DeletionPolicy() policies.DeletionPolicy { +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 *AWSRoute53HealthCheck_HealthCheckTag) SetDeletionPolicy(policy policies.DeletionPolicy) { +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/resources/aws-route53-hostedzone_hostedzoneconfig.go b/cloudformation/route53/aws-route53-hostedzone_hostedzoneconfig.go similarity index 71% rename from cloudformation/resources/aws-route53-hostedzone_hostedzoneconfig.go rename to cloudformation/route53/aws-route53-hostedzone_hostedzoneconfig.go index 78b908a5e6..c309a25636 100644 --- a/cloudformation/resources/aws-route53-hostedzone_hostedzoneconfig.go +++ b/cloudformation/route53/aws-route53-hostedzone_hostedzoneconfig.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_HostedZoneConfig AWS CloudFormation Resource (AWS::Route53::HostedZone.HostedZoneConfig) +// 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 AWSRoute53HostedZone_HostedZoneConfig struct { +type HostedZone_HostedZoneConfig struct { // Comment AWS CloudFormation Property // Required: false @@ -22,42 +24,42 @@ type AWSRoute53HostedZone_HostedZoneConfig struct { } // AWSCloudFormationType returns the AWS CloudFormation resource type -func (r *AWSRoute53HostedZone_HostedZoneConfig) AWSCloudFormationType() string { +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 *AWSRoute53HostedZone_HostedZoneConfig) DependsOn() []string { +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 *AWSRoute53HostedZone_HostedZoneConfig) SetDependsOn(dependencies []string) { +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 *AWSRoute53HostedZone_HostedZoneConfig) Metadata() map[string]interface{} { +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 *AWSRoute53HostedZone_HostedZoneConfig) SetMetadata(metadata map[string]interface{}) { +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 *AWSRoute53HostedZone_HostedZoneConfig) DeletionPolicy() policies.DeletionPolicy { +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 *AWSRoute53HostedZone_HostedZoneConfig) SetDeletionPolicy(policy policies.DeletionPolicy) { +func (r *HostedZone_HostedZoneConfig) SetDeletionPolicy(policy policies.DeletionPolicy) { r._deletionPolicy = policy } diff --git a/cloudformation/resources/aws-route53-hostedzone_hostedzonetag.go b/cloudformation/route53/aws-route53-hostedzone_hostedzonetag.go similarity index 73% rename from cloudformation/resources/aws-route53-hostedzone_hostedzonetag.go rename to cloudformation/route53/aws-route53-hostedzone_hostedzonetag.go index b6a1c84c36..34cca15370 100644 --- a/cloudformation/resources/aws-route53-hostedzone_hostedzonetag.go +++ b/cloudformation/route53/aws-route53-hostedzone_hostedzonetag.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_HostedZoneTag AWS CloudFormation Resource (AWS::Route53::HostedZone.HostedZoneTag) +// 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 AWSRoute53HostedZone_HostedZoneTag struct { +type HostedZone_HostedZoneTag struct { // Key AWS CloudFormation Property // Required: true @@ -27,42 +29,42 @@ type AWSRoute53HostedZone_HostedZoneTag struct { } // AWSCloudFormationType returns the AWS CloudFormation resource type -func (r *AWSRoute53HostedZone_HostedZoneTag) AWSCloudFormationType() string { +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 *AWSRoute53HostedZone_HostedZoneTag) DependsOn() []string { +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 *AWSRoute53HostedZone_HostedZoneTag) SetDependsOn(dependencies []string) { +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 *AWSRoute53HostedZone_HostedZoneTag) Metadata() map[string]interface{} { +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 *AWSRoute53HostedZone_HostedZoneTag) SetMetadata(metadata map[string]interface{}) { +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 *AWSRoute53HostedZone_HostedZoneTag) DeletionPolicy() policies.DeletionPolicy { +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 *AWSRoute53HostedZone_HostedZoneTag) SetDeletionPolicy(policy policies.DeletionPolicy) { +func (r *HostedZone_HostedZoneTag) SetDeletionPolicy(policy policies.DeletionPolicy) { r._deletionPolicy = policy } diff --git a/cloudformation/resources/aws-route53-hostedzone_queryloggingconfig.go b/cloudformation/route53/aws-route53-hostedzone_queryloggingconfig.go similarity index 71% rename from cloudformation/resources/aws-route53-hostedzone_queryloggingconfig.go rename to cloudformation/route53/aws-route53-hostedzone_queryloggingconfig.go index b0a28de277..3182b9eb9d 100644 --- a/cloudformation/resources/aws-route53-hostedzone_queryloggingconfig.go +++ b/cloudformation/route53/aws-route53-hostedzone_queryloggingconfig.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_QueryLoggingConfig AWS CloudFormation Resource (AWS::Route53::HostedZone.QueryLoggingConfig) +// 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 AWSRoute53HostedZone_QueryLoggingConfig struct { +type HostedZone_QueryLoggingConfig struct { // CloudWatchLogsLogGroupArn AWS CloudFormation Property // Required: true @@ -22,42 +24,42 @@ type AWSRoute53HostedZone_QueryLoggingConfig struct { } // AWSCloudFormationType returns the AWS CloudFormation resource type -func (r *AWSRoute53HostedZone_QueryLoggingConfig) AWSCloudFormationType() string { +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 *AWSRoute53HostedZone_QueryLoggingConfig) DependsOn() []string { +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 *AWSRoute53HostedZone_QueryLoggingConfig) SetDependsOn(dependencies []string) { +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 *AWSRoute53HostedZone_QueryLoggingConfig) Metadata() map[string]interface{} { +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 *AWSRoute53HostedZone_QueryLoggingConfig) SetMetadata(metadata map[string]interface{}) { +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 *AWSRoute53HostedZone_QueryLoggingConfig) DeletionPolicy() policies.DeletionPolicy { +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 *AWSRoute53HostedZone_QueryLoggingConfig) SetDeletionPolicy(policy policies.DeletionPolicy) { +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/resources/aws-route53resolver-resolverendpoint_ipaddressrequest.go b/cloudformation/route53resolver/aws-route53resolver-resolverendpoint_ipaddressrequest.go similarity index 70% rename from cloudformation/resources/aws-route53resolver-resolverendpoint_ipaddressrequest.go rename to cloudformation/route53resolver/aws-route53resolver-resolverendpoint_ipaddressrequest.go index d55f8e147d..fb9dba729c 100644 --- a/cloudformation/resources/aws-route53resolver-resolverendpoint_ipaddressrequest.go +++ b/cloudformation/route53resolver/aws-route53resolver-resolverendpoint_ipaddressrequest.go @@ -1,10 +1,12 @@ -package resources +package route53resolver -import "github.com/awslabs/goformation/v2/cloudformation/policies" +import ( + "github.com/awslabs/goformation/v3/cloudformation/policies" +) -// AWSRoute53ResolverResolverEndpoint_IpAddressRequest AWS CloudFormation Resource (AWS::Route53Resolver::ResolverEndpoint.IpAddressRequest) +// 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 AWSRoute53ResolverResolverEndpoint_IpAddressRequest struct { +type ResolverEndpoint_IpAddressRequest struct { // Ip AWS CloudFormation Property // Required: false @@ -27,42 +29,42 @@ type AWSRoute53ResolverResolverEndpoint_IpAddressRequest struct { } // AWSCloudFormationType returns the AWS CloudFormation resource type -func (r *AWSRoute53ResolverResolverEndpoint_IpAddressRequest) AWSCloudFormationType() string { +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 *AWSRoute53ResolverResolverEndpoint_IpAddressRequest) DependsOn() []string { +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 *AWSRoute53ResolverResolverEndpoint_IpAddressRequest) SetDependsOn(dependencies []string) { +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 *AWSRoute53ResolverResolverEndpoint_IpAddressRequest) Metadata() map[string]interface{} { +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 *AWSRoute53ResolverResolverEndpoint_IpAddressRequest) SetMetadata(metadata map[string]interface{}) { +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 *AWSRoute53ResolverResolverEndpoint_IpAddressRequest) DeletionPolicy() policies.DeletionPolicy { +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 *AWSRoute53ResolverResolverEndpoint_IpAddressRequest) SetDeletionPolicy(policy policies.DeletionPolicy) { +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/resources/aws-route53resolver-resolverrule_targetaddress.go b/cloudformation/route53resolver/aws-route53resolver-resolverrule_targetaddress.go similarity index 71% rename from cloudformation/resources/aws-route53resolver-resolverrule_targetaddress.go rename to cloudformation/route53resolver/aws-route53resolver-resolverrule_targetaddress.go index 434c55a244..60e7b20a69 100644 --- a/cloudformation/resources/aws-route53resolver-resolverrule_targetaddress.go +++ b/cloudformation/route53resolver/aws-route53resolver-resolverrule_targetaddress.go @@ -1,10 +1,12 @@ -package resources +package route53resolver -import "github.com/awslabs/goformation/v2/cloudformation/policies" +import ( + "github.com/awslabs/goformation/v3/cloudformation/policies" +) -// AWSRoute53ResolverResolverRule_TargetAddress AWS CloudFormation Resource (AWS::Route53Resolver::ResolverRule.TargetAddress) +// 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 AWSRoute53ResolverResolverRule_TargetAddress struct { +type ResolverRule_TargetAddress struct { // Ip AWS CloudFormation Property // Required: true @@ -27,42 +29,42 @@ type AWSRoute53ResolverResolverRule_TargetAddress struct { } // AWSCloudFormationType returns the AWS CloudFormation resource type -func (r *AWSRoute53ResolverResolverRule_TargetAddress) AWSCloudFormationType() string { +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 *AWSRoute53ResolverResolverRule_TargetAddress) DependsOn() []string { +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 *AWSRoute53ResolverResolverRule_TargetAddress) SetDependsOn(dependencies []string) { +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 *AWSRoute53ResolverResolverRule_TargetAddress) Metadata() map[string]interface{} { +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 *AWSRoute53ResolverResolverRule_TargetAddress) SetMetadata(metadata map[string]interface{}) { +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 *AWSRoute53ResolverResolverRule_TargetAddress) DeletionPolicy() policies.DeletionPolicy { +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 *AWSRoute53ResolverResolverRule_TargetAddress) SetDeletionPolicy(policy policies.DeletionPolicy) { +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/resources/aws-s3-bucket_abortincompletemultipartupload.go b/cloudformation/s3/aws-s3-bucket_abortincompletemultipartupload.go similarity index 70% rename from cloudformation/resources/aws-s3-bucket_abortincompletemultipartupload.go rename to cloudformation/s3/aws-s3-bucket_abortincompletemultipartupload.go index d17f14c657..7b3f28a76b 100644 --- a/cloudformation/resources/aws-s3-bucket_abortincompletemultipartupload.go +++ b/cloudformation/s3/aws-s3-bucket_abortincompletemultipartupload.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_AbortIncompleteMultipartUpload AWS CloudFormation Resource (AWS::S3::Bucket.AbortIncompleteMultipartUpload) +// 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 AWSS3Bucket_AbortIncompleteMultipartUpload struct { +type Bucket_AbortIncompleteMultipartUpload struct { // DaysAfterInitiation AWS CloudFormation Property // Required: true @@ -22,42 +24,42 @@ type AWSS3Bucket_AbortIncompleteMultipartUpload struct { } // AWSCloudFormationType returns the AWS CloudFormation resource type -func (r *AWSS3Bucket_AbortIncompleteMultipartUpload) AWSCloudFormationType() string { +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 *AWSS3Bucket_AbortIncompleteMultipartUpload) DependsOn() []string { +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 *AWSS3Bucket_AbortIncompleteMultipartUpload) SetDependsOn(dependencies []string) { +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 *AWSS3Bucket_AbortIncompleteMultipartUpload) Metadata() map[string]interface{} { +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 *AWSS3Bucket_AbortIncompleteMultipartUpload) SetMetadata(metadata map[string]interface{}) { +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 *AWSS3Bucket_AbortIncompleteMultipartUpload) DeletionPolicy() policies.DeletionPolicy { +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 *AWSS3Bucket_AbortIncompleteMultipartUpload) SetDeletionPolicy(policy policies.DeletionPolicy) { +func (r *Bucket_AbortIncompleteMultipartUpload) SetDeletionPolicy(policy policies.DeletionPolicy) { r._deletionPolicy = policy } diff --git a/cloudformation/resources/aws-s3-bucket_accelerateconfiguration.go b/cloudformation/s3/aws-s3-bucket_accelerateconfiguration.go similarity index 71% rename from cloudformation/resources/aws-s3-bucket_accelerateconfiguration.go rename to cloudformation/s3/aws-s3-bucket_accelerateconfiguration.go index ab8642c473..7eff8cdcd3 100644 --- a/cloudformation/resources/aws-s3-bucket_accelerateconfiguration.go +++ b/cloudformation/s3/aws-s3-bucket_accelerateconfiguration.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_AccelerateConfiguration AWS CloudFormation Resource (AWS::S3::Bucket.AccelerateConfiguration) +// 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 AWSS3Bucket_AccelerateConfiguration struct { +type Bucket_AccelerateConfiguration struct { // AccelerationStatus AWS CloudFormation Property // Required: true @@ -22,42 +24,42 @@ type AWSS3Bucket_AccelerateConfiguration struct { } // AWSCloudFormationType returns the AWS CloudFormation resource type -func (r *AWSS3Bucket_AccelerateConfiguration) AWSCloudFormationType() string { +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 *AWSS3Bucket_AccelerateConfiguration) DependsOn() []string { +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 *AWSS3Bucket_AccelerateConfiguration) SetDependsOn(dependencies []string) { +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 *AWSS3Bucket_AccelerateConfiguration) Metadata() map[string]interface{} { +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 *AWSS3Bucket_AccelerateConfiguration) SetMetadata(metadata map[string]interface{}) { +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 *AWSS3Bucket_AccelerateConfiguration) DeletionPolicy() policies.DeletionPolicy { +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 *AWSS3Bucket_AccelerateConfiguration) SetDeletionPolicy(policy policies.DeletionPolicy) { +func (r *Bucket_AccelerateConfiguration) SetDeletionPolicy(policy policies.DeletionPolicy) { r._deletionPolicy = policy } diff --git a/cloudformation/resources/aws-s3-bucket_accesscontroltranslation.go b/cloudformation/s3/aws-s3-bucket_accesscontroltranslation.go similarity index 70% rename from cloudformation/resources/aws-s3-bucket_accesscontroltranslation.go rename to cloudformation/s3/aws-s3-bucket_accesscontroltranslation.go index ba7da7d667..1a9cb190fb 100644 --- a/cloudformation/resources/aws-s3-bucket_accesscontroltranslation.go +++ b/cloudformation/s3/aws-s3-bucket_accesscontroltranslation.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_AccessControlTranslation AWS CloudFormation Resource (AWS::S3::Bucket.AccessControlTranslation) +// 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 AWSS3Bucket_AccessControlTranslation struct { +type Bucket_AccessControlTranslation struct { // Owner AWS CloudFormation Property // Required: true @@ -22,42 +24,42 @@ type AWSS3Bucket_AccessControlTranslation struct { } // AWSCloudFormationType returns the AWS CloudFormation resource type -func (r *AWSS3Bucket_AccessControlTranslation) AWSCloudFormationType() string { +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 *AWSS3Bucket_AccessControlTranslation) DependsOn() []string { +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 *AWSS3Bucket_AccessControlTranslation) SetDependsOn(dependencies []string) { +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 *AWSS3Bucket_AccessControlTranslation) Metadata() map[string]interface{} { +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 *AWSS3Bucket_AccessControlTranslation) SetMetadata(metadata map[string]interface{}) { +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 *AWSS3Bucket_AccessControlTranslation) DeletionPolicy() policies.DeletionPolicy { +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 *AWSS3Bucket_AccessControlTranslation) SetDeletionPolicy(policy policies.DeletionPolicy) { +func (r *Bucket_AccessControlTranslation) SetDeletionPolicy(policy policies.DeletionPolicy) { r._deletionPolicy = policy } diff --git a/cloudformation/resources/aws-s3-bucket_analyticsconfiguration.go b/cloudformation/s3/aws-s3-bucket_analyticsconfiguration.go similarity index 73% rename from cloudformation/resources/aws-s3-bucket_analyticsconfiguration.go rename to cloudformation/s3/aws-s3-bucket_analyticsconfiguration.go index 240ccc1a10..6efac4170b 100644 --- a/cloudformation/resources/aws-s3-bucket_analyticsconfiguration.go +++ b/cloudformation/s3/aws-s3-bucket_analyticsconfiguration.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_AnalyticsConfiguration AWS CloudFormation Resource (AWS::S3::Bucket.AnalyticsConfiguration) +// 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 AWSS3Bucket_AnalyticsConfiguration struct { +type Bucket_AnalyticsConfiguration struct { // Id AWS CloudFormation Property // Required: true @@ -19,12 +21,12 @@ type AWSS3Bucket_AnalyticsConfiguration struct { // 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"` + 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 []AWSS3Bucket_TagFilter `json:"TagFilters,omitempty"` + TagFilters []Bucket_TagFilter `json:"TagFilters,omitempty"` // _deletionPolicy represents a CloudFormation DeletionPolicy _deletionPolicy policies.DeletionPolicy @@ -37,42 +39,42 @@ type AWSS3Bucket_AnalyticsConfiguration struct { } // AWSCloudFormationType returns the AWS CloudFormation resource type -func (r *AWSS3Bucket_AnalyticsConfiguration) AWSCloudFormationType() string { +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 *AWSS3Bucket_AnalyticsConfiguration) DependsOn() []string { +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 *AWSS3Bucket_AnalyticsConfiguration) SetDependsOn(dependencies []string) { +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 *AWSS3Bucket_AnalyticsConfiguration) Metadata() map[string]interface{} { +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 *AWSS3Bucket_AnalyticsConfiguration) SetMetadata(metadata map[string]interface{}) { +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 *AWSS3Bucket_AnalyticsConfiguration) DeletionPolicy() policies.DeletionPolicy { +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 *AWSS3Bucket_AnalyticsConfiguration) SetDeletionPolicy(policy policies.DeletionPolicy) { +func (r *Bucket_AnalyticsConfiguration) SetDeletionPolicy(policy policies.DeletionPolicy) { r._deletionPolicy = policy } diff --git a/cloudformation/resources/aws-s3-bucket_bucketencryption.go b/cloudformation/s3/aws-s3-bucket_bucketencryption.go similarity index 69% rename from cloudformation/resources/aws-s3-bucket_bucketencryption.go rename to cloudformation/s3/aws-s3-bucket_bucketencryption.go index 8df4821b82..31555d1f73 100644 --- a/cloudformation/resources/aws-s3-bucket_bucketencryption.go +++ b/cloudformation/s3/aws-s3-bucket_bucketencryption.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_BucketEncryption AWS CloudFormation Resource (AWS::S3::Bucket.BucketEncryption) +// 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 AWSS3Bucket_BucketEncryption struct { +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 []AWSS3Bucket_ServerSideEncryptionRule `json:"ServerSideEncryptionConfiguration,omitempty"` + ServerSideEncryptionConfiguration []Bucket_ServerSideEncryptionRule `json:"ServerSideEncryptionConfiguration,omitempty"` // _deletionPolicy represents a CloudFormation DeletionPolicy _deletionPolicy policies.DeletionPolicy @@ -22,42 +24,42 @@ type AWSS3Bucket_BucketEncryption struct { } // AWSCloudFormationType returns the AWS CloudFormation resource type -func (r *AWSS3Bucket_BucketEncryption) AWSCloudFormationType() string { +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 *AWSS3Bucket_BucketEncryption) DependsOn() []string { +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 *AWSS3Bucket_BucketEncryption) SetDependsOn(dependencies []string) { +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 *AWSS3Bucket_BucketEncryption) Metadata() map[string]interface{} { +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 *AWSS3Bucket_BucketEncryption) SetMetadata(metadata map[string]interface{}) { +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 *AWSS3Bucket_BucketEncryption) DeletionPolicy() policies.DeletionPolicy { +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 *AWSS3Bucket_BucketEncryption) SetDeletionPolicy(policy policies.DeletionPolicy) { +func (r *Bucket_BucketEncryption) SetDeletionPolicy(policy policies.DeletionPolicy) { r._deletionPolicy = policy } diff --git a/cloudformation/resources/aws-s3-bucket_corsconfiguration.go b/cloudformation/s3/aws-s3-bucket_corsconfiguration.go similarity index 70% rename from cloudformation/resources/aws-s3-bucket_corsconfiguration.go rename to cloudformation/s3/aws-s3-bucket_corsconfiguration.go index aef3adef00..b89ffb712e 100644 --- a/cloudformation/resources/aws-s3-bucket_corsconfiguration.go +++ b/cloudformation/s3/aws-s3-bucket_corsconfiguration.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_CorsConfiguration AWS CloudFormation Resource (AWS::S3::Bucket.CorsConfiguration) +// 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 AWSS3Bucket_CorsConfiguration struct { +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 []AWSS3Bucket_CorsRule `json:"CorsRules,omitempty"` + CorsRules []Bucket_CorsRule `json:"CorsRules,omitempty"` // _deletionPolicy represents a CloudFormation DeletionPolicy _deletionPolicy policies.DeletionPolicy @@ -22,42 +24,42 @@ type AWSS3Bucket_CorsConfiguration struct { } // AWSCloudFormationType returns the AWS CloudFormation resource type -func (r *AWSS3Bucket_CorsConfiguration) AWSCloudFormationType() string { +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 *AWSS3Bucket_CorsConfiguration) DependsOn() []string { +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 *AWSS3Bucket_CorsConfiguration) SetDependsOn(dependencies []string) { +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 *AWSS3Bucket_CorsConfiguration) Metadata() map[string]interface{} { +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 *AWSS3Bucket_CorsConfiguration) SetMetadata(metadata map[string]interface{}) { +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 *AWSS3Bucket_CorsConfiguration) DeletionPolicy() policies.DeletionPolicy { +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 *AWSS3Bucket_CorsConfiguration) SetDeletionPolicy(policy policies.DeletionPolicy) { +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/resources/aws-s3-bucket_dataexport.go b/cloudformation/s3/aws-s3-bucket_dataexport.go similarity index 74% rename from cloudformation/resources/aws-s3-bucket_dataexport.go rename to cloudformation/s3/aws-s3-bucket_dataexport.go index a48112a2f4..7b7991b9f7 100644 --- a/cloudformation/resources/aws-s3-bucket_dataexport.go +++ b/cloudformation/s3/aws-s3-bucket_dataexport.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_DataExport AWS CloudFormation Resource (AWS::S3::Bucket.DataExport) +// 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 AWSS3Bucket_DataExport struct { +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 *AWSS3Bucket_Destination `json:"Destination,omitempty"` + Destination *Bucket_Destination `json:"Destination,omitempty"` // OutputSchemaVersion AWS CloudFormation Property // Required: true @@ -27,42 +29,42 @@ type AWSS3Bucket_DataExport struct { } // AWSCloudFormationType returns the AWS CloudFormation resource type -func (r *AWSS3Bucket_DataExport) AWSCloudFormationType() string { +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 *AWSS3Bucket_DataExport) DependsOn() []string { +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 *AWSS3Bucket_DataExport) SetDependsOn(dependencies []string) { +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 *AWSS3Bucket_DataExport) Metadata() map[string]interface{} { +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 *AWSS3Bucket_DataExport) SetMetadata(metadata map[string]interface{}) { +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 *AWSS3Bucket_DataExport) DeletionPolicy() policies.DeletionPolicy { +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 *AWSS3Bucket_DataExport) SetDeletionPolicy(policy policies.DeletionPolicy) { +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/resources/aws-s3-bucket_encryptionconfiguration.go b/cloudformation/s3/aws-s3-bucket_encryptionconfiguration.go similarity index 71% rename from cloudformation/resources/aws-s3-bucket_encryptionconfiguration.go rename to cloudformation/s3/aws-s3-bucket_encryptionconfiguration.go index 1242a84df5..c292cc421f 100644 --- a/cloudformation/resources/aws-s3-bucket_encryptionconfiguration.go +++ b/cloudformation/s3/aws-s3-bucket_encryptionconfiguration.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_EncryptionConfiguration AWS CloudFormation Resource (AWS::S3::Bucket.EncryptionConfiguration) +// 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 AWSS3Bucket_EncryptionConfiguration struct { +type Bucket_EncryptionConfiguration struct { // ReplicaKmsKeyID AWS CloudFormation Property // Required: true @@ -22,42 +24,42 @@ type AWSS3Bucket_EncryptionConfiguration struct { } // AWSCloudFormationType returns the AWS CloudFormation resource type -func (r *AWSS3Bucket_EncryptionConfiguration) AWSCloudFormationType() string { +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 *AWSS3Bucket_EncryptionConfiguration) DependsOn() []string { +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 *AWSS3Bucket_EncryptionConfiguration) SetDependsOn(dependencies []string) { +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 *AWSS3Bucket_EncryptionConfiguration) Metadata() map[string]interface{} { +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 *AWSS3Bucket_EncryptionConfiguration) SetMetadata(metadata map[string]interface{}) { +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 *AWSS3Bucket_EncryptionConfiguration) DeletionPolicy() policies.DeletionPolicy { +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 *AWSS3Bucket_EncryptionConfiguration) SetDeletionPolicy(policy policies.DeletionPolicy) { +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/resources/aws-s3-bucket_lifecycleconfiguration.go b/cloudformation/s3/aws-s3-bucket_lifecycleconfiguration.go similarity index 69% rename from cloudformation/resources/aws-s3-bucket_lifecycleconfiguration.go rename to cloudformation/s3/aws-s3-bucket_lifecycleconfiguration.go index 5a9b63e99f..ba4eee51b9 100644 --- a/cloudformation/resources/aws-s3-bucket_lifecycleconfiguration.go +++ b/cloudformation/s3/aws-s3-bucket_lifecycleconfiguration.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_LifecycleConfiguration AWS CloudFormation Resource (AWS::S3::Bucket.LifecycleConfiguration) +// 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 AWSS3Bucket_LifecycleConfiguration struct { +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 []AWSS3Bucket_Rule `json:"Rules,omitempty"` + Rules []Bucket_Rule `json:"Rules,omitempty"` // _deletionPolicy represents a CloudFormation DeletionPolicy _deletionPolicy policies.DeletionPolicy @@ -22,42 +24,42 @@ type AWSS3Bucket_LifecycleConfiguration struct { } // AWSCloudFormationType returns the AWS CloudFormation resource type -func (r *AWSS3Bucket_LifecycleConfiguration) AWSCloudFormationType() string { +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 *AWSS3Bucket_LifecycleConfiguration) DependsOn() []string { +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 *AWSS3Bucket_LifecycleConfiguration) SetDependsOn(dependencies []string) { +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 *AWSS3Bucket_LifecycleConfiguration) Metadata() map[string]interface{} { +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 *AWSS3Bucket_LifecycleConfiguration) SetMetadata(metadata map[string]interface{}) { +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 *AWSS3Bucket_LifecycleConfiguration) DeletionPolicy() policies.DeletionPolicy { +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 *AWSS3Bucket_LifecycleConfiguration) SetDeletionPolicy(policy policies.DeletionPolicy) { +func (r *Bucket_LifecycleConfiguration) SetDeletionPolicy(policy policies.DeletionPolicy) { r._deletionPolicy = policy } diff --git a/cloudformation/resources/aws-s3-bucket_loggingconfiguration.go b/cloudformation/s3/aws-s3-bucket_loggingconfiguration.go similarity index 74% rename from cloudformation/resources/aws-s3-bucket_loggingconfiguration.go rename to cloudformation/s3/aws-s3-bucket_loggingconfiguration.go index 63e955b702..5ed0c67cf3 100644 --- a/cloudformation/resources/aws-s3-bucket_loggingconfiguration.go +++ b/cloudformation/s3/aws-s3-bucket_loggingconfiguration.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_LoggingConfiguration AWS CloudFormation Resource (AWS::S3::Bucket.LoggingConfiguration) +// 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 AWSS3Bucket_LoggingConfiguration struct { +type Bucket_LoggingConfiguration struct { // DestinationBucketName AWS CloudFormation Property // Required: false @@ -27,42 +29,42 @@ type AWSS3Bucket_LoggingConfiguration struct { } // AWSCloudFormationType returns the AWS CloudFormation resource type -func (r *AWSS3Bucket_LoggingConfiguration) AWSCloudFormationType() string { +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 *AWSS3Bucket_LoggingConfiguration) DependsOn() []string { +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 *AWSS3Bucket_LoggingConfiguration) SetDependsOn(dependencies []string) { +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 *AWSS3Bucket_LoggingConfiguration) Metadata() map[string]interface{} { +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 *AWSS3Bucket_LoggingConfiguration) SetMetadata(metadata map[string]interface{}) { +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 *AWSS3Bucket_LoggingConfiguration) DeletionPolicy() policies.DeletionPolicy { +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 *AWSS3Bucket_LoggingConfiguration) SetDeletionPolicy(policy policies.DeletionPolicy) { +func (r *Bucket_LoggingConfiguration) SetDeletionPolicy(policy policies.DeletionPolicy) { r._deletionPolicy = policy } diff --git a/cloudformation/resources/aws-s3-bucket_metricsconfiguration.go b/cloudformation/s3/aws-s3-bucket_metricsconfiguration.go similarity index 74% rename from cloudformation/resources/aws-s3-bucket_metricsconfiguration.go rename to cloudformation/s3/aws-s3-bucket_metricsconfiguration.go index 27669aa153..50b69f712d 100644 --- a/cloudformation/resources/aws-s3-bucket_metricsconfiguration.go +++ b/cloudformation/s3/aws-s3-bucket_metricsconfiguration.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_MetricsConfiguration AWS CloudFormation Resource (AWS::S3::Bucket.MetricsConfiguration) +// 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 AWSS3Bucket_MetricsConfiguration struct { +type Bucket_MetricsConfiguration struct { // Id AWS CloudFormation Property // Required: true @@ -19,7 +21,7 @@ type AWSS3Bucket_MetricsConfiguration struct { // 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"` + TagFilters []Bucket_TagFilter `json:"TagFilters,omitempty"` // _deletionPolicy represents a CloudFormation DeletionPolicy _deletionPolicy policies.DeletionPolicy @@ -32,42 +34,42 @@ type AWSS3Bucket_MetricsConfiguration struct { } // AWSCloudFormationType returns the AWS CloudFormation resource type -func (r *AWSS3Bucket_MetricsConfiguration) AWSCloudFormationType() string { +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 *AWSS3Bucket_MetricsConfiguration) DependsOn() []string { +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 *AWSS3Bucket_MetricsConfiguration) SetDependsOn(dependencies []string) { +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 *AWSS3Bucket_MetricsConfiguration) Metadata() map[string]interface{} { +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 *AWSS3Bucket_MetricsConfiguration) SetMetadata(metadata map[string]interface{}) { +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 *AWSS3Bucket_MetricsConfiguration) DeletionPolicy() policies.DeletionPolicy { +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 *AWSS3Bucket_MetricsConfiguration) SetDeletionPolicy(policy policies.DeletionPolicy) { +func (r *Bucket_MetricsConfiguration) SetDeletionPolicy(policy policies.DeletionPolicy) { r._deletionPolicy = policy } diff --git a/cloudformation/resources/aws-s3-bucket_noncurrentversiontransition.go b/cloudformation/s3/aws-s3-bucket_noncurrentversiontransition.go similarity index 74% rename from cloudformation/resources/aws-s3-bucket_noncurrentversiontransition.go rename to cloudformation/s3/aws-s3-bucket_noncurrentversiontransition.go index 50403a20ff..72b402ecee 100644 --- a/cloudformation/resources/aws-s3-bucket_noncurrentversiontransition.go +++ b/cloudformation/s3/aws-s3-bucket_noncurrentversiontransition.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_NoncurrentVersionTransition AWS CloudFormation Resource (AWS::S3::Bucket.NoncurrentVersionTransition) +// 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 AWSS3Bucket_NoncurrentVersionTransition struct { +type Bucket_NoncurrentVersionTransition struct { // StorageClass AWS CloudFormation Property // Required: true @@ -27,42 +29,42 @@ type AWSS3Bucket_NoncurrentVersionTransition struct { } // AWSCloudFormationType returns the AWS CloudFormation resource type -func (r *AWSS3Bucket_NoncurrentVersionTransition) AWSCloudFormationType() string { +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 *AWSS3Bucket_NoncurrentVersionTransition) DependsOn() []string { +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 *AWSS3Bucket_NoncurrentVersionTransition) SetDependsOn(dependencies []string) { +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 *AWSS3Bucket_NoncurrentVersionTransition) Metadata() map[string]interface{} { +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 *AWSS3Bucket_NoncurrentVersionTransition) SetMetadata(metadata map[string]interface{}) { +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 *AWSS3Bucket_NoncurrentVersionTransition) DeletionPolicy() policies.DeletionPolicy { +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 *AWSS3Bucket_NoncurrentVersionTransition) SetDeletionPolicy(policy policies.DeletionPolicy) { +func (r *Bucket_NoncurrentVersionTransition) SetDeletionPolicy(policy policies.DeletionPolicy) { r._deletionPolicy = policy } diff --git a/cloudformation/resources/aws-s3-bucket_notificationconfiguration.go b/cloudformation/s3/aws-s3-bucket_notificationconfiguration.go similarity index 68% rename from cloudformation/resources/aws-s3-bucket_notificationconfiguration.go rename to cloudformation/s3/aws-s3-bucket_notificationconfiguration.go index db81aaa44a..8a599ee73e 100644 --- a/cloudformation/resources/aws-s3-bucket_notificationconfiguration.go +++ b/cloudformation/s3/aws-s3-bucket_notificationconfiguration.go @@ -1,25 +1,27 @@ -package resources +package s3 -import "github.com/awslabs/goformation/v2/cloudformation/policies" +import ( + "github.com/awslabs/goformation/v3/cloudformation/policies" +) -// AWSS3Bucket_NotificationConfiguration AWS CloudFormation Resource (AWS::S3::Bucket.NotificationConfiguration) +// 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 AWSS3Bucket_NotificationConfiguration struct { +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 []AWSS3Bucket_LambdaConfiguration `json:"LambdaConfigurations,omitempty"` + 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 []AWSS3Bucket_QueueConfiguration `json:"QueueConfigurations,omitempty"` + 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 []AWSS3Bucket_TopicConfiguration `json:"TopicConfigurations,omitempty"` + TopicConfigurations []Bucket_TopicConfiguration `json:"TopicConfigurations,omitempty"` // _deletionPolicy represents a CloudFormation DeletionPolicy _deletionPolicy policies.DeletionPolicy @@ -32,42 +34,42 @@ type AWSS3Bucket_NotificationConfiguration struct { } // AWSCloudFormationType returns the AWS CloudFormation resource type -func (r *AWSS3Bucket_NotificationConfiguration) AWSCloudFormationType() string { +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 *AWSS3Bucket_NotificationConfiguration) DependsOn() []string { +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 *AWSS3Bucket_NotificationConfiguration) SetDependsOn(dependencies []string) { +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 *AWSS3Bucket_NotificationConfiguration) Metadata() map[string]interface{} { +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 *AWSS3Bucket_NotificationConfiguration) SetMetadata(metadata map[string]interface{}) { +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 *AWSS3Bucket_NotificationConfiguration) DeletionPolicy() policies.DeletionPolicy { +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 *AWSS3Bucket_NotificationConfiguration) SetDeletionPolicy(policy policies.DeletionPolicy) { +func (r *Bucket_NotificationConfiguration) SetDeletionPolicy(policy policies.DeletionPolicy) { r._deletionPolicy = policy } diff --git a/cloudformation/resources/aws-s3-bucket_notificationfilter.go b/cloudformation/s3/aws-s3-bucket_notificationfilter.go similarity index 70% rename from cloudformation/resources/aws-s3-bucket_notificationfilter.go rename to cloudformation/s3/aws-s3-bucket_notificationfilter.go index b782158280..b86ab6e87f 100644 --- a/cloudformation/resources/aws-s3-bucket_notificationfilter.go +++ b/cloudformation/s3/aws-s3-bucket_notificationfilter.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_NotificationFilter AWS CloudFormation Resource (AWS::S3::Bucket.NotificationFilter) +// 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 AWSS3Bucket_NotificationFilter struct { +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 *AWSS3Bucket_S3KeyFilter `json:"S3Key,omitempty"` + S3Key *Bucket_S3KeyFilter `json:"S3Key,omitempty"` // _deletionPolicy represents a CloudFormation DeletionPolicy _deletionPolicy policies.DeletionPolicy @@ -22,42 +24,42 @@ type AWSS3Bucket_NotificationFilter struct { } // AWSCloudFormationType returns the AWS CloudFormation resource type -func (r *AWSS3Bucket_NotificationFilter) AWSCloudFormationType() string { +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 *AWSS3Bucket_NotificationFilter) DependsOn() []string { +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 *AWSS3Bucket_NotificationFilter) SetDependsOn(dependencies []string) { +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 *AWSS3Bucket_NotificationFilter) Metadata() map[string]interface{} { +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 *AWSS3Bucket_NotificationFilter) SetMetadata(metadata map[string]interface{}) { +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 *AWSS3Bucket_NotificationFilter) DeletionPolicy() policies.DeletionPolicy { +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 *AWSS3Bucket_NotificationFilter) SetDeletionPolicy(policy policies.DeletionPolicy) { +func (r *Bucket_NotificationFilter) SetDeletionPolicy(policy policies.DeletionPolicy) { r._deletionPolicy = policy } diff --git a/cloudformation/resources/aws-s3-bucket_objectlockconfiguration.go b/cloudformation/s3/aws-s3-bucket_objectlockconfiguration.go similarity index 72% rename from cloudformation/resources/aws-s3-bucket_objectlockconfiguration.go rename to cloudformation/s3/aws-s3-bucket_objectlockconfiguration.go index 24cf4a4994..63faa26889 100644 --- a/cloudformation/resources/aws-s3-bucket_objectlockconfiguration.go +++ b/cloudformation/s3/aws-s3-bucket_objectlockconfiguration.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_ObjectLockConfiguration AWS CloudFormation Resource (AWS::S3::Bucket.ObjectLockConfiguration) +// 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 AWSS3Bucket_ObjectLockConfiguration struct { +type Bucket_ObjectLockConfiguration struct { // ObjectLockEnabled AWS CloudFormation Property // Required: false @@ -14,7 +16,7 @@ type AWSS3Bucket_ObjectLockConfiguration struct { // 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"` + Rule *Bucket_ObjectLockRule `json:"Rule,omitempty"` // _deletionPolicy represents a CloudFormation DeletionPolicy _deletionPolicy policies.DeletionPolicy @@ -27,42 +29,42 @@ type AWSS3Bucket_ObjectLockConfiguration struct { } // AWSCloudFormationType returns the AWS CloudFormation resource type -func (r *AWSS3Bucket_ObjectLockConfiguration) AWSCloudFormationType() string { +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 *AWSS3Bucket_ObjectLockConfiguration) DependsOn() []string { +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 *AWSS3Bucket_ObjectLockConfiguration) SetDependsOn(dependencies []string) { +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 *AWSS3Bucket_ObjectLockConfiguration) Metadata() map[string]interface{} { +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 *AWSS3Bucket_ObjectLockConfiguration) SetMetadata(metadata map[string]interface{}) { +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 *AWSS3Bucket_ObjectLockConfiguration) DeletionPolicy() policies.DeletionPolicy { +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 *AWSS3Bucket_ObjectLockConfiguration) SetDeletionPolicy(policy policies.DeletionPolicy) { +func (r *Bucket_ObjectLockConfiguration) SetDeletionPolicy(policy policies.DeletionPolicy) { r._deletionPolicy = policy } diff --git a/cloudformation/resources/aws-s3-bucket_objectlockrule.go b/cloudformation/s3/aws-s3-bucket_objectlockrule.go similarity index 70% rename from cloudformation/resources/aws-s3-bucket_objectlockrule.go rename to cloudformation/s3/aws-s3-bucket_objectlockrule.go index 93203fe6f2..1b7bc29061 100644 --- a/cloudformation/resources/aws-s3-bucket_objectlockrule.go +++ b/cloudformation/s3/aws-s3-bucket_objectlockrule.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_ObjectLockRule AWS CloudFormation Resource (AWS::S3::Bucket.ObjectLockRule) +// 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 AWSS3Bucket_ObjectLockRule struct { +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 *AWSS3Bucket_DefaultRetention `json:"DefaultRetention,omitempty"` + DefaultRetention *Bucket_DefaultRetention `json:"DefaultRetention,omitempty"` // _deletionPolicy represents a CloudFormation DeletionPolicy _deletionPolicy policies.DeletionPolicy @@ -22,42 +24,42 @@ type AWSS3Bucket_ObjectLockRule struct { } // AWSCloudFormationType returns the AWS CloudFormation resource type -func (r *AWSS3Bucket_ObjectLockRule) AWSCloudFormationType() string { +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 *AWSS3Bucket_ObjectLockRule) DependsOn() []string { +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 *AWSS3Bucket_ObjectLockRule) SetDependsOn(dependencies []string) { +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 *AWSS3Bucket_ObjectLockRule) Metadata() map[string]interface{} { +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 *AWSS3Bucket_ObjectLockRule) SetMetadata(metadata map[string]interface{}) { +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 *AWSS3Bucket_ObjectLockRule) DeletionPolicy() policies.DeletionPolicy { +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 *AWSS3Bucket_ObjectLockRule) SetDeletionPolicy(policy policies.DeletionPolicy) { +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/resources/aws-s3-bucket_redirectallrequeststo.go b/cloudformation/s3/aws-s3-bucket_redirectallrequeststo.go similarity index 74% rename from cloudformation/resources/aws-s3-bucket_redirectallrequeststo.go rename to cloudformation/s3/aws-s3-bucket_redirectallrequeststo.go index f9d21b8f5b..fe22f75e1a 100644 --- a/cloudformation/resources/aws-s3-bucket_redirectallrequeststo.go +++ b/cloudformation/s3/aws-s3-bucket_redirectallrequeststo.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_RedirectAllRequestsTo AWS CloudFormation Resource (AWS::S3::Bucket.RedirectAllRequestsTo) +// 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 AWSS3Bucket_RedirectAllRequestsTo struct { +type Bucket_RedirectAllRequestsTo struct { // HostName AWS CloudFormation Property // Required: true @@ -27,42 +29,42 @@ type AWSS3Bucket_RedirectAllRequestsTo struct { } // AWSCloudFormationType returns the AWS CloudFormation resource type -func (r *AWSS3Bucket_RedirectAllRequestsTo) AWSCloudFormationType() string { +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 *AWSS3Bucket_RedirectAllRequestsTo) DependsOn() []string { +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 *AWSS3Bucket_RedirectAllRequestsTo) SetDependsOn(dependencies []string) { +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 *AWSS3Bucket_RedirectAllRequestsTo) Metadata() map[string]interface{} { +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 *AWSS3Bucket_RedirectAllRequestsTo) SetMetadata(metadata map[string]interface{}) { +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 *AWSS3Bucket_RedirectAllRequestsTo) DeletionPolicy() policies.DeletionPolicy { +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 *AWSS3Bucket_RedirectAllRequestsTo) SetDeletionPolicy(policy policies.DeletionPolicy) { +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/resources/aws-s3-bucket_replicationconfiguration.go b/cloudformation/s3/aws-s3-bucket_replicationconfiguration.go similarity index 71% rename from cloudformation/resources/aws-s3-bucket_replicationconfiguration.go rename to cloudformation/s3/aws-s3-bucket_replicationconfiguration.go index ea647f6940..ccde894661 100644 --- a/cloudformation/resources/aws-s3-bucket_replicationconfiguration.go +++ b/cloudformation/s3/aws-s3-bucket_replicationconfiguration.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_ReplicationConfiguration AWS CloudFormation Resource (AWS::S3::Bucket.ReplicationConfiguration) +// 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 AWSS3Bucket_ReplicationConfiguration struct { +type Bucket_ReplicationConfiguration struct { // Role AWS CloudFormation Property // Required: true @@ -14,7 +16,7 @@ type AWSS3Bucket_ReplicationConfiguration struct { // 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"` + Rules []Bucket_ReplicationRule `json:"Rules,omitempty"` // _deletionPolicy represents a CloudFormation DeletionPolicy _deletionPolicy policies.DeletionPolicy @@ -27,42 +29,42 @@ type AWSS3Bucket_ReplicationConfiguration struct { } // AWSCloudFormationType returns the AWS CloudFormation resource type -func (r *AWSS3Bucket_ReplicationConfiguration) AWSCloudFormationType() string { +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 *AWSS3Bucket_ReplicationConfiguration) DependsOn() []string { +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 *AWSS3Bucket_ReplicationConfiguration) SetDependsOn(dependencies []string) { +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 *AWSS3Bucket_ReplicationConfiguration) Metadata() map[string]interface{} { +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 *AWSS3Bucket_ReplicationConfiguration) SetMetadata(metadata map[string]interface{}) { +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 *AWSS3Bucket_ReplicationConfiguration) DeletionPolicy() policies.DeletionPolicy { +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 *AWSS3Bucket_ReplicationConfiguration) SetDeletionPolicy(policy policies.DeletionPolicy) { +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/resources/aws-s3-bucket_routingrule.go b/cloudformation/s3/aws-s3-bucket_routingrule.go similarity index 72% rename from cloudformation/resources/aws-s3-bucket_routingrule.go rename to cloudformation/s3/aws-s3-bucket_routingrule.go index 19be4670b3..15ad15d4c8 100644 --- a/cloudformation/resources/aws-s3-bucket_routingrule.go +++ b/cloudformation/s3/aws-s3-bucket_routingrule.go @@ -1,20 +1,22 @@ -package resources +package s3 -import "github.com/awslabs/goformation/v2/cloudformation/policies" +import ( + "github.com/awslabs/goformation/v3/cloudformation/policies" +) -// AWSS3Bucket_RoutingRule AWS CloudFormation Resource (AWS::S3::Bucket.RoutingRule) +// 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 AWSS3Bucket_RoutingRule struct { +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 *AWSS3Bucket_RedirectRule `json:"RedirectRule,omitempty"` + 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 *AWSS3Bucket_RoutingRuleCondition `json:"RoutingRuleCondition,omitempty"` + RoutingRuleCondition *Bucket_RoutingRuleCondition `json:"RoutingRuleCondition,omitempty"` // _deletionPolicy represents a CloudFormation DeletionPolicy _deletionPolicy policies.DeletionPolicy @@ -27,42 +29,42 @@ type AWSS3Bucket_RoutingRule struct { } // AWSCloudFormationType returns the AWS CloudFormation resource type -func (r *AWSS3Bucket_RoutingRule) AWSCloudFormationType() string { +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 *AWSS3Bucket_RoutingRule) DependsOn() []string { +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 *AWSS3Bucket_RoutingRule) SetDependsOn(dependencies []string) { +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 *AWSS3Bucket_RoutingRule) Metadata() map[string]interface{} { +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 *AWSS3Bucket_RoutingRule) SetMetadata(metadata map[string]interface{}) { +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 *AWSS3Bucket_RoutingRule) DeletionPolicy() policies.DeletionPolicy { +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 *AWSS3Bucket_RoutingRule) SetDeletionPolicy(policy policies.DeletionPolicy) { +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/resources/aws-s3-bucket_s3keyfilter.go b/cloudformation/s3/aws-s3-bucket_s3keyfilter.go similarity index 72% rename from cloudformation/resources/aws-s3-bucket_s3keyfilter.go rename to cloudformation/s3/aws-s3-bucket_s3keyfilter.go index 53129a9537..0a3bd0cd26 100644 --- a/cloudformation/resources/aws-s3-bucket_s3keyfilter.go +++ b/cloudformation/s3/aws-s3-bucket_s3keyfilter.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_S3KeyFilter AWS CloudFormation Resource (AWS::S3::Bucket.S3KeyFilter) +// 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 AWSS3Bucket_S3KeyFilter struct { +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 []AWSS3Bucket_FilterRule `json:"Rules,omitempty"` + Rules []Bucket_FilterRule `json:"Rules,omitempty"` // _deletionPolicy represents a CloudFormation DeletionPolicy _deletionPolicy policies.DeletionPolicy @@ -22,42 +24,42 @@ type AWSS3Bucket_S3KeyFilter struct { } // AWSCloudFormationType returns the AWS CloudFormation resource type -func (r *AWSS3Bucket_S3KeyFilter) AWSCloudFormationType() string { +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 *AWSS3Bucket_S3KeyFilter) DependsOn() []string { +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 *AWSS3Bucket_S3KeyFilter) SetDependsOn(dependencies []string) { +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 *AWSS3Bucket_S3KeyFilter) Metadata() map[string]interface{} { +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 *AWSS3Bucket_S3KeyFilter) SetMetadata(metadata map[string]interface{}) { +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 *AWSS3Bucket_S3KeyFilter) DeletionPolicy() policies.DeletionPolicy { +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 *AWSS3Bucket_S3KeyFilter) SetDeletionPolicy(policy policies.DeletionPolicy) { +func (r *Bucket_S3KeyFilter) SetDeletionPolicy(policy policies.DeletionPolicy) { r._deletionPolicy = policy } diff --git a/cloudformation/resources/aws-s3-bucket_serversideencryptionbydefault.go b/cloudformation/s3/aws-s3-bucket_serversideencryptionbydefault.go similarity index 73% rename from cloudformation/resources/aws-s3-bucket_serversideencryptionbydefault.go rename to cloudformation/s3/aws-s3-bucket_serversideencryptionbydefault.go index ee123f5b6a..116a409363 100644 --- a/cloudformation/resources/aws-s3-bucket_serversideencryptionbydefault.go +++ b/cloudformation/s3/aws-s3-bucket_serversideencryptionbydefault.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_ServerSideEncryptionByDefault AWS CloudFormation Resource (AWS::S3::Bucket.ServerSideEncryptionByDefault) +// 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 AWSS3Bucket_ServerSideEncryptionByDefault struct { +type Bucket_ServerSideEncryptionByDefault struct { // KMSMasterKeyID AWS CloudFormation Property // Required: false @@ -27,42 +29,42 @@ type AWSS3Bucket_ServerSideEncryptionByDefault struct { } // AWSCloudFormationType returns the AWS CloudFormation resource type -func (r *AWSS3Bucket_ServerSideEncryptionByDefault) AWSCloudFormationType() string { +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 *AWSS3Bucket_ServerSideEncryptionByDefault) DependsOn() []string { +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 *AWSS3Bucket_ServerSideEncryptionByDefault) SetDependsOn(dependencies []string) { +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 *AWSS3Bucket_ServerSideEncryptionByDefault) Metadata() map[string]interface{} { +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 *AWSS3Bucket_ServerSideEncryptionByDefault) SetMetadata(metadata map[string]interface{}) { +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 *AWSS3Bucket_ServerSideEncryptionByDefault) DeletionPolicy() policies.DeletionPolicy { +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 *AWSS3Bucket_ServerSideEncryptionByDefault) SetDeletionPolicy(policy policies.DeletionPolicy) { +func (r *Bucket_ServerSideEncryptionByDefault) SetDeletionPolicy(policy policies.DeletionPolicy) { r._deletionPolicy = policy } diff --git a/cloudformation/resources/aws-s3-bucket_serversideencryptionrule.go b/cloudformation/s3/aws-s3-bucket_serversideencryptionrule.go similarity index 68% rename from cloudformation/resources/aws-s3-bucket_serversideencryptionrule.go rename to cloudformation/s3/aws-s3-bucket_serversideencryptionrule.go index 02f76b3650..b06289ff30 100644 --- a/cloudformation/resources/aws-s3-bucket_serversideencryptionrule.go +++ b/cloudformation/s3/aws-s3-bucket_serversideencryptionrule.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_ServerSideEncryptionRule AWS CloudFormation Resource (AWS::S3::Bucket.ServerSideEncryptionRule) +// 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 AWSS3Bucket_ServerSideEncryptionRule struct { +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 *AWSS3Bucket_ServerSideEncryptionByDefault `json:"ServerSideEncryptionByDefault,omitempty"` + ServerSideEncryptionByDefault *Bucket_ServerSideEncryptionByDefault `json:"ServerSideEncryptionByDefault,omitempty"` // _deletionPolicy represents a CloudFormation DeletionPolicy _deletionPolicy policies.DeletionPolicy @@ -22,42 +24,42 @@ type AWSS3Bucket_ServerSideEncryptionRule struct { } // AWSCloudFormationType returns the AWS CloudFormation resource type -func (r *AWSS3Bucket_ServerSideEncryptionRule) AWSCloudFormationType() string { +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 *AWSS3Bucket_ServerSideEncryptionRule) DependsOn() []string { +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 *AWSS3Bucket_ServerSideEncryptionRule) SetDependsOn(dependencies []string) { +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 *AWSS3Bucket_ServerSideEncryptionRule) Metadata() map[string]interface{} { +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 *AWSS3Bucket_ServerSideEncryptionRule) SetMetadata(metadata map[string]interface{}) { +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 *AWSS3Bucket_ServerSideEncryptionRule) DeletionPolicy() policies.DeletionPolicy { +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 *AWSS3Bucket_ServerSideEncryptionRule) SetDeletionPolicy(policy policies.DeletionPolicy) { +func (r *Bucket_ServerSideEncryptionRule) SetDeletionPolicy(policy policies.DeletionPolicy) { r._deletionPolicy = policy } diff --git a/cloudformation/resources/aws-s3-bucket_sourceselectioncriteria.go b/cloudformation/s3/aws-s3-bucket_sourceselectioncriteria.go similarity index 68% rename from cloudformation/resources/aws-s3-bucket_sourceselectioncriteria.go rename to cloudformation/s3/aws-s3-bucket_sourceselectioncriteria.go index d149faf26f..1a710e5915 100644 --- a/cloudformation/resources/aws-s3-bucket_sourceselectioncriteria.go +++ b/cloudformation/s3/aws-s3-bucket_sourceselectioncriteria.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_SourceSelectionCriteria AWS CloudFormation Resource (AWS::S3::Bucket.SourceSelectionCriteria) +// 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 AWSS3Bucket_SourceSelectionCriteria struct { +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 *AWSS3Bucket_SseKmsEncryptedObjects `json:"SseKmsEncryptedObjects,omitempty"` + SseKmsEncryptedObjects *Bucket_SseKmsEncryptedObjects `json:"SseKmsEncryptedObjects,omitempty"` // _deletionPolicy represents a CloudFormation DeletionPolicy _deletionPolicy policies.DeletionPolicy @@ -22,42 +24,42 @@ type AWSS3Bucket_SourceSelectionCriteria struct { } // AWSCloudFormationType returns the AWS CloudFormation resource type -func (r *AWSS3Bucket_SourceSelectionCriteria) AWSCloudFormationType() string { +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 *AWSS3Bucket_SourceSelectionCriteria) DependsOn() []string { +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 *AWSS3Bucket_SourceSelectionCriteria) SetDependsOn(dependencies []string) { +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 *AWSS3Bucket_SourceSelectionCriteria) Metadata() map[string]interface{} { +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 *AWSS3Bucket_SourceSelectionCriteria) SetMetadata(metadata map[string]interface{}) { +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 *AWSS3Bucket_SourceSelectionCriteria) DeletionPolicy() policies.DeletionPolicy { +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 *AWSS3Bucket_SourceSelectionCriteria) SetDeletionPolicy(policy policies.DeletionPolicy) { +func (r *Bucket_SourceSelectionCriteria) SetDeletionPolicy(policy policies.DeletionPolicy) { r._deletionPolicy = policy } diff --git a/cloudformation/resources/aws-s3-bucket_ssekmsencryptedobjects.go b/cloudformation/s3/aws-s3-bucket_ssekmsencryptedobjects.go similarity index 71% rename from cloudformation/resources/aws-s3-bucket_ssekmsencryptedobjects.go rename to cloudformation/s3/aws-s3-bucket_ssekmsencryptedobjects.go index 534d50b8a6..d36b66b114 100644 --- a/cloudformation/resources/aws-s3-bucket_ssekmsencryptedobjects.go +++ b/cloudformation/s3/aws-s3-bucket_ssekmsencryptedobjects.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_SseKmsEncryptedObjects AWS CloudFormation Resource (AWS::S3::Bucket.SseKmsEncryptedObjects) +// 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 AWSS3Bucket_SseKmsEncryptedObjects struct { +type Bucket_SseKmsEncryptedObjects struct { // Status AWS CloudFormation Property // Required: true @@ -22,42 +24,42 @@ type AWSS3Bucket_SseKmsEncryptedObjects struct { } // AWSCloudFormationType returns the AWS CloudFormation resource type -func (r *AWSS3Bucket_SseKmsEncryptedObjects) AWSCloudFormationType() string { +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 *AWSS3Bucket_SseKmsEncryptedObjects) DependsOn() []string { +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 *AWSS3Bucket_SseKmsEncryptedObjects) SetDependsOn(dependencies []string) { +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 *AWSS3Bucket_SseKmsEncryptedObjects) Metadata() map[string]interface{} { +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 *AWSS3Bucket_SseKmsEncryptedObjects) SetMetadata(metadata map[string]interface{}) { +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 *AWSS3Bucket_SseKmsEncryptedObjects) DeletionPolicy() policies.DeletionPolicy { +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 *AWSS3Bucket_SseKmsEncryptedObjects) SetDeletionPolicy(policy policies.DeletionPolicy) { +func (r *Bucket_SseKmsEncryptedObjects) SetDeletionPolicy(policy policies.DeletionPolicy) { r._deletionPolicy = policy } diff --git a/cloudformation/resources/aws-s3-bucket_storageclassanalysis.go b/cloudformation/s3/aws-s3-bucket_storageclassanalysis.go similarity index 69% rename from cloudformation/resources/aws-s3-bucket_storageclassanalysis.go rename to cloudformation/s3/aws-s3-bucket_storageclassanalysis.go index f25b334856..4b6007b259 100644 --- a/cloudformation/resources/aws-s3-bucket_storageclassanalysis.go +++ b/cloudformation/s3/aws-s3-bucket_storageclassanalysis.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_StorageClassAnalysis AWS CloudFormation Resource (AWS::S3::Bucket.StorageClassAnalysis) +// 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 AWSS3Bucket_StorageClassAnalysis struct { +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 *AWSS3Bucket_DataExport `json:"DataExport,omitempty"` + DataExport *Bucket_DataExport `json:"DataExport,omitempty"` // _deletionPolicy represents a CloudFormation DeletionPolicy _deletionPolicy policies.DeletionPolicy @@ -22,42 +24,42 @@ type AWSS3Bucket_StorageClassAnalysis struct { } // AWSCloudFormationType returns the AWS CloudFormation resource type -func (r *AWSS3Bucket_StorageClassAnalysis) AWSCloudFormationType() string { +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 *AWSS3Bucket_StorageClassAnalysis) DependsOn() []string { +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 *AWSS3Bucket_StorageClassAnalysis) SetDependsOn(dependencies []string) { +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 *AWSS3Bucket_StorageClassAnalysis) Metadata() map[string]interface{} { +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 *AWSS3Bucket_StorageClassAnalysis) SetMetadata(metadata map[string]interface{}) { +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 *AWSS3Bucket_StorageClassAnalysis) DeletionPolicy() policies.DeletionPolicy { +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 *AWSS3Bucket_StorageClassAnalysis) SetDeletionPolicy(policy policies.DeletionPolicy) { +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/resources/aws-s3-bucket_versioningconfiguration.go b/cloudformation/s3/aws-s3-bucket_versioningconfiguration.go similarity index 70% rename from cloudformation/resources/aws-s3-bucket_versioningconfiguration.go rename to cloudformation/s3/aws-s3-bucket_versioningconfiguration.go index 36977e5ccd..4a78abdff5 100644 --- a/cloudformation/resources/aws-s3-bucket_versioningconfiguration.go +++ b/cloudformation/s3/aws-s3-bucket_versioningconfiguration.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_VersioningConfiguration AWS CloudFormation Resource (AWS::S3::Bucket.VersioningConfiguration) +// 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 AWSS3Bucket_VersioningConfiguration struct { +type Bucket_VersioningConfiguration struct { // Status AWS CloudFormation Property // Required: true @@ -22,42 +24,42 @@ type AWSS3Bucket_VersioningConfiguration struct { } // AWSCloudFormationType returns the AWS CloudFormation resource type -func (r *AWSS3Bucket_VersioningConfiguration) AWSCloudFormationType() string { +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 *AWSS3Bucket_VersioningConfiguration) DependsOn() []string { +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 *AWSS3Bucket_VersioningConfiguration) SetDependsOn(dependencies []string) { +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 *AWSS3Bucket_VersioningConfiguration) Metadata() map[string]interface{} { +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 *AWSS3Bucket_VersioningConfiguration) SetMetadata(metadata map[string]interface{}) { +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 *AWSS3Bucket_VersioningConfiguration) DeletionPolicy() policies.DeletionPolicy { +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 *AWSS3Bucket_VersioningConfiguration) SetDeletionPolicy(policy policies.DeletionPolicy) { +func (r *Bucket_VersioningConfiguration) SetDeletionPolicy(policy policies.DeletionPolicy) { r._deletionPolicy = policy } diff --git a/cloudformation/resources/aws-s3-bucket_websiteconfiguration.go b/cloudformation/s3/aws-s3-bucket_websiteconfiguration.go similarity index 74% rename from cloudformation/resources/aws-s3-bucket_websiteconfiguration.go rename to cloudformation/s3/aws-s3-bucket_websiteconfiguration.go index 0b97170e13..368f5c4aeb 100644 --- a/cloudformation/resources/aws-s3-bucket_websiteconfiguration.go +++ b/cloudformation/s3/aws-s3-bucket_websiteconfiguration.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_WebsiteConfiguration AWS CloudFormation Resource (AWS::S3::Bucket.WebsiteConfiguration) +// Bucket_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 { +type Bucket_WebsiteConfiguration struct { // ErrorDocument AWS CloudFormation Property // Required: false @@ -19,12 +21,12 @@ type AWSS3Bucket_WebsiteConfiguration struct { // 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"` + 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 []AWSS3Bucket_RoutingRule `json:"RoutingRules,omitempty"` + RoutingRules []Bucket_RoutingRule `json:"RoutingRules,omitempty"` // _deletionPolicy represents a CloudFormation DeletionPolicy _deletionPolicy policies.DeletionPolicy @@ -37,42 +39,42 @@ type AWSS3Bucket_WebsiteConfiguration struct { } // AWSCloudFormationType returns the AWS CloudFormation resource type -func (r *AWSS3Bucket_WebsiteConfiguration) AWSCloudFormationType() string { +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 *AWSS3Bucket_WebsiteConfiguration) DependsOn() []string { +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 *AWSS3Bucket_WebsiteConfiguration) SetDependsOn(dependencies []string) { +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 *AWSS3Bucket_WebsiteConfiguration) Metadata() map[string]interface{} { +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 *AWSS3Bucket_WebsiteConfiguration) SetMetadata(metadata map[string]interface{}) { +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 *AWSS3Bucket_WebsiteConfiguration) DeletionPolicy() policies.DeletionPolicy { +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 *AWSS3Bucket_WebsiteConfiguration) SetDeletionPolicy(policy policies.DeletionPolicy) { +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/resources/aws-sagemaker-notebookinstancelifecycleconfig.go b/cloudformation/sagemaker/aws-sagemaker-notebookinstancelifecycleconfig.go similarity index 73% rename from cloudformation/resources/aws-sagemaker-notebookinstancelifecycleconfig.go rename to cloudformation/sagemaker/aws-sagemaker-notebookinstancelifecycleconfig.go index 1a33dfeba4..033d1b7f19 100644 --- a/cloudformation/resources/aws-sagemaker-notebookinstancelifecycleconfig.go +++ b/cloudformation/sagemaker/aws-sagemaker-notebookinstancelifecycleconfig.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" ) -// AWSSageMakerNotebookInstanceLifecycleConfig AWS CloudFormation Resource (AWS::SageMaker::NotebookInstanceLifecycleConfig) +// NotebookInstanceLifecycleConfig AWS CloudFormation Resource (AWS::SageMaker::NotebookInstanceLifecycleConfig) // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-sagemaker-notebookinstancelifecycleconfig.html -type AWSSageMakerNotebookInstanceLifecycleConfig struct { +type NotebookInstanceLifecycleConfig struct { // NotebookInstanceLifecycleConfigName AWS CloudFormation Property // Required: false @@ -19,12 +20,12 @@ type AWSSageMakerNotebookInstanceLifecycleConfig struct { // 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"` + 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 []AWSSageMakerNotebookInstanceLifecycleConfig_NotebookInstanceLifecycleHook `json:"OnStart,omitempty"` + OnStart []NotebookInstanceLifecycleConfig_NotebookInstanceLifecycleHook `json:"OnStart,omitempty"` // _deletionPolicy represents a CloudFormation DeletionPolicy _deletionPolicy policies.DeletionPolicy @@ -37,50 +38,50 @@ type AWSSageMakerNotebookInstanceLifecycleConfig struct { } // AWSCloudFormationType returns the AWS CloudFormation resource type -func (r *AWSSageMakerNotebookInstanceLifecycleConfig) AWSCloudFormationType() string { +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 *AWSSageMakerNotebookInstanceLifecycleConfig) DependsOn() []string { +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 *AWSSageMakerNotebookInstanceLifecycleConfig) SetDependsOn(dependencies []string) { +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 *AWSSageMakerNotebookInstanceLifecycleConfig) Metadata() map[string]interface{} { +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 *AWSSageMakerNotebookInstanceLifecycleConfig) SetMetadata(metadata map[string]interface{}) { +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 *AWSSageMakerNotebookInstanceLifecycleConfig) DeletionPolicy() policies.DeletionPolicy { +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 *AWSSageMakerNotebookInstanceLifecycleConfig) SetDeletionPolicy(policy policies.DeletionPolicy) { +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 AWSSageMakerNotebookInstanceLifecycleConfig) MarshalJSON() ([]byte, error) { - type Properties AWSSageMakerNotebookInstanceLifecycleConfig +func (r NotebookInstanceLifecycleConfig) MarshalJSON() ([]byte, error) { + type Properties NotebookInstanceLifecycleConfig return json.Marshal(&struct { Type string Properties Properties @@ -98,8 +99,8 @@ func (r AWSSageMakerNotebookInstanceLifecycleConfig) 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 *AWSSageMakerNotebookInstanceLifecycleConfig) UnmarshalJSON(b []byte) error { - type Properties AWSSageMakerNotebookInstanceLifecycleConfig +func (r *NotebookInstanceLifecycleConfig) UnmarshalJSON(b []byte) error { + type Properties NotebookInstanceLifecycleConfig res := &struct { Type string Properties *Properties @@ -118,7 +119,7 @@ func (r *AWSSageMakerNotebookInstanceLifecycleConfig) UnmarshalJSON(b []byte) er // If the resource has no Properties set, it could be nil if res.Properties != nil { - *r = AWSSageMakerNotebookInstanceLifecycleConfig(*res.Properties) + *r = NotebookInstanceLifecycleConfig(*res.Properties) } if res.DependsOn != nil { r._dependsOn = res.DependsOn diff --git a/cloudformation/resources/aws-sagemaker-notebookinstancelifecycleconfig_notebookinstancelifecyclehook.go b/cloudformation/sagemaker/aws-sagemaker-notebookinstancelifecycleconfig_notebookinstancelifecyclehook.go similarity index 64% rename from cloudformation/resources/aws-sagemaker-notebookinstancelifecycleconfig_notebookinstancelifecyclehook.go rename to cloudformation/sagemaker/aws-sagemaker-notebookinstancelifecycleconfig_notebookinstancelifecyclehook.go index bc90cac496..666983f051 100644 --- a/cloudformation/resources/aws-sagemaker-notebookinstancelifecycleconfig_notebookinstancelifecyclehook.go +++ b/cloudformation/sagemaker/aws-sagemaker-notebookinstancelifecycleconfig_notebookinstancelifecyclehook.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" +) -// AWSSageMakerNotebookInstanceLifecycleConfig_NotebookInstanceLifecycleHook AWS CloudFormation Resource (AWS::SageMaker::NotebookInstanceLifecycleConfig.NotebookInstanceLifecycleHook) +// 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 AWSSageMakerNotebookInstanceLifecycleConfig_NotebookInstanceLifecycleHook struct { +type NotebookInstanceLifecycleConfig_NotebookInstanceLifecycleHook struct { // Content AWS CloudFormation Property // Required: false @@ -22,42 +24,42 @@ type AWSSageMakerNotebookInstanceLifecycleConfig_NotebookInstanceLifecycleHook s } // AWSCloudFormationType returns the AWS CloudFormation resource type -func (r *AWSSageMakerNotebookInstanceLifecycleConfig_NotebookInstanceLifecycleHook) AWSCloudFormationType() string { +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 *AWSSageMakerNotebookInstanceLifecycleConfig_NotebookInstanceLifecycleHook) DependsOn() []string { +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 *AWSSageMakerNotebookInstanceLifecycleConfig_NotebookInstanceLifecycleHook) SetDependsOn(dependencies []string) { +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 *AWSSageMakerNotebookInstanceLifecycleConfig_NotebookInstanceLifecycleHook) Metadata() map[string]interface{} { +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 *AWSSageMakerNotebookInstanceLifecycleConfig_NotebookInstanceLifecycleHook) SetMetadata(metadata map[string]interface{}) { +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 *AWSSageMakerNotebookInstanceLifecycleConfig_NotebookInstanceLifecycleHook) DeletionPolicy() policies.DeletionPolicy { +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 *AWSSageMakerNotebookInstanceLifecycleConfig_NotebookInstanceLifecycleHook) SetDeletionPolicy(policy policies.DeletionPolicy) { +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/resources/aws-sagemaker-workteam_memberdefinition.go b/cloudformation/sagemaker/aws-sagemaker-workteam_memberdefinition.go similarity index 68% rename from cloudformation/resources/aws-sagemaker-workteam_memberdefinition.go rename to cloudformation/sagemaker/aws-sagemaker-workteam_memberdefinition.go index cac19ef073..f1a02c00a0 100644 --- a/cloudformation/resources/aws-sagemaker-workteam_memberdefinition.go +++ b/cloudformation/sagemaker/aws-sagemaker-workteam_memberdefinition.go @@ -1,15 +1,17 @@ -package resources +package sagemaker -import "github.com/awslabs/goformation/v2/cloudformation/policies" +import ( + "github.com/awslabs/goformation/v3/cloudformation/policies" +) -// AWSSageMakerWorkteam_MemberDefinition AWS CloudFormation Resource (AWS::SageMaker::Workteam.MemberDefinition) +// 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 AWSSageMakerWorkteam_MemberDefinition struct { +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 *AWSSageMakerWorkteam_CognitoMemberDefinition `json:"CognitoMemberDefinition,omitempty"` + CognitoMemberDefinition *Workteam_CognitoMemberDefinition `json:"CognitoMemberDefinition,omitempty"` // _deletionPolicy represents a CloudFormation DeletionPolicy _deletionPolicy policies.DeletionPolicy @@ -22,42 +24,42 @@ type AWSSageMakerWorkteam_MemberDefinition struct { } // AWSCloudFormationType returns the AWS CloudFormation resource type -func (r *AWSSageMakerWorkteam_MemberDefinition) AWSCloudFormationType() string { +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 *AWSSageMakerWorkteam_MemberDefinition) DependsOn() []string { +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 *AWSSageMakerWorkteam_MemberDefinition) SetDependsOn(dependencies []string) { +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 *AWSSageMakerWorkteam_MemberDefinition) Metadata() map[string]interface{} { +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 *AWSSageMakerWorkteam_MemberDefinition) SetMetadata(metadata map[string]interface{}) { +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 *AWSSageMakerWorkteam_MemberDefinition) DeletionPolicy() policies.DeletionPolicy { +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 *AWSSageMakerWorkteam_MemberDefinition) SetDeletionPolicy(policy policies.DeletionPolicy) { +func (r *Workteam_MemberDefinition) SetDeletionPolicy(policy policies.DeletionPolicy) { r._deletionPolicy = policy } diff --git a/cloudformation/resources/aws-sagemaker-workteam_notificationconfiguration.go b/cloudformation/sagemaker/aws-sagemaker-workteam_notificationconfiguration.go similarity index 69% rename from cloudformation/resources/aws-sagemaker-workteam_notificationconfiguration.go rename to cloudformation/sagemaker/aws-sagemaker-workteam_notificationconfiguration.go index cbecdbb036..9d2428678f 100644 --- a/cloudformation/resources/aws-sagemaker-workteam_notificationconfiguration.go +++ b/cloudformation/sagemaker/aws-sagemaker-workteam_notificationconfiguration.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_NotificationConfiguration AWS CloudFormation Resource (AWS::SageMaker::Workteam.NotificationConfiguration) +// 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 AWSSageMakerWorkteam_NotificationConfiguration struct { +type Workteam_NotificationConfiguration struct { // NotificationTopicArn AWS CloudFormation Property // Required: true @@ -22,42 +24,42 @@ type AWSSageMakerWorkteam_NotificationConfiguration struct { } // AWSCloudFormationType returns the AWS CloudFormation resource type -func (r *AWSSageMakerWorkteam_NotificationConfiguration) AWSCloudFormationType() string { +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 *AWSSageMakerWorkteam_NotificationConfiguration) DependsOn() []string { +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 *AWSSageMakerWorkteam_NotificationConfiguration) SetDependsOn(dependencies []string) { +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 *AWSSageMakerWorkteam_NotificationConfiguration) Metadata() map[string]interface{} { +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 *AWSSageMakerWorkteam_NotificationConfiguration) SetMetadata(metadata map[string]interface{}) { +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 *AWSSageMakerWorkteam_NotificationConfiguration) DeletionPolicy() policies.DeletionPolicy { +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 *AWSSageMakerWorkteam_NotificationConfiguration) SetDeletionPolicy(policy policies.DeletionPolicy) { +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/resources/aws-secretsmanager-rotationschedule_rotationrules.go b/cloudformation/secretsmanager/aws-secretsmanager-rotationschedule_rotationrules.go similarity index 69% rename from cloudformation/resources/aws-secretsmanager-rotationschedule_rotationrules.go rename to cloudformation/secretsmanager/aws-secretsmanager-rotationschedule_rotationrules.go index bd3828297a..3feabe8fd9 100644 --- a/cloudformation/resources/aws-secretsmanager-rotationschedule_rotationrules.go +++ b/cloudformation/secretsmanager/aws-secretsmanager-rotationschedule_rotationrules.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" +) -// AWSSecretsManagerRotationSchedule_RotationRules AWS CloudFormation Resource (AWS::SecretsManager::RotationSchedule.RotationRules) +// 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 AWSSecretsManagerRotationSchedule_RotationRules struct { +type RotationSchedule_RotationRules struct { // AutomaticallyAfterDays AWS CloudFormation Property // Required: false @@ -22,42 +24,42 @@ type AWSSecretsManagerRotationSchedule_RotationRules struct { } // AWSCloudFormationType returns the AWS CloudFormation resource type -func (r *AWSSecretsManagerRotationSchedule_RotationRules) AWSCloudFormationType() string { +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 *AWSSecretsManagerRotationSchedule_RotationRules) DependsOn() []string { +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 *AWSSecretsManagerRotationSchedule_RotationRules) SetDependsOn(dependencies []string) { +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 *AWSSecretsManagerRotationSchedule_RotationRules) Metadata() map[string]interface{} { +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 *AWSSecretsManagerRotationSchedule_RotationRules) SetMetadata(metadata map[string]interface{}) { +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 *AWSSecretsManagerRotationSchedule_RotationRules) DeletionPolicy() policies.DeletionPolicy { +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 *AWSSecretsManagerRotationSchedule_RotationRules) SetDeletionPolicy(policy policies.DeletionPolicy) { +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/resources/awsserverlessapi_definitionuri.go b/cloudformation/serverless/api_definitionuri.go similarity index 59% rename from cloudformation/resources/awsserverlessapi_definitionuri.go rename to cloudformation/serverless/api_definitionuri.go index e799295265..05280a0ca5 100644 --- a/cloudformation/resources/awsserverlessapi_definitionuri.go +++ b/cloudformation/serverless/api_definitionuri.go @@ -1,19 +1,20 @@ -package resources +package serverless import ( + "encoding/json" "sort" - "encoding/json" + "github.com/awslabs/goformation/v3/cloudformation/utils" ) -// AWSServerlessApi_DefinitionUri is a helper struct that can hold either a String or S3Location value -type AWSServerlessApi_DefinitionUri struct { +// Api_DefinitionUri is a helper struct that can hold either a String or S3Location value +type Api_DefinitionUri struct { String *string - S3Location *AWSServerlessApi_S3Location + S3Location *Api_S3Location } -func (r AWSServerlessApi_DefinitionUri) value() interface{} { +func (r Api_DefinitionUri) value() interface{} { ret := []interface{}{} if r.String != nil { @@ -24,7 +25,7 @@ func (r AWSServerlessApi_DefinitionUri) value() interface{} { ret = append(ret, *r.S3Location) } - 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] } @@ -32,12 +33,12 @@ func (r AWSServerlessApi_DefinitionUri) value() interface{} { return nil } -func (r AWSServerlessApi_DefinitionUri) MarshalJSON() ([]byte, error) { +func (r Api_DefinitionUri) MarshalJSON() ([]byte, error) { return json.Marshal(r.value()) } // Hook into the marshaller -func (r *AWSServerlessApi_DefinitionUri) UnmarshalJSON(b []byte) error { +func (r *Api_DefinitionUri) UnmarshalJSON(b []byte) error { // Unmarshal into interface{} to check it's type var typecheck interface{} diff --git a/cloudformation/resources/awsserverlessapplication_location.go b/cloudformation/serverless/application_location.go similarity index 57% rename from cloudformation/resources/awsserverlessapplication_location.go rename to cloudformation/serverless/application_location.go index b2a3dc99ab..dc8ef2820f 100644 --- a/cloudformation/resources/awsserverlessapplication_location.go +++ b/cloudformation/serverless/application_location.go @@ -1,19 +1,20 @@ -package resources +package serverless import ( + "encoding/json" "sort" - "encoding/json" + "github.com/awslabs/goformation/v3/cloudformation/utils" ) -// AWSServerlessApplication_Location is a helper struct that can hold either a String or ApplicationLocation value -type AWSServerlessApplication_Location struct { +// Application_Location is a helper struct that can hold either a String or ApplicationLocation value +type Application_Location struct { String *string - ApplicationLocation *AWSServerlessApplication_ApplicationLocation + ApplicationLocation *Application_ApplicationLocation } -func (r AWSServerlessApplication_Location) value() interface{} { +func (r Application_Location) value() interface{} { ret := []interface{}{} if r.String != nil { @@ -24,7 +25,7 @@ func (r AWSServerlessApplication_Location) value() interface{} { ret = append(ret, *r.ApplicationLocation) } - 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] } @@ -32,12 +33,12 @@ func (r AWSServerlessApplication_Location) value() interface{} { return nil } -func (r AWSServerlessApplication_Location) MarshalJSON() ([]byte, error) { +func (r Application_Location) MarshalJSON() ([]byte, error) { return json.Marshal(r.value()) } // Hook into the marshaller -func (r *AWSServerlessApplication_Location) UnmarshalJSON(b []byte) error { +func (r *Application_Location) UnmarshalJSON(b []byte) error { // Unmarshal into interface{} to check it's type var typecheck interface{} 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/resources/aws-serverless-api_accesslogsetting.go b/cloudformation/serverless/aws-serverless-api_accesslogsetting.go similarity index 74% rename from cloudformation/resources/aws-serverless-api_accesslogsetting.go rename to cloudformation/serverless/aws-serverless-api_accesslogsetting.go index 3c095bff1e..960cf2933d 100644 --- a/cloudformation/resources/aws-serverless-api_accesslogsetting.go +++ b/cloudformation/serverless/aws-serverless-api_accesslogsetting.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_AccessLogSetting AWS CloudFormation Resource (AWS::Serverless::Api.AccessLogSetting) +// 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 AWSServerlessApi_AccessLogSetting struct { +type Api_AccessLogSetting struct { // DestinationArn AWS CloudFormation Property // Required: false @@ -27,42 +29,42 @@ type AWSServerlessApi_AccessLogSetting struct { } // AWSCloudFormationType returns the AWS CloudFormation resource type -func (r *AWSServerlessApi_AccessLogSetting) AWSCloudFormationType() string { +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 *AWSServerlessApi_AccessLogSetting) DependsOn() []string { +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 *AWSServerlessApi_AccessLogSetting) SetDependsOn(dependencies []string) { +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 *AWSServerlessApi_AccessLogSetting) Metadata() map[string]interface{} { +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 *AWSServerlessApi_AccessLogSetting) SetMetadata(metadata map[string]interface{}) { +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 *AWSServerlessApi_AccessLogSetting) DeletionPolicy() policies.DeletionPolicy { +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 *AWSServerlessApi_AccessLogSetting) SetDeletionPolicy(policy policies.DeletionPolicy) { +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/resources/aws-serverless-application_applicationlocation.go b/cloudformation/serverless/aws-serverless-application_applicationlocation.go similarity index 71% rename from cloudformation/resources/aws-serverless-application_applicationlocation.go rename to cloudformation/serverless/aws-serverless-application_applicationlocation.go index 0935435719..860137fe6d 100644 --- a/cloudformation/resources/aws-serverless-application_applicationlocation.go +++ b/cloudformation/serverless/aws-serverless-application_applicationlocation.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" +) -// AWSServerlessApplication_ApplicationLocation AWS CloudFormation Resource (AWS::Serverless::Application.ApplicationLocation) +// 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 AWSServerlessApplication_ApplicationLocation struct { +type Application_ApplicationLocation struct { // ApplicationId AWS CloudFormation Property // Required: true @@ -27,42 +29,42 @@ type AWSServerlessApplication_ApplicationLocation struct { } // AWSCloudFormationType returns the AWS CloudFormation resource type -func (r *AWSServerlessApplication_ApplicationLocation) AWSCloudFormationType() string { +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 *AWSServerlessApplication_ApplicationLocation) DependsOn() []string { +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 *AWSServerlessApplication_ApplicationLocation) SetDependsOn(dependencies []string) { +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 *AWSServerlessApplication_ApplicationLocation) Metadata() map[string]interface{} { +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 *AWSServerlessApplication_ApplicationLocation) SetMetadata(metadata map[string]interface{}) { +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 *AWSServerlessApplication_ApplicationLocation) DeletionPolicy() policies.DeletionPolicy { +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 *AWSServerlessApplication_ApplicationLocation) SetDeletionPolicy(policy policies.DeletionPolicy) { +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/resources/aws-serverless-function_alexaskillevent.go b/cloudformation/serverless/aws-serverless-function_alexaskillevent.go similarity index 70% rename from cloudformation/resources/aws-serverless-function_alexaskillevent.go rename to cloudformation/serverless/aws-serverless-function_alexaskillevent.go index b70f58efc4..93307bc9e2 100644 --- a/cloudformation/resources/aws-serverless-function_alexaskillevent.go +++ b/cloudformation/serverless/aws-serverless-function_alexaskillevent.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_AlexaSkillEvent AWS CloudFormation Resource (AWS::Serverless::Function.AlexaSkillEvent) +// 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 AWSServerlessFunction_AlexaSkillEvent struct { +type Function_AlexaSkillEvent struct { // Variables AWS CloudFormation Property // Required: false @@ -22,42 +24,42 @@ type AWSServerlessFunction_AlexaSkillEvent struct { } // AWSCloudFormationType returns the AWS CloudFormation resource type -func (r *AWSServerlessFunction_AlexaSkillEvent) AWSCloudFormationType() string { +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 *AWSServerlessFunction_AlexaSkillEvent) DependsOn() []string { +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 *AWSServerlessFunction_AlexaSkillEvent) SetDependsOn(dependencies []string) { +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 *AWSServerlessFunction_AlexaSkillEvent) Metadata() map[string]interface{} { +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 *AWSServerlessFunction_AlexaSkillEvent) SetMetadata(metadata map[string]interface{}) { +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 *AWSServerlessFunction_AlexaSkillEvent) DeletionPolicy() policies.DeletionPolicy { +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 *AWSServerlessFunction_AlexaSkillEvent) SetDeletionPolicy(policy policies.DeletionPolicy) { +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/resources/aws-serverless-function_bucketsampt.go b/cloudformation/serverless/aws-serverless-function_bucketsampt.go similarity index 70% rename from cloudformation/resources/aws-serverless-function_bucketsampt.go rename to cloudformation/serverless/aws-serverless-function_bucketsampt.go index e4cff2ef85..0597c59d34 100644 --- a/cloudformation/resources/aws-serverless-function_bucketsampt.go +++ b/cloudformation/serverless/aws-serverless-function_bucketsampt.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_BucketSAMPT AWS CloudFormation Resource (AWS::Serverless::Function.BucketSAMPT) +// Function_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 { +type Function_BucketSAMPT struct { // BucketName AWS CloudFormation Property // Required: true @@ -22,42 +24,42 @@ type AWSServerlessFunction_BucketSAMPT struct { } // AWSCloudFormationType returns the AWS CloudFormation resource type -func (r *AWSServerlessFunction_BucketSAMPT) AWSCloudFormationType() string { +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 *AWSServerlessFunction_BucketSAMPT) DependsOn() []string { +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 *AWSServerlessFunction_BucketSAMPT) SetDependsOn(dependencies []string) { +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 *AWSServerlessFunction_BucketSAMPT) Metadata() map[string]interface{} { +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 *AWSServerlessFunction_BucketSAMPT) SetMetadata(metadata map[string]interface{}) { +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 *AWSServerlessFunction_BucketSAMPT) DeletionPolicy() policies.DeletionPolicy { +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 *AWSServerlessFunction_BucketSAMPT) SetDeletionPolicy(policy policies.DeletionPolicy) { +func (r *Function_BucketSAMPT) SetDeletionPolicy(policy policies.DeletionPolicy) { r._deletionPolicy = policy } diff --git a/cloudformation/resources/aws-serverless-function_cloudwatcheventevent.go b/cloudformation/serverless/aws-serverless-function_cloudwatcheventevent.go similarity index 72% rename from cloudformation/resources/aws-serverless-function_cloudwatcheventevent.go rename to cloudformation/serverless/aws-serverless-function_cloudwatcheventevent.go index 2da99fe6ae..f372357154 100644 --- a/cloudformation/resources/aws-serverless-function_cloudwatcheventevent.go +++ b/cloudformation/serverless/aws-serverless-function_cloudwatcheventevent.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_CloudWatchEventEvent AWS CloudFormation Resource (AWS::Serverless::Function.CloudWatchEventEvent) +// 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 AWSServerlessFunction_CloudWatchEventEvent struct { +type Function_CloudWatchEventEvent struct { // Input AWS CloudFormation Property // Required: false @@ -32,42 +34,42 @@ type AWSServerlessFunction_CloudWatchEventEvent struct { } // AWSCloudFormationType returns the AWS CloudFormation resource type -func (r *AWSServerlessFunction_CloudWatchEventEvent) AWSCloudFormationType() string { +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 *AWSServerlessFunction_CloudWatchEventEvent) DependsOn() []string { +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 *AWSServerlessFunction_CloudWatchEventEvent) SetDependsOn(dependencies []string) { +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 *AWSServerlessFunction_CloudWatchEventEvent) Metadata() map[string]interface{} { +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 *AWSServerlessFunction_CloudWatchEventEvent) SetMetadata(metadata map[string]interface{}) { +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 *AWSServerlessFunction_CloudWatchEventEvent) DeletionPolicy() policies.DeletionPolicy { +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 *AWSServerlessFunction_CloudWatchEventEvent) SetDeletionPolicy(policy policies.DeletionPolicy) { +func (r *Function_CloudWatchEventEvent) SetDeletionPolicy(policy policies.DeletionPolicy) { r._deletionPolicy = policy } diff --git a/cloudformation/resources/aws-serverless-function_collectionsampt.go b/cloudformation/serverless/aws-serverless-function_collectionsampt.go similarity index 69% rename from cloudformation/resources/aws-serverless-function_collectionsampt.go rename to cloudformation/serverless/aws-serverless-function_collectionsampt.go index 32d83fee88..462e22489c 100644 --- a/cloudformation/resources/aws-serverless-function_collectionsampt.go +++ b/cloudformation/serverless/aws-serverless-function_collectionsampt.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_CollectionSAMPT AWS CloudFormation Resource (AWS::Serverless::Function.CollectionSAMPT) +// Function_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 { +type Function_CollectionSAMPT struct { // CollectionId AWS CloudFormation Property // Required: true @@ -22,42 +24,42 @@ type AWSServerlessFunction_CollectionSAMPT struct { } // AWSCloudFormationType returns the AWS CloudFormation resource type -func (r *AWSServerlessFunction_CollectionSAMPT) AWSCloudFormationType() string { +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 *AWSServerlessFunction_CollectionSAMPT) DependsOn() []string { +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 *AWSServerlessFunction_CollectionSAMPT) SetDependsOn(dependencies []string) { +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 *AWSServerlessFunction_CollectionSAMPT) Metadata() map[string]interface{} { +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 *AWSServerlessFunction_CollectionSAMPT) SetMetadata(metadata map[string]interface{}) { +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 *AWSServerlessFunction_CollectionSAMPT) DeletionPolicy() policies.DeletionPolicy { +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 *AWSServerlessFunction_CollectionSAMPT) SetDeletionPolicy(policy policies.DeletionPolicy) { +func (r *Function_CollectionSAMPT) SetDeletionPolicy(policy policies.DeletionPolicy) { r._deletionPolicy = policy } diff --git a/cloudformation/resources/aws-serverless-function_deadletterqueue.go b/cloudformation/serverless/aws-serverless-function_deadletterqueue.go similarity index 72% rename from cloudformation/resources/aws-serverless-function_deadletterqueue.go rename to cloudformation/serverless/aws-serverless-function_deadletterqueue.go index 69d306851c..b110e70101 100644 --- a/cloudformation/resources/aws-serverless-function_deadletterqueue.go +++ b/cloudformation/serverless/aws-serverless-function_deadletterqueue.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_DeadLetterQueue AWS CloudFormation Resource (AWS::Serverless::Function.DeadLetterQueue) +// 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 AWSServerlessFunction_DeadLetterQueue struct { +type Function_DeadLetterQueue struct { // TargetArn AWS CloudFormation Property // Required: true @@ -27,42 +29,42 @@ type AWSServerlessFunction_DeadLetterQueue struct { } // AWSCloudFormationType returns the AWS CloudFormation resource type -func (r *AWSServerlessFunction_DeadLetterQueue) AWSCloudFormationType() string { +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 *AWSServerlessFunction_DeadLetterQueue) DependsOn() []string { +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 *AWSServerlessFunction_DeadLetterQueue) SetDependsOn(dependencies []string) { +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 *AWSServerlessFunction_DeadLetterQueue) Metadata() map[string]interface{} { +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 *AWSServerlessFunction_DeadLetterQueue) SetMetadata(metadata map[string]interface{}) { +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 *AWSServerlessFunction_DeadLetterQueue) DeletionPolicy() policies.DeletionPolicy { +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 *AWSServerlessFunction_DeadLetterQueue) SetDeletionPolicy(policy policies.DeletionPolicy) { +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/resources/aws-serverless-function_domainsampt.go b/cloudformation/serverless/aws-serverless-function_domainsampt.go similarity index 70% rename from cloudformation/resources/aws-serverless-function_domainsampt.go rename to cloudformation/serverless/aws-serverless-function_domainsampt.go index 00ec1d94d5..c5db2072ae 100644 --- a/cloudformation/resources/aws-serverless-function_domainsampt.go +++ b/cloudformation/serverless/aws-serverless-function_domainsampt.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_DomainSAMPT AWS CloudFormation Resource (AWS::Serverless::Function.DomainSAMPT) +// Function_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 { +type Function_DomainSAMPT struct { // DomainName AWS CloudFormation Property // Required: true @@ -22,42 +24,42 @@ type AWSServerlessFunction_DomainSAMPT struct { } // AWSCloudFormationType returns the AWS CloudFormation resource type -func (r *AWSServerlessFunction_DomainSAMPT) AWSCloudFormationType() string { +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 *AWSServerlessFunction_DomainSAMPT) DependsOn() []string { +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 *AWSServerlessFunction_DomainSAMPT) SetDependsOn(dependencies []string) { +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 *AWSServerlessFunction_DomainSAMPT) Metadata() map[string]interface{} { +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 *AWSServerlessFunction_DomainSAMPT) SetMetadata(metadata map[string]interface{}) { +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 *AWSServerlessFunction_DomainSAMPT) DeletionPolicy() policies.DeletionPolicy { +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 *AWSServerlessFunction_DomainSAMPT) SetDeletionPolicy(policy policies.DeletionPolicy) { +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/resources/aws-serverless-function_emptysampt.go b/cloudformation/serverless/aws-serverless-function_emptysampt.go similarity index 68% rename from cloudformation/resources/aws-serverless-function_emptysampt.go rename to cloudformation/serverless/aws-serverless-function_emptysampt.go index f2fc9df4d7..536e54bad9 100644 --- a/cloudformation/resources/aws-serverless-function_emptysampt.go +++ b/cloudformation/serverless/aws-serverless-function_emptysampt.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_EmptySAMPT AWS CloudFormation Resource (AWS::Serverless::Function.EmptySAMPT) +// Function_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 { +type Function_EmptySAMPT struct { // _deletionPolicy represents a CloudFormation DeletionPolicy _deletionPolicy policies.DeletionPolicy @@ -17,42 +19,42 @@ type AWSServerlessFunction_EmptySAMPT struct { } // AWSCloudFormationType returns the AWS CloudFormation resource type -func (r *AWSServerlessFunction_EmptySAMPT) AWSCloudFormationType() string { +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 *AWSServerlessFunction_EmptySAMPT) DependsOn() []string { +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 *AWSServerlessFunction_EmptySAMPT) SetDependsOn(dependencies []string) { +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 *AWSServerlessFunction_EmptySAMPT) Metadata() map[string]interface{} { +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 *AWSServerlessFunction_EmptySAMPT) SetMetadata(metadata map[string]interface{}) { +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 *AWSServerlessFunction_EmptySAMPT) DeletionPolicy() policies.DeletionPolicy { +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 *AWSServerlessFunction_EmptySAMPT) SetDeletionPolicy(policy policies.DeletionPolicy) { +func (r *Function_EmptySAMPT) SetDeletionPolicy(policy policies.DeletionPolicy) { r._deletionPolicy = policy } diff --git a/cloudformation/resources/aws-serverless-function_eventsource.go b/cloudformation/serverless/aws-serverless-function_eventsource.go similarity index 71% rename from cloudformation/resources/aws-serverless-function_eventsource.go rename to cloudformation/serverless/aws-serverless-function_eventsource.go index c8498a4209..28b878aa1f 100644 --- a/cloudformation/resources/aws-serverless-function_eventsource.go +++ b/cloudformation/serverless/aws-serverless-function_eventsource.go @@ -1,15 +1,17 @@ -package resources +package serverless -import "github.com/awslabs/goformation/v2/cloudformation/policies" +import ( + "github.com/awslabs/goformation/v3/cloudformation/policies" +) -// AWSServerlessFunction_EventSource AWS CloudFormation Resource (AWS::Serverless::Function.EventSource) +// 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 AWSServerlessFunction_EventSource struct { +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 *AWSServerlessFunction_Properties `json:"Properties,omitempty"` + Properties *Function_Properties `json:"Properties,omitempty"` // Type AWS CloudFormation Property // Required: true @@ -27,42 +29,42 @@ type AWSServerlessFunction_EventSource struct { } // AWSCloudFormationType returns the AWS CloudFormation resource type -func (r *AWSServerlessFunction_EventSource) AWSCloudFormationType() string { +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 *AWSServerlessFunction_EventSource) DependsOn() []string { +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 *AWSServerlessFunction_EventSource) SetDependsOn(dependencies []string) { +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 *AWSServerlessFunction_EventSource) Metadata() map[string]interface{} { +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 *AWSServerlessFunction_EventSource) SetMetadata(metadata map[string]interface{}) { +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 *AWSServerlessFunction_EventSource) DeletionPolicy() policies.DeletionPolicy { +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 *AWSServerlessFunction_EventSource) SetDeletionPolicy(policy policies.DeletionPolicy) { +func (r *Function_EventSource) SetDeletionPolicy(policy policies.DeletionPolicy) { r._deletionPolicy = policy } diff --git a/cloudformation/resources/aws-serverless-function_functionenvironment.go b/cloudformation/serverless/aws-serverless-function_functionenvironment.go similarity index 69% rename from cloudformation/resources/aws-serverless-function_functionenvironment.go rename to cloudformation/serverless/aws-serverless-function_functionenvironment.go index ebe0e1c359..e3e0a50c3b 100644 --- a/cloudformation/resources/aws-serverless-function_functionenvironment.go +++ b/cloudformation/serverless/aws-serverless-function_functionenvironment.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_FunctionEnvironment AWS CloudFormation Resource (AWS::Serverless::Function.FunctionEnvironment) +// 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 AWSServerlessFunction_FunctionEnvironment struct { +type Function_FunctionEnvironment struct { // Variables AWS CloudFormation Property // Required: true @@ -22,42 +24,42 @@ type AWSServerlessFunction_FunctionEnvironment struct { } // AWSCloudFormationType returns the AWS CloudFormation resource type -func (r *AWSServerlessFunction_FunctionEnvironment) AWSCloudFormationType() string { +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 *AWSServerlessFunction_FunctionEnvironment) DependsOn() []string { +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 *AWSServerlessFunction_FunctionEnvironment) SetDependsOn(dependencies []string) { +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 *AWSServerlessFunction_FunctionEnvironment) Metadata() map[string]interface{} { +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 *AWSServerlessFunction_FunctionEnvironment) SetMetadata(metadata map[string]interface{}) { +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 *AWSServerlessFunction_FunctionEnvironment) DeletionPolicy() policies.DeletionPolicy { +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 *AWSServerlessFunction_FunctionEnvironment) SetDeletionPolicy(policy policies.DeletionPolicy) { +func (r *Function_FunctionEnvironment) SetDeletionPolicy(policy policies.DeletionPolicy) { r._deletionPolicy = policy } diff --git a/cloudformation/resources/aws-serverless-function_functionsampt.go b/cloudformation/serverless/aws-serverless-function_functionsampt.go similarity index 70% rename from cloudformation/resources/aws-serverless-function_functionsampt.go rename to cloudformation/serverless/aws-serverless-function_functionsampt.go index c1065c8ad9..2cc7e07f7d 100644 --- a/cloudformation/resources/aws-serverless-function_functionsampt.go +++ b/cloudformation/serverless/aws-serverless-function_functionsampt.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_FunctionSAMPT AWS CloudFormation Resource (AWS::Serverless::Function.FunctionSAMPT) +// Function_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 { +type Function_FunctionSAMPT struct { // FunctionName AWS CloudFormation Property // Required: true @@ -22,42 +24,42 @@ type AWSServerlessFunction_FunctionSAMPT struct { } // AWSCloudFormationType returns the AWS CloudFormation resource type -func (r *AWSServerlessFunction_FunctionSAMPT) AWSCloudFormationType() string { +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 *AWSServerlessFunction_FunctionSAMPT) DependsOn() []string { +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 *AWSServerlessFunction_FunctionSAMPT) SetDependsOn(dependencies []string) { +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 *AWSServerlessFunction_FunctionSAMPT) Metadata() map[string]interface{} { +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 *AWSServerlessFunction_FunctionSAMPT) SetMetadata(metadata map[string]interface{}) { +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 *AWSServerlessFunction_FunctionSAMPT) DeletionPolicy() policies.DeletionPolicy { +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 *AWSServerlessFunction_FunctionSAMPT) SetDeletionPolicy(policy policies.DeletionPolicy) { +func (r *Function_FunctionSAMPT) SetDeletionPolicy(policy policies.DeletionPolicy) { r._deletionPolicy = policy } diff --git a/cloudformation/resources/aws-serverless-function_iampolicydocument.go b/cloudformation/serverless/aws-serverless-function_iampolicydocument.go similarity index 68% rename from cloudformation/resources/aws-serverless-function_iampolicydocument.go rename to cloudformation/serverless/aws-serverless-function_iampolicydocument.go index 5c23f77969..057ca417e0 100644 --- a/cloudformation/resources/aws-serverless-function_iampolicydocument.go +++ b/cloudformation/serverless/aws-serverless-function_iampolicydocument.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_IAMPolicyDocument AWS CloudFormation Resource (AWS::Serverless::Function.IAMPolicyDocument) +// Function_IAMPolicyDocument AWS CloudFormation Resource (AWS::Serverless::Function.IAMPolicyDocument) // See: http://docs.aws.amazon.com/IAM/latest/UserGuide/reference_policies.html -type AWSServerlessFunction_IAMPolicyDocument struct { +type Function_IAMPolicyDocument struct { // Statement AWS CloudFormation Property // Required: true @@ -22,42 +24,42 @@ type AWSServerlessFunction_IAMPolicyDocument struct { } // AWSCloudFormationType returns the AWS CloudFormation resource type -func (r *AWSServerlessFunction_IAMPolicyDocument) AWSCloudFormationType() string { +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 *AWSServerlessFunction_IAMPolicyDocument) DependsOn() []string { +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 *AWSServerlessFunction_IAMPolicyDocument) SetDependsOn(dependencies []string) { +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 *AWSServerlessFunction_IAMPolicyDocument) Metadata() map[string]interface{} { +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 *AWSServerlessFunction_IAMPolicyDocument) SetMetadata(metadata map[string]interface{}) { +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 *AWSServerlessFunction_IAMPolicyDocument) DeletionPolicy() policies.DeletionPolicy { +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 *AWSServerlessFunction_IAMPolicyDocument) SetDeletionPolicy(policy policies.DeletionPolicy) { +func (r *Function_IAMPolicyDocument) SetDeletionPolicy(policy policies.DeletionPolicy) { r._deletionPolicy = policy } diff --git a/cloudformation/resources/aws-serverless-function_identitysampt.go b/cloudformation/serverless/aws-serverless-function_identitysampt.go similarity index 70% rename from cloudformation/resources/aws-serverless-function_identitysampt.go rename to cloudformation/serverless/aws-serverless-function_identitysampt.go index 46f3ed4c76..d401729848 100644 --- a/cloudformation/resources/aws-serverless-function_identitysampt.go +++ b/cloudformation/serverless/aws-serverless-function_identitysampt.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_IdentitySAMPT AWS CloudFormation Resource (AWS::Serverless::Function.IdentitySAMPT) +// Function_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 { +type Function_IdentitySAMPT struct { // IdentityName AWS CloudFormation Property // Required: true @@ -22,42 +24,42 @@ type AWSServerlessFunction_IdentitySAMPT struct { } // AWSCloudFormationType returns the AWS CloudFormation resource type -func (r *AWSServerlessFunction_IdentitySAMPT) AWSCloudFormationType() string { +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 *AWSServerlessFunction_IdentitySAMPT) DependsOn() []string { +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 *AWSServerlessFunction_IdentitySAMPT) SetDependsOn(dependencies []string) { +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 *AWSServerlessFunction_IdentitySAMPT) Metadata() map[string]interface{} { +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 *AWSServerlessFunction_IdentitySAMPT) SetMetadata(metadata map[string]interface{}) { +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 *AWSServerlessFunction_IdentitySAMPT) DeletionPolicy() policies.DeletionPolicy { +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 *AWSServerlessFunction_IdentitySAMPT) SetDeletionPolicy(policy policies.DeletionPolicy) { +func (r *Function_IdentitySAMPT) SetDeletionPolicy(policy policies.DeletionPolicy) { r._deletionPolicy = policy } diff --git a/cloudformation/resources/aws-serverless-function_iotruleevent.go b/cloudformation/serverless/aws-serverless-function_iotruleevent.go similarity index 72% rename from cloudformation/resources/aws-serverless-function_iotruleevent.go rename to cloudformation/serverless/aws-serverless-function_iotruleevent.go index d8bfe20aaf..87f2038cd2 100644 --- a/cloudformation/resources/aws-serverless-function_iotruleevent.go +++ b/cloudformation/serverless/aws-serverless-function_iotruleevent.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_IoTRuleEvent AWS CloudFormation Resource (AWS::Serverless::Function.IoTRuleEvent) +// 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 AWSServerlessFunction_IoTRuleEvent struct { +type Function_IoTRuleEvent struct { // AwsIotSqlVersion AWS CloudFormation Property // Required: false @@ -27,42 +29,42 @@ type AWSServerlessFunction_IoTRuleEvent struct { } // AWSCloudFormationType returns the AWS CloudFormation resource type -func (r *AWSServerlessFunction_IoTRuleEvent) AWSCloudFormationType() string { +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 *AWSServerlessFunction_IoTRuleEvent) DependsOn() []string { +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 *AWSServerlessFunction_IoTRuleEvent) SetDependsOn(dependencies []string) { +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 *AWSServerlessFunction_IoTRuleEvent) Metadata() map[string]interface{} { +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 *AWSServerlessFunction_IoTRuleEvent) SetMetadata(metadata map[string]interface{}) { +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 *AWSServerlessFunction_IoTRuleEvent) DeletionPolicy() policies.DeletionPolicy { +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 *AWSServerlessFunction_IoTRuleEvent) SetDeletionPolicy(policy policies.DeletionPolicy) { +func (r *Function_IoTRuleEvent) SetDeletionPolicy(policy policies.DeletionPolicy) { r._deletionPolicy = policy } diff --git a/cloudformation/resources/aws-serverless-function_keysampt.go b/cloudformation/serverless/aws-serverless-function_keysampt.go similarity index 71% rename from cloudformation/resources/aws-serverless-function_keysampt.go rename to cloudformation/serverless/aws-serverless-function_keysampt.go index 9af5ddd91f..cf6f3ecd4b 100644 --- a/cloudformation/resources/aws-serverless-function_keysampt.go +++ b/cloudformation/serverless/aws-serverless-function_keysampt.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_KeySAMPT AWS CloudFormation Resource (AWS::Serverless::Function.KeySAMPT) +// Function_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 { +type Function_KeySAMPT struct { // KeyId AWS CloudFormation Property // Required: true @@ -22,42 +24,42 @@ type AWSServerlessFunction_KeySAMPT struct { } // AWSCloudFormationType returns the AWS CloudFormation resource type -func (r *AWSServerlessFunction_KeySAMPT) AWSCloudFormationType() string { +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 *AWSServerlessFunction_KeySAMPT) DependsOn() []string { +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 *AWSServerlessFunction_KeySAMPT) SetDependsOn(dependencies []string) { +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 *AWSServerlessFunction_KeySAMPT) Metadata() map[string]interface{} { +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 *AWSServerlessFunction_KeySAMPT) SetMetadata(metadata map[string]interface{}) { +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 *AWSServerlessFunction_KeySAMPT) DeletionPolicy() policies.DeletionPolicy { +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 *AWSServerlessFunction_KeySAMPT) SetDeletionPolicy(policy policies.DeletionPolicy) { +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/resources/aws-serverless-function_loggroupsampt.go b/cloudformation/serverless/aws-serverless-function_loggroupsampt.go similarity index 70% rename from cloudformation/resources/aws-serverless-function_loggroupsampt.go rename to cloudformation/serverless/aws-serverless-function_loggroupsampt.go index dad1320f67..27054a25b8 100644 --- a/cloudformation/resources/aws-serverless-function_loggroupsampt.go +++ b/cloudformation/serverless/aws-serverless-function_loggroupsampt.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_LogGroupSAMPT AWS CloudFormation Resource (AWS::Serverless::Function.LogGroupSAMPT) +// Function_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 { +type Function_LogGroupSAMPT struct { // LogGroupName AWS CloudFormation Property // Required: true @@ -22,42 +24,42 @@ type AWSServerlessFunction_LogGroupSAMPT struct { } // AWSCloudFormationType returns the AWS CloudFormation resource type -func (r *AWSServerlessFunction_LogGroupSAMPT) AWSCloudFormationType() string { +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 *AWSServerlessFunction_LogGroupSAMPT) DependsOn() []string { +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 *AWSServerlessFunction_LogGroupSAMPT) SetDependsOn(dependencies []string) { +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 *AWSServerlessFunction_LogGroupSAMPT) Metadata() map[string]interface{} { +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 *AWSServerlessFunction_LogGroupSAMPT) SetMetadata(metadata map[string]interface{}) { +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 *AWSServerlessFunction_LogGroupSAMPT) DeletionPolicy() policies.DeletionPolicy { +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 *AWSServerlessFunction_LogGroupSAMPT) SetDeletionPolicy(policy policies.DeletionPolicy) { +func (r *Function_LogGroupSAMPT) SetDeletionPolicy(policy policies.DeletionPolicy) { r._deletionPolicy = policy } diff --git a/cloudformation/resources/aws-serverless-function_queuesampt.go b/cloudformation/serverless/aws-serverless-function_queuesampt.go similarity index 71% rename from cloudformation/resources/aws-serverless-function_queuesampt.go rename to cloudformation/serverless/aws-serverless-function_queuesampt.go index 5c6d86d78d..d21695c0d8 100644 --- a/cloudformation/resources/aws-serverless-function_queuesampt.go +++ b/cloudformation/serverless/aws-serverless-function_queuesampt.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_QueueSAMPT AWS CloudFormation Resource (AWS::Serverless::Function.QueueSAMPT) +// Function_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 { +type Function_QueueSAMPT struct { // QueueName AWS CloudFormation Property // Required: true @@ -22,42 +24,42 @@ type AWSServerlessFunction_QueueSAMPT struct { } // AWSCloudFormationType returns the AWS CloudFormation resource type -func (r *AWSServerlessFunction_QueueSAMPT) AWSCloudFormationType() string { +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 *AWSServerlessFunction_QueueSAMPT) DependsOn() []string { +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 *AWSServerlessFunction_QueueSAMPT) SetDependsOn(dependencies []string) { +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 *AWSServerlessFunction_QueueSAMPT) Metadata() map[string]interface{} { +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 *AWSServerlessFunction_QueueSAMPT) SetMetadata(metadata map[string]interface{}) { +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 *AWSServerlessFunction_QueueSAMPT) DeletionPolicy() policies.DeletionPolicy { +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 *AWSServerlessFunction_QueueSAMPT) SetDeletionPolicy(policy policies.DeletionPolicy) { +func (r *Function_QueueSAMPT) SetDeletionPolicy(policy policies.DeletionPolicy) { r._deletionPolicy = policy } diff --git a/cloudformation/resources/aws-serverless-function_s3event.go b/cloudformation/serverless/aws-serverless-function_s3event.go similarity index 71% rename from cloudformation/resources/aws-serverless-function_s3event.go rename to cloudformation/serverless/aws-serverless-function_s3event.go index 1e3faa391b..9191d87903 100644 --- a/cloudformation/resources/aws-serverless-function_s3event.go +++ b/cloudformation/serverless/aws-serverless-function_s3event.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_S3Event AWS CloudFormation Resource (AWS::Serverless::Function.S3Event) +// 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 AWSServerlessFunction_S3Event struct { +type Function_S3Event struct { // Bucket AWS CloudFormation Property // Required: true @@ -14,12 +16,12 @@ type AWSServerlessFunction_S3Event struct { // 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"` + 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 *AWSServerlessFunction_S3NotificationFilter `json:"Filter,omitempty"` + Filter *Function_S3NotificationFilter `json:"Filter,omitempty"` // _deletionPolicy represents a CloudFormation DeletionPolicy _deletionPolicy policies.DeletionPolicy @@ -32,42 +34,42 @@ type AWSServerlessFunction_S3Event struct { } // AWSCloudFormationType returns the AWS CloudFormation resource type -func (r *AWSServerlessFunction_S3Event) AWSCloudFormationType() string { +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 *AWSServerlessFunction_S3Event) DependsOn() []string { +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 *AWSServerlessFunction_S3Event) SetDependsOn(dependencies []string) { +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 *AWSServerlessFunction_S3Event) Metadata() map[string]interface{} { +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 *AWSServerlessFunction_S3Event) SetMetadata(metadata map[string]interface{}) { +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 *AWSServerlessFunction_S3Event) DeletionPolicy() policies.DeletionPolicy { +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 *AWSServerlessFunction_S3Event) SetDeletionPolicy(policy policies.DeletionPolicy) { +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/resources/aws-serverless-function_s3notificationfilter.go b/cloudformation/serverless/aws-serverless-function_s3notificationfilter.go similarity index 69% rename from cloudformation/resources/aws-serverless-function_s3notificationfilter.go rename to cloudformation/serverless/aws-serverless-function_s3notificationfilter.go index 3e6b8e6bfb..24924a3c32 100644 --- a/cloudformation/resources/aws-serverless-function_s3notificationfilter.go +++ b/cloudformation/serverless/aws-serverless-function_s3notificationfilter.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_S3NotificationFilter AWS CloudFormation Resource (AWS::Serverless::Function.S3NotificationFilter) +// 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 AWSServerlessFunction_S3NotificationFilter struct { +type Function_S3NotificationFilter struct { // S3Key AWS CloudFormation Property // Required: true @@ -22,42 +24,42 @@ type AWSServerlessFunction_S3NotificationFilter struct { } // AWSCloudFormationType returns the AWS CloudFormation resource type -func (r *AWSServerlessFunction_S3NotificationFilter) AWSCloudFormationType() string { +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 *AWSServerlessFunction_S3NotificationFilter) DependsOn() []string { +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 *AWSServerlessFunction_S3NotificationFilter) SetDependsOn(dependencies []string) { +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 *AWSServerlessFunction_S3NotificationFilter) Metadata() map[string]interface{} { +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 *AWSServerlessFunction_S3NotificationFilter) SetMetadata(metadata map[string]interface{}) { +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 *AWSServerlessFunction_S3NotificationFilter) DeletionPolicy() policies.DeletionPolicy { +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 *AWSServerlessFunction_S3NotificationFilter) SetDeletionPolicy(policy policies.DeletionPolicy) { +func (r *Function_S3NotificationFilter) SetDeletionPolicy(policy policies.DeletionPolicy) { r._deletionPolicy = policy } diff --git a/cloudformation/resources/aws-serverless-function_sampolicytemplate.go b/cloudformation/serverless/aws-serverless-function_sampolicytemplate.go similarity index 65% rename from cloudformation/resources/aws-serverless-function_sampolicytemplate.go rename to cloudformation/serverless/aws-serverless-function_sampolicytemplate.go index 814fd8ef86..4c168360e3 100644 --- a/cloudformation/resources/aws-serverless-function_sampolicytemplate.go +++ b/cloudformation/serverless/aws-serverless-function_sampolicytemplate.go @@ -1,160 +1,162 @@ -package resources +package serverless -import "github.com/awslabs/goformation/v2/cloudformation/policies" +import ( + "github.com/awslabs/goformation/v3/cloudformation/policies" +) -// AWSServerlessFunction_SAMPolicyTemplate AWS CloudFormation Resource (AWS::Serverless::Function.SAMPolicyTemplate) +// Function_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 { +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 *AWSServerlessFunction_EmptySAMPT `json:"AMIDescribePolicy,omitempty"` + 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 *AWSServerlessFunction_EmptySAMPT `json:"CloudFormationDescribeStacksPolicy,omitempty"` + 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 *AWSServerlessFunction_EmptySAMPT `json:"CloudWatchPutMetricPolicy,omitempty"` + 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 *AWSServerlessFunction_TableSAMPT `json:"DynamoDBCrudPolicy,omitempty"` + 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 *AWSServerlessFunction_TableSAMPT `json:"DynamoDBReadPolicy,omitempty"` + 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 *AWSServerlessFunction_TableStreamSAMPT `json:"DynamoDBStreamReadPolicy,omitempty"` + 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 *AWSServerlessFunction_EmptySAMPT `json:"EC2DescribePolicy,omitempty"` + 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 *AWSServerlessFunction_DomainSAMPT `json:"ElasticsearchHttpPostPolicy,omitempty"` + 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 *AWSServerlessFunction_LogGroupSAMPT `json:"FilterLogEventsPolicy,omitempty"` + 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 *AWSServerlessFunction_KeySAMPT `json:"KMSDecryptPolicy,omitempty"` + 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 *AWSServerlessFunction_StreamSAMPT `json:"KinesisCrudPolicy,omitempty"` + 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 *AWSServerlessFunction_StreamSAMPT `json:"KinesisStreamReadPolicy,omitempty"` + 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 *AWSServerlessFunction_FunctionSAMPT `json:"LambdaInvokePolicy,omitempty"` + 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 *AWSServerlessFunction_EmptySAMPT `json:"RekognitionDetectOnlyPolicy,omitempty"` + 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 *AWSServerlessFunction_EmptySAMPT `json:"RekognitionLabelsPolicy,omitempty"` + 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 *AWSServerlessFunction_CollectionSAMPT `json:"RekognitionNoDataAccessPolicy,omitempty"` + 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 *AWSServerlessFunction_CollectionSAMPT `json:"RekognitionReadPolicy,omitempty"` + 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 *AWSServerlessFunction_CollectionSAMPT `json:"RekognitionWriteOnlyAccessPolicy,omitempty"` + 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 *AWSServerlessFunction_BucketSAMPT `json:"S3CrudPolicy,omitempty"` + 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 *AWSServerlessFunction_BucketSAMPT `json:"S3ReadPolicy,omitempty"` + 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 *AWSServerlessFunction_IdentitySAMPT `json:"SESBulkTemplatedCrudPolicy,omitempty"` + 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 *AWSServerlessFunction_IdentitySAMPT `json:"SESCrudPolicy,omitempty"` + 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 *AWSServerlessFunction_EmptySAMPT `json:"SESEmailTemplateCrudPolicy,omitempty"` + 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 *AWSServerlessFunction_IdentitySAMPT `json:"SESSendBouncePolicy,omitempty"` + 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 *AWSServerlessFunction_TopicSAMPT `json:"SNSCrudPolicy,omitempty"` + 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 *AWSServerlessFunction_TopicSAMPT `json:"SNSPublishMessagePolicy,omitempty"` + 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 *AWSServerlessFunction_QueueSAMPT `json:"SQSPollerPolicy,omitempty"` + 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 *AWSServerlessFunction_QueueSAMPT `json:"SQSSendMessagePolicy,omitempty"` + 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 *AWSServerlessFunction_StateMachineSAMPT `json:"StepFunctionsExecutionPolicy,omitempty"` + 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 *AWSServerlessFunction_EmptySAMPT `json:"VPCAccessPolicy,omitempty"` + VPCAccessPolicy *Function_EmptySAMPT `json:"VPCAccessPolicy,omitempty"` // _deletionPolicy represents a CloudFormation DeletionPolicy _deletionPolicy policies.DeletionPolicy @@ -167,42 +169,42 @@ type AWSServerlessFunction_SAMPolicyTemplate struct { } // AWSCloudFormationType returns the AWS CloudFormation resource type -func (r *AWSServerlessFunction_SAMPolicyTemplate) AWSCloudFormationType() string { +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 *AWSServerlessFunction_SAMPolicyTemplate) DependsOn() []string { +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 *AWSServerlessFunction_SAMPolicyTemplate) SetDependsOn(dependencies []string) { +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 *AWSServerlessFunction_SAMPolicyTemplate) Metadata() map[string]interface{} { +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 *AWSServerlessFunction_SAMPolicyTemplate) SetMetadata(metadata map[string]interface{}) { +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 *AWSServerlessFunction_SAMPolicyTemplate) DeletionPolicy() policies.DeletionPolicy { +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 *AWSServerlessFunction_SAMPolicyTemplate) SetDeletionPolicy(policy policies.DeletionPolicy) { +func (r *Function_SAMPolicyTemplate) SetDeletionPolicy(policy policies.DeletionPolicy) { r._deletionPolicy = policy } diff --git a/cloudformation/resources/aws-serverless-function_scheduleevent.go b/cloudformation/serverless/aws-serverless-function_scheduleevent.go similarity index 72% rename from cloudformation/resources/aws-serverless-function_scheduleevent.go rename to cloudformation/serverless/aws-serverless-function_scheduleevent.go index a55c2fd26d..155847426f 100644 --- a/cloudformation/resources/aws-serverless-function_scheduleevent.go +++ b/cloudformation/serverless/aws-serverless-function_scheduleevent.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_ScheduleEvent AWS CloudFormation Resource (AWS::Serverless::Function.ScheduleEvent) +// 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 AWSServerlessFunction_ScheduleEvent struct { +type Function_ScheduleEvent struct { // Input AWS CloudFormation Property // Required: false @@ -27,42 +29,42 @@ type AWSServerlessFunction_ScheduleEvent struct { } // AWSCloudFormationType returns the AWS CloudFormation resource type -func (r *AWSServerlessFunction_ScheduleEvent) AWSCloudFormationType() string { +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 *AWSServerlessFunction_ScheduleEvent) DependsOn() []string { +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 *AWSServerlessFunction_ScheduleEvent) SetDependsOn(dependencies []string) { +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 *AWSServerlessFunction_ScheduleEvent) Metadata() map[string]interface{} { +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 *AWSServerlessFunction_ScheduleEvent) SetMetadata(metadata map[string]interface{}) { +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 *AWSServerlessFunction_ScheduleEvent) DeletionPolicy() policies.DeletionPolicy { +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 *AWSServerlessFunction_ScheduleEvent) SetDeletionPolicy(policy policies.DeletionPolicy) { +func (r *Function_ScheduleEvent) SetDeletionPolicy(policy policies.DeletionPolicy) { r._deletionPolicy = policy } diff --git a/cloudformation/resources/aws-serverless-function_snsevent.go b/cloudformation/serverless/aws-serverless-function_snsevent.go similarity index 71% rename from cloudformation/resources/aws-serverless-function_snsevent.go rename to cloudformation/serverless/aws-serverless-function_snsevent.go index ca7b148f23..a967de798e 100644 --- a/cloudformation/resources/aws-serverless-function_snsevent.go +++ b/cloudformation/serverless/aws-serverless-function_snsevent.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_SNSEvent AWS CloudFormation Resource (AWS::Serverless::Function.SNSEvent) +// 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 AWSServerlessFunction_SNSEvent struct { +type Function_SNSEvent struct { // Topic AWS CloudFormation Property // Required: true @@ -22,42 +24,42 @@ type AWSServerlessFunction_SNSEvent struct { } // AWSCloudFormationType returns the AWS CloudFormation resource type -func (r *AWSServerlessFunction_SNSEvent) AWSCloudFormationType() string { +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 *AWSServerlessFunction_SNSEvent) DependsOn() []string { +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 *AWSServerlessFunction_SNSEvent) SetDependsOn(dependencies []string) { +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 *AWSServerlessFunction_SNSEvent) Metadata() map[string]interface{} { +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 *AWSServerlessFunction_SNSEvent) SetMetadata(metadata map[string]interface{}) { +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 *AWSServerlessFunction_SNSEvent) DeletionPolicy() policies.DeletionPolicy { +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 *AWSServerlessFunction_SNSEvent) SetDeletionPolicy(policy policies.DeletionPolicy) { +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/resources/aws-serverless-function_statemachinesampt.go b/cloudformation/serverless/aws-serverless-function_statemachinesampt.go similarity index 69% rename from cloudformation/resources/aws-serverless-function_statemachinesampt.go rename to cloudformation/serverless/aws-serverless-function_statemachinesampt.go index a5b39146f7..f8e6e7b2d3 100644 --- a/cloudformation/resources/aws-serverless-function_statemachinesampt.go +++ b/cloudformation/serverless/aws-serverless-function_statemachinesampt.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_StateMachineSAMPT AWS CloudFormation Resource (AWS::Serverless::Function.StateMachineSAMPT) +// Function_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 { +type Function_StateMachineSAMPT struct { // StateMachineName AWS CloudFormation Property // Required: true @@ -22,42 +24,42 @@ type AWSServerlessFunction_StateMachineSAMPT struct { } // AWSCloudFormationType returns the AWS CloudFormation resource type -func (r *AWSServerlessFunction_StateMachineSAMPT) AWSCloudFormationType() string { +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 *AWSServerlessFunction_StateMachineSAMPT) DependsOn() []string { +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 *AWSServerlessFunction_StateMachineSAMPT) SetDependsOn(dependencies []string) { +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 *AWSServerlessFunction_StateMachineSAMPT) Metadata() map[string]interface{} { +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 *AWSServerlessFunction_StateMachineSAMPT) SetMetadata(metadata map[string]interface{}) { +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 *AWSServerlessFunction_StateMachineSAMPT) DeletionPolicy() policies.DeletionPolicy { +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 *AWSServerlessFunction_StateMachineSAMPT) SetDeletionPolicy(policy policies.DeletionPolicy) { +func (r *Function_StateMachineSAMPT) SetDeletionPolicy(policy policies.DeletionPolicy) { r._deletionPolicy = policy } diff --git a/cloudformation/resources/aws-serverless-function_streamsampt.go b/cloudformation/serverless/aws-serverless-function_streamsampt.go similarity index 70% rename from cloudformation/resources/aws-serverless-function_streamsampt.go rename to cloudformation/serverless/aws-serverless-function_streamsampt.go index 4d727e2236..81d674f972 100644 --- a/cloudformation/resources/aws-serverless-function_streamsampt.go +++ b/cloudformation/serverless/aws-serverless-function_streamsampt.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_StreamSAMPT AWS CloudFormation Resource (AWS::Serverless::Function.StreamSAMPT) +// Function_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 { +type Function_StreamSAMPT struct { // StreamName AWS CloudFormation Property // Required: true @@ -22,42 +24,42 @@ type AWSServerlessFunction_StreamSAMPT struct { } // AWSCloudFormationType returns the AWS CloudFormation resource type -func (r *AWSServerlessFunction_StreamSAMPT) AWSCloudFormationType() string { +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 *AWSServerlessFunction_StreamSAMPT) DependsOn() []string { +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 *AWSServerlessFunction_StreamSAMPT) SetDependsOn(dependencies []string) { +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 *AWSServerlessFunction_StreamSAMPT) Metadata() map[string]interface{} { +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 *AWSServerlessFunction_StreamSAMPT) SetMetadata(metadata map[string]interface{}) { +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 *AWSServerlessFunction_StreamSAMPT) DeletionPolicy() policies.DeletionPolicy { +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 *AWSServerlessFunction_StreamSAMPT) SetDeletionPolicy(policy policies.DeletionPolicy) { +func (r *Function_StreamSAMPT) SetDeletionPolicy(policy policies.DeletionPolicy) { r._deletionPolicy = policy } diff --git a/cloudformation/resources/aws-serverless-function_tablesampt.go b/cloudformation/serverless/aws-serverless-function_tablesampt.go similarity index 71% rename from cloudformation/resources/aws-serverless-function_tablesampt.go rename to cloudformation/serverless/aws-serverless-function_tablesampt.go index 27f1e49ef6..03cbb375af 100644 --- a/cloudformation/resources/aws-serverless-function_tablesampt.go +++ b/cloudformation/serverless/aws-serverless-function_tablesampt.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_TableSAMPT AWS CloudFormation Resource (AWS::Serverless::Function.TableSAMPT) +// Function_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 { +type Function_TableSAMPT struct { // TableName AWS CloudFormation Property // Required: true @@ -22,42 +24,42 @@ type AWSServerlessFunction_TableSAMPT struct { } // AWSCloudFormationType returns the AWS CloudFormation resource type -func (r *AWSServerlessFunction_TableSAMPT) AWSCloudFormationType() string { +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 *AWSServerlessFunction_TableSAMPT) DependsOn() []string { +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 *AWSServerlessFunction_TableSAMPT) SetDependsOn(dependencies []string) { +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 *AWSServerlessFunction_TableSAMPT) Metadata() map[string]interface{} { +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 *AWSServerlessFunction_TableSAMPT) SetMetadata(metadata map[string]interface{}) { +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 *AWSServerlessFunction_TableSAMPT) DeletionPolicy() policies.DeletionPolicy { +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 *AWSServerlessFunction_TableSAMPT) SetDeletionPolicy(policy policies.DeletionPolicy) { +func (r *Function_TableSAMPT) SetDeletionPolicy(policy policies.DeletionPolicy) { r._deletionPolicy = policy } diff --git a/cloudformation/resources/aws-serverless-function_tablestreamsampt.go b/cloudformation/serverless/aws-serverless-function_tablestreamsampt.go similarity index 71% rename from cloudformation/resources/aws-serverless-function_tablestreamsampt.go rename to cloudformation/serverless/aws-serverless-function_tablestreamsampt.go index 0adfb5fd46..e51fe6d73e 100644 --- a/cloudformation/resources/aws-serverless-function_tablestreamsampt.go +++ b/cloudformation/serverless/aws-serverless-function_tablestreamsampt.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_TableStreamSAMPT AWS CloudFormation Resource (AWS::Serverless::Function.TableStreamSAMPT) +// Function_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 { +type Function_TableStreamSAMPT struct { // StreamName AWS CloudFormation Property // Required: true @@ -27,42 +29,42 @@ type AWSServerlessFunction_TableStreamSAMPT struct { } // AWSCloudFormationType returns the AWS CloudFormation resource type -func (r *AWSServerlessFunction_TableStreamSAMPT) AWSCloudFormationType() string { +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 *AWSServerlessFunction_TableStreamSAMPT) DependsOn() []string { +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 *AWSServerlessFunction_TableStreamSAMPT) SetDependsOn(dependencies []string) { +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 *AWSServerlessFunction_TableStreamSAMPT) Metadata() map[string]interface{} { +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 *AWSServerlessFunction_TableStreamSAMPT) SetMetadata(metadata map[string]interface{}) { +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 *AWSServerlessFunction_TableStreamSAMPT) DeletionPolicy() policies.DeletionPolicy { +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 *AWSServerlessFunction_TableStreamSAMPT) SetDeletionPolicy(policy policies.DeletionPolicy) { +func (r *Function_TableStreamSAMPT) SetDeletionPolicy(policy policies.DeletionPolicy) { r._deletionPolicy = policy } diff --git a/cloudformation/resources/aws-serverless-function_topicsampt.go b/cloudformation/serverless/aws-serverless-function_topicsampt.go similarity index 71% rename from cloudformation/resources/aws-serverless-function_topicsampt.go rename to cloudformation/serverless/aws-serverless-function_topicsampt.go index efce683890..db867f10b0 100644 --- a/cloudformation/resources/aws-serverless-function_topicsampt.go +++ b/cloudformation/serverless/aws-serverless-function_topicsampt.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_TopicSAMPT AWS CloudFormation Resource (AWS::Serverless::Function.TopicSAMPT) +// Function_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 { +type Function_TopicSAMPT struct { // TopicName AWS CloudFormation Property // Required: true @@ -22,42 +24,42 @@ type AWSServerlessFunction_TopicSAMPT struct { } // AWSCloudFormationType returns the AWS CloudFormation resource type -func (r *AWSServerlessFunction_TopicSAMPT) AWSCloudFormationType() string { +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 *AWSServerlessFunction_TopicSAMPT) DependsOn() []string { +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 *AWSServerlessFunction_TopicSAMPT) SetDependsOn(dependencies []string) { +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 *AWSServerlessFunction_TopicSAMPT) Metadata() map[string]interface{} { +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 *AWSServerlessFunction_TopicSAMPT) SetMetadata(metadata map[string]interface{}) { +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 *AWSServerlessFunction_TopicSAMPT) DeletionPolicy() policies.DeletionPolicy { +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 *AWSServerlessFunction_TopicSAMPT) SetDeletionPolicy(policy policies.DeletionPolicy) { +func (r *Function_TopicSAMPT) SetDeletionPolicy(policy policies.DeletionPolicy) { r._deletionPolicy = policy } diff --git a/cloudformation/resources/aws-serverless-function_vpcconfig.go b/cloudformation/serverless/aws-serverless-function_vpcconfig.go similarity index 73% rename from cloudformation/resources/aws-serverless-function_vpcconfig.go rename to cloudformation/serverless/aws-serverless-function_vpcconfig.go index 5fef4bf240..3b761bdca1 100644 --- a/cloudformation/resources/aws-serverless-function_vpcconfig.go +++ b/cloudformation/serverless/aws-serverless-function_vpcconfig.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_VpcConfig AWS CloudFormation Resource (AWS::Serverless::Function.VpcConfig) +// 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 AWSServerlessFunction_VpcConfig struct { +type Function_VpcConfig struct { // SecurityGroupIds AWS CloudFormation Property // Required: true @@ -27,42 +29,42 @@ type AWSServerlessFunction_VpcConfig struct { } // AWSCloudFormationType returns the AWS CloudFormation resource type -func (r *AWSServerlessFunction_VpcConfig) AWSCloudFormationType() string { +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 *AWSServerlessFunction_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 *AWSServerlessFunction_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 *AWSServerlessFunction_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 *AWSServerlessFunction_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 *AWSServerlessFunction_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 *AWSServerlessFunction_VpcConfig) SetDeletionPolicy(policy policies.DeletionPolicy) { +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/resources/aws-serverless-simpletable_primarykey.go b/cloudformation/serverless/aws-serverless-simpletable_primarykey.go similarity index 72% rename from cloudformation/resources/aws-serverless-simpletable_primarykey.go rename to cloudformation/serverless/aws-serverless-simpletable_primarykey.go index fd29a44b72..634649c73d 100644 --- a/cloudformation/resources/aws-serverless-simpletable_primarykey.go +++ b/cloudformation/serverless/aws-serverless-simpletable_primarykey.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" +) -// AWSServerlessSimpleTable_PrimaryKey AWS CloudFormation Resource (AWS::Serverless::SimpleTable.PrimaryKey) +// 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 AWSServerlessSimpleTable_PrimaryKey struct { +type SimpleTable_PrimaryKey struct { // Name AWS CloudFormation Property // Required: false @@ -27,42 +29,42 @@ type AWSServerlessSimpleTable_PrimaryKey struct { } // AWSCloudFormationType returns the AWS CloudFormation resource type -func (r *AWSServerlessSimpleTable_PrimaryKey) AWSCloudFormationType() string { +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 *AWSServerlessSimpleTable_PrimaryKey) DependsOn() []string { +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 *AWSServerlessSimpleTable_PrimaryKey) SetDependsOn(dependencies []string) { +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 *AWSServerlessSimpleTable_PrimaryKey) Metadata() map[string]interface{} { +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 *AWSServerlessSimpleTable_PrimaryKey) SetMetadata(metadata map[string]interface{}) { +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 *AWSServerlessSimpleTable_PrimaryKey) DeletionPolicy() policies.DeletionPolicy { +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 *AWSServerlessSimpleTable_PrimaryKey) SetDeletionPolicy(policy policies.DeletionPolicy) { +func (r *SimpleTable_PrimaryKey) SetDeletionPolicy(policy policies.DeletionPolicy) { r._deletionPolicy = policy } diff --git a/cloudformation/resources/aws-serverless-simpletable_provisionedthroughput.go b/cloudformation/serverless/aws-serverless-simpletable_provisionedthroughput.go similarity index 70% rename from cloudformation/resources/aws-serverless-simpletable_provisionedthroughput.go rename to cloudformation/serverless/aws-serverless-simpletable_provisionedthroughput.go index 066da7ed2a..60c56abb96 100644 --- a/cloudformation/resources/aws-serverless-simpletable_provisionedthroughput.go +++ b/cloudformation/serverless/aws-serverless-simpletable_provisionedthroughput.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" +) -// AWSServerlessSimpleTable_ProvisionedThroughput AWS CloudFormation Resource (AWS::Serverless::SimpleTable.ProvisionedThroughput) +// SimpleTable_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 { +type SimpleTable_ProvisionedThroughput struct { // ReadCapacityUnits AWS CloudFormation Property // Required: false @@ -27,42 +29,42 @@ type AWSServerlessSimpleTable_ProvisionedThroughput struct { } // AWSCloudFormationType returns the AWS CloudFormation resource type -func (r *AWSServerlessSimpleTable_ProvisionedThroughput) AWSCloudFormationType() string { +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 *AWSServerlessSimpleTable_ProvisionedThroughput) DependsOn() []string { +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 *AWSServerlessSimpleTable_ProvisionedThroughput) SetDependsOn(dependencies []string) { +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 *AWSServerlessSimpleTable_ProvisionedThroughput) Metadata() map[string]interface{} { +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 *AWSServerlessSimpleTable_ProvisionedThroughput) SetMetadata(metadata map[string]interface{}) { +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 *AWSServerlessSimpleTable_ProvisionedThroughput) DeletionPolicy() policies.DeletionPolicy { +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 *AWSServerlessSimpleTable_ProvisionedThroughput) SetDeletionPolicy(policy policies.DeletionPolicy) { +func (r *SimpleTable_ProvisionedThroughput) SetDeletionPolicy(policy policies.DeletionPolicy) { r._deletionPolicy = policy } diff --git a/cloudformation/resources/aws-serverless-simpletable_ssespecification.go b/cloudformation/serverless/aws-serverless-simpletable_ssespecification.go similarity index 69% rename from cloudformation/resources/aws-serverless-simpletable_ssespecification.go rename to cloudformation/serverless/aws-serverless-simpletable_ssespecification.go index 6761731a5e..77667f84e8 100644 --- a/cloudformation/resources/aws-serverless-simpletable_ssespecification.go +++ b/cloudformation/serverless/aws-serverless-simpletable_ssespecification.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" +) -// AWSServerlessSimpleTable_SSESpecification AWS CloudFormation Resource (AWS::Serverless::SimpleTable.SSESpecification) +// 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 AWSServerlessSimpleTable_SSESpecification struct { +type SimpleTable_SSESpecification struct { // SSEEnabled AWS CloudFormation Property // Required: false @@ -22,42 +24,42 @@ type AWSServerlessSimpleTable_SSESpecification struct { } // AWSCloudFormationType returns the AWS CloudFormation resource type -func (r *AWSServerlessSimpleTable_SSESpecification) AWSCloudFormationType() string { +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 *AWSServerlessSimpleTable_SSESpecification) DependsOn() []string { +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 *AWSServerlessSimpleTable_SSESpecification) SetDependsOn(dependencies []string) { +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 *AWSServerlessSimpleTable_SSESpecification) Metadata() map[string]interface{} { +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 *AWSServerlessSimpleTable_SSESpecification) SetMetadata(metadata map[string]interface{}) { +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 *AWSServerlessSimpleTable_SSESpecification) DeletionPolicy() policies.DeletionPolicy { +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 *AWSServerlessSimpleTable_SSESpecification) SetDeletionPolicy(policy policies.DeletionPolicy) { +func (r *SimpleTable_SSESpecification) SetDeletionPolicy(policy policies.DeletionPolicy) { r._deletionPolicy = policy } diff --git a/cloudformation/resources/awsserverlessfunction_codeuri.go b/cloudformation/serverless/function_codeuri.go similarity index 59% rename from cloudformation/resources/awsserverlessfunction_codeuri.go rename to cloudformation/serverless/function_codeuri.go index 9b4217010b..033b21be62 100644 --- a/cloudformation/resources/awsserverlessfunction_codeuri.go +++ b/cloudformation/serverless/function_codeuri.go @@ -1,19 +1,20 @@ -package resources +package serverless import ( + "encoding/json" "sort" - "encoding/json" + "github.com/awslabs/goformation/v3/cloudformation/utils" ) -// AWSServerlessFunction_CodeUri is a helper struct that can hold either a String or S3Location value -type AWSServerlessFunction_CodeUri struct { +// Function_CodeUri is a helper struct that can hold either a String or S3Location value +type Function_CodeUri struct { String *string - S3Location *AWSServerlessFunction_S3Location + S3Location *Function_S3Location } -func (r AWSServerlessFunction_CodeUri) value() interface{} { +func (r Function_CodeUri) value() interface{} { ret := []interface{}{} if r.String != nil { @@ -24,7 +25,7 @@ func (r AWSServerlessFunction_CodeUri) value() interface{} { ret = append(ret, *r.S3Location) } - 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] } @@ -32,12 +33,12 @@ func (r AWSServerlessFunction_CodeUri) value() interface{} { return nil } -func (r AWSServerlessFunction_CodeUri) MarshalJSON() ([]byte, error) { +func (r Function_CodeUri) MarshalJSON() ([]byte, error) { return json.Marshal(r.value()) } // Hook into the marshaller -func (r *AWSServerlessFunction_CodeUri) UnmarshalJSON(b []byte) error { +func (r *Function_CodeUri) UnmarshalJSON(b []byte) error { // Unmarshal into interface{} to check it's type var typecheck interface{} diff --git a/cloudformation/resources/awsserverlessfunction_events.go b/cloudformation/serverless/function_events.go similarity index 64% rename from cloudformation/resources/awsserverlessfunction_events.go rename to cloudformation/serverless/function_events.go index 6299b930df..3f96be2c4a 100644 --- a/cloudformation/resources/awsserverlessfunction_events.go +++ b/cloudformation/serverless/function_events.go @@ -1,19 +1,20 @@ -package resources +package serverless import ( + "encoding/json" "sort" - "encoding/json" + "github.com/awslabs/goformation/v3/cloudformation/utils" ) -// AWSServerlessFunction_Events is a helper struct that can hold either a String or String value -type AWSServerlessFunction_Events struct { +// 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 AWSServerlessFunction_Events) value() interface{} { +func (r Function_Events) value() interface{} { ret := []interface{}{} if r.String != nil { @@ -24,7 +25,7 @@ func (r AWSServerlessFunction_Events) value() interface{} { ret = append(ret, r.StringArray) } - 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] } @@ -32,12 +33,12 @@ func (r AWSServerlessFunction_Events) value() interface{} { return nil } -func (r AWSServerlessFunction_Events) MarshalJSON() ([]byte, error) { +func (r Function_Events) MarshalJSON() ([]byte, error) { return json.Marshal(r.value()) } // Hook into the marshaller -func (r *AWSServerlessFunction_Events) UnmarshalJSON(b []byte) error { +func (r *Function_Events) UnmarshalJSON(b []byte) error { // Unmarshal into interface{} to check it's type var typecheck interface{} diff --git a/cloudformation/resources/awsserverlessfunction_policies.go b/cloudformation/serverless/function_policies.go similarity index 62% rename from cloudformation/resources/awsserverlessfunction_policies.go rename to cloudformation/serverless/function_policies.go index 4898e1fd0c..e103598c51 100644 --- a/cloudformation/resources/awsserverlessfunction_policies.go +++ b/cloudformation/serverless/function_policies.go @@ -1,24 +1,25 @@ -package resources +package serverless import ( + "encoding/json" "sort" - "encoding/json" + "github.com/awslabs/goformation/v3/cloudformation/utils" ) -// AWSServerlessFunction_Policies is a helper struct that can hold either a String, String, IAMPolicyDocument, SAMPolicyTemplate, or IAMPolicyDocument value -type AWSServerlessFunction_Policies struct { +// 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 *AWSServerlessFunction_IAMPolicyDocument + IAMPolicyDocument *Function_IAMPolicyDocument - IAMPolicyDocumentArray *[]AWSServerlessFunction_IAMPolicyDocument - SAMPolicyTemplateArray *[]AWSServerlessFunction_SAMPolicyTemplate + IAMPolicyDocumentArray *[]Function_IAMPolicyDocument + SAMPolicyTemplateArray *[]Function_SAMPolicyTemplate } -func (r AWSServerlessFunction_Policies) value() interface{} { +func (r Function_Policies) value() interface{} { ret := []interface{}{} if r.String != nil { @@ -41,7 +42,7 @@ func (r AWSServerlessFunction_Policies) value() interface{} { ret = append(ret, r.SAMPolicyTemplateArray) } - 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] } @@ -49,12 +50,12 @@ func (r AWSServerlessFunction_Policies) value() interface{} { return nil } -func (r AWSServerlessFunction_Policies) MarshalJSON() ([]byte, error) { +func (r Function_Policies) MarshalJSON() ([]byte, error) { return json.Marshal(r.value()) } // Hook into the marshaller -func (r *AWSServerlessFunction_Policies) UnmarshalJSON(b []byte) error { +func (r *Function_Policies) UnmarshalJSON(b []byte) error { // Unmarshal into interface{} to check it's type var typecheck interface{} diff --git a/cloudformation/resources/awsserverlessfunction_properties.go b/cloudformation/serverless/function_properties.go similarity index 57% rename from cloudformation/resources/awsserverlessfunction_properties.go rename to cloudformation/serverless/function_properties.go index 6c11866b3d..200b4d9a58 100644 --- a/cloudformation/resources/awsserverlessfunction_properties.go +++ b/cloudformation/serverless/function_properties.go @@ -1,26 +1,27 @@ -package resources +package serverless import ( + "encoding/json" "sort" - "encoding/json" + "github.com/awslabs/goformation/v3/cloudformation/utils" ) -// 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 +// 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 AWSServerlessFunction_Properties) value() interface{} { +func (r Function_Properties) value() interface{} { ret := []interface{}{} if r.S3Event != nil { @@ -63,7 +64,7 @@ func (r AWSServerlessFunction_Properties) value() interface{} { ret = append(ret, *r.AlexaSkillEvent) } - 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] } @@ -71,12 +72,12 @@ func (r AWSServerlessFunction_Properties) value() interface{} { return nil } -func (r AWSServerlessFunction_Properties) MarshalJSON() ([]byte, error) { +func (r Function_Properties) MarshalJSON() ([]byte, error) { return json.Marshal(r.value()) } // Hook into the marshaller -func (r *AWSServerlessFunction_Properties) UnmarshalJSON(b []byte) error { +func (r *Function_Properties) UnmarshalJSON(b []byte) error { // Unmarshal into interface{} to check it's type var typecheck interface{} 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/resources/aws-servicecatalog-cloudformationproduct_provisioningartifactproperties.go b/cloudformation/servicecatalog/aws-servicecatalog-cloudformationproduct_provisioningartifactproperties.go similarity index 73% rename from cloudformation/resources/aws-servicecatalog-cloudformationproduct_provisioningartifactproperties.go rename to cloudformation/servicecatalog/aws-servicecatalog-cloudformationproduct_provisioningartifactproperties.go index cabdbcb0e5..bf9c6ca740 100644 --- a/cloudformation/resources/aws-servicecatalog-cloudformationproduct_provisioningartifactproperties.go +++ b/cloudformation/servicecatalog/aws-servicecatalog-cloudformationproduct_provisioningartifactproperties.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" +) -// AWSServiceCatalogCloudFormationProduct_ProvisioningArtifactProperties AWS CloudFormation Resource (AWS::ServiceCatalog::CloudFormationProduct.ProvisioningArtifactProperties) +// 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 AWSServiceCatalogCloudFormationProduct_ProvisioningArtifactProperties struct { +type CloudFormationProduct_ProvisioningArtifactProperties struct { // Description AWS CloudFormation Property // Required: false @@ -37,42 +39,42 @@ type AWSServiceCatalogCloudFormationProduct_ProvisioningArtifactProperties struc } // AWSCloudFormationType returns the AWS CloudFormation resource type -func (r *AWSServiceCatalogCloudFormationProduct_ProvisioningArtifactProperties) AWSCloudFormationType() string { +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 *AWSServiceCatalogCloudFormationProduct_ProvisioningArtifactProperties) DependsOn() []string { +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 *AWSServiceCatalogCloudFormationProduct_ProvisioningArtifactProperties) SetDependsOn(dependencies []string) { +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 *AWSServiceCatalogCloudFormationProduct_ProvisioningArtifactProperties) Metadata() map[string]interface{} { +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 *AWSServiceCatalogCloudFormationProduct_ProvisioningArtifactProperties) SetMetadata(metadata map[string]interface{}) { +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 *AWSServiceCatalogCloudFormationProduct_ProvisioningArtifactProperties) DeletionPolicy() policies.DeletionPolicy { +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 *AWSServiceCatalogCloudFormationProduct_ProvisioningArtifactProperties) SetDeletionPolicy(policy policies.DeletionPolicy) { +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/resources/aws-servicecatalog-cloudformationprovisionedproduct_provisioningparameter.go b/cloudformation/servicecatalog/aws-servicecatalog-cloudformationprovisionedproduct_provisioningparameter.go similarity index 67% rename from cloudformation/resources/aws-servicecatalog-cloudformationprovisionedproduct_provisioningparameter.go rename to cloudformation/servicecatalog/aws-servicecatalog-cloudformationprovisionedproduct_provisioningparameter.go index 47e0c050b0..cb3c9729aa 100644 --- a/cloudformation/resources/aws-servicecatalog-cloudformationprovisionedproduct_provisioningparameter.go +++ b/cloudformation/servicecatalog/aws-servicecatalog-cloudformationprovisionedproduct_provisioningparameter.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_ProvisioningParameter AWS CloudFormation Resource (AWS::ServiceCatalog::CloudFormationProvisionedProduct.ProvisioningParameter) +// 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 AWSServiceCatalogCloudFormationProvisionedProduct_ProvisioningParameter struct { +type CloudFormationProvisionedProduct_ProvisioningParameter struct { // Key AWS CloudFormation Property // Required: false @@ -27,42 +29,42 @@ type AWSServiceCatalogCloudFormationProvisionedProduct_ProvisioningParameter str } // AWSCloudFormationType returns the AWS CloudFormation resource type -func (r *AWSServiceCatalogCloudFormationProvisionedProduct_ProvisioningParameter) AWSCloudFormationType() string { +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 *AWSServiceCatalogCloudFormationProvisionedProduct_ProvisioningParameter) DependsOn() []string { +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 *AWSServiceCatalogCloudFormationProvisionedProduct_ProvisioningParameter) SetDependsOn(dependencies []string) { +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 *AWSServiceCatalogCloudFormationProvisionedProduct_ProvisioningParameter) Metadata() map[string]interface{} { +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 *AWSServiceCatalogCloudFormationProvisionedProduct_ProvisioningParameter) SetMetadata(metadata map[string]interface{}) { +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 *AWSServiceCatalogCloudFormationProvisionedProduct_ProvisioningParameter) DeletionPolicy() policies.DeletionPolicy { +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 *AWSServiceCatalogCloudFormationProvisionedProduct_ProvisioningParameter) SetDeletionPolicy(policy policies.DeletionPolicy) { +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/resources/aws-servicediscovery-service_dnsconfig.go b/cloudformation/servicediscovery/aws-servicediscovery-service_dnsconfig.go similarity index 73% rename from cloudformation/resources/aws-servicediscovery-service_dnsconfig.go rename to cloudformation/servicediscovery/aws-servicediscovery-service_dnsconfig.go index abc6127563..c6197ee7b8 100644 --- a/cloudformation/resources/aws-servicediscovery-service_dnsconfig.go +++ b/cloudformation/servicediscovery/aws-servicediscovery-service_dnsconfig.go @@ -1,15 +1,17 @@ -package resources +package servicediscovery -import "github.com/awslabs/goformation/v2/cloudformation/policies" +import ( + "github.com/awslabs/goformation/v3/cloudformation/policies" +) -// AWSServiceDiscoveryService_DnsConfig AWS CloudFormation Resource (AWS::ServiceDiscovery::Service.DnsConfig) +// 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 AWSServiceDiscoveryService_DnsConfig struct { +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 []AWSServiceDiscoveryService_DnsRecord `json:"DnsRecords,omitempty"` + DnsRecords []Service_DnsRecord `json:"DnsRecords,omitempty"` // NamespaceId AWS CloudFormation Property // Required: false @@ -32,42 +34,42 @@ type AWSServiceDiscoveryService_DnsConfig struct { } // AWSCloudFormationType returns the AWS CloudFormation resource type -func (r *AWSServiceDiscoveryService_DnsConfig) AWSCloudFormationType() string { +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 *AWSServiceDiscoveryService_DnsConfig) DependsOn() []string { +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 *AWSServiceDiscoveryService_DnsConfig) SetDependsOn(dependencies []string) { +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 *AWSServiceDiscoveryService_DnsConfig) Metadata() map[string]interface{} { +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 *AWSServiceDiscoveryService_DnsConfig) SetMetadata(metadata map[string]interface{}) { +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 *AWSServiceDiscoveryService_DnsConfig) DeletionPolicy() policies.DeletionPolicy { +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 *AWSServiceDiscoveryService_DnsConfig) SetDeletionPolicy(policy policies.DeletionPolicy) { +func (r *Service_DnsConfig) SetDeletionPolicy(policy policies.DeletionPolicy) { r._deletionPolicy = policy } diff --git a/cloudformation/resources/aws-servicediscovery-service_dnsrecord.go b/cloudformation/servicediscovery/aws-servicediscovery-service_dnsrecord.go similarity index 73% rename from cloudformation/resources/aws-servicediscovery-service_dnsrecord.go rename to cloudformation/servicediscovery/aws-servicediscovery-service_dnsrecord.go index 96c3993c27..85f2ea4c03 100644 --- a/cloudformation/resources/aws-servicediscovery-service_dnsrecord.go +++ b/cloudformation/servicediscovery/aws-servicediscovery-service_dnsrecord.go @@ -1,10 +1,12 @@ -package resources +package servicediscovery -import "github.com/awslabs/goformation/v2/cloudformation/policies" +import ( + "github.com/awslabs/goformation/v3/cloudformation/policies" +) -// AWSServiceDiscoveryService_DnsRecord AWS CloudFormation Resource (AWS::ServiceDiscovery::Service.DnsRecord) +// 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 AWSServiceDiscoveryService_DnsRecord struct { +type Service_DnsRecord struct { // TTL AWS CloudFormation Property // Required: true @@ -27,42 +29,42 @@ type AWSServiceDiscoveryService_DnsRecord struct { } // AWSCloudFormationType returns the AWS CloudFormation resource type -func (r *AWSServiceDiscoveryService_DnsRecord) AWSCloudFormationType() string { +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 *AWSServiceDiscoveryService_DnsRecord) DependsOn() []string { +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 *AWSServiceDiscoveryService_DnsRecord) SetDependsOn(dependencies []string) { +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 *AWSServiceDiscoveryService_DnsRecord) Metadata() map[string]interface{} { +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 *AWSServiceDiscoveryService_DnsRecord) SetMetadata(metadata map[string]interface{}) { +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 *AWSServiceDiscoveryService_DnsRecord) DeletionPolicy() policies.DeletionPolicy { +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 *AWSServiceDiscoveryService_DnsRecord) SetDeletionPolicy(policy policies.DeletionPolicy) { +func (r *Service_DnsRecord) SetDeletionPolicy(policy policies.DeletionPolicy) { r._deletionPolicy = policy } diff --git a/cloudformation/resources/aws-servicediscovery-service_healthcheckconfig.go b/cloudformation/servicediscovery/aws-servicediscovery-service_healthcheckconfig.go similarity index 74% rename from cloudformation/resources/aws-servicediscovery-service_healthcheckconfig.go rename to cloudformation/servicediscovery/aws-servicediscovery-service_healthcheckconfig.go index 8b09d7e612..5f0a3db634 100644 --- a/cloudformation/resources/aws-servicediscovery-service_healthcheckconfig.go +++ b/cloudformation/servicediscovery/aws-servicediscovery-service_healthcheckconfig.go @@ -1,10 +1,12 @@ -package resources +package servicediscovery -import "github.com/awslabs/goformation/v2/cloudformation/policies" +import ( + "github.com/awslabs/goformation/v3/cloudformation/policies" +) -// AWSServiceDiscoveryService_HealthCheckConfig AWS CloudFormation Resource (AWS::ServiceDiscovery::Service.HealthCheckConfig) +// 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 AWSServiceDiscoveryService_HealthCheckConfig struct { +type Service_HealthCheckConfig struct { // FailureThreshold AWS CloudFormation Property // Required: false @@ -32,42 +34,42 @@ type AWSServiceDiscoveryService_HealthCheckConfig struct { } // AWSCloudFormationType returns the AWS CloudFormation resource type -func (r *AWSServiceDiscoveryService_HealthCheckConfig) AWSCloudFormationType() string { +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 *AWSServiceDiscoveryService_HealthCheckConfig) DependsOn() []string { +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 *AWSServiceDiscoveryService_HealthCheckConfig) SetDependsOn(dependencies []string) { +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 *AWSServiceDiscoveryService_HealthCheckConfig) Metadata() map[string]interface{} { +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 *AWSServiceDiscoveryService_HealthCheckConfig) SetMetadata(metadata map[string]interface{}) { +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 *AWSServiceDiscoveryService_HealthCheckConfig) DeletionPolicy() policies.DeletionPolicy { +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 *AWSServiceDiscoveryService_HealthCheckConfig) SetDeletionPolicy(policy policies.DeletionPolicy) { +func (r *Service_HealthCheckConfig) SetDeletionPolicy(policy policies.DeletionPolicy) { r._deletionPolicy = policy } diff --git a/cloudformation/resources/aws-servicediscovery-service_healthcheckcustomconfig.go b/cloudformation/servicediscovery/aws-servicediscovery-service_healthcheckcustomconfig.go similarity index 68% rename from cloudformation/resources/aws-servicediscovery-service_healthcheckcustomconfig.go rename to cloudformation/servicediscovery/aws-servicediscovery-service_healthcheckcustomconfig.go index a885ca98d2..e5ccf842ec 100644 --- a/cloudformation/resources/aws-servicediscovery-service_healthcheckcustomconfig.go +++ b/cloudformation/servicediscovery/aws-servicediscovery-service_healthcheckcustomconfig.go @@ -1,10 +1,12 @@ -package resources +package servicediscovery -import "github.com/awslabs/goformation/v2/cloudformation/policies" +import ( + "github.com/awslabs/goformation/v3/cloudformation/policies" +) -// AWSServiceDiscoveryService_HealthCheckCustomConfig AWS CloudFormation Resource (AWS::ServiceDiscovery::Service.HealthCheckCustomConfig) +// 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 AWSServiceDiscoveryService_HealthCheckCustomConfig struct { +type Service_HealthCheckCustomConfig struct { // FailureThreshold AWS CloudFormation Property // Required: false @@ -22,42 +24,42 @@ type AWSServiceDiscoveryService_HealthCheckCustomConfig struct { } // AWSCloudFormationType returns the AWS CloudFormation resource type -func (r *AWSServiceDiscoveryService_HealthCheckCustomConfig) AWSCloudFormationType() string { +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 *AWSServiceDiscoveryService_HealthCheckCustomConfig) DependsOn() []string { +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 *AWSServiceDiscoveryService_HealthCheckCustomConfig) SetDependsOn(dependencies []string) { +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 *AWSServiceDiscoveryService_HealthCheckCustomConfig) Metadata() map[string]interface{} { +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 *AWSServiceDiscoveryService_HealthCheckCustomConfig) SetMetadata(metadata map[string]interface{}) { +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 *AWSServiceDiscoveryService_HealthCheckCustomConfig) DeletionPolicy() policies.DeletionPolicy { +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 *AWSServiceDiscoveryService_HealthCheckCustomConfig) SetDeletionPolicy(policy policies.DeletionPolicy) { +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/resources/aws-ses-configurationseteventdestination.go b/cloudformation/ses/aws-ses-configurationseteventdestination.go similarity index 74% rename from cloudformation/resources/aws-ses-configurationseteventdestination.go rename to cloudformation/ses/aws-ses-configurationseteventdestination.go index 65d14be88b..b691a9d771 100644 --- a/cloudformation/resources/aws-ses-configurationseteventdestination.go +++ b/cloudformation/ses/aws-ses-configurationseteventdestination.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" ) -// AWSSESConfigurationSetEventDestination AWS CloudFormation Resource (AWS::SES::ConfigurationSetEventDestination) +// ConfigurationSetEventDestination AWS CloudFormation Resource (AWS::SES::ConfigurationSetEventDestination) // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-ses-configurationseteventdestination.html -type AWSSESConfigurationSetEventDestination struct { +type ConfigurationSetEventDestination struct { // ConfigurationSetName AWS CloudFormation Property // Required: true @@ -19,7 +20,7 @@ type AWSSESConfigurationSetEventDestination struct { // 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"` + EventDestination *ConfigurationSetEventDestination_EventDestination `json:"EventDestination,omitempty"` // _deletionPolicy represents a CloudFormation DeletionPolicy _deletionPolicy policies.DeletionPolicy @@ -32,50 +33,50 @@ type AWSSESConfigurationSetEventDestination struct { } // AWSCloudFormationType returns the AWS CloudFormation resource type -func (r *AWSSESConfigurationSetEventDestination) AWSCloudFormationType() string { +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 *AWSSESConfigurationSetEventDestination) DependsOn() []string { +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 *AWSSESConfigurationSetEventDestination) SetDependsOn(dependencies []string) { +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 *AWSSESConfigurationSetEventDestination) Metadata() map[string]interface{} { +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 *AWSSESConfigurationSetEventDestination) SetMetadata(metadata map[string]interface{}) { +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 *AWSSESConfigurationSetEventDestination) DeletionPolicy() policies.DeletionPolicy { +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 *AWSSESConfigurationSetEventDestination) SetDeletionPolicy(policy policies.DeletionPolicy) { +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 AWSSESConfigurationSetEventDestination) MarshalJSON() ([]byte, error) { - type Properties AWSSESConfigurationSetEventDestination +func (r ConfigurationSetEventDestination) MarshalJSON() ([]byte, error) { + type Properties ConfigurationSetEventDestination return json.Marshal(&struct { Type string Properties Properties @@ -93,8 +94,8 @@ func (r AWSSESConfigurationSetEventDestination) MarshalJSON() ([]byte, error) { // 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 +func (r *ConfigurationSetEventDestination) UnmarshalJSON(b []byte) error { + type Properties ConfigurationSetEventDestination res := &struct { Type string Properties *Properties @@ -113,7 +114,7 @@ func (r *AWSSESConfigurationSetEventDestination) UnmarshalJSON(b []byte) error { // If the resource has no Properties set, it could be nil if res.Properties != nil { - *r = AWSSESConfigurationSetEventDestination(*res.Properties) + *r = ConfigurationSetEventDestination(*res.Properties) } if res.DependsOn != nil { r._dependsOn = res.DependsOn diff --git a/cloudformation/resources/aws-ses-configurationseteventdestination_cloudwatchdestination.go b/cloudformation/ses/aws-ses-configurationseteventdestination_cloudwatchdestination.go similarity index 63% rename from cloudformation/resources/aws-ses-configurationseteventdestination_cloudwatchdestination.go rename to cloudformation/ses/aws-ses-configurationseteventdestination_cloudwatchdestination.go index 82f8342553..ac828110b4 100644 --- a/cloudformation/resources/aws-ses-configurationseteventdestination_cloudwatchdestination.go +++ b/cloudformation/ses/aws-ses-configurationseteventdestination_cloudwatchdestination.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" +) -// AWSSESConfigurationSetEventDestination_CloudWatchDestination AWS CloudFormation Resource (AWS::SES::ConfigurationSetEventDestination.CloudWatchDestination) +// 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 AWSSESConfigurationSetEventDestination_CloudWatchDestination struct { +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 []AWSSESConfigurationSetEventDestination_DimensionConfiguration `json:"DimensionConfigurations,omitempty"` + DimensionConfigurations []ConfigurationSetEventDestination_DimensionConfiguration `json:"DimensionConfigurations,omitempty"` // _deletionPolicy represents a CloudFormation DeletionPolicy _deletionPolicy policies.DeletionPolicy @@ -22,42 +24,42 @@ type AWSSESConfigurationSetEventDestination_CloudWatchDestination struct { } // AWSCloudFormationType returns the AWS CloudFormation resource type -func (r *AWSSESConfigurationSetEventDestination_CloudWatchDestination) AWSCloudFormationType() string { +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 *AWSSESConfigurationSetEventDestination_CloudWatchDestination) DependsOn() []string { +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 *AWSSESConfigurationSetEventDestination_CloudWatchDestination) SetDependsOn(dependencies []string) { +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 *AWSSESConfigurationSetEventDestination_CloudWatchDestination) Metadata() map[string]interface{} { +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 *AWSSESConfigurationSetEventDestination_CloudWatchDestination) SetMetadata(metadata map[string]interface{}) { +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 *AWSSESConfigurationSetEventDestination_CloudWatchDestination) DeletionPolicy() policies.DeletionPolicy { +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 *AWSSESConfigurationSetEventDestination_CloudWatchDestination) SetDeletionPolicy(policy policies.DeletionPolicy) { +func (r *ConfigurationSetEventDestination_CloudWatchDestination) SetDeletionPolicy(policy policies.DeletionPolicy) { r._deletionPolicy = policy } diff --git a/cloudformation/resources/aws-ses-configurationseteventdestination_dimensionconfiguration.go b/cloudformation/ses/aws-ses-configurationseteventdestination_dimensionconfiguration.go similarity index 72% rename from cloudformation/resources/aws-ses-configurationseteventdestination_dimensionconfiguration.go rename to cloudformation/ses/aws-ses-configurationseteventdestination_dimensionconfiguration.go index 477547e322..829f0c5212 100644 --- a/cloudformation/resources/aws-ses-configurationseteventdestination_dimensionconfiguration.go +++ b/cloudformation/ses/aws-ses-configurationseteventdestination_dimensionconfiguration.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" +) -// AWSSESConfigurationSetEventDestination_DimensionConfiguration AWS CloudFormation Resource (AWS::SES::ConfigurationSetEventDestination.DimensionConfiguration) +// 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 AWSSESConfigurationSetEventDestination_DimensionConfiguration struct { +type ConfigurationSetEventDestination_DimensionConfiguration struct { // DefaultDimensionValue AWS CloudFormation Property // Required: true @@ -32,42 +34,42 @@ type AWSSESConfigurationSetEventDestination_DimensionConfiguration struct { } // AWSCloudFormationType returns the AWS CloudFormation resource type -func (r *AWSSESConfigurationSetEventDestination_DimensionConfiguration) AWSCloudFormationType() string { +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 *AWSSESConfigurationSetEventDestination_DimensionConfiguration) DependsOn() []string { +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 *AWSSESConfigurationSetEventDestination_DimensionConfiguration) SetDependsOn(dependencies []string) { +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 *AWSSESConfigurationSetEventDestination_DimensionConfiguration) Metadata() map[string]interface{} { +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 *AWSSESConfigurationSetEventDestination_DimensionConfiguration) SetMetadata(metadata map[string]interface{}) { +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 *AWSSESConfigurationSetEventDestination_DimensionConfiguration) DeletionPolicy() policies.DeletionPolicy { +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 *AWSSESConfigurationSetEventDestination_DimensionConfiguration) SetDeletionPolicy(policy policies.DeletionPolicy) { +func (r *ConfigurationSetEventDestination_DimensionConfiguration) SetDeletionPolicy(policy policies.DeletionPolicy) { r._deletionPolicy = policy } diff --git a/cloudformation/resources/aws-ses-configurationseteventdestination_eventdestination.go b/cloudformation/ses/aws-ses-configurationseteventdestination_eventdestination.go similarity index 72% rename from cloudformation/resources/aws-ses-configurationseteventdestination_eventdestination.go rename to cloudformation/ses/aws-ses-configurationseteventdestination_eventdestination.go index 514ff2612a..2cf0a97604 100644 --- a/cloudformation/resources/aws-ses-configurationseteventdestination_eventdestination.go +++ b/cloudformation/ses/aws-ses-configurationseteventdestination_eventdestination.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" +) -// AWSSESConfigurationSetEventDestination_EventDestination AWS CloudFormation Resource (AWS::SES::ConfigurationSetEventDestination.EventDestination) +// 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 AWSSESConfigurationSetEventDestination_EventDestination struct { +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 *AWSSESConfigurationSetEventDestination_CloudWatchDestination `json:"CloudWatchDestination,omitempty"` + CloudWatchDestination *ConfigurationSetEventDestination_CloudWatchDestination `json:"CloudWatchDestination,omitempty"` // Enabled AWS CloudFormation Property // Required: false @@ -19,7 +21,7 @@ type AWSSESConfigurationSetEventDestination_EventDestination struct { // 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"` + KinesisFirehoseDestination *ConfigurationSetEventDestination_KinesisFirehoseDestination `json:"KinesisFirehoseDestination,omitempty"` // MatchingEventTypes AWS CloudFormation Property // Required: true @@ -42,42 +44,42 @@ type AWSSESConfigurationSetEventDestination_EventDestination struct { } // AWSCloudFormationType returns the AWS CloudFormation resource type -func (r *AWSSESConfigurationSetEventDestination_EventDestination) AWSCloudFormationType() string { +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 *AWSSESConfigurationSetEventDestination_EventDestination) DependsOn() []string { +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 *AWSSESConfigurationSetEventDestination_EventDestination) SetDependsOn(dependencies []string) { +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 *AWSSESConfigurationSetEventDestination_EventDestination) Metadata() map[string]interface{} { +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 *AWSSESConfigurationSetEventDestination_EventDestination) SetMetadata(metadata map[string]interface{}) { +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 *AWSSESConfigurationSetEventDestination_EventDestination) DeletionPolicy() policies.DeletionPolicy { +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 *AWSSESConfigurationSetEventDestination_EventDestination) SetDeletionPolicy(policy policies.DeletionPolicy) { +func (r *ConfigurationSetEventDestination_EventDestination) SetDeletionPolicy(policy policies.DeletionPolicy) { r._deletionPolicy = policy } diff --git a/cloudformation/resources/aws-ses-configurationseteventdestination_kinesisfirehosedestination.go b/cloudformation/ses/aws-ses-configurationseteventdestination_kinesisfirehosedestination.go similarity index 69% rename from cloudformation/resources/aws-ses-configurationseteventdestination_kinesisfirehosedestination.go rename to cloudformation/ses/aws-ses-configurationseteventdestination_kinesisfirehosedestination.go index 2692d38be8..ecf88116a9 100644 --- a/cloudformation/resources/aws-ses-configurationseteventdestination_kinesisfirehosedestination.go +++ b/cloudformation/ses/aws-ses-configurationseteventdestination_kinesisfirehosedestination.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" +) -// AWSSESConfigurationSetEventDestination_KinesisFirehoseDestination AWS CloudFormation Resource (AWS::SES::ConfigurationSetEventDestination.KinesisFirehoseDestination) +// 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 AWSSESConfigurationSetEventDestination_KinesisFirehoseDestination struct { +type ConfigurationSetEventDestination_KinesisFirehoseDestination struct { // DeliveryStreamARN AWS CloudFormation Property // Required: true @@ -27,42 +29,42 @@ type AWSSESConfigurationSetEventDestination_KinesisFirehoseDestination struct { } // AWSCloudFormationType returns the AWS CloudFormation resource type -func (r *AWSSESConfigurationSetEventDestination_KinesisFirehoseDestination) AWSCloudFormationType() string { +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 *AWSSESConfigurationSetEventDestination_KinesisFirehoseDestination) DependsOn() []string { +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 *AWSSESConfigurationSetEventDestination_KinesisFirehoseDestination) SetDependsOn(dependencies []string) { +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 *AWSSESConfigurationSetEventDestination_KinesisFirehoseDestination) Metadata() map[string]interface{} { +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 *AWSSESConfigurationSetEventDestination_KinesisFirehoseDestination) SetMetadata(metadata map[string]interface{}) { +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 *AWSSESConfigurationSetEventDestination_KinesisFirehoseDestination) DeletionPolicy() policies.DeletionPolicy { +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 *AWSSESConfigurationSetEventDestination_KinesisFirehoseDestination) SetDeletionPolicy(policy policies.DeletionPolicy) { +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/resources/aws-ses-receiptfilter_filter.go b/cloudformation/ses/aws-ses-receiptfilter_filter.go similarity index 73% rename from cloudformation/resources/aws-ses-receiptfilter_filter.go rename to cloudformation/ses/aws-ses-receiptfilter_filter.go index e8da1d8c18..a67a4404eb 100644 --- a/cloudformation/resources/aws-ses-receiptfilter_filter.go +++ b/cloudformation/ses/aws-ses-receiptfilter_filter.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" +) -// AWSSESReceiptFilter_Filter AWS CloudFormation Resource (AWS::SES::ReceiptFilter.Filter) +// 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 AWSSESReceiptFilter_Filter struct { +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 *AWSSESReceiptFilter_IpFilter `json:"IpFilter,omitempty"` + IpFilter *ReceiptFilter_IpFilter `json:"IpFilter,omitempty"` // Name AWS CloudFormation Property // Required: false @@ -27,42 +29,42 @@ type AWSSESReceiptFilter_Filter struct { } // AWSCloudFormationType returns the AWS CloudFormation resource type -func (r *AWSSESReceiptFilter_Filter) AWSCloudFormationType() string { +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 *AWSSESReceiptFilter_Filter) DependsOn() []string { +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 *AWSSESReceiptFilter_Filter) SetDependsOn(dependencies []string) { +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 *AWSSESReceiptFilter_Filter) Metadata() map[string]interface{} { +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 *AWSSESReceiptFilter_Filter) SetMetadata(metadata map[string]interface{}) { +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 *AWSSESReceiptFilter_Filter) DeletionPolicy() policies.DeletionPolicy { +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 *AWSSESReceiptFilter_Filter) SetDeletionPolicy(policy policies.DeletionPolicy) { +func (r *ReceiptFilter_Filter) SetDeletionPolicy(policy policies.DeletionPolicy) { r._deletionPolicy = policy } diff --git a/cloudformation/resources/aws-ses-receiptfilter_ipfilter.go b/cloudformation/ses/aws-ses-receiptfilter_ipfilter.go similarity index 74% rename from cloudformation/resources/aws-ses-receiptfilter_ipfilter.go rename to cloudformation/ses/aws-ses-receiptfilter_ipfilter.go index 3a646dac23..907117287b 100644 --- a/cloudformation/resources/aws-ses-receiptfilter_ipfilter.go +++ b/cloudformation/ses/aws-ses-receiptfilter_ipfilter.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" +) -// AWSSESReceiptFilter_IpFilter AWS CloudFormation Resource (AWS::SES::ReceiptFilter.IpFilter) +// 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 AWSSESReceiptFilter_IpFilter struct { +type ReceiptFilter_IpFilter struct { // Cidr AWS CloudFormation Property // Required: true @@ -27,42 +29,42 @@ type AWSSESReceiptFilter_IpFilter struct { } // AWSCloudFormationType returns the AWS CloudFormation resource type -func (r *AWSSESReceiptFilter_IpFilter) AWSCloudFormationType() string { +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 *AWSSESReceiptFilter_IpFilter) DependsOn() []string { +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 *AWSSESReceiptFilter_IpFilter) SetDependsOn(dependencies []string) { +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 *AWSSESReceiptFilter_IpFilter) Metadata() map[string]interface{} { +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 *AWSSESReceiptFilter_IpFilter) SetMetadata(metadata map[string]interface{}) { +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 *AWSSESReceiptFilter_IpFilter) DeletionPolicy() policies.DeletionPolicy { +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 *AWSSESReceiptFilter_IpFilter) SetDeletionPolicy(policy policies.DeletionPolicy) { +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/resources/aws-ses-receiptrule_action.go b/cloudformation/ses/aws-ses-receiptrule_action.go similarity index 72% rename from cloudformation/resources/aws-ses-receiptrule_action.go rename to cloudformation/ses/aws-ses-receiptrule_action.go index 7b86b640be..5cfa32141e 100644 --- a/cloudformation/resources/aws-ses-receiptrule_action.go +++ b/cloudformation/ses/aws-ses-receiptrule_action.go @@ -1,45 +1,47 @@ -package resources +package ses -import "github.com/awslabs/goformation/v2/cloudformation/policies" +import ( + "github.com/awslabs/goformation/v3/cloudformation/policies" +) -// AWSSESReceiptRule_Action AWS CloudFormation Resource (AWS::SES::ReceiptRule.Action) +// 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 AWSSESReceiptRule_Action struct { +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 *AWSSESReceiptRule_AddHeaderAction `json:"AddHeaderAction,omitempty"` + 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 *AWSSESReceiptRule_BounceAction `json:"BounceAction,omitempty"` + 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 *AWSSESReceiptRule_LambdaAction `json:"LambdaAction,omitempty"` + 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 *AWSSESReceiptRule_S3Action `json:"S3Action,omitempty"` + 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 *AWSSESReceiptRule_SNSAction `json:"SNSAction,omitempty"` + 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 *AWSSESReceiptRule_StopAction `json:"StopAction,omitempty"` + 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 *AWSSESReceiptRule_WorkmailAction `json:"WorkmailAction,omitempty"` + WorkmailAction *ReceiptRule_WorkmailAction `json:"WorkmailAction,omitempty"` // _deletionPolicy represents a CloudFormation DeletionPolicy _deletionPolicy policies.DeletionPolicy @@ -52,42 +54,42 @@ type AWSSESReceiptRule_Action struct { } // AWSCloudFormationType returns the AWS CloudFormation resource type -func (r *AWSSESReceiptRule_Action) AWSCloudFormationType() string { +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 *AWSSESReceiptRule_Action) DependsOn() []string { +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 *AWSSESReceiptRule_Action) SetDependsOn(dependencies []string) { +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 *AWSSESReceiptRule_Action) Metadata() map[string]interface{} { +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 *AWSSESReceiptRule_Action) SetMetadata(metadata map[string]interface{}) { +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 *AWSSESReceiptRule_Action) DeletionPolicy() policies.DeletionPolicy { +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 *AWSSESReceiptRule_Action) SetDeletionPolicy(policy policies.DeletionPolicy) { +func (r *ReceiptRule_Action) SetDeletionPolicy(policy policies.DeletionPolicy) { r._deletionPolicy = policy } diff --git a/cloudformation/resources/aws-ses-receiptrule_addheaderaction.go b/cloudformation/ses/aws-ses-receiptrule_addheaderaction.go similarity index 74% rename from cloudformation/resources/aws-ses-receiptrule_addheaderaction.go rename to cloudformation/ses/aws-ses-receiptrule_addheaderaction.go index bbd239581b..dffa74e4e2 100644 --- a/cloudformation/resources/aws-ses-receiptrule_addheaderaction.go +++ b/cloudformation/ses/aws-ses-receiptrule_addheaderaction.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_AddHeaderAction AWS CloudFormation Resource (AWS::SES::ReceiptRule.AddHeaderAction) +// 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 AWSSESReceiptRule_AddHeaderAction struct { +type ReceiptRule_AddHeaderAction struct { // HeaderName AWS CloudFormation Property // Required: true @@ -27,42 +29,42 @@ type AWSSESReceiptRule_AddHeaderAction struct { } // AWSCloudFormationType returns the AWS CloudFormation resource type -func (r *AWSSESReceiptRule_AddHeaderAction) AWSCloudFormationType() string { +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 *AWSSESReceiptRule_AddHeaderAction) DependsOn() []string { +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 *AWSSESReceiptRule_AddHeaderAction) SetDependsOn(dependencies []string) { +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 *AWSSESReceiptRule_AddHeaderAction) Metadata() map[string]interface{} { +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 *AWSSESReceiptRule_AddHeaderAction) SetMetadata(metadata map[string]interface{}) { +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 *AWSSESReceiptRule_AddHeaderAction) DeletionPolicy() policies.DeletionPolicy { +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 *AWSSESReceiptRule_AddHeaderAction) SetDeletionPolicy(policy policies.DeletionPolicy) { +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/resources/aws-ses-receiptrule_stopaction.go b/cloudformation/ses/aws-ses-receiptrule_stopaction.go similarity index 74% rename from cloudformation/resources/aws-ses-receiptrule_stopaction.go rename to cloudformation/ses/aws-ses-receiptrule_stopaction.go index 689f11e403..b8331a07be 100644 --- a/cloudformation/resources/aws-ses-receiptrule_stopaction.go +++ b/cloudformation/ses/aws-ses-receiptrule_stopaction.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_StopAction AWS CloudFormation Resource (AWS::SES::ReceiptRule.StopAction) +// 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 AWSSESReceiptRule_StopAction struct { +type ReceiptRule_StopAction struct { // Scope AWS CloudFormation Property // Required: true @@ -27,42 +29,42 @@ type AWSSESReceiptRule_StopAction struct { } // AWSCloudFormationType returns the AWS CloudFormation resource type -func (r *AWSSESReceiptRule_StopAction) AWSCloudFormationType() string { +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 *AWSSESReceiptRule_StopAction) DependsOn() []string { +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 *AWSSESReceiptRule_StopAction) SetDependsOn(dependencies []string) { +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 *AWSSESReceiptRule_StopAction) Metadata() map[string]interface{} { +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 *AWSSESReceiptRule_StopAction) SetMetadata(metadata map[string]interface{}) { +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 *AWSSESReceiptRule_StopAction) DeletionPolicy() policies.DeletionPolicy { +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 *AWSSESReceiptRule_StopAction) SetDeletionPolicy(policy policies.DeletionPolicy) { +func (r *ReceiptRule_StopAction) SetDeletionPolicy(policy policies.DeletionPolicy) { r._deletionPolicy = policy } diff --git a/cloudformation/resources/aws-ses-receiptrule_workmailaction.go b/cloudformation/ses/aws-ses-receiptrule_workmailaction.go similarity index 74% rename from cloudformation/resources/aws-ses-receiptrule_workmailaction.go rename to cloudformation/ses/aws-ses-receiptrule_workmailaction.go index c0cab15375..d991a0ded3 100644 --- a/cloudformation/resources/aws-ses-receiptrule_workmailaction.go +++ b/cloudformation/ses/aws-ses-receiptrule_workmailaction.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_WorkmailAction AWS CloudFormation Resource (AWS::SES::ReceiptRule.WorkmailAction) +// 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 AWSSESReceiptRule_WorkmailAction struct { +type ReceiptRule_WorkmailAction struct { // OrganizationArn AWS CloudFormation Property // Required: true @@ -27,42 +29,42 @@ type AWSSESReceiptRule_WorkmailAction struct { } // AWSCloudFormationType returns the AWS CloudFormation resource type -func (r *AWSSESReceiptRule_WorkmailAction) AWSCloudFormationType() string { +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 *AWSSESReceiptRule_WorkmailAction) DependsOn() []string { +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 *AWSSESReceiptRule_WorkmailAction) SetDependsOn(dependencies []string) { +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 *AWSSESReceiptRule_WorkmailAction) Metadata() map[string]interface{} { +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 *AWSSESReceiptRule_WorkmailAction) SetMetadata(metadata map[string]interface{}) { +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 *AWSSESReceiptRule_WorkmailAction) DeletionPolicy() policies.DeletionPolicy { +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 *AWSSESReceiptRule_WorkmailAction) SetDeletionPolicy(policy policies.DeletionPolicy) { +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/resources/aws-ssm-association_instanceassociationoutputlocation.go b/cloudformation/ssm/aws-ssm-association_instanceassociationoutputlocation.go similarity index 66% rename from cloudformation/resources/aws-ssm-association_instanceassociationoutputlocation.go rename to cloudformation/ssm/aws-ssm-association_instanceassociationoutputlocation.go index 5c66340eab..6b681545ab 100644 --- a/cloudformation/resources/aws-ssm-association_instanceassociationoutputlocation.go +++ b/cloudformation/ssm/aws-ssm-association_instanceassociationoutputlocation.go @@ -1,15 +1,17 @@ -package resources +package ssm -import "github.com/awslabs/goformation/v2/cloudformation/policies" +import ( + "github.com/awslabs/goformation/v3/cloudformation/policies" +) -// AWSSSMAssociation_InstanceAssociationOutputLocation AWS CloudFormation Resource (AWS::SSM::Association.InstanceAssociationOutputLocation) +// 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 AWSSSMAssociation_InstanceAssociationOutputLocation struct { +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 *AWSSSMAssociation_S3OutputLocation `json:"S3Location,omitempty"` + S3Location *Association_S3OutputLocation `json:"S3Location,omitempty"` // _deletionPolicy represents a CloudFormation DeletionPolicy _deletionPolicy policies.DeletionPolicy @@ -22,42 +24,42 @@ type AWSSSMAssociation_InstanceAssociationOutputLocation struct { } // AWSCloudFormationType returns the AWS CloudFormation resource type -func (r *AWSSSMAssociation_InstanceAssociationOutputLocation) AWSCloudFormationType() string { +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 *AWSSSMAssociation_InstanceAssociationOutputLocation) DependsOn() []string { +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 *AWSSSMAssociation_InstanceAssociationOutputLocation) SetDependsOn(dependencies []string) { +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 *AWSSSMAssociation_InstanceAssociationOutputLocation) Metadata() map[string]interface{} { +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 *AWSSSMAssociation_InstanceAssociationOutputLocation) SetMetadata(metadata map[string]interface{}) { +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 *AWSSSMAssociation_InstanceAssociationOutputLocation) DeletionPolicy() policies.DeletionPolicy { +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 *AWSSSMAssociation_InstanceAssociationOutputLocation) SetDeletionPolicy(policy policies.DeletionPolicy) { +func (r *Association_InstanceAssociationOutputLocation) SetDeletionPolicy(policy policies.DeletionPolicy) { r._deletionPolicy = policy } diff --git a/cloudformation/resources/aws-ssm-association_parametervalues.go b/cloudformation/ssm/aws-ssm-association_parametervalues.go similarity index 71% rename from cloudformation/resources/aws-ssm-association_parametervalues.go rename to cloudformation/ssm/aws-ssm-association_parametervalues.go index 338843f85c..faa69129d4 100644 --- a/cloudformation/resources/aws-ssm-association_parametervalues.go +++ b/cloudformation/ssm/aws-ssm-association_parametervalues.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_ParameterValues AWS CloudFormation Resource (AWS::SSM::Association.ParameterValues) +// 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 AWSSSMAssociation_ParameterValues struct { +type Association_ParameterValues struct { // ParameterValues AWS CloudFormation Property // Required: true @@ -22,42 +24,42 @@ type AWSSSMAssociation_ParameterValues struct { } // AWSCloudFormationType returns the AWS CloudFormation resource type -func (r *AWSSSMAssociation_ParameterValues) AWSCloudFormationType() string { +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 *AWSSSMAssociation_ParameterValues) DependsOn() []string { +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 *AWSSSMAssociation_ParameterValues) SetDependsOn(dependencies []string) { +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 *AWSSSMAssociation_ParameterValues) Metadata() map[string]interface{} { +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 *AWSSSMAssociation_ParameterValues) SetMetadata(metadata map[string]interface{}) { +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 *AWSSSMAssociation_ParameterValues) DeletionPolicy() policies.DeletionPolicy { +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 *AWSSSMAssociation_ParameterValues) SetDeletionPolicy(policy policies.DeletionPolicy) { +func (r *Association_ParameterValues) SetDeletionPolicy(policy policies.DeletionPolicy) { r._deletionPolicy = policy } diff --git a/cloudformation/resources/aws-ssm-association_s3outputlocation.go b/cloudformation/ssm/aws-ssm-association_s3outputlocation.go similarity index 74% rename from cloudformation/resources/aws-ssm-association_s3outputlocation.go rename to cloudformation/ssm/aws-ssm-association_s3outputlocation.go index d65a2fd2e9..87b32f99c8 100644 --- a/cloudformation/resources/aws-ssm-association_s3outputlocation.go +++ b/cloudformation/ssm/aws-ssm-association_s3outputlocation.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_S3OutputLocation AWS CloudFormation Resource (AWS::SSM::Association.S3OutputLocation) +// 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 AWSSSMAssociation_S3OutputLocation struct { +type Association_S3OutputLocation struct { // OutputS3BucketName AWS CloudFormation Property // Required: false @@ -27,42 +29,42 @@ type AWSSSMAssociation_S3OutputLocation struct { } // AWSCloudFormationType returns the AWS CloudFormation resource type -func (r *AWSSSMAssociation_S3OutputLocation) AWSCloudFormationType() string { +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 *AWSSSMAssociation_S3OutputLocation) DependsOn() []string { +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 *AWSSSMAssociation_S3OutputLocation) SetDependsOn(dependencies []string) { +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 *AWSSSMAssociation_S3OutputLocation) Metadata() map[string]interface{} { +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 *AWSSSMAssociation_S3OutputLocation) SetMetadata(metadata map[string]interface{}) { +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 *AWSSSMAssociation_S3OutputLocation) DeletionPolicy() policies.DeletionPolicy { +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 *AWSSSMAssociation_S3OutputLocation) SetDeletionPolicy(policy policies.DeletionPolicy) { +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/resources/aws-ssm-maintenancewindowtarget_targets.go b/cloudformation/ssm/aws-ssm-maintenancewindowtarget_targets.go similarity index 73% rename from cloudformation/resources/aws-ssm-maintenancewindowtarget_targets.go rename to cloudformation/ssm/aws-ssm-maintenancewindowtarget_targets.go index e5e5b4dd85..1abec0751a 100644 --- a/cloudformation/resources/aws-ssm-maintenancewindowtarget_targets.go +++ b/cloudformation/ssm/aws-ssm-maintenancewindowtarget_targets.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" +) -// AWSSSMMaintenanceWindowTarget_Targets AWS CloudFormation Resource (AWS::SSM::MaintenanceWindowTarget.Targets) +// 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 AWSSSMMaintenanceWindowTarget_Targets struct { +type MaintenanceWindowTarget_Targets struct { // Key AWS CloudFormation Property // Required: true @@ -27,42 +29,42 @@ type AWSSSMMaintenanceWindowTarget_Targets struct { } // AWSCloudFormationType returns the AWS CloudFormation resource type -func (r *AWSSSMMaintenanceWindowTarget_Targets) AWSCloudFormationType() string { +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 *AWSSSMMaintenanceWindowTarget_Targets) DependsOn() []string { +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 *AWSSSMMaintenanceWindowTarget_Targets) SetDependsOn(dependencies []string) { +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 *AWSSSMMaintenanceWindowTarget_Targets) Metadata() map[string]interface{} { +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 *AWSSSMMaintenanceWindowTarget_Targets) SetMetadata(metadata map[string]interface{}) { +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 *AWSSSMMaintenanceWindowTarget_Targets) DeletionPolicy() policies.DeletionPolicy { +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 *AWSSSMMaintenanceWindowTarget_Targets) SetDeletionPolicy(policy policies.DeletionPolicy) { +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/resources/aws-ssm-maintenancewindowtask_maintenancewindowautomationparameters.go b/cloudformation/ssm/aws-ssm-maintenancewindowtask_maintenancewindowautomationparameters.go similarity index 69% rename from cloudformation/resources/aws-ssm-maintenancewindowtask_maintenancewindowautomationparameters.go rename to cloudformation/ssm/aws-ssm-maintenancewindowtask_maintenancewindowautomationparameters.go index b502ec462f..eeb12c1593 100644 --- a/cloudformation/resources/aws-ssm-maintenancewindowtask_maintenancewindowautomationparameters.go +++ b/cloudformation/ssm/aws-ssm-maintenancewindowtask_maintenancewindowautomationparameters.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_MaintenanceWindowAutomationParameters AWS CloudFormation Resource (AWS::SSM::MaintenanceWindowTask.MaintenanceWindowAutomationParameters) +// 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 AWSSSMMaintenanceWindowTask_MaintenanceWindowAutomationParameters struct { +type MaintenanceWindowTask_MaintenanceWindowAutomationParameters struct { // DocumentVersion AWS CloudFormation Property // Required: false @@ -27,42 +29,42 @@ type AWSSSMMaintenanceWindowTask_MaintenanceWindowAutomationParameters struct { } // AWSCloudFormationType returns the AWS CloudFormation resource type -func (r *AWSSSMMaintenanceWindowTask_MaintenanceWindowAutomationParameters) AWSCloudFormationType() string { +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 *AWSSSMMaintenanceWindowTask_MaintenanceWindowAutomationParameters) DependsOn() []string { +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 *AWSSSMMaintenanceWindowTask_MaintenanceWindowAutomationParameters) SetDependsOn(dependencies []string) { +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 *AWSSSMMaintenanceWindowTask_MaintenanceWindowAutomationParameters) Metadata() map[string]interface{} { +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 *AWSSSMMaintenanceWindowTask_MaintenanceWindowAutomationParameters) SetMetadata(metadata map[string]interface{}) { +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 *AWSSSMMaintenanceWindowTask_MaintenanceWindowAutomationParameters) DeletionPolicy() policies.DeletionPolicy { +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 *AWSSSMMaintenanceWindowTask_MaintenanceWindowAutomationParameters) SetDeletionPolicy(policy policies.DeletionPolicy) { +func (r *MaintenanceWindowTask_MaintenanceWindowAutomationParameters) SetDeletionPolicy(policy policies.DeletionPolicy) { r._deletionPolicy = policy } diff --git a/cloudformation/resources/aws-ssm-maintenancewindowtask_maintenancewindowlambdaparameters.go b/cloudformation/ssm/aws-ssm-maintenancewindowtask_maintenancewindowlambdaparameters.go similarity index 72% rename from cloudformation/resources/aws-ssm-maintenancewindowtask_maintenancewindowlambdaparameters.go rename to cloudformation/ssm/aws-ssm-maintenancewindowtask_maintenancewindowlambdaparameters.go index d463e6046c..84dade22b3 100644 --- a/cloudformation/resources/aws-ssm-maintenancewindowtask_maintenancewindowlambdaparameters.go +++ b/cloudformation/ssm/aws-ssm-maintenancewindowtask_maintenancewindowlambdaparameters.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_MaintenanceWindowLambdaParameters AWS CloudFormation Resource (AWS::SSM::MaintenanceWindowTask.MaintenanceWindowLambdaParameters) +// 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 AWSSSMMaintenanceWindowTask_MaintenanceWindowLambdaParameters struct { +type MaintenanceWindowTask_MaintenanceWindowLambdaParameters struct { // ClientContext AWS CloudFormation Property // Required: false @@ -32,42 +34,42 @@ type AWSSSMMaintenanceWindowTask_MaintenanceWindowLambdaParameters struct { } // AWSCloudFormationType returns the AWS CloudFormation resource type -func (r *AWSSSMMaintenanceWindowTask_MaintenanceWindowLambdaParameters) AWSCloudFormationType() string { +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 *AWSSSMMaintenanceWindowTask_MaintenanceWindowLambdaParameters) DependsOn() []string { +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 *AWSSSMMaintenanceWindowTask_MaintenanceWindowLambdaParameters) SetDependsOn(dependencies []string) { +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 *AWSSSMMaintenanceWindowTask_MaintenanceWindowLambdaParameters) Metadata() map[string]interface{} { +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 *AWSSSMMaintenanceWindowTask_MaintenanceWindowLambdaParameters) SetMetadata(metadata map[string]interface{}) { +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 *AWSSSMMaintenanceWindowTask_MaintenanceWindowLambdaParameters) DeletionPolicy() policies.DeletionPolicy { +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 *AWSSSMMaintenanceWindowTask_MaintenanceWindowLambdaParameters) SetDeletionPolicy(policy policies.DeletionPolicy) { +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/resources/aws-ssm-maintenancewindowtask_maintenancewindowstepfunctionsparameters.go b/cloudformation/ssm/aws-ssm-maintenancewindowtask_maintenancewindowstepfunctionsparameters.go similarity index 68% rename from cloudformation/resources/aws-ssm-maintenancewindowtask_maintenancewindowstepfunctionsparameters.go rename to cloudformation/ssm/aws-ssm-maintenancewindowtask_maintenancewindowstepfunctionsparameters.go index 3b5a789ccc..e66ae0bf77 100644 --- a/cloudformation/resources/aws-ssm-maintenancewindowtask_maintenancewindowstepfunctionsparameters.go +++ b/cloudformation/ssm/aws-ssm-maintenancewindowtask_maintenancewindowstepfunctionsparameters.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_MaintenanceWindowStepFunctionsParameters AWS CloudFormation Resource (AWS::SSM::MaintenanceWindowTask.MaintenanceWindowStepFunctionsParameters) +// 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 AWSSSMMaintenanceWindowTask_MaintenanceWindowStepFunctionsParameters struct { +type MaintenanceWindowTask_MaintenanceWindowStepFunctionsParameters struct { // Input AWS CloudFormation Property // Required: false @@ -27,42 +29,42 @@ type AWSSSMMaintenanceWindowTask_MaintenanceWindowStepFunctionsParameters struct } // AWSCloudFormationType returns the AWS CloudFormation resource type -func (r *AWSSSMMaintenanceWindowTask_MaintenanceWindowStepFunctionsParameters) AWSCloudFormationType() string { +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 *AWSSSMMaintenanceWindowTask_MaintenanceWindowStepFunctionsParameters) DependsOn() []string { +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 *AWSSSMMaintenanceWindowTask_MaintenanceWindowStepFunctionsParameters) SetDependsOn(dependencies []string) { +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 *AWSSSMMaintenanceWindowTask_MaintenanceWindowStepFunctionsParameters) Metadata() map[string]interface{} { +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 *AWSSSMMaintenanceWindowTask_MaintenanceWindowStepFunctionsParameters) SetMetadata(metadata map[string]interface{}) { +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 *AWSSSMMaintenanceWindowTask_MaintenanceWindowStepFunctionsParameters) DeletionPolicy() policies.DeletionPolicy { +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 *AWSSSMMaintenanceWindowTask_MaintenanceWindowStepFunctionsParameters) SetDeletionPolicy(policy policies.DeletionPolicy) { +func (r *MaintenanceWindowTask_MaintenanceWindowStepFunctionsParameters) SetDeletionPolicy(policy policies.DeletionPolicy) { r._deletionPolicy = policy } diff --git a/cloudformation/resources/aws-ssm-maintenancewindowtask_notificationconfig.go b/cloudformation/ssm/aws-ssm-maintenancewindowtask_notificationconfig.go similarity index 74% rename from cloudformation/resources/aws-ssm-maintenancewindowtask_notificationconfig.go rename to cloudformation/ssm/aws-ssm-maintenancewindowtask_notificationconfig.go index 76240d5847..992e52430c 100644 --- a/cloudformation/resources/aws-ssm-maintenancewindowtask_notificationconfig.go +++ b/cloudformation/ssm/aws-ssm-maintenancewindowtask_notificationconfig.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_NotificationConfig AWS CloudFormation Resource (AWS::SSM::MaintenanceWindowTask.NotificationConfig) +// 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 AWSSSMMaintenanceWindowTask_NotificationConfig struct { +type MaintenanceWindowTask_NotificationConfig struct { // NotificationArn AWS CloudFormation Property // Required: true @@ -32,42 +34,42 @@ type AWSSSMMaintenanceWindowTask_NotificationConfig struct { } // AWSCloudFormationType returns the AWS CloudFormation resource type -func (r *AWSSSMMaintenanceWindowTask_NotificationConfig) AWSCloudFormationType() string { +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 *AWSSSMMaintenanceWindowTask_NotificationConfig) DependsOn() []string { +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 *AWSSSMMaintenanceWindowTask_NotificationConfig) SetDependsOn(dependencies []string) { +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 *AWSSSMMaintenanceWindowTask_NotificationConfig) Metadata() map[string]interface{} { +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 *AWSSSMMaintenanceWindowTask_NotificationConfig) SetMetadata(metadata map[string]interface{}) { +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 *AWSSSMMaintenanceWindowTask_NotificationConfig) DeletionPolicy() policies.DeletionPolicy { +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 *AWSSSMMaintenanceWindowTask_NotificationConfig) SetDeletionPolicy(policy policies.DeletionPolicy) { +func (r *MaintenanceWindowTask_NotificationConfig) SetDeletionPolicy(policy policies.DeletionPolicy) { r._deletionPolicy = policy } diff --git a/cloudformation/resources/aws-ssm-maintenancewindowtask_target.go b/cloudformation/ssm/aws-ssm-maintenancewindowtask_target.go similarity index 73% rename from cloudformation/resources/aws-ssm-maintenancewindowtask_target.go rename to cloudformation/ssm/aws-ssm-maintenancewindowtask_target.go index c345ad57fd..54890ddd25 100644 --- a/cloudformation/resources/aws-ssm-maintenancewindowtask_target.go +++ b/cloudformation/ssm/aws-ssm-maintenancewindowtask_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" +) -// AWSSSMMaintenanceWindowTask_Target AWS CloudFormation Resource (AWS::SSM::MaintenanceWindowTask.Target) +// 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 AWSSSMMaintenanceWindowTask_Target struct { +type MaintenanceWindowTask_Target struct { // Key AWS CloudFormation Property // Required: true @@ -27,42 +29,42 @@ type AWSSSMMaintenanceWindowTask_Target struct { } // AWSCloudFormationType returns the AWS CloudFormation resource type -func (r *AWSSSMMaintenanceWindowTask_Target) AWSCloudFormationType() string { +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 *AWSSSMMaintenanceWindowTask_Target) DependsOn() []string { +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 *AWSSSMMaintenanceWindowTask_Target) SetDependsOn(dependencies []string) { +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 *AWSSSMMaintenanceWindowTask_Target) Metadata() map[string]interface{} { +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 *AWSSSMMaintenanceWindowTask_Target) SetMetadata(metadata map[string]interface{}) { +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 *AWSSSMMaintenanceWindowTask_Target) DeletionPolicy() policies.DeletionPolicy { +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 *AWSSSMMaintenanceWindowTask_Target) SetDeletionPolicy(policy policies.DeletionPolicy) { +func (r *MaintenanceWindowTask_Target) SetDeletionPolicy(policy policies.DeletionPolicy) { r._deletionPolicy = policy } diff --git a/cloudformation/resources/aws-ssm-maintenancewindowtask_taskinvocationparameters.go b/cloudformation/ssm/aws-ssm-maintenancewindowtask_taskinvocationparameters.go similarity index 65% rename from cloudformation/resources/aws-ssm-maintenancewindowtask_taskinvocationparameters.go rename to cloudformation/ssm/aws-ssm-maintenancewindowtask_taskinvocationparameters.go index 2f287fe78b..f19d6cf436 100644 --- a/cloudformation/resources/aws-ssm-maintenancewindowtask_taskinvocationparameters.go +++ b/cloudformation/ssm/aws-ssm-maintenancewindowtask_taskinvocationparameters.go @@ -1,30 +1,32 @@ -package resources +package ssm -import "github.com/awslabs/goformation/v2/cloudformation/policies" +import ( + "github.com/awslabs/goformation/v3/cloudformation/policies" +) -// AWSSSMMaintenanceWindowTask_TaskInvocationParameters AWS CloudFormation Resource (AWS::SSM::MaintenanceWindowTask.TaskInvocationParameters) +// 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 AWSSSMMaintenanceWindowTask_TaskInvocationParameters struct { +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 *AWSSSMMaintenanceWindowTask_MaintenanceWindowAutomationParameters `json:"MaintenanceWindowAutomationParameters,omitempty"` + 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 *AWSSSMMaintenanceWindowTask_MaintenanceWindowLambdaParameters `json:"MaintenanceWindowLambdaParameters,omitempty"` + 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 *AWSSSMMaintenanceWindowTask_MaintenanceWindowRunCommandParameters `json:"MaintenanceWindowRunCommandParameters,omitempty"` + 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 *AWSSSMMaintenanceWindowTask_MaintenanceWindowStepFunctionsParameters `json:"MaintenanceWindowStepFunctionsParameters,omitempty"` + MaintenanceWindowStepFunctionsParameters *MaintenanceWindowTask_MaintenanceWindowStepFunctionsParameters `json:"MaintenanceWindowStepFunctionsParameters,omitempty"` // _deletionPolicy represents a CloudFormation DeletionPolicy _deletionPolicy policies.DeletionPolicy @@ -37,42 +39,42 @@ type AWSSSMMaintenanceWindowTask_TaskInvocationParameters struct { } // AWSCloudFormationType returns the AWS CloudFormation resource type -func (r *AWSSSMMaintenanceWindowTask_TaskInvocationParameters) AWSCloudFormationType() string { +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 *AWSSSMMaintenanceWindowTask_TaskInvocationParameters) DependsOn() []string { +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 *AWSSSMMaintenanceWindowTask_TaskInvocationParameters) SetDependsOn(dependencies []string) { +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 *AWSSSMMaintenanceWindowTask_TaskInvocationParameters) Metadata() map[string]interface{} { +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 *AWSSSMMaintenanceWindowTask_TaskInvocationParameters) SetMetadata(metadata map[string]interface{}) { +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 *AWSSSMMaintenanceWindowTask_TaskInvocationParameters) DeletionPolicy() policies.DeletionPolicy { +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 *AWSSSMMaintenanceWindowTask_TaskInvocationParameters) SetDeletionPolicy(policy policies.DeletionPolicy) { +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/resources/aws-ssm-patchbaseline_patchfilter.go b/cloudformation/ssm/aws-ssm-patchbaseline_patchfilter.go similarity index 74% rename from cloudformation/resources/aws-ssm-patchbaseline_patchfilter.go rename to cloudformation/ssm/aws-ssm-patchbaseline_patchfilter.go index 41034b1389..23952b3525 100644 --- a/cloudformation/resources/aws-ssm-patchbaseline_patchfilter.go +++ b/cloudformation/ssm/aws-ssm-patchbaseline_patchfilter.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_PatchFilter AWS CloudFormation Resource (AWS::SSM::PatchBaseline.PatchFilter) +// 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 AWSSSMPatchBaseline_PatchFilter struct { +type PatchBaseline_PatchFilter struct { // Key AWS CloudFormation Property // Required: false @@ -27,42 +29,42 @@ type AWSSSMPatchBaseline_PatchFilter struct { } // AWSCloudFormationType returns the AWS CloudFormation resource type -func (r *AWSSSMPatchBaseline_PatchFilter) AWSCloudFormationType() string { +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 *AWSSSMPatchBaseline_PatchFilter) DependsOn() []string { +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 *AWSSSMPatchBaseline_PatchFilter) SetDependsOn(dependencies []string) { +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 *AWSSSMPatchBaseline_PatchFilter) Metadata() map[string]interface{} { +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 *AWSSSMPatchBaseline_PatchFilter) SetMetadata(metadata map[string]interface{}) { +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 *AWSSSMPatchBaseline_PatchFilter) DeletionPolicy() policies.DeletionPolicy { +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 *AWSSSMPatchBaseline_PatchFilter) SetDeletionPolicy(policy policies.DeletionPolicy) { +func (r *PatchBaseline_PatchFilter) SetDeletionPolicy(policy policies.DeletionPolicy) { r._deletionPolicy = policy } diff --git a/cloudformation/resources/aws-ssm-patchbaseline_patchfiltergroup.go b/cloudformation/ssm/aws-ssm-patchbaseline_patchfiltergroup.go similarity index 68% rename from cloudformation/resources/aws-ssm-patchbaseline_patchfiltergroup.go rename to cloudformation/ssm/aws-ssm-patchbaseline_patchfiltergroup.go index 2e25df5407..cf6b77fa8a 100644 --- a/cloudformation/resources/aws-ssm-patchbaseline_patchfiltergroup.go +++ b/cloudformation/ssm/aws-ssm-patchbaseline_patchfiltergroup.go @@ -1,15 +1,17 @@ -package resources +package ssm -import "github.com/awslabs/goformation/v2/cloudformation/policies" +import ( + "github.com/awslabs/goformation/v3/cloudformation/policies" +) -// AWSSSMPatchBaseline_PatchFilterGroup AWS CloudFormation Resource (AWS::SSM::PatchBaseline.PatchFilterGroup) +// 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 AWSSSMPatchBaseline_PatchFilterGroup struct { +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 []AWSSSMPatchBaseline_PatchFilter `json:"PatchFilters,omitempty"` + PatchFilters []PatchBaseline_PatchFilter `json:"PatchFilters,omitempty"` // _deletionPolicy represents a CloudFormation DeletionPolicy _deletionPolicy policies.DeletionPolicy @@ -22,42 +24,42 @@ type AWSSSMPatchBaseline_PatchFilterGroup struct { } // AWSCloudFormationType returns the AWS CloudFormation resource type -func (r *AWSSSMPatchBaseline_PatchFilterGroup) AWSCloudFormationType() string { +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 *AWSSSMPatchBaseline_PatchFilterGroup) DependsOn() []string { +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 *AWSSSMPatchBaseline_PatchFilterGroup) SetDependsOn(dependencies []string) { +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 *AWSSSMPatchBaseline_PatchFilterGroup) Metadata() map[string]interface{} { +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 *AWSSSMPatchBaseline_PatchFilterGroup) SetMetadata(metadata map[string]interface{}) { +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 *AWSSSMPatchBaseline_PatchFilterGroup) DeletionPolicy() policies.DeletionPolicy { +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 *AWSSSMPatchBaseline_PatchFilterGroup) SetDeletionPolicy(policy policies.DeletionPolicy) { +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/resources/aws-ssm-patchbaseline_rulegroup.go b/cloudformation/ssm/aws-ssm-patchbaseline_rulegroup.go similarity index 70% rename from cloudformation/resources/aws-ssm-patchbaseline_rulegroup.go rename to cloudformation/ssm/aws-ssm-patchbaseline_rulegroup.go index 3daf39f11b..08bee7a5f0 100644 --- a/cloudformation/resources/aws-ssm-patchbaseline_rulegroup.go +++ b/cloudformation/ssm/aws-ssm-patchbaseline_rulegroup.go @@ -1,15 +1,17 @@ -package resources +package ssm -import "github.com/awslabs/goformation/v2/cloudformation/policies" +import ( + "github.com/awslabs/goformation/v3/cloudformation/policies" +) -// AWSSSMPatchBaseline_RuleGroup AWS CloudFormation Resource (AWS::SSM::PatchBaseline.RuleGroup) +// 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 AWSSSMPatchBaseline_RuleGroup struct { +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 []AWSSSMPatchBaseline_Rule `json:"PatchRules,omitempty"` + PatchRules []PatchBaseline_Rule `json:"PatchRules,omitempty"` // _deletionPolicy represents a CloudFormation DeletionPolicy _deletionPolicy policies.DeletionPolicy @@ -22,42 +24,42 @@ type AWSSSMPatchBaseline_RuleGroup struct { } // AWSCloudFormationType returns the AWS CloudFormation resource type -func (r *AWSSSMPatchBaseline_RuleGroup) AWSCloudFormationType() string { +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 *AWSSSMPatchBaseline_RuleGroup) DependsOn() []string { +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 *AWSSSMPatchBaseline_RuleGroup) SetDependsOn(dependencies []string) { +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 *AWSSSMPatchBaseline_RuleGroup) Metadata() map[string]interface{} { +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 *AWSSSMPatchBaseline_RuleGroup) SetMetadata(metadata map[string]interface{}) { +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 *AWSSSMPatchBaseline_RuleGroup) DeletionPolicy() policies.DeletionPolicy { +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 *AWSSSMPatchBaseline_RuleGroup) SetDeletionPolicy(policy policies.DeletionPolicy) { +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/resources/aws-stepfunctions-activity_tagsentry.go b/cloudformation/stepfunctions/aws-stepfunctions-activity_tagsentry.go similarity index 73% rename from cloudformation/resources/aws-stepfunctions-activity_tagsentry.go rename to cloudformation/stepfunctions/aws-stepfunctions-activity_tagsentry.go index 0f2d6e6e8f..f331515b6e 100644 --- a/cloudformation/resources/aws-stepfunctions-activity_tagsentry.go +++ b/cloudformation/stepfunctions/aws-stepfunctions-activity_tagsentry.go @@ -1,10 +1,12 @@ -package resources +package stepfunctions -import "github.com/awslabs/goformation/v2/cloudformation/policies" +import ( + "github.com/awslabs/goformation/v3/cloudformation/policies" +) -// AWSStepFunctionsActivity_TagsEntry AWS CloudFormation Resource (AWS::StepFunctions::Activity.TagsEntry) +// 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 AWSStepFunctionsActivity_TagsEntry struct { +type Activity_TagsEntry struct { // Key AWS CloudFormation Property // Required: true @@ -27,42 +29,42 @@ type AWSStepFunctionsActivity_TagsEntry struct { } // AWSCloudFormationType returns the AWS CloudFormation resource type -func (r *AWSStepFunctionsActivity_TagsEntry) AWSCloudFormationType() string { +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 *AWSStepFunctionsActivity_TagsEntry) DependsOn() []string { +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 *AWSStepFunctionsActivity_TagsEntry) SetDependsOn(dependencies []string) { +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 *AWSStepFunctionsActivity_TagsEntry) Metadata() map[string]interface{} { +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 *AWSStepFunctionsActivity_TagsEntry) SetMetadata(metadata map[string]interface{}) { +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 *AWSStepFunctionsActivity_TagsEntry) DeletionPolicy() policies.DeletionPolicy { +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 *AWSStepFunctionsActivity_TagsEntry) SetDeletionPolicy(policy policies.DeletionPolicy) { +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/resources/aws-stepfunctions-statemachine_tagsentry.go b/cloudformation/stepfunctions/aws-stepfunctions-statemachine_tagsentry.go similarity index 72% rename from cloudformation/resources/aws-stepfunctions-statemachine_tagsentry.go rename to cloudformation/stepfunctions/aws-stepfunctions-statemachine_tagsentry.go index 0b11f21de3..9e935de6f5 100644 --- a/cloudformation/resources/aws-stepfunctions-statemachine_tagsentry.go +++ b/cloudformation/stepfunctions/aws-stepfunctions-statemachine_tagsentry.go @@ -1,10 +1,12 @@ -package resources +package stepfunctions -import "github.com/awslabs/goformation/v2/cloudformation/policies" +import ( + "github.com/awslabs/goformation/v3/cloudformation/policies" +) -// AWSStepFunctionsStateMachine_TagsEntry AWS CloudFormation Resource (AWS::StepFunctions::StateMachine.TagsEntry) +// 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 AWSStepFunctionsStateMachine_TagsEntry struct { +type StateMachine_TagsEntry struct { // Key AWS CloudFormation Property // Required: true @@ -27,42 +29,42 @@ type AWSStepFunctionsStateMachine_TagsEntry struct { } // AWSCloudFormationType returns the AWS CloudFormation resource type -func (r *AWSStepFunctionsStateMachine_TagsEntry) AWSCloudFormationType() string { +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 *AWSStepFunctionsStateMachine_TagsEntry) DependsOn() []string { +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 *AWSStepFunctionsStateMachine_TagsEntry) SetDependsOn(dependencies []string) { +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 *AWSStepFunctionsStateMachine_TagsEntry) Metadata() map[string]interface{} { +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 *AWSStepFunctionsStateMachine_TagsEntry) SetMetadata(metadata map[string]interface{}) { +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 *AWSStepFunctionsStateMachine_TagsEntry) DeletionPolicy() policies.DeletionPolicy { +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 *AWSStepFunctionsStateMachine_TagsEntry) SetDeletionPolicy(policy policies.DeletionPolicy) { +func (r *StateMachine_TagsEntry) SetDeletionPolicy(policy policies.DeletionPolicy) { r._deletionPolicy = policy } diff --git a/cloudformation/resources/tag.go b/cloudformation/tags/tag.go similarity index 96% rename from cloudformation/resources/tag.go rename to cloudformation/tags/tag.go index 547219c26c..a8daca9ca8 100644 --- a/cloudformation/resources/tag.go +++ b/cloudformation/tags/tag.go @@ -1,6 +1,6 @@ -package resources +package tags -import "github.com/awslabs/goformation/v2/cloudformation/policies" +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 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/resources/aws-transfer-server_endpointdetails.go b/cloudformation/transfer/aws-transfer-server_endpointdetails.go similarity index 71% rename from cloudformation/resources/aws-transfer-server_endpointdetails.go rename to cloudformation/transfer/aws-transfer-server_endpointdetails.go index f21e704d24..b5a26b5e79 100644 --- a/cloudformation/resources/aws-transfer-server_endpointdetails.go +++ b/cloudformation/transfer/aws-transfer-server_endpointdetails.go @@ -1,10 +1,12 @@ -package resources +package transfer -import "github.com/awslabs/goformation/v2/cloudformation/policies" +import ( + "github.com/awslabs/goformation/v3/cloudformation/policies" +) -// AWSTransferServer_EndpointDetails AWS CloudFormation Resource (AWS::Transfer::Server.EndpointDetails) +// 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 AWSTransferServer_EndpointDetails struct { +type Server_EndpointDetails struct { // VpcEndpointId AWS CloudFormation Property // Required: true @@ -22,42 +24,42 @@ type AWSTransferServer_EndpointDetails struct { } // AWSCloudFormationType returns the AWS CloudFormation resource type -func (r *AWSTransferServer_EndpointDetails) AWSCloudFormationType() string { +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 *AWSTransferServer_EndpointDetails) DependsOn() []string { +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 *AWSTransferServer_EndpointDetails) SetDependsOn(dependencies []string) { +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 *AWSTransferServer_EndpointDetails) Metadata() map[string]interface{} { +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 *AWSTransferServer_EndpointDetails) SetMetadata(metadata map[string]interface{}) { +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 *AWSTransferServer_EndpointDetails) DeletionPolicy() policies.DeletionPolicy { +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 *AWSTransferServer_EndpointDetails) SetDeletionPolicy(policy policies.DeletionPolicy) { +func (r *Server_EndpointDetails) SetDeletionPolicy(policy policies.DeletionPolicy) { r._deletionPolicy = policy } diff --git a/cloudformation/resources/aws-transfer-server_identityproviderdetails.go b/cloudformation/transfer/aws-transfer-server_identityproviderdetails.go similarity index 72% rename from cloudformation/resources/aws-transfer-server_identityproviderdetails.go rename to cloudformation/transfer/aws-transfer-server_identityproviderdetails.go index 8ba62a796e..7b094ba848 100644 --- a/cloudformation/resources/aws-transfer-server_identityproviderdetails.go +++ b/cloudformation/transfer/aws-transfer-server_identityproviderdetails.go @@ -1,10 +1,12 @@ -package resources +package transfer -import "github.com/awslabs/goformation/v2/cloudformation/policies" +import ( + "github.com/awslabs/goformation/v3/cloudformation/policies" +) -// AWSTransferServer_IdentityProviderDetails AWS CloudFormation Resource (AWS::Transfer::Server.IdentityProviderDetails) +// 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 AWSTransferServer_IdentityProviderDetails struct { +type Server_IdentityProviderDetails struct { // InvocationRole AWS CloudFormation Property // Required: true @@ -27,42 +29,42 @@ type AWSTransferServer_IdentityProviderDetails struct { } // AWSCloudFormationType returns the AWS CloudFormation resource type -func (r *AWSTransferServer_IdentityProviderDetails) AWSCloudFormationType() string { +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 *AWSTransferServer_IdentityProviderDetails) DependsOn() []string { +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 *AWSTransferServer_IdentityProviderDetails) SetDependsOn(dependencies []string) { +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 *AWSTransferServer_IdentityProviderDetails) Metadata() map[string]interface{} { +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 *AWSTransferServer_IdentityProviderDetails) SetMetadata(metadata map[string]interface{}) { +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 *AWSTransferServer_IdentityProviderDetails) DeletionPolicy() policies.DeletionPolicy { +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 *AWSTransferServer_IdentityProviderDetails) SetDeletionPolicy(policy policies.DeletionPolicy) { +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/resources/aws-transfer-user_sshpublickey.go b/cloudformation/transfer/aws-transfer-user_sshpublickey.go similarity index 68% rename from cloudformation/resources/aws-transfer-user_sshpublickey.go rename to cloudformation/transfer/aws-transfer-user_sshpublickey.go index 4140ff5ccb..0c71983d9e 100644 --- a/cloudformation/resources/aws-transfer-user_sshpublickey.go +++ b/cloudformation/transfer/aws-transfer-user_sshpublickey.go @@ -1,10 +1,12 @@ -package resources +package transfer -import "github.com/awslabs/goformation/v2/cloudformation/policies" +import ( + "github.com/awslabs/goformation/v3/cloudformation/policies" +) -// AWSTransferUser_SshPublicKey AWS CloudFormation Resource (AWS::Transfer::User.SshPublicKey) +// User_SshPublicKey AWS CloudFormation Resource (AWS::Transfer::User.SshPublicKey) // See: -type AWSTransferUser_SshPublicKey struct { +type User_SshPublicKey struct { // _deletionPolicy represents a CloudFormation DeletionPolicy _deletionPolicy policies.DeletionPolicy @@ -17,42 +19,42 @@ type AWSTransferUser_SshPublicKey struct { } // AWSCloudFormationType returns the AWS CloudFormation resource type -func (r *AWSTransferUser_SshPublicKey) AWSCloudFormationType() string { +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 *AWSTransferUser_SshPublicKey) DependsOn() []string { +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 *AWSTransferUser_SshPublicKey) SetDependsOn(dependencies []string) { +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 *AWSTransferUser_SshPublicKey) Metadata() map[string]interface{} { +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 *AWSTransferUser_SshPublicKey) SetMetadata(metadata map[string]interface{}) { +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 *AWSTransferUser_SshPublicKey) DeletionPolicy() policies.DeletionPolicy { +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 *AWSTransferUser_SshPublicKey) SetDeletionPolicy(policy policies.DeletionPolicy) { +func (r *User_SshPublicKey) SetDeletionPolicy(policy policies.DeletionPolicy) { r._deletionPolicy = policy } diff --git a/cloudformation/resources/utils.go b/cloudformation/utils/utils.go similarity index 58% rename from cloudformation/resources/utils.go rename to cloudformation/utils/utils.go index 87cdf4021a..f220a5ae28 100644 --- a/cloudformation/resources/utils.go +++ b/cloudformation/utils/utils.go @@ -1,20 +1,21 @@ -package resources +package utils import ( "encoding/json" ) -type byJSONLength []interface{} +// ByJSONLength implements the sort interface and enables sorting by JSON length +type ByJSONLength []interface{} -func (s byJSONLength) Len() int { +func (s ByJSONLength) Len() int { return len(s) } -func (s byJSONLength) Swap(i, j int) { +func (s ByJSONLength) Swap(i, j int) { s[i], s[j] = s[j], s[i] } -func (s byJSONLength) Less(i, j int) bool { +func (s ByJSONLength) Less(i, j int) bool { // Nil is always at the end if s[i] == nil { return false 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/resources/aws-waf-bytematchset_fieldtomatch.go b/cloudformation/waf/aws-waf-bytematchset_fieldtomatch.go similarity index 74% rename from cloudformation/resources/aws-waf-bytematchset_fieldtomatch.go rename to cloudformation/waf/aws-waf-bytematchset_fieldtomatch.go index dd55eb438a..42cc2f9e59 100644 --- a/cloudformation/resources/aws-waf-bytematchset_fieldtomatch.go +++ b/cloudformation/waf/aws-waf-bytematchset_fieldtomatch.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" +) -// AWSWAFByteMatchSet_FieldToMatch AWS CloudFormation Resource (AWS::WAF::ByteMatchSet.FieldToMatch) +// 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 AWSWAFByteMatchSet_FieldToMatch struct { +type ByteMatchSet_FieldToMatch struct { // Data AWS CloudFormation Property // Required: false @@ -27,42 +29,42 @@ type AWSWAFByteMatchSet_FieldToMatch struct { } // AWSCloudFormationType returns the AWS CloudFormation resource type -func (r *AWSWAFByteMatchSet_FieldToMatch) AWSCloudFormationType() string { +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 *AWSWAFByteMatchSet_FieldToMatch) DependsOn() []string { +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 *AWSWAFByteMatchSet_FieldToMatch) SetDependsOn(dependencies []string) { +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 *AWSWAFByteMatchSet_FieldToMatch) Metadata() map[string]interface{} { +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 *AWSWAFByteMatchSet_FieldToMatch) SetMetadata(metadata map[string]interface{}) { +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 *AWSWAFByteMatchSet_FieldToMatch) DeletionPolicy() policies.DeletionPolicy { +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 *AWSWAFByteMatchSet_FieldToMatch) SetDeletionPolicy(policy policies.DeletionPolicy) { +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/resources/aws-waf-sizeconstraintset_fieldtomatch.go b/cloudformation/waf/aws-waf-sizeconstraintset_fieldtomatch.go similarity index 73% rename from cloudformation/resources/aws-waf-sizeconstraintset_fieldtomatch.go rename to cloudformation/waf/aws-waf-sizeconstraintset_fieldtomatch.go index 2dfecd989b..a8a120c66d 100644 --- a/cloudformation/resources/aws-waf-sizeconstraintset_fieldtomatch.go +++ b/cloudformation/waf/aws-waf-sizeconstraintset_fieldtomatch.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_FieldToMatch AWS CloudFormation Resource (AWS::WAF::SizeConstraintSet.FieldToMatch) +// 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 AWSWAFSizeConstraintSet_FieldToMatch struct { +type SizeConstraintSet_FieldToMatch struct { // Data AWS CloudFormation Property // Required: false @@ -27,42 +29,42 @@ type AWSWAFSizeConstraintSet_FieldToMatch struct { } // AWSCloudFormationType returns the AWS CloudFormation resource type -func (r *AWSWAFSizeConstraintSet_FieldToMatch) AWSCloudFormationType() string { +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 *AWSWAFSizeConstraintSet_FieldToMatch) DependsOn() []string { +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 *AWSWAFSizeConstraintSet_FieldToMatch) SetDependsOn(dependencies []string) { +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 *AWSWAFSizeConstraintSet_FieldToMatch) Metadata() map[string]interface{} { +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 *AWSWAFSizeConstraintSet_FieldToMatch) SetMetadata(metadata map[string]interface{}) { +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 *AWSWAFSizeConstraintSet_FieldToMatch) DeletionPolicy() policies.DeletionPolicy { +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 *AWSWAFSizeConstraintSet_FieldToMatch) SetDeletionPolicy(policy policies.DeletionPolicy) { +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/resources/aws-waf-sqlinjectionmatchset_fieldtomatch.go b/cloudformation/waf/aws-waf-sqlinjectionmatchset_fieldtomatch.go similarity index 73% rename from cloudformation/resources/aws-waf-sqlinjectionmatchset_fieldtomatch.go rename to cloudformation/waf/aws-waf-sqlinjectionmatchset_fieldtomatch.go index 42edeb90de..5ca1f62590 100644 --- a/cloudformation/resources/aws-waf-sqlinjectionmatchset_fieldtomatch.go +++ b/cloudformation/waf/aws-waf-sqlinjectionmatchset_fieldtomatch.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" +) -// AWSWAFSqlInjectionMatchSet_FieldToMatch AWS CloudFormation Resource (AWS::WAF::SqlInjectionMatchSet.FieldToMatch) +// 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 AWSWAFSqlInjectionMatchSet_FieldToMatch struct { +type SqlInjectionMatchSet_FieldToMatch struct { // Data AWS CloudFormation Property // Required: false @@ -27,42 +29,42 @@ type AWSWAFSqlInjectionMatchSet_FieldToMatch struct { } // AWSCloudFormationType returns the AWS CloudFormation resource type -func (r *AWSWAFSqlInjectionMatchSet_FieldToMatch) AWSCloudFormationType() string { +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 *AWSWAFSqlInjectionMatchSet_FieldToMatch) DependsOn() []string { +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 *AWSWAFSqlInjectionMatchSet_FieldToMatch) SetDependsOn(dependencies []string) { +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 *AWSWAFSqlInjectionMatchSet_FieldToMatch) Metadata() map[string]interface{} { +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 *AWSWAFSqlInjectionMatchSet_FieldToMatch) SetMetadata(metadata map[string]interface{}) { +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 *AWSWAFSqlInjectionMatchSet_FieldToMatch) DeletionPolicy() policies.DeletionPolicy { +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 *AWSWAFSqlInjectionMatchSet_FieldToMatch) SetDeletionPolicy(policy policies.DeletionPolicy) { +func (r *SqlInjectionMatchSet_FieldToMatch) SetDeletionPolicy(policy policies.DeletionPolicy) { r._deletionPolicy = policy } diff --git a/cloudformation/resources/aws-waf-sqlinjectionmatchset_sqlinjectionmatchtuple.go b/cloudformation/waf/aws-waf-sqlinjectionmatchset_sqlinjectionmatchtuple.go similarity index 69% rename from cloudformation/resources/aws-waf-sqlinjectionmatchset_sqlinjectionmatchtuple.go rename to cloudformation/waf/aws-waf-sqlinjectionmatchset_sqlinjectionmatchtuple.go index 0b0e66a659..2ca10e26f0 100644 --- a/cloudformation/resources/aws-waf-sqlinjectionmatchset_sqlinjectionmatchtuple.go +++ b/cloudformation/waf/aws-waf-sqlinjectionmatchset_sqlinjectionmatchtuple.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" +) -// AWSWAFSqlInjectionMatchSet_SqlInjectionMatchTuple AWS CloudFormation Resource (AWS::WAF::SqlInjectionMatchSet.SqlInjectionMatchTuple) +// 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 AWSWAFSqlInjectionMatchSet_SqlInjectionMatchTuple struct { +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 *AWSWAFSqlInjectionMatchSet_FieldToMatch `json:"FieldToMatch,omitempty"` + FieldToMatch *SqlInjectionMatchSet_FieldToMatch `json:"FieldToMatch,omitempty"` // TextTransformation AWS CloudFormation Property // Required: true @@ -27,42 +29,42 @@ type AWSWAFSqlInjectionMatchSet_SqlInjectionMatchTuple struct { } // AWSCloudFormationType returns the AWS CloudFormation resource type -func (r *AWSWAFSqlInjectionMatchSet_SqlInjectionMatchTuple) AWSCloudFormationType() string { +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 *AWSWAFSqlInjectionMatchSet_SqlInjectionMatchTuple) DependsOn() []string { +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 *AWSWAFSqlInjectionMatchSet_SqlInjectionMatchTuple) SetDependsOn(dependencies []string) { +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 *AWSWAFSqlInjectionMatchSet_SqlInjectionMatchTuple) Metadata() map[string]interface{} { +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 *AWSWAFSqlInjectionMatchSet_SqlInjectionMatchTuple) SetMetadata(metadata map[string]interface{}) { +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 *AWSWAFSqlInjectionMatchSet_SqlInjectionMatchTuple) DeletionPolicy() policies.DeletionPolicy { +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 *AWSWAFSqlInjectionMatchSet_SqlInjectionMatchTuple) SetDeletionPolicy(policy policies.DeletionPolicy) { +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/resources/aws-waf-webacl_wafaction.go b/cloudformation/waf/aws-waf-webacl_wafaction.go similarity index 73% rename from cloudformation/resources/aws-waf-webacl_wafaction.go rename to cloudformation/waf/aws-waf-webacl_wafaction.go index cb38fae810..2620e01577 100644 --- a/cloudformation/resources/aws-waf-webacl_wafaction.go +++ b/cloudformation/waf/aws-waf-webacl_wafaction.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" +) -// AWSWAFWebACL_WafAction AWS CloudFormation Resource (AWS::WAF::WebACL.WafAction) +// 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 AWSWAFWebACL_WafAction struct { +type WebACL_WafAction struct { // Type AWS CloudFormation Property // Required: true @@ -22,42 +24,42 @@ type AWSWAFWebACL_WafAction struct { } // AWSCloudFormationType returns the AWS CloudFormation resource type -func (r *AWSWAFWebACL_WafAction) AWSCloudFormationType() string { +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 *AWSWAFWebACL_WafAction) DependsOn() []string { +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 *AWSWAFWebACL_WafAction) SetDependsOn(dependencies []string) { +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 *AWSWAFWebACL_WafAction) Metadata() map[string]interface{} { +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 *AWSWAFWebACL_WafAction) SetMetadata(metadata map[string]interface{}) { +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 *AWSWAFWebACL_WafAction) DeletionPolicy() policies.DeletionPolicy { +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 *AWSWAFWebACL_WafAction) SetDeletionPolicy(policy policies.DeletionPolicy) { +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/resources/aws-waf-xssmatchset_fieldtomatch.go b/cloudformation/waf/aws-waf-xssmatchset_fieldtomatch.go similarity index 74% rename from cloudformation/resources/aws-waf-xssmatchset_fieldtomatch.go rename to cloudformation/waf/aws-waf-xssmatchset_fieldtomatch.go index 717dff652d..2950818c4f 100644 --- a/cloudformation/resources/aws-waf-xssmatchset_fieldtomatch.go +++ b/cloudformation/waf/aws-waf-xssmatchset_fieldtomatch.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" +) -// AWSWAFXssMatchSet_FieldToMatch AWS CloudFormation Resource (AWS::WAF::XssMatchSet.FieldToMatch) +// 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 AWSWAFXssMatchSet_FieldToMatch struct { +type XssMatchSet_FieldToMatch struct { // Data AWS CloudFormation Property // Required: false @@ -27,42 +29,42 @@ type AWSWAFXssMatchSet_FieldToMatch struct { } // AWSCloudFormationType returns the AWS CloudFormation resource type -func (r *AWSWAFXssMatchSet_FieldToMatch) AWSCloudFormationType() string { +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 *AWSWAFXssMatchSet_FieldToMatch) DependsOn() []string { +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 *AWSWAFXssMatchSet_FieldToMatch) SetDependsOn(dependencies []string) { +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 *AWSWAFXssMatchSet_FieldToMatch) Metadata() map[string]interface{} { +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 *AWSWAFXssMatchSet_FieldToMatch) SetMetadata(metadata map[string]interface{}) { +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 *AWSWAFXssMatchSet_FieldToMatch) DeletionPolicy() policies.DeletionPolicy { +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 *AWSWAFXssMatchSet_FieldToMatch) SetDeletionPolicy(policy policies.DeletionPolicy) { +func (r *XssMatchSet_FieldToMatch) SetDeletionPolicy(policy policies.DeletionPolicy) { r._deletionPolicy = policy } diff --git a/cloudformation/resources/aws-waf-xssmatchset_xssmatchtuple.go b/cloudformation/waf/aws-waf-xssmatchset_xssmatchtuple.go similarity index 72% rename from cloudformation/resources/aws-waf-xssmatchset_xssmatchtuple.go rename to cloudformation/waf/aws-waf-xssmatchset_xssmatchtuple.go index 0ea16b7320..53054b75d4 100644 --- a/cloudformation/resources/aws-waf-xssmatchset_xssmatchtuple.go +++ b/cloudformation/waf/aws-waf-xssmatchset_xssmatchtuple.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" +) -// AWSWAFXssMatchSet_XssMatchTuple AWS CloudFormation Resource (AWS::WAF::XssMatchSet.XssMatchTuple) +// 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 AWSWAFXssMatchSet_XssMatchTuple struct { +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 *AWSWAFXssMatchSet_FieldToMatch `json:"FieldToMatch,omitempty"` + FieldToMatch *XssMatchSet_FieldToMatch `json:"FieldToMatch,omitempty"` // TextTransformation AWS CloudFormation Property // Required: true @@ -27,42 +29,42 @@ type AWSWAFXssMatchSet_XssMatchTuple struct { } // AWSCloudFormationType returns the AWS CloudFormation resource type -func (r *AWSWAFXssMatchSet_XssMatchTuple) AWSCloudFormationType() string { +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 *AWSWAFXssMatchSet_XssMatchTuple) DependsOn() []string { +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 *AWSWAFXssMatchSet_XssMatchTuple) SetDependsOn(dependencies []string) { +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 *AWSWAFXssMatchSet_XssMatchTuple) Metadata() map[string]interface{} { +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 *AWSWAFXssMatchSet_XssMatchTuple) SetMetadata(metadata map[string]interface{}) { +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 *AWSWAFXssMatchSet_XssMatchTuple) DeletionPolicy() policies.DeletionPolicy { +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 *AWSWAFXssMatchSet_XssMatchTuple) SetDeletionPolicy(policy policies.DeletionPolicy) { +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/resources/aws-wafregional-bytematchset_fieldtomatch.go b/cloudformation/wafregional/aws-wafregional-bytematchset_fieldtomatch.go similarity index 72% rename from cloudformation/resources/aws-wafregional-bytematchset_fieldtomatch.go rename to cloudformation/wafregional/aws-wafregional-bytematchset_fieldtomatch.go index 0010b163ab..db722cd3e2 100644 --- a/cloudformation/resources/aws-wafregional-bytematchset_fieldtomatch.go +++ b/cloudformation/wafregional/aws-wafregional-bytematchset_fieldtomatch.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" +) -// AWSWAFRegionalByteMatchSet_FieldToMatch AWS CloudFormation Resource (AWS::WAFRegional::ByteMatchSet.FieldToMatch) +// 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 AWSWAFRegionalByteMatchSet_FieldToMatch struct { +type ByteMatchSet_FieldToMatch struct { // Data AWS CloudFormation Property // Required: false @@ -27,42 +29,42 @@ type AWSWAFRegionalByteMatchSet_FieldToMatch struct { } // AWSCloudFormationType returns the AWS CloudFormation resource type -func (r *AWSWAFRegionalByteMatchSet_FieldToMatch) AWSCloudFormationType() string { +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 *AWSWAFRegionalByteMatchSet_FieldToMatch) DependsOn() []string { +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 *AWSWAFRegionalByteMatchSet_FieldToMatch) SetDependsOn(dependencies []string) { +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 *AWSWAFRegionalByteMatchSet_FieldToMatch) Metadata() map[string]interface{} { +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 *AWSWAFRegionalByteMatchSet_FieldToMatch) SetMetadata(metadata map[string]interface{}) { +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 *AWSWAFRegionalByteMatchSet_FieldToMatch) DeletionPolicy() policies.DeletionPolicy { +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 *AWSWAFRegionalByteMatchSet_FieldToMatch) SetDeletionPolicy(policy policies.DeletionPolicy) { +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/resources/aws-wafregional-geomatchset_geomatchconstraint.go b/cloudformation/wafregional/aws-wafregional-geomatchset_geomatchconstraint.go similarity index 71% rename from cloudformation/resources/aws-wafregional-geomatchset_geomatchconstraint.go rename to cloudformation/wafregional/aws-wafregional-geomatchset_geomatchconstraint.go index e4439637a4..325bada33b 100644 --- a/cloudformation/resources/aws-wafregional-geomatchset_geomatchconstraint.go +++ b/cloudformation/wafregional/aws-wafregional-geomatchset_geomatchconstraint.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" +) -// AWSWAFRegionalGeoMatchSet_GeoMatchConstraint AWS CloudFormation Resource (AWS::WAFRegional::GeoMatchSet.GeoMatchConstraint) +// 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 AWSWAFRegionalGeoMatchSet_GeoMatchConstraint struct { +type GeoMatchSet_GeoMatchConstraint struct { // Type AWS CloudFormation Property // Required: true @@ -27,42 +29,42 @@ type AWSWAFRegionalGeoMatchSet_GeoMatchConstraint struct { } // AWSCloudFormationType returns the AWS CloudFormation resource type -func (r *AWSWAFRegionalGeoMatchSet_GeoMatchConstraint) AWSCloudFormationType() string { +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 *AWSWAFRegionalGeoMatchSet_GeoMatchConstraint) DependsOn() []string { +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 *AWSWAFRegionalGeoMatchSet_GeoMatchConstraint) SetDependsOn(dependencies []string) { +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 *AWSWAFRegionalGeoMatchSet_GeoMatchConstraint) Metadata() map[string]interface{} { +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 *AWSWAFRegionalGeoMatchSet_GeoMatchConstraint) SetMetadata(metadata map[string]interface{}) { +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 *AWSWAFRegionalGeoMatchSet_GeoMatchConstraint) DeletionPolicy() policies.DeletionPolicy { +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 *AWSWAFRegionalGeoMatchSet_GeoMatchConstraint) SetDeletionPolicy(policy policies.DeletionPolicy) { +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/resources/aws-wafregional-ipset_ipsetdescriptor.go b/cloudformation/wafregional/aws-wafregional-ipset_ipsetdescriptor.go similarity index 73% rename from cloudformation/resources/aws-wafregional-ipset_ipsetdescriptor.go rename to cloudformation/wafregional/aws-wafregional-ipset_ipsetdescriptor.go index 62638ed945..f4419c820d 100644 --- a/cloudformation/resources/aws-wafregional-ipset_ipsetdescriptor.go +++ b/cloudformation/wafregional/aws-wafregional-ipset_ipsetdescriptor.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" +) -// AWSWAFRegionalIPSet_IPSetDescriptor AWS CloudFormation Resource (AWS::WAFRegional::IPSet.IPSetDescriptor) +// 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 AWSWAFRegionalIPSet_IPSetDescriptor struct { +type IPSet_IPSetDescriptor struct { // Type AWS CloudFormation Property // Required: true @@ -27,42 +29,42 @@ type AWSWAFRegionalIPSet_IPSetDescriptor struct { } // AWSCloudFormationType returns the AWS CloudFormation resource type -func (r *AWSWAFRegionalIPSet_IPSetDescriptor) AWSCloudFormationType() string { +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 *AWSWAFRegionalIPSet_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 *AWSWAFRegionalIPSet_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 *AWSWAFRegionalIPSet_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 *AWSWAFRegionalIPSet_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 *AWSWAFRegionalIPSet_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 *AWSWAFRegionalIPSet_IPSetDescriptor) SetDeletionPolicy(policy policies.DeletionPolicy) { +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/resources/aws-wafregional-sizeconstraintset_fieldtomatch.go b/cloudformation/wafregional/aws-wafregional-sizeconstraintset_fieldtomatch.go similarity index 71% rename from cloudformation/resources/aws-wafregional-sizeconstraintset_fieldtomatch.go rename to cloudformation/wafregional/aws-wafregional-sizeconstraintset_fieldtomatch.go index e4e8a1a2f0..8b8c298d05 100644 --- a/cloudformation/resources/aws-wafregional-sizeconstraintset_fieldtomatch.go +++ b/cloudformation/wafregional/aws-wafregional-sizeconstraintset_fieldtomatch.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" +) -// AWSWAFRegionalSizeConstraintSet_FieldToMatch AWS CloudFormation Resource (AWS::WAFRegional::SizeConstraintSet.FieldToMatch) +// 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 AWSWAFRegionalSizeConstraintSet_FieldToMatch struct { +type SizeConstraintSet_FieldToMatch struct { // Data AWS CloudFormation Property // Required: false @@ -27,42 +29,42 @@ type AWSWAFRegionalSizeConstraintSet_FieldToMatch struct { } // AWSCloudFormationType returns the AWS CloudFormation resource type -func (r *AWSWAFRegionalSizeConstraintSet_FieldToMatch) AWSCloudFormationType() string { +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 *AWSWAFRegionalSizeConstraintSet_FieldToMatch) DependsOn() []string { +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 *AWSWAFRegionalSizeConstraintSet_FieldToMatch) SetDependsOn(dependencies []string) { +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 *AWSWAFRegionalSizeConstraintSet_FieldToMatch) Metadata() map[string]interface{} { +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 *AWSWAFRegionalSizeConstraintSet_FieldToMatch) SetMetadata(metadata map[string]interface{}) { +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 *AWSWAFRegionalSizeConstraintSet_FieldToMatch) DeletionPolicy() policies.DeletionPolicy { +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 *AWSWAFRegionalSizeConstraintSet_FieldToMatch) SetDeletionPolicy(policy policies.DeletionPolicy) { +func (r *SizeConstraintSet_FieldToMatch) SetDeletionPolicy(policy policies.DeletionPolicy) { r._deletionPolicy = policy } diff --git a/cloudformation/resources/aws-wafregional-sizeconstraintset_sizeconstraint.go b/cloudformation/wafregional/aws-wafregional-sizeconstraintset_sizeconstraint.go similarity index 74% rename from cloudformation/resources/aws-wafregional-sizeconstraintset_sizeconstraint.go rename to cloudformation/wafregional/aws-wafregional-sizeconstraintset_sizeconstraint.go index d4a7e63937..f9b92cc505 100644 --- a/cloudformation/resources/aws-wafregional-sizeconstraintset_sizeconstraint.go +++ b/cloudformation/wafregional/aws-wafregional-sizeconstraintset_sizeconstraint.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" +) -// AWSWAFRegionalSizeConstraintSet_SizeConstraint AWS CloudFormation Resource (AWS::WAFRegional::SizeConstraintSet.SizeConstraint) +// 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 AWSWAFRegionalSizeConstraintSet_SizeConstraint struct { +type SizeConstraintSet_SizeConstraint struct { // ComparisonOperator AWS CloudFormation Property // Required: true @@ -14,7 +16,7 @@ type AWSWAFRegionalSizeConstraintSet_SizeConstraint struct { // 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"` + FieldToMatch *SizeConstraintSet_FieldToMatch `json:"FieldToMatch,omitempty"` // Size AWS CloudFormation Property // Required: true @@ -37,42 +39,42 @@ type AWSWAFRegionalSizeConstraintSet_SizeConstraint struct { } // AWSCloudFormationType returns the AWS CloudFormation resource type -func (r *AWSWAFRegionalSizeConstraintSet_SizeConstraint) AWSCloudFormationType() string { +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 *AWSWAFRegionalSizeConstraintSet_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 *AWSWAFRegionalSizeConstraintSet_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 *AWSWAFRegionalSizeConstraintSet_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 *AWSWAFRegionalSizeConstraintSet_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 *AWSWAFRegionalSizeConstraintSet_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 *AWSWAFRegionalSizeConstraintSet_SizeConstraint) SetDeletionPolicy(policy policies.DeletionPolicy) { +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/resources/aws-wafregional-sqlinjectionmatchset_fieldtomatch.go b/cloudformation/wafregional/aws-wafregional-sqlinjectionmatchset_fieldtomatch.go similarity index 71% rename from cloudformation/resources/aws-wafregional-sqlinjectionmatchset_fieldtomatch.go rename to cloudformation/wafregional/aws-wafregional-sqlinjectionmatchset_fieldtomatch.go index dc9190c7df..acb369985f 100644 --- a/cloudformation/resources/aws-wafregional-sqlinjectionmatchset_fieldtomatch.go +++ b/cloudformation/wafregional/aws-wafregional-sqlinjectionmatchset_fieldtomatch.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" +) -// AWSWAFRegionalSqlInjectionMatchSet_FieldToMatch AWS CloudFormation Resource (AWS::WAFRegional::SqlInjectionMatchSet.FieldToMatch) +// 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 AWSWAFRegionalSqlInjectionMatchSet_FieldToMatch struct { +type SqlInjectionMatchSet_FieldToMatch struct { // Data AWS CloudFormation Property // Required: false @@ -27,42 +29,42 @@ type AWSWAFRegionalSqlInjectionMatchSet_FieldToMatch struct { } // AWSCloudFormationType returns the AWS CloudFormation resource type -func (r *AWSWAFRegionalSqlInjectionMatchSet_FieldToMatch) AWSCloudFormationType() string { +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 *AWSWAFRegionalSqlInjectionMatchSet_FieldToMatch) DependsOn() []string { +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 *AWSWAFRegionalSqlInjectionMatchSet_FieldToMatch) SetDependsOn(dependencies []string) { +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 *AWSWAFRegionalSqlInjectionMatchSet_FieldToMatch) Metadata() map[string]interface{} { +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 *AWSWAFRegionalSqlInjectionMatchSet_FieldToMatch) SetMetadata(metadata map[string]interface{}) { +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 *AWSWAFRegionalSqlInjectionMatchSet_FieldToMatch) DeletionPolicy() policies.DeletionPolicy { +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 *AWSWAFRegionalSqlInjectionMatchSet_FieldToMatch) SetDeletionPolicy(policy policies.DeletionPolicy) { +func (r *SqlInjectionMatchSet_FieldToMatch) SetDeletionPolicy(policy policies.DeletionPolicy) { r._deletionPolicy = policy } diff --git a/cloudformation/resources/aws-wafregional-sqlinjectionmatchset_sqlinjectionmatchtuple.go b/cloudformation/wafregional/aws-wafregional-sqlinjectionmatchset_sqlinjectionmatchtuple.go similarity index 68% rename from cloudformation/resources/aws-wafregional-sqlinjectionmatchset_sqlinjectionmatchtuple.go rename to cloudformation/wafregional/aws-wafregional-sqlinjectionmatchset_sqlinjectionmatchtuple.go index 15674e03a7..e4a0d00e9e 100644 --- a/cloudformation/resources/aws-wafregional-sqlinjectionmatchset_sqlinjectionmatchtuple.go +++ b/cloudformation/wafregional/aws-wafregional-sqlinjectionmatchset_sqlinjectionmatchtuple.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" +) -// AWSWAFRegionalSqlInjectionMatchSet_SqlInjectionMatchTuple AWS CloudFormation Resource (AWS::WAFRegional::SqlInjectionMatchSet.SqlInjectionMatchTuple) +// 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 AWSWAFRegionalSqlInjectionMatchSet_SqlInjectionMatchTuple struct { +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 *AWSWAFRegionalSqlInjectionMatchSet_FieldToMatch `json:"FieldToMatch,omitempty"` + FieldToMatch *SqlInjectionMatchSet_FieldToMatch `json:"FieldToMatch,omitempty"` // TextTransformation AWS CloudFormation Property // Required: true @@ -27,42 +29,42 @@ type AWSWAFRegionalSqlInjectionMatchSet_SqlInjectionMatchTuple struct { } // AWSCloudFormationType returns the AWS CloudFormation resource type -func (r *AWSWAFRegionalSqlInjectionMatchSet_SqlInjectionMatchTuple) AWSCloudFormationType() string { +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 *AWSWAFRegionalSqlInjectionMatchSet_SqlInjectionMatchTuple) DependsOn() []string { +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 *AWSWAFRegionalSqlInjectionMatchSet_SqlInjectionMatchTuple) SetDependsOn(dependencies []string) { +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 *AWSWAFRegionalSqlInjectionMatchSet_SqlInjectionMatchTuple) Metadata() map[string]interface{} { +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 *AWSWAFRegionalSqlInjectionMatchSet_SqlInjectionMatchTuple) SetMetadata(metadata map[string]interface{}) { +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 *AWSWAFRegionalSqlInjectionMatchSet_SqlInjectionMatchTuple) DeletionPolicy() policies.DeletionPolicy { +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 *AWSWAFRegionalSqlInjectionMatchSet_SqlInjectionMatchTuple) SetDeletionPolicy(policy policies.DeletionPolicy) { +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/resources/aws-wafregional-webacl_action.go b/cloudformation/wafregional/aws-wafregional-webacl_action.go similarity index 72% rename from cloudformation/resources/aws-wafregional-webacl_action.go rename to cloudformation/wafregional/aws-wafregional-webacl_action.go index a07cd6df6b..7975388042 100644 --- a/cloudformation/resources/aws-wafregional-webacl_action.go +++ b/cloudformation/wafregional/aws-wafregional-webacl_action.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" +) -// AWSWAFRegionalWebACL_Action AWS CloudFormation Resource (AWS::WAFRegional::WebACL.Action) +// 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 AWSWAFRegionalWebACL_Action struct { +type WebACL_Action struct { // Type AWS CloudFormation Property // Required: true @@ -22,42 +24,42 @@ type AWSWAFRegionalWebACL_Action struct { } // AWSCloudFormationType returns the AWS CloudFormation resource type -func (r *AWSWAFRegionalWebACL_Action) AWSCloudFormationType() string { +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 *AWSWAFRegionalWebACL_Action) DependsOn() []string { +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 *AWSWAFRegionalWebACL_Action) SetDependsOn(dependencies []string) { +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 *AWSWAFRegionalWebACL_Action) Metadata() map[string]interface{} { +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 *AWSWAFRegionalWebACL_Action) SetMetadata(metadata map[string]interface{}) { +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 *AWSWAFRegionalWebACL_Action) DeletionPolicy() policies.DeletionPolicy { +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 *AWSWAFRegionalWebACL_Action) SetDeletionPolicy(policy policies.DeletionPolicy) { +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/resources/aws-wafregional-xssmatchset_fieldtomatch.go b/cloudformation/wafregional/aws-wafregional-xssmatchset_fieldtomatch.go similarity index 72% rename from cloudformation/resources/aws-wafregional-xssmatchset_fieldtomatch.go rename to cloudformation/wafregional/aws-wafregional-xssmatchset_fieldtomatch.go index 05c3faa218..1336e2612a 100644 --- a/cloudformation/resources/aws-wafregional-xssmatchset_fieldtomatch.go +++ b/cloudformation/wafregional/aws-wafregional-xssmatchset_fieldtomatch.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" +) -// AWSWAFRegionalXssMatchSet_FieldToMatch AWS CloudFormation Resource (AWS::WAFRegional::XssMatchSet.FieldToMatch) +// 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 AWSWAFRegionalXssMatchSet_FieldToMatch struct { +type XssMatchSet_FieldToMatch struct { // Data AWS CloudFormation Property // Required: false @@ -27,42 +29,42 @@ type AWSWAFRegionalXssMatchSet_FieldToMatch struct { } // AWSCloudFormationType returns the AWS CloudFormation resource type -func (r *AWSWAFRegionalXssMatchSet_FieldToMatch) AWSCloudFormationType() string { +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 *AWSWAFRegionalXssMatchSet_FieldToMatch) DependsOn() []string { +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 *AWSWAFRegionalXssMatchSet_FieldToMatch) SetDependsOn(dependencies []string) { +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 *AWSWAFRegionalXssMatchSet_FieldToMatch) Metadata() map[string]interface{} { +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 *AWSWAFRegionalXssMatchSet_FieldToMatch) SetMetadata(metadata map[string]interface{}) { +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 *AWSWAFRegionalXssMatchSet_FieldToMatch) DeletionPolicy() policies.DeletionPolicy { +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 *AWSWAFRegionalXssMatchSet_FieldToMatch) SetDeletionPolicy(policy policies.DeletionPolicy) { +func (r *XssMatchSet_FieldToMatch) SetDeletionPolicy(policy policies.DeletionPolicy) { r._deletionPolicy = policy } diff --git a/cloudformation/resources/aws-wafregional-xssmatchset_xssmatchtuple.go b/cloudformation/wafregional/aws-wafregional-xssmatchset_xssmatchtuple.go similarity index 71% rename from cloudformation/resources/aws-wafregional-xssmatchset_xssmatchtuple.go rename to cloudformation/wafregional/aws-wafregional-xssmatchset_xssmatchtuple.go index 28dee59e51..6b6df75522 100644 --- a/cloudformation/resources/aws-wafregional-xssmatchset_xssmatchtuple.go +++ b/cloudformation/wafregional/aws-wafregional-xssmatchset_xssmatchtuple.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" +) -// AWSWAFRegionalXssMatchSet_XssMatchTuple AWS CloudFormation Resource (AWS::WAFRegional::XssMatchSet.XssMatchTuple) +// 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 AWSWAFRegionalXssMatchSet_XssMatchTuple struct { +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 *AWSWAFRegionalXssMatchSet_FieldToMatch `json:"FieldToMatch,omitempty"` + FieldToMatch *XssMatchSet_FieldToMatch `json:"FieldToMatch,omitempty"` // TextTransformation AWS CloudFormation Property // Required: true @@ -27,42 +29,42 @@ type AWSWAFRegionalXssMatchSet_XssMatchTuple struct { } // AWSCloudFormationType returns the AWS CloudFormation resource type -func (r *AWSWAFRegionalXssMatchSet_XssMatchTuple) AWSCloudFormationType() string { +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 *AWSWAFRegionalXssMatchSet_XssMatchTuple) DependsOn() []string { +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 *AWSWAFRegionalXssMatchSet_XssMatchTuple) SetDependsOn(dependencies []string) { +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 *AWSWAFRegionalXssMatchSet_XssMatchTuple) Metadata() map[string]interface{} { +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 *AWSWAFRegionalXssMatchSet_XssMatchTuple) SetMetadata(metadata map[string]interface{}) { +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 *AWSWAFRegionalXssMatchSet_XssMatchTuple) DeletionPolicy() policies.DeletionPolicy { +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 *AWSWAFRegionalXssMatchSet_XssMatchTuple) SetDeletionPolicy(policy policies.DeletionPolicy) { +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"