From 44a60613c5f135cc87ee8d46ef197dfde6f05143 Mon Sep 17 00:00:00 2001 From: "github-actions[bot]" <41898282+github-actions[bot]@users.noreply.github.com> Date: Sat, 11 Feb 2023 08:23:52 +0200 Subject: [PATCH] fix(schema): CloudFormation Updates (#552) --- cloudformation/all.go | 50 +++ .../aws-config-organizationconfigrule.go | 6 +- ...le_organizationcustompolicyrulemetadata.go | 87 +++++ cloudformation/datasync/aws-datasync-agent.go | 4 +- .../datasync/aws-datasync-locationfsxontap.go | 4 +- .../aws-datasync-locationfsxopenzfs.go | 4 +- .../aws-datasync-locationobjectstorage.go | 5 + .../datasync/aws-datasync-locations3.go | 4 +- ...-globaltable_kinesisstreamspecification.go | 37 +++ ...namodb-globaltable_replicaspecification.go | 5 + ...etworkinsightsanalysis_additionaldetail.go | 10 + ...2-networkinsightsanalysis_pathcomponent.go | 5 + .../ec2/aws-ec2-networkinsightspath.go | 4 +- .../aws-elasticache-replicationgroup.go | 5 + ...ws-networkmanager-transitgatewaypeering.go | 128 +++++++ cloudformation/oam/aws-oam-link.go | 4 +- .../redshift/aws-redshift-endpointaccess.go | 10 - .../aws-redshiftserverless-namespace.go | 5 - .../aws-redshiftserverless-workgroup.go | 10 +- ...te53resolver-resolverrule_targetaddress.go | 9 +- .../sagemaker/aws-sagemaker-space.go | 133 ++++++++ .../aws-sagemaker-space_customimage.go | 47 +++ ...agemaker-space_jupyterserverappsettings.go | 37 +++ ...agemaker-space_kernelgatewayappsettings.go | 42 +++ .../aws-sagemaker-space_resourcespec.go | 47 +++ .../aws-sagemaker-space_spacesettings.go | 42 +++ schema/cdk.go | 311 ++++++++++++++++-- schema/cdk.schema.json | 311 ++++++++++++++++-- schema/cloudformation.go | 311 ++++++++++++++++-- schema/cloudformation.schema.json | 311 ++++++++++++++++-- schema/sam.go | 311 ++++++++++++++++-- schema/sam.schema.json | 311 ++++++++++++++++-- 32 files changed, 2363 insertions(+), 247 deletions(-) create mode 100644 cloudformation/config/aws-config-organizationconfigrule_organizationcustompolicyrulemetadata.go create mode 100644 cloudformation/dynamodb/aws-dynamodb-globaltable_kinesisstreamspecification.go create mode 100644 cloudformation/networkmanager/aws-networkmanager-transitgatewaypeering.go create mode 100644 cloudformation/sagemaker/aws-sagemaker-space.go create mode 100644 cloudformation/sagemaker/aws-sagemaker-space_customimage.go create mode 100644 cloudformation/sagemaker/aws-sagemaker-space_jupyterserverappsettings.go create mode 100644 cloudformation/sagemaker/aws-sagemaker-space_kernelgatewayappsettings.go create mode 100644 cloudformation/sagemaker/aws-sagemaker-space_resourcespec.go create mode 100644 cloudformation/sagemaker/aws-sagemaker-space_spacesettings.go diff --git a/cloudformation/all.go b/cloudformation/all.go index af6664b00d..59f6fa5717 100644 --- a/cloudformation/all.go +++ b/cloudformation/all.go @@ -937,6 +937,7 @@ func AllResources() map[string]Resource { "AWS::NetworkManager::LinkAssociation": &networkmanager.LinkAssociation{}, "AWS::NetworkManager::Site": &networkmanager.Site{}, "AWS::NetworkManager::SiteToSiteVpnAttachment": &networkmanager.SiteToSiteVpnAttachment{}, + "AWS::NetworkManager::TransitGatewayPeering": &networkmanager.TransitGatewayPeering{}, "AWS::NetworkManager::TransitGatewayRegistration": &networkmanager.TransitGatewayRegistration{}, "AWS::NetworkManager::VpcAttachment": &networkmanager.VpcAttachment{}, "AWS::NimbleStudio::LaunchProfile": &nimblestudio.LaunchProfile{}, @@ -1148,6 +1149,7 @@ func AllResources() map[string]Resource { "AWS::SageMaker::NotebookInstanceLifecycleConfig": &sagemaker.NotebookInstanceLifecycleConfig{}, "AWS::SageMaker::Pipeline": &sagemaker.Pipeline{}, "AWS::SageMaker::Project": &sagemaker.Project{}, + "AWS::SageMaker::Space": &sagemaker.Space{}, "AWS::SageMaker::UserProfile": &sagemaker.UserProfile{}, "AWS::SageMaker::Workteam": &sagemaker.Workteam{}, "AWS::Scheduler::Schedule": &scheduler.Schedule{}, @@ -18410,6 +18412,30 @@ func (t *Template) GetNetworkManagerSiteToSiteVpnAttachmentWithName(name string) return nil, fmt.Errorf("resource %q of type networkmanager.SiteToSiteVpnAttachment not found", name) } +// GetAllNetworkManagerTransitGatewayPeeringResources retrieves all networkmanager.TransitGatewayPeering items from an AWS CloudFormation template +func (t *Template) GetAllNetworkManagerTransitGatewayPeeringResources() map[string]*networkmanager.TransitGatewayPeering { + results := map[string]*networkmanager.TransitGatewayPeering{} + for name, untyped := range t.Resources { + switch resource := untyped.(type) { + case *networkmanager.TransitGatewayPeering: + results[name] = resource + } + } + return results +} + +// GetNetworkManagerTransitGatewayPeeringWithName retrieves all networkmanager.TransitGatewayPeering items from an AWS CloudFormation template +// whose logical ID matches the provided name. Returns an error if not found. +func (t *Template) GetNetworkManagerTransitGatewayPeeringWithName(name string) (*networkmanager.TransitGatewayPeering, error) { + if untyped, ok := t.Resources[name]; ok { + switch resource := untyped.(type) { + case *networkmanager.TransitGatewayPeering: + return resource, nil + } + } + return nil, fmt.Errorf("resource %q of type networkmanager.TransitGatewayPeering not found", name) +} + // GetAllNetworkManagerTransitGatewayRegistrationResources retrieves all networkmanager.TransitGatewayRegistration items from an AWS CloudFormation template func (t *Template) GetAllNetworkManagerTransitGatewayRegistrationResources() map[string]*networkmanager.TransitGatewayRegistration { results := map[string]*networkmanager.TransitGatewayRegistration{} @@ -23474,6 +23500,30 @@ func (t *Template) GetSageMakerProjectWithName(name string) (*sagemaker.Project, return nil, fmt.Errorf("resource %q of type sagemaker.Project not found", name) } +// GetAllSageMakerSpaceResources retrieves all sagemaker.Space items from an AWS CloudFormation template +func (t *Template) GetAllSageMakerSpaceResources() map[string]*sagemaker.Space { + results := map[string]*sagemaker.Space{} + for name, untyped := range t.Resources { + switch resource := untyped.(type) { + case *sagemaker.Space: + results[name] = resource + } + } + return results +} + +// GetSageMakerSpaceWithName retrieves all sagemaker.Space items from an AWS CloudFormation template +// whose logical ID matches the provided name. Returns an error if not found. +func (t *Template) GetSageMakerSpaceWithName(name string) (*sagemaker.Space, error) { + if untyped, ok := t.Resources[name]; ok { + switch resource := untyped.(type) { + case *sagemaker.Space: + return resource, nil + } + } + return nil, fmt.Errorf("resource %q of type sagemaker.Space not found", name) +} + // GetAllSageMakerUserProfileResources retrieves all sagemaker.UserProfile items from an AWS CloudFormation template func (t *Template) GetAllSageMakerUserProfileResources() map[string]*sagemaker.UserProfile { results := map[string]*sagemaker.UserProfile{} diff --git a/cloudformation/config/aws-config-organizationconfigrule.go b/cloudformation/config/aws-config-organizationconfigrule.go index e3902286cf..381fb914a0 100644 --- a/cloudformation/config/aws-config-organizationconfigrule.go +++ b/cloudformation/config/aws-config-organizationconfigrule.go @@ -23,10 +23,10 @@ type OrganizationConfigRule struct { // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-config-organizationconfigrule.html#cfn-config-organizationconfigrule-organizationconfigrulename OrganizationConfigRuleName string `json:"OrganizationConfigRuleName"` - // OrganizationCustomCodeRuleMetadata AWS CloudFormation Property + // OrganizationCustomPolicyRuleMetadata AWS CloudFormation Property // Required: false - // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-config-organizationconfigrule.html#cfn-config-organizationconfigrule-organizationcustomcoderulemetadata - OrganizationCustomCodeRuleMetadata *OrganizationConfigRule_OrganizationCustomCodeRuleMetadata `json:"OrganizationCustomCodeRuleMetadata,omitempty"` + // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-config-organizationconfigrule.html#cfn-config-organizationconfigrule-organizationcustompolicyrulemetadata + OrganizationCustomPolicyRuleMetadata *OrganizationConfigRule_OrganizationCustomPolicyRuleMetadata `json:"OrganizationCustomPolicyRuleMetadata,omitempty"` // OrganizationCustomRuleMetadata AWS CloudFormation Property // Required: false diff --git a/cloudformation/config/aws-config-organizationconfigrule_organizationcustompolicyrulemetadata.go b/cloudformation/config/aws-config-organizationconfigrule_organizationcustompolicyrulemetadata.go new file mode 100644 index 0000000000..35dcddef3f --- /dev/null +++ b/cloudformation/config/aws-config-organizationconfigrule_organizationcustompolicyrulemetadata.go @@ -0,0 +1,87 @@ +// Code generated by "go generate". Please don't change this file directly. + +package config + +import ( + "github.com/awslabs/goformation/v7/cloudformation/policies" +) + +// OrganizationConfigRule_OrganizationCustomPolicyRuleMetadata AWS CloudFormation Resource (AWS::Config::OrganizationConfigRule.OrganizationCustomPolicyRuleMetadata) +// See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-config-organizationconfigrule-organizationcustompolicyrulemetadata.html +type OrganizationConfigRule_OrganizationCustomPolicyRuleMetadata struct { + + // DebugLogDeliveryAccounts AWS CloudFormation Property + // Required: false + // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-config-organizationconfigrule-organizationcustompolicyrulemetadata.html#cfn-config-organizationconfigrule-organizationcustompolicyrulemetadata-debuglogdeliveryaccounts + DebugLogDeliveryAccounts []string `json:"DebugLogDeliveryAccounts,omitempty"` + + // Description AWS CloudFormation Property + // Required: false + // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-config-organizationconfigrule-organizationcustompolicyrulemetadata.html#cfn-config-organizationconfigrule-organizationcustompolicyrulemetadata-description + Description *string `json:"Description,omitempty"` + + // InputParameters AWS CloudFormation Property + // Required: false + // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-config-organizationconfigrule-organizationcustompolicyrulemetadata.html#cfn-config-organizationconfigrule-organizationcustompolicyrulemetadata-inputparameters + InputParameters *string `json:"InputParameters,omitempty"` + + // MaximumExecutionFrequency AWS CloudFormation Property + // Required: false + // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-config-organizationconfigrule-organizationcustompolicyrulemetadata.html#cfn-config-organizationconfigrule-organizationcustompolicyrulemetadata-maximumexecutionfrequency + MaximumExecutionFrequency *string `json:"MaximumExecutionFrequency,omitempty"` + + // OrganizationConfigRuleTriggerTypes AWS CloudFormation Property + // Required: false + // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-config-organizationconfigrule-organizationcustompolicyrulemetadata.html#cfn-config-organizationconfigrule-organizationcustompolicyrulemetadata-organizationconfigruletriggertypes + OrganizationConfigRuleTriggerTypes []string `json:"OrganizationConfigRuleTriggerTypes,omitempty"` + + // PolicyText AWS CloudFormation Property + // Required: true + // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-config-organizationconfigrule-organizationcustompolicyrulemetadata.html#cfn-config-organizationconfigrule-organizationcustompolicyrulemetadata-policytext + PolicyText string `json:"PolicyText"` + + // ResourceIdScope AWS CloudFormation Property + // Required: false + // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-config-organizationconfigrule-organizationcustompolicyrulemetadata.html#cfn-config-organizationconfigrule-organizationcustompolicyrulemetadata-resourceidscope + ResourceIdScope *string `json:"ResourceIdScope,omitempty"` + + // ResourceTypesScope AWS CloudFormation Property + // Required: false + // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-config-organizationconfigrule-organizationcustompolicyrulemetadata.html#cfn-config-organizationconfigrule-organizationcustompolicyrulemetadata-resourcetypesscope + ResourceTypesScope []string `json:"ResourceTypesScope,omitempty"` + + // Runtime AWS CloudFormation Property + // Required: true + // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-config-organizationconfigrule-organizationcustompolicyrulemetadata.html#cfn-config-organizationconfigrule-organizationcustompolicyrulemetadata-runtime + Runtime string `json:"Runtime"` + + // TagKeyScope AWS CloudFormation Property + // Required: false + // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-config-organizationconfigrule-organizationcustompolicyrulemetadata.html#cfn-config-organizationconfigrule-organizationcustompolicyrulemetadata-tagkeyscope + TagKeyScope *string `json:"TagKeyScope,omitempty"` + + // TagValueScope AWS CloudFormation Property + // Required: false + // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-config-organizationconfigrule-organizationcustompolicyrulemetadata.html#cfn-config-organizationconfigrule-organizationcustompolicyrulemetadata-tagvaluescope + TagValueScope *string `json:"TagValueScope,omitempty"` + + // AWSCloudFormationDeletionPolicy represents a CloudFormation DeletionPolicy + AWSCloudFormationDeletionPolicy policies.DeletionPolicy `json:"-"` + + // AWSCloudFormationUpdateReplacePolicy represents a CloudFormation UpdateReplacePolicy + AWSCloudFormationUpdateReplacePolicy policies.UpdateReplacePolicy `json:"-"` + + // AWSCloudFormationDependsOn stores the logical ID of the resources to be created before this resource + AWSCloudFormationDependsOn []string `json:"-"` + + // AWSCloudFormationMetadata stores structured data associated with this resource + AWSCloudFormationMetadata map[string]interface{} `json:"-"` + + // AWSCloudFormationCondition stores the logical ID of the condition that must be satisfied for this resource to be created + AWSCloudFormationCondition string `json:"-"` +} + +// AWSCloudFormationType returns the AWS CloudFormation resource type +func (r *OrganizationConfigRule_OrganizationCustomPolicyRuleMetadata) AWSCloudFormationType() string { + return "AWS::Config::OrganizationConfigRule.OrganizationCustomPolicyRuleMetadata" +} diff --git a/cloudformation/datasync/aws-datasync-agent.go b/cloudformation/datasync/aws-datasync-agent.go index e758061c2c..6ff0799c40 100644 --- a/cloudformation/datasync/aws-datasync-agent.go +++ b/cloudformation/datasync/aws-datasync-agent.go @@ -15,9 +15,9 @@ import ( type Agent struct { // ActivationKey AWS CloudFormation Property - // Required: true + // Required: false // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-datasync-agent.html#cfn-datasync-agent-activationkey - ActivationKey string `json:"ActivationKey"` + ActivationKey *string `json:"ActivationKey,omitempty"` // AgentName AWS CloudFormation Property // Required: false diff --git a/cloudformation/datasync/aws-datasync-locationfsxontap.go b/cloudformation/datasync/aws-datasync-locationfsxontap.go index 73613f29f7..1ca11e1a8b 100644 --- a/cloudformation/datasync/aws-datasync-locationfsxontap.go +++ b/cloudformation/datasync/aws-datasync-locationfsxontap.go @@ -15,9 +15,9 @@ import ( type LocationFSxONTAP struct { // Protocol AWS CloudFormation Property - // Required: true + // Required: false // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-datasync-locationfsxontap.html#cfn-datasync-locationfsxontap-protocol - Protocol *LocationFSxONTAP_Protocol `json:"Protocol"` + Protocol *LocationFSxONTAP_Protocol `json:"Protocol,omitempty"` // SecurityGroupArns AWS CloudFormation Property // Required: true diff --git a/cloudformation/datasync/aws-datasync-locationfsxopenzfs.go b/cloudformation/datasync/aws-datasync-locationfsxopenzfs.go index 1163489454..d3bacfa683 100644 --- a/cloudformation/datasync/aws-datasync-locationfsxopenzfs.go +++ b/cloudformation/datasync/aws-datasync-locationfsxopenzfs.go @@ -15,9 +15,9 @@ import ( type LocationFSxOpenZFS struct { // FsxFilesystemArn AWS CloudFormation Property - // Required: true + // Required: false // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-datasync-locationfsxopenzfs.html#cfn-datasync-locationfsxopenzfs-fsxfilesystemarn - FsxFilesystemArn string `json:"FsxFilesystemArn"` + FsxFilesystemArn *string `json:"FsxFilesystemArn,omitempty"` // Protocol AWS CloudFormation Property // Required: true diff --git a/cloudformation/datasync/aws-datasync-locationobjectstorage.go b/cloudformation/datasync/aws-datasync-locationobjectstorage.go index 94ad2f9341..fee0c96d27 100644 --- a/cloudformation/datasync/aws-datasync-locationobjectstorage.go +++ b/cloudformation/datasync/aws-datasync-locationobjectstorage.go @@ -34,6 +34,11 @@ type LocationObjectStorage struct { // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-datasync-locationobjectstorage.html#cfn-datasync-locationobjectstorage-secretkey SecretKey *string `json:"SecretKey,omitempty"` + // ServerCertificate AWS CloudFormation Property + // Required: false + // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-datasync-locationobjectstorage.html#cfn-datasync-locationobjectstorage-servercertificate + ServerCertificate *string `json:"ServerCertificate,omitempty"` + // ServerHostname AWS CloudFormation Property // Required: false // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-datasync-locationobjectstorage.html#cfn-datasync-locationobjectstorage-serverhostname diff --git a/cloudformation/datasync/aws-datasync-locations3.go b/cloudformation/datasync/aws-datasync-locations3.go index d545d18c60..cf42c84dbc 100644 --- a/cloudformation/datasync/aws-datasync-locations3.go +++ b/cloudformation/datasync/aws-datasync-locations3.go @@ -15,9 +15,9 @@ import ( type LocationS3 struct { // S3BucketArn AWS CloudFormation Property - // Required: true + // Required: false // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-datasync-locations3.html#cfn-datasync-locations3-s3bucketarn - S3BucketArn string `json:"S3BucketArn"` + S3BucketArn *string `json:"S3BucketArn,omitempty"` // S3Config AWS CloudFormation Property // Required: true diff --git a/cloudformation/dynamodb/aws-dynamodb-globaltable_kinesisstreamspecification.go b/cloudformation/dynamodb/aws-dynamodb-globaltable_kinesisstreamspecification.go new file mode 100644 index 0000000000..e1b5cde0d8 --- /dev/null +++ b/cloudformation/dynamodb/aws-dynamodb-globaltable_kinesisstreamspecification.go @@ -0,0 +1,37 @@ +// Code generated by "go generate". Please don't change this file directly. + +package dynamodb + +import ( + "github.com/awslabs/goformation/v7/cloudformation/policies" +) + +// GlobalTable_KinesisStreamSpecification AWS CloudFormation Resource (AWS::DynamoDB::GlobalTable.KinesisStreamSpecification) +// See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-dynamodb-globaltable-kinesisstreamspecification.html +type GlobalTable_KinesisStreamSpecification struct { + + // StreamArn AWS CloudFormation Property + // Required: true + // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-dynamodb-globaltable-kinesisstreamspecification.html#cfn-dynamodb-globaltable-kinesisstreamspecification-streamarn + StreamArn string `json:"StreamArn"` + + // AWSCloudFormationDeletionPolicy represents a CloudFormation DeletionPolicy + AWSCloudFormationDeletionPolicy policies.DeletionPolicy `json:"-"` + + // AWSCloudFormationUpdateReplacePolicy represents a CloudFormation UpdateReplacePolicy + AWSCloudFormationUpdateReplacePolicy policies.UpdateReplacePolicy `json:"-"` + + // AWSCloudFormationDependsOn stores the logical ID of the resources to be created before this resource + AWSCloudFormationDependsOn []string `json:"-"` + + // AWSCloudFormationMetadata stores structured data associated with this resource + AWSCloudFormationMetadata map[string]interface{} `json:"-"` + + // AWSCloudFormationCondition stores the logical ID of the condition that must be satisfied for this resource to be created + AWSCloudFormationCondition string `json:"-"` +} + +// AWSCloudFormationType returns the AWS CloudFormation resource type +func (r *GlobalTable_KinesisStreamSpecification) AWSCloudFormationType() string { + return "AWS::DynamoDB::GlobalTable.KinesisStreamSpecification" +} diff --git a/cloudformation/dynamodb/aws-dynamodb-globaltable_replicaspecification.go b/cloudformation/dynamodb/aws-dynamodb-globaltable_replicaspecification.go index 56fad311dd..aa28af0878 100644 --- a/cloudformation/dynamodb/aws-dynamodb-globaltable_replicaspecification.go +++ b/cloudformation/dynamodb/aws-dynamodb-globaltable_replicaspecification.go @@ -21,6 +21,11 @@ type GlobalTable_ReplicaSpecification struct { // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-dynamodb-globaltable-replicaspecification.html#cfn-dynamodb-globaltable-replicaspecification-globalsecondaryindexes GlobalSecondaryIndexes []GlobalTable_ReplicaGlobalSecondaryIndexSpecification `json:"GlobalSecondaryIndexes,omitempty"` + // KinesisStreamSpecification AWS CloudFormation Property + // Required: false + // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-dynamodb-globaltable-replicaspecification.html#cfn-dynamodb-globaltable-replicaspecification-kinesisstreamspecification + KinesisStreamSpecification *GlobalTable_KinesisStreamSpecification `json:"KinesisStreamSpecification,omitempty"` + // PointInTimeRecoverySpecification AWS CloudFormation Property // Required: false // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-dynamodb-globaltable-replicaspecification.html#cfn-dynamodb-globaltable-replicaspecification-pointintimerecoveryspecification diff --git a/cloudformation/ec2/aws-ec2-networkinsightsanalysis_additionaldetail.go b/cloudformation/ec2/aws-ec2-networkinsightsanalysis_additionaldetail.go index fa9aef2088..2a0ee59d8d 100644 --- a/cloudformation/ec2/aws-ec2-networkinsightsanalysis_additionaldetail.go +++ b/cloudformation/ec2/aws-ec2-networkinsightsanalysis_additionaldetail.go @@ -20,6 +20,16 @@ type NetworkInsightsAnalysis_AdditionalDetail struct { // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ec2-networkinsightsanalysis-additionaldetail.html#cfn-ec2-networkinsightsanalysis-additionaldetail-component Component *NetworkInsightsAnalysis_AnalysisComponent `json:"Component,omitempty"` + // LoadBalancers AWS CloudFormation Property + // Required: false + // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ec2-networkinsightsanalysis-additionaldetail.html#cfn-ec2-networkinsightsanalysis-additionaldetail-loadbalancers + LoadBalancers []NetworkInsightsAnalysis_AnalysisComponent `json:"LoadBalancers,omitempty"` + + // ServiceName AWS CloudFormation Property + // Required: false + // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ec2-networkinsightsanalysis-additionaldetail.html#cfn-ec2-networkinsightsanalysis-additionaldetail-servicename + ServiceName *string `json:"ServiceName,omitempty"` + // AWSCloudFormationDeletionPolicy represents a CloudFormation DeletionPolicy AWSCloudFormationDeletionPolicy policies.DeletionPolicy `json:"-"` diff --git a/cloudformation/ec2/aws-ec2-networkinsightsanalysis_pathcomponent.go b/cloudformation/ec2/aws-ec2-networkinsightsanalysis_pathcomponent.go index c56952dfdd..05bd65102c 100644 --- a/cloudformation/ec2/aws-ec2-networkinsightsanalysis_pathcomponent.go +++ b/cloudformation/ec2/aws-ec2-networkinsightsanalysis_pathcomponent.go @@ -65,6 +65,11 @@ type NetworkInsightsAnalysis_PathComponent struct { // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ec2-networkinsightsanalysis-pathcomponent.html#cfn-ec2-networkinsightsanalysis-pathcomponent-sequencenumber SequenceNumber *int `json:"SequenceNumber,omitempty"` + // ServiceName AWS CloudFormation Property + // Required: false + // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ec2-networkinsightsanalysis-pathcomponent.html#cfn-ec2-networkinsightsanalysis-pathcomponent-servicename + ServiceName *string `json:"ServiceName,omitempty"` + // SourceVpc AWS CloudFormation Property // Required: false // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ec2-networkinsightsanalysis-pathcomponent.html#cfn-ec2-networkinsightsanalysis-pathcomponent-sourcevpc diff --git a/cloudformation/ec2/aws-ec2-networkinsightspath.go b/cloudformation/ec2/aws-ec2-networkinsightspath.go index 705fea6664..ca9b3dcb87 100644 --- a/cloudformation/ec2/aws-ec2-networkinsightspath.go +++ b/cloudformation/ec2/aws-ec2-networkinsightspath.go @@ -15,9 +15,9 @@ import ( type NetworkInsightsPath struct { // Destination AWS CloudFormation Property - // Required: true + // Required: false // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-ec2-networkinsightspath.html#cfn-ec2-networkinsightspath-destination - Destination string `json:"Destination"` + Destination *string `json:"Destination,omitempty"` // DestinationIp AWS CloudFormation Property // Required: false diff --git a/cloudformation/elasticache/aws-elasticache-replicationgroup.go b/cloudformation/elasticache/aws-elasticache-replicationgroup.go index 23d6010895..935a58999f 100644 --- a/cloudformation/elasticache/aws-elasticache-replicationgroup.go +++ b/cloudformation/elasticache/aws-elasticache-replicationgroup.go @@ -194,6 +194,11 @@ type ReplicationGroup struct { // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-elasticache-replicationgroup.html#cfn-elasticache-replicationgroup-transitencryptionenabled TransitEncryptionEnabled *bool `json:"TransitEncryptionEnabled,omitempty"` + // TransitEncryptionMode AWS CloudFormation Property + // Required: false + // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-elasticache-replicationgroup.html#cfn-elasticache-replicationgroup-transitencryptionmode + TransitEncryptionMode *string `json:"TransitEncryptionMode,omitempty"` + // UserGroupIds AWS CloudFormation Property // Required: false // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-elasticache-replicationgroup.html#cfn-elasticache-replicationgroup-usergroupids diff --git a/cloudformation/networkmanager/aws-networkmanager-transitgatewaypeering.go b/cloudformation/networkmanager/aws-networkmanager-transitgatewaypeering.go new file mode 100644 index 0000000000..2acdf8085e --- /dev/null +++ b/cloudformation/networkmanager/aws-networkmanager-transitgatewaypeering.go @@ -0,0 +1,128 @@ +// Code generated by "go generate". Please don't change this file directly. + +package networkmanager + +import ( + "bytes" + "encoding/json" + + "github.com/awslabs/goformation/v7/cloudformation/policies" + "github.com/awslabs/goformation/v7/cloudformation/tags" +) + +// TransitGatewayPeering AWS CloudFormation Resource (AWS::NetworkManager::TransitGatewayPeering) +// See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-networkmanager-transitgatewaypeering.html +type TransitGatewayPeering struct { + + // CoreNetworkId AWS CloudFormation Property + // Required: true + // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-networkmanager-transitgatewaypeering.html#cfn-networkmanager-transitgatewaypeering-corenetworkid + CoreNetworkId string `json:"CoreNetworkId"` + + // Tags AWS CloudFormation Property + // Required: false + // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-networkmanager-transitgatewaypeering.html#cfn-networkmanager-transitgatewaypeering-tags + Tags []tags.Tag `json:"Tags,omitempty"` + + // TransitGatewayArn AWS CloudFormation Property + // Required: true + // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-networkmanager-transitgatewaypeering.html#cfn-networkmanager-transitgatewaypeering-transitgatewayarn + TransitGatewayArn string `json:"TransitGatewayArn"` + + // AWSCloudFormationDeletionPolicy represents a CloudFormation DeletionPolicy + AWSCloudFormationDeletionPolicy policies.DeletionPolicy `json:"-"` + + // AWSCloudFormationUpdateReplacePolicy represents a CloudFormation UpdateReplacePolicy + AWSCloudFormationUpdateReplacePolicy policies.UpdateReplacePolicy `json:"-"` + + // AWSCloudFormationDependsOn stores the logical ID of the resources to be created before this resource + AWSCloudFormationDependsOn []string `json:"-"` + + // AWSCloudFormationMetadata stores structured data associated with this resource + AWSCloudFormationMetadata map[string]interface{} `json:"-"` + + // AWSCloudFormationCondition stores the logical ID of the condition that must be satisfied for this resource to be created + AWSCloudFormationCondition string `json:"-"` +} + +// AWSCloudFormationType returns the AWS CloudFormation resource type +func (r *TransitGatewayPeering) AWSCloudFormationType() string { + return "AWS::NetworkManager::TransitGatewayPeering" +} + +// MarshalJSON is a custom JSON marshalling hook that embeds this object into +// an AWS CloudFormation JSON resource's 'Properties' field and adds a 'Type'. +func (r TransitGatewayPeering) MarshalJSON() ([]byte, error) { + type Properties TransitGatewayPeering + return json.Marshal(&struct { + Type string + Properties Properties + DependsOn []string `json:"DependsOn,omitempty"` + Metadata map[string]interface{} `json:"Metadata,omitempty"` + DeletionPolicy policies.DeletionPolicy `json:"DeletionPolicy,omitempty"` + UpdateReplacePolicy policies.UpdateReplacePolicy `json:"UpdateReplacePolicy,omitempty"` + Condition string `json:"Condition,omitempty"` + }{ + Type: r.AWSCloudFormationType(), + Properties: (Properties)(r), + DependsOn: r.AWSCloudFormationDependsOn, + Metadata: r.AWSCloudFormationMetadata, + DeletionPolicy: r.AWSCloudFormationDeletionPolicy, + UpdateReplacePolicy: r.AWSCloudFormationUpdateReplacePolicy, + Condition: r.AWSCloudFormationCondition, + }) +} + +// UnmarshalJSON is a custom JSON unmarshalling hook that strips the outer +// AWS CloudFormation resource object, and just keeps the 'Properties' field. +func (r *TransitGatewayPeering) UnmarshalJSON(b []byte) error { + type Properties TransitGatewayPeering + res := &struct { + Type string + Properties *Properties + DependsOn interface{} + Metadata map[string]interface{} + DeletionPolicy string + UpdateReplacePolicy string + Condition string + }{} + + dec := json.NewDecoder(bytes.NewReader(b)) + dec.DisallowUnknownFields() // Force error if unknown field is found + + if err := dec.Decode(&res); err != nil { + return err + } + + // If the resource has no Properties set, it could be nil + if res.Properties != nil { + *r = TransitGatewayPeering(*res.Properties) + } + if res.DependsOn != nil { + switch obj := res.DependsOn.(type) { + case string: + r.AWSCloudFormationDependsOn = []string{obj} + case []interface{}: + s := make([]string, 0, len(obj)) + for _, v := range obj { + if value, ok := v.(string); ok { + s = append(s, value) + } + } + r.AWSCloudFormationDependsOn = s + } + } + if res.Metadata != nil { + r.AWSCloudFormationMetadata = res.Metadata + } + if res.DeletionPolicy != "" { + r.AWSCloudFormationDeletionPolicy = policies.DeletionPolicy(res.DeletionPolicy) + } + if res.UpdateReplacePolicy != "" { + r.AWSCloudFormationUpdateReplacePolicy = policies.UpdateReplacePolicy(res.UpdateReplacePolicy) + } + if res.Condition != "" { + r.AWSCloudFormationCondition = res.Condition + } + return nil +} diff --git a/cloudformation/oam/aws-oam-link.go b/cloudformation/oam/aws-oam-link.go index 8711daed8f..323beea065 100644 --- a/cloudformation/oam/aws-oam-link.go +++ b/cloudformation/oam/aws-oam-link.go @@ -14,9 +14,9 @@ import ( type Link struct { // LabelTemplate AWS CloudFormation Property - // Required: true + // Required: false // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-oam-link.html#cfn-oam-link-labeltemplate - LabelTemplate string `json:"LabelTemplate"` + LabelTemplate *string `json:"LabelTemplate,omitempty"` // ResourceTypes AWS CloudFormation Property // Required: true diff --git a/cloudformation/redshift/aws-redshift-endpointaccess.go b/cloudformation/redshift/aws-redshift-endpointaccess.go index 4377296638..9011be8d21 100644 --- a/cloudformation/redshift/aws-redshift-endpointaccess.go +++ b/cloudformation/redshift/aws-redshift-endpointaccess.go @@ -33,21 +33,11 @@ type EndpointAccess struct { // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-redshift-endpointaccess.html#cfn-redshift-endpointaccess-subnetgroupname SubnetGroupName string `json:"SubnetGroupName"` - // VpcEndpoint AWS CloudFormation Property - // Required: false - // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-redshift-endpointaccess.html#cfn-redshift-endpointaccess-vpcendpoint - VpcEndpoint *EndpointAccess_VpcEndpoint `json:"VpcEndpoint,omitempty"` - // VpcSecurityGroupIds AWS CloudFormation Property // Required: true // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-redshift-endpointaccess.html#cfn-redshift-endpointaccess-vpcsecuritygroupids VpcSecurityGroupIds []string `json:"VpcSecurityGroupIds"` - // VpcSecurityGroups AWS CloudFormation Property - // Required: false - // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-redshift-endpointaccess.html#cfn-redshift-endpointaccess-vpcsecuritygroups - VpcSecurityGroups []EndpointAccess_VpcSecurityGroup `json:"VpcSecurityGroups,omitempty"` - // AWSCloudFormationDeletionPolicy represents a CloudFormation DeletionPolicy AWSCloudFormationDeletionPolicy policies.DeletionPolicy `json:"-"` diff --git a/cloudformation/redshiftserverless/aws-redshiftserverless-namespace.go b/cloudformation/redshiftserverless/aws-redshiftserverless-namespace.go index 2906a42c8f..f4438b4bce 100644 --- a/cloudformation/redshiftserverless/aws-redshiftserverless-namespace.go +++ b/cloudformation/redshiftserverless/aws-redshiftserverless-namespace.go @@ -59,11 +59,6 @@ type Namespace struct { // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-redshiftserverless-namespace.html#cfn-redshiftserverless-namespace-logexports LogExports []string `json:"LogExports,omitempty"` - // Namespace AWS CloudFormation Property - // Required: false - // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-redshiftserverless-namespace.html#cfn-redshiftserverless-namespace-namespace - Namespace *Namespace_Namespace `json:"Namespace,omitempty"` - // NamespaceName AWS CloudFormation Property // Required: true // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-redshiftserverless-namespace.html#cfn-redshiftserverless-namespace-namespacename diff --git a/cloudformation/redshiftserverless/aws-redshiftserverless-workgroup.go b/cloudformation/redshiftserverless/aws-redshiftserverless-workgroup.go index f39ea70c1c..be10ed18b2 100644 --- a/cloudformation/redshiftserverless/aws-redshiftserverless-workgroup.go +++ b/cloudformation/redshiftserverless/aws-redshiftserverless-workgroup.go @@ -34,6 +34,11 @@ type Workgroup struct { // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-redshiftserverless-workgroup.html#cfn-redshiftserverless-workgroup-namespacename NamespaceName *string `json:"NamespaceName,omitempty"` + // Port AWS CloudFormation Property + // Required: false + // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-redshiftserverless-workgroup.html#cfn-redshiftserverless-workgroup-port + Port *int `json:"Port,omitempty"` + // PubliclyAccessible AWS CloudFormation Property // Required: false // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-redshiftserverless-workgroup.html#cfn-redshiftserverless-workgroup-publiclyaccessible @@ -54,11 +59,6 @@ type Workgroup struct { // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-redshiftserverless-workgroup.html#cfn-redshiftserverless-workgroup-tags Tags []tags.Tag `json:"Tags,omitempty"` - // Workgroup AWS CloudFormation Property - // Required: false - // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-redshiftserverless-workgroup.html#cfn-redshiftserverless-workgroup-workgroup - Workgroup *Workgroup_Workgroup `json:"Workgroup,omitempty"` - // WorkgroupName AWS CloudFormation Property // Required: true // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-redshiftserverless-workgroup.html#cfn-redshiftserverless-workgroup-workgroupname diff --git a/cloudformation/route53resolver/aws-route53resolver-resolverrule_targetaddress.go b/cloudformation/route53resolver/aws-route53resolver-resolverrule_targetaddress.go index 3099213544..261028ae21 100644 --- a/cloudformation/route53resolver/aws-route53resolver-resolverrule_targetaddress.go +++ b/cloudformation/route53resolver/aws-route53resolver-resolverrule_targetaddress.go @@ -11,9 +11,14 @@ import ( type ResolverRule_TargetAddress struct { // Ip AWS CloudFormation Property - // Required: true + // Required: false // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-route53resolver-resolverrule-targetaddress.html#cfn-route53resolver-resolverrule-targetaddress-ip - Ip string `json:"Ip"` + Ip *string `json:"Ip,omitempty"` + + // Ipv6 AWS CloudFormation Property + // Required: false + // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-route53resolver-resolverrule-targetaddress.html#cfn-route53resolver-resolverrule-targetaddress-ipv6 + Ipv6 *string `json:"Ipv6,omitempty"` // Port AWS CloudFormation Property // Required: false diff --git a/cloudformation/sagemaker/aws-sagemaker-space.go b/cloudformation/sagemaker/aws-sagemaker-space.go new file mode 100644 index 0000000000..5d9c282402 --- /dev/null +++ b/cloudformation/sagemaker/aws-sagemaker-space.go @@ -0,0 +1,133 @@ +// Code generated by "go generate". Please don't change this file directly. + +package sagemaker + +import ( + "bytes" + "encoding/json" + + "github.com/awslabs/goformation/v7/cloudformation/policies" + "github.com/awslabs/goformation/v7/cloudformation/tags" +) + +// Space AWS CloudFormation Resource (AWS::SageMaker::Space) +// See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-sagemaker-space.html +type Space struct { + + // DomainId AWS CloudFormation Property + // Required: true + // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-sagemaker-space.html#cfn-sagemaker-space-domainid + DomainId string `json:"DomainId"` + + // SpaceName AWS CloudFormation Property + // Required: true + // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-sagemaker-space.html#cfn-sagemaker-space-spacename + SpaceName string `json:"SpaceName"` + + // SpaceSettings AWS CloudFormation Property + // Required: false + // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-sagemaker-space.html#cfn-sagemaker-space-spacesettings + SpaceSettings *Space_SpaceSettings `json:"SpaceSettings,omitempty"` + + // Tags AWS CloudFormation Property + // Required: false + // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-sagemaker-space.html#cfn-sagemaker-space-tags + Tags []tags.Tag `json:"Tags,omitempty"` + + // AWSCloudFormationDeletionPolicy represents a CloudFormation DeletionPolicy + AWSCloudFormationDeletionPolicy policies.DeletionPolicy `json:"-"` + + // AWSCloudFormationUpdateReplacePolicy represents a CloudFormation UpdateReplacePolicy + AWSCloudFormationUpdateReplacePolicy policies.UpdateReplacePolicy `json:"-"` + + // AWSCloudFormationDependsOn stores the logical ID of the resources to be created before this resource + AWSCloudFormationDependsOn []string `json:"-"` + + // AWSCloudFormationMetadata stores structured data associated with this resource + AWSCloudFormationMetadata map[string]interface{} `json:"-"` + + // AWSCloudFormationCondition stores the logical ID of the condition that must be satisfied for this resource to be created + AWSCloudFormationCondition string `json:"-"` +} + +// AWSCloudFormationType returns the AWS CloudFormation resource type +func (r *Space) AWSCloudFormationType() string { + return "AWS::SageMaker::Space" +} + +// MarshalJSON is a custom JSON marshalling hook that embeds this object into +// an AWS CloudFormation JSON resource's 'Properties' field and adds a 'Type'. +func (r Space) MarshalJSON() ([]byte, error) { + type Properties Space + return json.Marshal(&struct { + Type string + Properties Properties + DependsOn []string `json:"DependsOn,omitempty"` + Metadata map[string]interface{} `json:"Metadata,omitempty"` + DeletionPolicy policies.DeletionPolicy `json:"DeletionPolicy,omitempty"` + UpdateReplacePolicy policies.UpdateReplacePolicy `json:"UpdateReplacePolicy,omitempty"` + Condition string `json:"Condition,omitempty"` + }{ + Type: r.AWSCloudFormationType(), + Properties: (Properties)(r), + DependsOn: r.AWSCloudFormationDependsOn, + Metadata: r.AWSCloudFormationMetadata, + DeletionPolicy: r.AWSCloudFormationDeletionPolicy, + UpdateReplacePolicy: r.AWSCloudFormationUpdateReplacePolicy, + Condition: r.AWSCloudFormationCondition, + }) +} + +// UnmarshalJSON is a custom JSON unmarshalling hook that strips the outer +// AWS CloudFormation resource object, and just keeps the 'Properties' field. +func (r *Space) UnmarshalJSON(b []byte) error { + type Properties Space + res := &struct { + Type string + Properties *Properties + DependsOn interface{} + Metadata map[string]interface{} + DeletionPolicy string + UpdateReplacePolicy string + Condition string + }{} + + dec := json.NewDecoder(bytes.NewReader(b)) + dec.DisallowUnknownFields() // Force error if unknown field is found + + if err := dec.Decode(&res); err != nil { + return err + } + + // If the resource has no Properties set, it could be nil + if res.Properties != nil { + *r = Space(*res.Properties) + } + if res.DependsOn != nil { + switch obj := res.DependsOn.(type) { + case string: + r.AWSCloudFormationDependsOn = []string{obj} + case []interface{}: + s := make([]string, 0, len(obj)) + for _, v := range obj { + if value, ok := v.(string); ok { + s = append(s, value) + } + } + r.AWSCloudFormationDependsOn = s + } + } + if res.Metadata != nil { + r.AWSCloudFormationMetadata = res.Metadata + } + if res.DeletionPolicy != "" { + r.AWSCloudFormationDeletionPolicy = policies.DeletionPolicy(res.DeletionPolicy) + } + if res.UpdateReplacePolicy != "" { + r.AWSCloudFormationUpdateReplacePolicy = policies.UpdateReplacePolicy(res.UpdateReplacePolicy) + } + if res.Condition != "" { + r.AWSCloudFormationCondition = res.Condition + } + return nil +} diff --git a/cloudformation/sagemaker/aws-sagemaker-space_customimage.go b/cloudformation/sagemaker/aws-sagemaker-space_customimage.go new file mode 100644 index 0000000000..d5378fe555 --- /dev/null +++ b/cloudformation/sagemaker/aws-sagemaker-space_customimage.go @@ -0,0 +1,47 @@ +// Code generated by "go generate". Please don't change this file directly. + +package sagemaker + +import ( + "github.com/awslabs/goformation/v7/cloudformation/policies" +) + +// Space_CustomImage AWS CloudFormation Resource (AWS::SageMaker::Space.CustomImage) +// See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-sagemaker-space-customimage.html +type Space_CustomImage struct { + + // AppImageConfigName AWS CloudFormation Property + // Required: true + // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-sagemaker-space-customimage.html#cfn-sagemaker-space-customimage-appimageconfigname + AppImageConfigName string `json:"AppImageConfigName"` + + // ImageName AWS CloudFormation Property + // Required: true + // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-sagemaker-space-customimage.html#cfn-sagemaker-space-customimage-imagename + ImageName string `json:"ImageName"` + + // ImageVersionNumber AWS CloudFormation Property + // Required: false + // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-sagemaker-space-customimage.html#cfn-sagemaker-space-customimage-imageversionnumber + ImageVersionNumber *int `json:"ImageVersionNumber,omitempty"` + + // AWSCloudFormationDeletionPolicy represents a CloudFormation DeletionPolicy + AWSCloudFormationDeletionPolicy policies.DeletionPolicy `json:"-"` + + // AWSCloudFormationUpdateReplacePolicy represents a CloudFormation UpdateReplacePolicy + AWSCloudFormationUpdateReplacePolicy policies.UpdateReplacePolicy `json:"-"` + + // AWSCloudFormationDependsOn stores the logical ID of the resources to be created before this resource + AWSCloudFormationDependsOn []string `json:"-"` + + // AWSCloudFormationMetadata stores structured data associated with this resource + AWSCloudFormationMetadata map[string]interface{} `json:"-"` + + // AWSCloudFormationCondition stores the logical ID of the condition that must be satisfied for this resource to be created + AWSCloudFormationCondition string `json:"-"` +} + +// AWSCloudFormationType returns the AWS CloudFormation resource type +func (r *Space_CustomImage) AWSCloudFormationType() string { + return "AWS::SageMaker::Space.CustomImage" +} diff --git a/cloudformation/sagemaker/aws-sagemaker-space_jupyterserverappsettings.go b/cloudformation/sagemaker/aws-sagemaker-space_jupyterserverappsettings.go new file mode 100644 index 0000000000..9ae8e361f9 --- /dev/null +++ b/cloudformation/sagemaker/aws-sagemaker-space_jupyterserverappsettings.go @@ -0,0 +1,37 @@ +// Code generated by "go generate". Please don't change this file directly. + +package sagemaker + +import ( + "github.com/awslabs/goformation/v7/cloudformation/policies" +) + +// Space_JupyterServerAppSettings AWS CloudFormation Resource (AWS::SageMaker::Space.JupyterServerAppSettings) +// See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-sagemaker-space-jupyterserverappsettings.html +type Space_JupyterServerAppSettings struct { + + // DefaultResourceSpec AWS CloudFormation Property + // Required: false + // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-sagemaker-space-jupyterserverappsettings.html#cfn-sagemaker-space-jupyterserverappsettings-defaultresourcespec + DefaultResourceSpec *Space_ResourceSpec `json:"DefaultResourceSpec,omitempty"` + + // AWSCloudFormationDeletionPolicy represents a CloudFormation DeletionPolicy + AWSCloudFormationDeletionPolicy policies.DeletionPolicy `json:"-"` + + // AWSCloudFormationUpdateReplacePolicy represents a CloudFormation UpdateReplacePolicy + AWSCloudFormationUpdateReplacePolicy policies.UpdateReplacePolicy `json:"-"` + + // AWSCloudFormationDependsOn stores the logical ID of the resources to be created before this resource + AWSCloudFormationDependsOn []string `json:"-"` + + // AWSCloudFormationMetadata stores structured data associated with this resource + AWSCloudFormationMetadata map[string]interface{} `json:"-"` + + // AWSCloudFormationCondition stores the logical ID of the condition that must be satisfied for this resource to be created + AWSCloudFormationCondition string `json:"-"` +} + +// AWSCloudFormationType returns the AWS CloudFormation resource type +func (r *Space_JupyterServerAppSettings) AWSCloudFormationType() string { + return "AWS::SageMaker::Space.JupyterServerAppSettings" +} diff --git a/cloudformation/sagemaker/aws-sagemaker-space_kernelgatewayappsettings.go b/cloudformation/sagemaker/aws-sagemaker-space_kernelgatewayappsettings.go new file mode 100644 index 0000000000..7ee9005394 --- /dev/null +++ b/cloudformation/sagemaker/aws-sagemaker-space_kernelgatewayappsettings.go @@ -0,0 +1,42 @@ +// Code generated by "go generate". Please don't change this file directly. + +package sagemaker + +import ( + "github.com/awslabs/goformation/v7/cloudformation/policies" +) + +// Space_KernelGatewayAppSettings AWS CloudFormation Resource (AWS::SageMaker::Space.KernelGatewayAppSettings) +// See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-sagemaker-space-kernelgatewayappsettings.html +type Space_KernelGatewayAppSettings struct { + + // CustomImages AWS CloudFormation Property + // Required: false + // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-sagemaker-space-kernelgatewayappsettings.html#cfn-sagemaker-space-kernelgatewayappsettings-customimages + CustomImages []Space_CustomImage `json:"CustomImages,omitempty"` + + // DefaultResourceSpec AWS CloudFormation Property + // Required: false + // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-sagemaker-space-kernelgatewayappsettings.html#cfn-sagemaker-space-kernelgatewayappsettings-defaultresourcespec + DefaultResourceSpec *Space_ResourceSpec `json:"DefaultResourceSpec,omitempty"` + + // AWSCloudFormationDeletionPolicy represents a CloudFormation DeletionPolicy + AWSCloudFormationDeletionPolicy policies.DeletionPolicy `json:"-"` + + // AWSCloudFormationUpdateReplacePolicy represents a CloudFormation UpdateReplacePolicy + AWSCloudFormationUpdateReplacePolicy policies.UpdateReplacePolicy `json:"-"` + + // AWSCloudFormationDependsOn stores the logical ID of the resources to be created before this resource + AWSCloudFormationDependsOn []string `json:"-"` + + // AWSCloudFormationMetadata stores structured data associated with this resource + AWSCloudFormationMetadata map[string]interface{} `json:"-"` + + // AWSCloudFormationCondition stores the logical ID of the condition that must be satisfied for this resource to be created + AWSCloudFormationCondition string `json:"-"` +} + +// AWSCloudFormationType returns the AWS CloudFormation resource type +func (r *Space_KernelGatewayAppSettings) AWSCloudFormationType() string { + return "AWS::SageMaker::Space.KernelGatewayAppSettings" +} diff --git a/cloudformation/sagemaker/aws-sagemaker-space_resourcespec.go b/cloudformation/sagemaker/aws-sagemaker-space_resourcespec.go new file mode 100644 index 0000000000..9f4e668423 --- /dev/null +++ b/cloudformation/sagemaker/aws-sagemaker-space_resourcespec.go @@ -0,0 +1,47 @@ +// Code generated by "go generate". Please don't change this file directly. + +package sagemaker + +import ( + "github.com/awslabs/goformation/v7/cloudformation/policies" +) + +// Space_ResourceSpec AWS CloudFormation Resource (AWS::SageMaker::Space.ResourceSpec) +// See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-sagemaker-space-resourcespec.html +type Space_ResourceSpec struct { + + // InstanceType AWS CloudFormation Property + // Required: false + // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-sagemaker-space-resourcespec.html#cfn-sagemaker-space-resourcespec-instancetype + InstanceType *string `json:"InstanceType,omitempty"` + + // SageMakerImageArn AWS CloudFormation Property + // Required: false + // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-sagemaker-space-resourcespec.html#cfn-sagemaker-space-resourcespec-sagemakerimagearn + SageMakerImageArn *string `json:"SageMakerImageArn,omitempty"` + + // SageMakerImageVersionArn AWS CloudFormation Property + // Required: false + // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-sagemaker-space-resourcespec.html#cfn-sagemaker-space-resourcespec-sagemakerimageversionarn + SageMakerImageVersionArn *string `json:"SageMakerImageVersionArn,omitempty"` + + // AWSCloudFormationDeletionPolicy represents a CloudFormation DeletionPolicy + AWSCloudFormationDeletionPolicy policies.DeletionPolicy `json:"-"` + + // AWSCloudFormationUpdateReplacePolicy represents a CloudFormation UpdateReplacePolicy + AWSCloudFormationUpdateReplacePolicy policies.UpdateReplacePolicy `json:"-"` + + // AWSCloudFormationDependsOn stores the logical ID of the resources to be created before this resource + AWSCloudFormationDependsOn []string `json:"-"` + + // AWSCloudFormationMetadata stores structured data associated with this resource + AWSCloudFormationMetadata map[string]interface{} `json:"-"` + + // AWSCloudFormationCondition stores the logical ID of the condition that must be satisfied for this resource to be created + AWSCloudFormationCondition string `json:"-"` +} + +// AWSCloudFormationType returns the AWS CloudFormation resource type +func (r *Space_ResourceSpec) AWSCloudFormationType() string { + return "AWS::SageMaker::Space.ResourceSpec" +} diff --git a/cloudformation/sagemaker/aws-sagemaker-space_spacesettings.go b/cloudformation/sagemaker/aws-sagemaker-space_spacesettings.go new file mode 100644 index 0000000000..0a2eca78b9 --- /dev/null +++ b/cloudformation/sagemaker/aws-sagemaker-space_spacesettings.go @@ -0,0 +1,42 @@ +// Code generated by "go generate". Please don't change this file directly. + +package sagemaker + +import ( + "github.com/awslabs/goformation/v7/cloudformation/policies" +) + +// Space_SpaceSettings AWS CloudFormation Resource (AWS::SageMaker::Space.SpaceSettings) +// See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-sagemaker-space-spacesettings.html +type Space_SpaceSettings struct { + + // JupyterServerAppSettings AWS CloudFormation Property + // Required: false + // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-sagemaker-space-spacesettings.html#cfn-sagemaker-space-spacesettings-jupyterserverappsettings + JupyterServerAppSettings *Space_JupyterServerAppSettings `json:"JupyterServerAppSettings,omitempty"` + + // KernelGatewayAppSettings AWS CloudFormation Property + // Required: false + // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-sagemaker-space-spacesettings.html#cfn-sagemaker-space-spacesettings-kernelgatewayappsettings + KernelGatewayAppSettings *Space_KernelGatewayAppSettings `json:"KernelGatewayAppSettings,omitempty"` + + // AWSCloudFormationDeletionPolicy represents a CloudFormation DeletionPolicy + AWSCloudFormationDeletionPolicy policies.DeletionPolicy `json:"-"` + + // AWSCloudFormationUpdateReplacePolicy represents a CloudFormation UpdateReplacePolicy + AWSCloudFormationUpdateReplacePolicy policies.UpdateReplacePolicy `json:"-"` + + // AWSCloudFormationDependsOn stores the logical ID of the resources to be created before this resource + AWSCloudFormationDependsOn []string `json:"-"` + + // AWSCloudFormationMetadata stores structured data associated with this resource + AWSCloudFormationMetadata map[string]interface{} `json:"-"` + + // AWSCloudFormationCondition stores the logical ID of the condition that must be satisfied for this resource to be created + AWSCloudFormationCondition string `json:"-"` +} + +// AWSCloudFormationType returns the AWS CloudFormation resource type +func (r *Space_SpaceSettings) AWSCloudFormationType() string { + return "AWS::SageMaker::Space.SpaceSettings" +} diff --git a/schema/cdk.go b/schema/cdk.go index b5cf42e56e..8de5ec8da9 100644 --- a/schema/cdk.go +++ b/schema/cdk.go @@ -32843,8 +32843,8 @@ var CdkSchema = `{ "OrganizationConfigRuleName": { "type": "string" }, - "OrganizationCustomCodeRuleMetadata": { - "$ref": "#/definitions/AWS::Config::OrganizationConfigRule.OrganizationCustomCodeRuleMetadata" + "OrganizationCustomPolicyRuleMetadata": { + "$ref": "#/definitions/AWS::Config::OrganizationConfigRule.OrganizationCustomPolicyRuleMetadata" }, "OrganizationCustomRuleMetadata": { "$ref": "#/definitions/AWS::Config::OrganizationConfigRule.OrganizationCustomRuleMetadata" @@ -32879,12 +32879,9 @@ var CdkSchema = `{ ], "type": "object" }, - "AWS::Config::OrganizationConfigRule.OrganizationCustomCodeRuleMetadata": { + "AWS::Config::OrganizationConfigRule.OrganizationCustomPolicyRuleMetadata": { "additionalProperties": false, "properties": { - "CodeText": { - "type": "string" - }, "DebugLogDeliveryAccounts": { "items": { "type": "string" @@ -32906,6 +32903,9 @@ var CdkSchema = `{ }, "type": "array" }, + "PolicyText": { + "type": "string" + }, "ResourceIdScope": { "type": "string" }, @@ -32926,7 +32926,7 @@ var CdkSchema = `{ } }, "required": [ - "CodeText", + "PolicyText", "Runtime" ], "type": "object" @@ -39909,9 +39909,6 @@ var CdkSchema = `{ "type": "string" } }, - "required": [ - "ActivationKey" - ], "type": "object" }, "Type": { @@ -39930,8 +39927,7 @@ var CdkSchema = `{ } }, "required": [ - "Type", - "Properties" + "Type" ], "type": "object" }, @@ -40178,7 +40174,6 @@ var CdkSchema = `{ } }, "required": [ - "Protocol", "SecurityGroupArns", "StorageVirtualMachineArn" ], @@ -40328,7 +40323,6 @@ var CdkSchema = `{ } }, "required": [ - "FsxFilesystemArn", "Protocol", "SecurityGroupArns" ], @@ -40769,6 +40763,9 @@ var CdkSchema = `{ "SecretKey": { "type": "string" }, + "ServerCertificate": { + "type": "string" + }, "ServerHostname": { "type": "string" }, @@ -40869,7 +40866,6 @@ var CdkSchema = `{ } }, "required": [ - "S3BucketArn", "S3Config" ], "type": "object" @@ -42453,6 +42449,18 @@ var CdkSchema = `{ ], "type": "object" }, + "AWS::DynamoDB::GlobalTable.KinesisStreamSpecification": { + "additionalProperties": false, + "properties": { + "StreamArn": { + "type": "string" + } + }, + "required": [ + "StreamArn" + ], + "type": "object" + }, "AWS::DynamoDB::GlobalTable.LocalSecondaryIndex": { "additionalProperties": false, "properties": { @@ -42554,6 +42562,9 @@ var CdkSchema = `{ }, "type": "array" }, + "KinesisStreamSpecification": { + "$ref": "#/definitions/AWS::DynamoDB::GlobalTable.KinesisStreamSpecification" + }, "PointInTimeRecoverySpecification": { "$ref": "#/definitions/AWS::DynamoDB::GlobalTable.PointInTimeRecoverySpecification" }, @@ -47953,6 +47964,15 @@ var CdkSchema = `{ }, "Component": { "$ref": "#/definitions/AWS::EC2::NetworkInsightsAnalysis.AnalysisComponent" + }, + "LoadBalancers": { + "items": { + "$ref": "#/definitions/AWS::EC2::NetworkInsightsAnalysis.AnalysisComponent" + }, + "type": "array" + }, + "ServiceName": { + "type": "string" } }, "type": "object" @@ -48353,6 +48373,9 @@ var CdkSchema = `{ "SequenceNumber": { "type": "number" }, + "ServiceName": { + "type": "string" + }, "SourceVpc": { "$ref": "#/definitions/AWS::EC2::NetworkInsightsAnalysis.AnalysisComponent" }, @@ -48471,7 +48494,6 @@ var CdkSchema = `{ } }, "required": [ - "Destination", "Protocol", "Source" ], @@ -59498,6 +59520,9 @@ var CdkSchema = `{ "TransitEncryptionEnabled": { "type": "boolean" }, + "TransitEncryptionMode": { + "type": "string" + }, "UserGroupIds": { "items": { "type": "string" @@ -112906,6 +112931,81 @@ var CdkSchema = `{ }, "type": "object" }, + "AWS::NetworkManager::TransitGatewayPeering": { + "additionalProperties": false, + "properties": { + "Condition": { + "type": "string" + }, + "DeletionPolicy": { + "enum": [ + "Delete", + "Retain", + "Snapshot" + ], + "type": "string" + }, + "DependsOn": { + "anyOf": [ + { + "pattern": "^[a-zA-Z0-9]+$", + "type": "string" + }, + { + "items": { + "pattern": "^[a-zA-Z0-9]+$", + "type": "string" + }, + "type": "array" + } + ] + }, + "Metadata": { + "type": "object" + }, + "Properties": { + "additionalProperties": false, + "properties": { + "CoreNetworkId": { + "type": "string" + }, + "Tags": { + "items": { + "$ref": "#/definitions/Tag" + }, + "type": "array" + }, + "TransitGatewayArn": { + "type": "string" + } + }, + "required": [ + "CoreNetworkId", + "TransitGatewayArn" + ], + "type": "object" + }, + "Type": { + "enum": [ + "AWS::NetworkManager::TransitGatewayPeering" + ], + "type": "string" + }, + "UpdateReplacePolicy": { + "enum": [ + "Delete", + "Retain", + "Snapshot" + ], + "type": "string" + } + }, + "required": [ + "Type", + "Properties" + ], + "type": "object" + }, "AWS::NetworkManager::TransitGatewayRegistration": { "additionalProperties": false, "properties": { @@ -113791,7 +113891,6 @@ var CdkSchema = `{ } }, "required": [ - "LabelTemplate", "ResourceTypes", "SinkIdentifier" ], @@ -127039,20 +127138,11 @@ var CdkSchema = `{ "SubnetGroupName": { "type": "string" }, - "VpcEndpoint": { - "$ref": "#/definitions/AWS::Redshift::EndpointAccess.VpcEndpoint" - }, "VpcSecurityGroupIds": { "items": { "type": "string" }, "type": "array" - }, - "VpcSecurityGroups": { - "items": { - "$ref": "#/definitions/AWS::Redshift::EndpointAccess.VpcSecurityGroup" - }, - "type": "array" } }, "required": [ @@ -127522,9 +127612,6 @@ var CdkSchema = `{ }, "type": "array" }, - "Namespace": { - "$ref": "#/definitions/AWS::RedshiftServerless::Namespace.Namespace" - }, "NamespaceName": { "type": "string" }, @@ -127656,6 +127743,9 @@ var CdkSchema = `{ "NamespaceName": { "type": "string" }, + "Port": { + "type": "number" + }, "PubliclyAccessible": { "type": "boolean" }, @@ -127677,9 +127767,6 @@ var CdkSchema = `{ }, "type": "array" }, - "Workgroup": { - "$ref": "#/definitions/AWS::RedshiftServerless::Workgroup.Workgroup" - }, "WorkgroupName": { "type": "string" } @@ -132483,13 +132570,13 @@ var CdkSchema = `{ "Ip": { "type": "string" }, + "Ipv6": { + "type": "string" + }, "Port": { "type": "string" } }, - "required": [ - "Ip" - ], "type": "object" }, "AWS::Route53Resolver::ResolverRuleAssociation": { @@ -144854,6 +144941,154 @@ var CdkSchema = `{ ], "type": "object" }, + "AWS::SageMaker::Space": { + "additionalProperties": false, + "properties": { + "Condition": { + "type": "string" + }, + "DeletionPolicy": { + "enum": [ + "Delete", + "Retain", + "Snapshot" + ], + "type": "string" + }, + "DependsOn": { + "anyOf": [ + { + "pattern": "^[a-zA-Z0-9]+$", + "type": "string" + }, + { + "items": { + "pattern": "^[a-zA-Z0-9]+$", + "type": "string" + }, + "type": "array" + } + ] + }, + "Metadata": { + "type": "object" + }, + "Properties": { + "additionalProperties": false, + "properties": { + "DomainId": { + "type": "string" + }, + "SpaceName": { + "type": "string" + }, + "SpaceSettings": { + "$ref": "#/definitions/AWS::SageMaker::Space.SpaceSettings" + }, + "Tags": { + "items": { + "$ref": "#/definitions/Tag" + }, + "type": "array" + } + }, + "required": [ + "DomainId", + "SpaceName" + ], + "type": "object" + }, + "Type": { + "enum": [ + "AWS::SageMaker::Space" + ], + "type": "string" + }, + "UpdateReplacePolicy": { + "enum": [ + "Delete", + "Retain", + "Snapshot" + ], + "type": "string" + } + }, + "required": [ + "Type", + "Properties" + ], + "type": "object" + }, + "AWS::SageMaker::Space.CustomImage": { + "additionalProperties": false, + "properties": { + "AppImageConfigName": { + "type": "string" + }, + "ImageName": { + "type": "string" + }, + "ImageVersionNumber": { + "type": "number" + } + }, + "required": [ + "AppImageConfigName", + "ImageName" + ], + "type": "object" + }, + "AWS::SageMaker::Space.JupyterServerAppSettings": { + "additionalProperties": false, + "properties": { + "DefaultResourceSpec": { + "$ref": "#/definitions/AWS::SageMaker::Space.ResourceSpec" + } + }, + "type": "object" + }, + "AWS::SageMaker::Space.KernelGatewayAppSettings": { + "additionalProperties": false, + "properties": { + "CustomImages": { + "items": { + "$ref": "#/definitions/AWS::SageMaker::Space.CustomImage" + }, + "type": "array" + }, + "DefaultResourceSpec": { + "$ref": "#/definitions/AWS::SageMaker::Space.ResourceSpec" + } + }, + "type": "object" + }, + "AWS::SageMaker::Space.ResourceSpec": { + "additionalProperties": false, + "properties": { + "InstanceType": { + "type": "string" + }, + "SageMakerImageArn": { + "type": "string" + }, + "SageMakerImageVersionArn": { + "type": "string" + } + }, + "type": "object" + }, + "AWS::SageMaker::Space.SpaceSettings": { + "additionalProperties": false, + "properties": { + "JupyterServerAppSettings": { + "$ref": "#/definitions/AWS::SageMaker::Space.JupyterServerAppSettings" + }, + "KernelGatewayAppSettings": { + "$ref": "#/definitions/AWS::SageMaker::Space.KernelGatewayAppSettings" + } + }, + "type": "object" + }, "AWS::SageMaker::UserProfile": { "additionalProperties": false, "properties": { @@ -158514,6 +158749,9 @@ var CdkSchema = `{ { "$ref": "#/definitions/AWS::NetworkManager::SiteToSiteVpnAttachment" }, + { + "$ref": "#/definitions/AWS::NetworkManager::TransitGatewayPeering" + }, { "$ref": "#/definitions/AWS::NetworkManager::TransitGatewayRegistration" }, @@ -159147,6 +159385,9 @@ var CdkSchema = `{ { "$ref": "#/definitions/AWS::SageMaker::Project" }, + { + "$ref": "#/definitions/AWS::SageMaker::Space" + }, { "$ref": "#/definitions/AWS::SageMaker::UserProfile" }, diff --git a/schema/cdk.schema.json b/schema/cdk.schema.json index eac6e61d5c..c9670bc353 100644 --- a/schema/cdk.schema.json +++ b/schema/cdk.schema.json @@ -32838,8 +32838,8 @@ "OrganizationConfigRuleName": { "type": "string" }, - "OrganizationCustomCodeRuleMetadata": { - "$ref": "#/definitions/AWS::Config::OrganizationConfigRule.OrganizationCustomCodeRuleMetadata" + "OrganizationCustomPolicyRuleMetadata": { + "$ref": "#/definitions/AWS::Config::OrganizationConfigRule.OrganizationCustomPolicyRuleMetadata" }, "OrganizationCustomRuleMetadata": { "$ref": "#/definitions/AWS::Config::OrganizationConfigRule.OrganizationCustomRuleMetadata" @@ -32874,12 +32874,9 @@ ], "type": "object" }, - "AWS::Config::OrganizationConfigRule.OrganizationCustomCodeRuleMetadata": { + "AWS::Config::OrganizationConfigRule.OrganizationCustomPolicyRuleMetadata": { "additionalProperties": false, "properties": { - "CodeText": { - "type": "string" - }, "DebugLogDeliveryAccounts": { "items": { "type": "string" @@ -32901,6 +32898,9 @@ }, "type": "array" }, + "PolicyText": { + "type": "string" + }, "ResourceIdScope": { "type": "string" }, @@ -32921,7 +32921,7 @@ } }, "required": [ - "CodeText", + "PolicyText", "Runtime" ], "type": "object" @@ -39904,9 +39904,6 @@ "type": "string" } }, - "required": [ - "ActivationKey" - ], "type": "object" }, "Type": { @@ -39925,8 +39922,7 @@ } }, "required": [ - "Type", - "Properties" + "Type" ], "type": "object" }, @@ -40173,7 +40169,6 @@ } }, "required": [ - "Protocol", "SecurityGroupArns", "StorageVirtualMachineArn" ], @@ -40323,7 +40318,6 @@ } }, "required": [ - "FsxFilesystemArn", "Protocol", "SecurityGroupArns" ], @@ -40764,6 +40758,9 @@ "SecretKey": { "type": "string" }, + "ServerCertificate": { + "type": "string" + }, "ServerHostname": { "type": "string" }, @@ -40864,7 +40861,6 @@ } }, "required": [ - "S3BucketArn", "S3Config" ], "type": "object" @@ -42448,6 +42444,18 @@ ], "type": "object" }, + "AWS::DynamoDB::GlobalTable.KinesisStreamSpecification": { + "additionalProperties": false, + "properties": { + "StreamArn": { + "type": "string" + } + }, + "required": [ + "StreamArn" + ], + "type": "object" + }, "AWS::DynamoDB::GlobalTable.LocalSecondaryIndex": { "additionalProperties": false, "properties": { @@ -42549,6 +42557,9 @@ }, "type": "array" }, + "KinesisStreamSpecification": { + "$ref": "#/definitions/AWS::DynamoDB::GlobalTable.KinesisStreamSpecification" + }, "PointInTimeRecoverySpecification": { "$ref": "#/definitions/AWS::DynamoDB::GlobalTable.PointInTimeRecoverySpecification" }, @@ -47948,6 +47959,15 @@ }, "Component": { "$ref": "#/definitions/AWS::EC2::NetworkInsightsAnalysis.AnalysisComponent" + }, + "LoadBalancers": { + "items": { + "$ref": "#/definitions/AWS::EC2::NetworkInsightsAnalysis.AnalysisComponent" + }, + "type": "array" + }, + "ServiceName": { + "type": "string" } }, "type": "object" @@ -48348,6 +48368,9 @@ "SequenceNumber": { "type": "number" }, + "ServiceName": { + "type": "string" + }, "SourceVpc": { "$ref": "#/definitions/AWS::EC2::NetworkInsightsAnalysis.AnalysisComponent" }, @@ -48466,7 +48489,6 @@ } }, "required": [ - "Destination", "Protocol", "Source" ], @@ -59493,6 +59515,9 @@ "TransitEncryptionEnabled": { "type": "boolean" }, + "TransitEncryptionMode": { + "type": "string" + }, "UserGroupIds": { "items": { "type": "string" @@ -112901,6 +112926,81 @@ }, "type": "object" }, + "AWS::NetworkManager::TransitGatewayPeering": { + "additionalProperties": false, + "properties": { + "Condition": { + "type": "string" + }, + "DeletionPolicy": { + "enum": [ + "Delete", + "Retain", + "Snapshot" + ], + "type": "string" + }, + "DependsOn": { + "anyOf": [ + { + "pattern": "^[a-zA-Z0-9]+$", + "type": "string" + }, + { + "items": { + "pattern": "^[a-zA-Z0-9]+$", + "type": "string" + }, + "type": "array" + } + ] + }, + "Metadata": { + "type": "object" + }, + "Properties": { + "additionalProperties": false, + "properties": { + "CoreNetworkId": { + "type": "string" + }, + "Tags": { + "items": { + "$ref": "#/definitions/Tag" + }, + "type": "array" + }, + "TransitGatewayArn": { + "type": "string" + } + }, + "required": [ + "CoreNetworkId", + "TransitGatewayArn" + ], + "type": "object" + }, + "Type": { + "enum": [ + "AWS::NetworkManager::TransitGatewayPeering" + ], + "type": "string" + }, + "UpdateReplacePolicy": { + "enum": [ + "Delete", + "Retain", + "Snapshot" + ], + "type": "string" + } + }, + "required": [ + "Type", + "Properties" + ], + "type": "object" + }, "AWS::NetworkManager::TransitGatewayRegistration": { "additionalProperties": false, "properties": { @@ -113786,7 +113886,6 @@ } }, "required": [ - "LabelTemplate", "ResourceTypes", "SinkIdentifier" ], @@ -127034,20 +127133,11 @@ "SubnetGroupName": { "type": "string" }, - "VpcEndpoint": { - "$ref": "#/definitions/AWS::Redshift::EndpointAccess.VpcEndpoint" - }, "VpcSecurityGroupIds": { "items": { "type": "string" }, "type": "array" - }, - "VpcSecurityGroups": { - "items": { - "$ref": "#/definitions/AWS::Redshift::EndpointAccess.VpcSecurityGroup" - }, - "type": "array" } }, "required": [ @@ -127517,9 +127607,6 @@ }, "type": "array" }, - "Namespace": { - "$ref": "#/definitions/AWS::RedshiftServerless::Namespace.Namespace" - }, "NamespaceName": { "type": "string" }, @@ -127651,6 +127738,9 @@ "NamespaceName": { "type": "string" }, + "Port": { + "type": "number" + }, "PubliclyAccessible": { "type": "boolean" }, @@ -127672,9 +127762,6 @@ }, "type": "array" }, - "Workgroup": { - "$ref": "#/definitions/AWS::RedshiftServerless::Workgroup.Workgroup" - }, "WorkgroupName": { "type": "string" } @@ -132478,13 +132565,13 @@ "Ip": { "type": "string" }, + "Ipv6": { + "type": "string" + }, "Port": { "type": "string" } }, - "required": [ - "Ip" - ], "type": "object" }, "AWS::Route53Resolver::ResolverRuleAssociation": { @@ -144849,6 +144936,154 @@ ], "type": "object" }, + "AWS::SageMaker::Space": { + "additionalProperties": false, + "properties": { + "Condition": { + "type": "string" + }, + "DeletionPolicy": { + "enum": [ + "Delete", + "Retain", + "Snapshot" + ], + "type": "string" + }, + "DependsOn": { + "anyOf": [ + { + "pattern": "^[a-zA-Z0-9]+$", + "type": "string" + }, + { + "items": { + "pattern": "^[a-zA-Z0-9]+$", + "type": "string" + }, + "type": "array" + } + ] + }, + "Metadata": { + "type": "object" + }, + "Properties": { + "additionalProperties": false, + "properties": { + "DomainId": { + "type": "string" + }, + "SpaceName": { + "type": "string" + }, + "SpaceSettings": { + "$ref": "#/definitions/AWS::SageMaker::Space.SpaceSettings" + }, + "Tags": { + "items": { + "$ref": "#/definitions/Tag" + }, + "type": "array" + } + }, + "required": [ + "DomainId", + "SpaceName" + ], + "type": "object" + }, + "Type": { + "enum": [ + "AWS::SageMaker::Space" + ], + "type": "string" + }, + "UpdateReplacePolicy": { + "enum": [ + "Delete", + "Retain", + "Snapshot" + ], + "type": "string" + } + }, + "required": [ + "Type", + "Properties" + ], + "type": "object" + }, + "AWS::SageMaker::Space.CustomImage": { + "additionalProperties": false, + "properties": { + "AppImageConfigName": { + "type": "string" + }, + "ImageName": { + "type": "string" + }, + "ImageVersionNumber": { + "type": "number" + } + }, + "required": [ + "AppImageConfigName", + "ImageName" + ], + "type": "object" + }, + "AWS::SageMaker::Space.JupyterServerAppSettings": { + "additionalProperties": false, + "properties": { + "DefaultResourceSpec": { + "$ref": "#/definitions/AWS::SageMaker::Space.ResourceSpec" + } + }, + "type": "object" + }, + "AWS::SageMaker::Space.KernelGatewayAppSettings": { + "additionalProperties": false, + "properties": { + "CustomImages": { + "items": { + "$ref": "#/definitions/AWS::SageMaker::Space.CustomImage" + }, + "type": "array" + }, + "DefaultResourceSpec": { + "$ref": "#/definitions/AWS::SageMaker::Space.ResourceSpec" + } + }, + "type": "object" + }, + "AWS::SageMaker::Space.ResourceSpec": { + "additionalProperties": false, + "properties": { + "InstanceType": { + "type": "string" + }, + "SageMakerImageArn": { + "type": "string" + }, + "SageMakerImageVersionArn": { + "type": "string" + } + }, + "type": "object" + }, + "AWS::SageMaker::Space.SpaceSettings": { + "additionalProperties": false, + "properties": { + "JupyterServerAppSettings": { + "$ref": "#/definitions/AWS::SageMaker::Space.JupyterServerAppSettings" + }, + "KernelGatewayAppSettings": { + "$ref": "#/definitions/AWS::SageMaker::Space.KernelGatewayAppSettings" + } + }, + "type": "object" + }, "AWS::SageMaker::UserProfile": { "additionalProperties": false, "properties": { @@ -158509,6 +158744,9 @@ { "$ref": "#/definitions/AWS::NetworkManager::SiteToSiteVpnAttachment" }, + { + "$ref": "#/definitions/AWS::NetworkManager::TransitGatewayPeering" + }, { "$ref": "#/definitions/AWS::NetworkManager::TransitGatewayRegistration" }, @@ -159142,6 +159380,9 @@ { "$ref": "#/definitions/AWS::SageMaker::Project" }, + { + "$ref": "#/definitions/AWS::SageMaker::Space" + }, { "$ref": "#/definitions/AWS::SageMaker::UserProfile" }, diff --git a/schema/cloudformation.go b/schema/cloudformation.go index 13113a61bc..626d1a8723 100644 --- a/schema/cloudformation.go +++ b/schema/cloudformation.go @@ -32782,8 +32782,8 @@ var CloudformationSchema = `{ "OrganizationConfigRuleName": { "type": "string" }, - "OrganizationCustomCodeRuleMetadata": { - "$ref": "#/definitions/AWS::Config::OrganizationConfigRule.OrganizationCustomCodeRuleMetadata" + "OrganizationCustomPolicyRuleMetadata": { + "$ref": "#/definitions/AWS::Config::OrganizationConfigRule.OrganizationCustomPolicyRuleMetadata" }, "OrganizationCustomRuleMetadata": { "$ref": "#/definitions/AWS::Config::OrganizationConfigRule.OrganizationCustomRuleMetadata" @@ -32818,12 +32818,9 @@ var CloudformationSchema = `{ ], "type": "object" }, - "AWS::Config::OrganizationConfigRule.OrganizationCustomCodeRuleMetadata": { + "AWS::Config::OrganizationConfigRule.OrganizationCustomPolicyRuleMetadata": { "additionalProperties": false, "properties": { - "CodeText": { - "type": "string" - }, "DebugLogDeliveryAccounts": { "items": { "type": "string" @@ -32845,6 +32842,9 @@ var CloudformationSchema = `{ }, "type": "array" }, + "PolicyText": { + "type": "string" + }, "ResourceIdScope": { "type": "string" }, @@ -32865,7 +32865,7 @@ var CloudformationSchema = `{ } }, "required": [ - "CodeText", + "PolicyText", "Runtime" ], "type": "object" @@ -39848,9 +39848,6 @@ var CloudformationSchema = `{ "type": "string" } }, - "required": [ - "ActivationKey" - ], "type": "object" }, "Type": { @@ -39869,8 +39866,7 @@ var CloudformationSchema = `{ } }, "required": [ - "Type", - "Properties" + "Type" ], "type": "object" }, @@ -40117,7 +40113,6 @@ var CloudformationSchema = `{ } }, "required": [ - "Protocol", "SecurityGroupArns", "StorageVirtualMachineArn" ], @@ -40267,7 +40262,6 @@ var CloudformationSchema = `{ } }, "required": [ - "FsxFilesystemArn", "Protocol", "SecurityGroupArns" ], @@ -40708,6 +40702,9 @@ var CloudformationSchema = `{ "SecretKey": { "type": "string" }, + "ServerCertificate": { + "type": "string" + }, "ServerHostname": { "type": "string" }, @@ -40808,7 +40805,6 @@ var CloudformationSchema = `{ } }, "required": [ - "S3BucketArn", "S3Config" ], "type": "object" @@ -42392,6 +42388,18 @@ var CloudformationSchema = `{ ], "type": "object" }, + "AWS::DynamoDB::GlobalTable.KinesisStreamSpecification": { + "additionalProperties": false, + "properties": { + "StreamArn": { + "type": "string" + } + }, + "required": [ + "StreamArn" + ], + "type": "object" + }, "AWS::DynamoDB::GlobalTable.LocalSecondaryIndex": { "additionalProperties": false, "properties": { @@ -42493,6 +42501,9 @@ var CloudformationSchema = `{ }, "type": "array" }, + "KinesisStreamSpecification": { + "$ref": "#/definitions/AWS::DynamoDB::GlobalTable.KinesisStreamSpecification" + }, "PointInTimeRecoverySpecification": { "$ref": "#/definitions/AWS::DynamoDB::GlobalTable.PointInTimeRecoverySpecification" }, @@ -47892,6 +47903,15 @@ var CloudformationSchema = `{ }, "Component": { "$ref": "#/definitions/AWS::EC2::NetworkInsightsAnalysis.AnalysisComponent" + }, + "LoadBalancers": { + "items": { + "$ref": "#/definitions/AWS::EC2::NetworkInsightsAnalysis.AnalysisComponent" + }, + "type": "array" + }, + "ServiceName": { + "type": "string" } }, "type": "object" @@ -48292,6 +48312,9 @@ var CloudformationSchema = `{ "SequenceNumber": { "type": "number" }, + "ServiceName": { + "type": "string" + }, "SourceVpc": { "$ref": "#/definitions/AWS::EC2::NetworkInsightsAnalysis.AnalysisComponent" }, @@ -48410,7 +48433,6 @@ var CloudformationSchema = `{ } }, "required": [ - "Destination", "Protocol", "Source" ], @@ -59437,6 +59459,9 @@ var CloudformationSchema = `{ "TransitEncryptionEnabled": { "type": "boolean" }, + "TransitEncryptionMode": { + "type": "string" + }, "UserGroupIds": { "items": { "type": "string" @@ -112845,6 +112870,81 @@ var CloudformationSchema = `{ }, "type": "object" }, + "AWS::NetworkManager::TransitGatewayPeering": { + "additionalProperties": false, + "properties": { + "Condition": { + "type": "string" + }, + "DeletionPolicy": { + "enum": [ + "Delete", + "Retain", + "Snapshot" + ], + "type": "string" + }, + "DependsOn": { + "anyOf": [ + { + "pattern": "^[a-zA-Z0-9]+$", + "type": "string" + }, + { + "items": { + "pattern": "^[a-zA-Z0-9]+$", + "type": "string" + }, + "type": "array" + } + ] + }, + "Metadata": { + "type": "object" + }, + "Properties": { + "additionalProperties": false, + "properties": { + "CoreNetworkId": { + "type": "string" + }, + "Tags": { + "items": { + "$ref": "#/definitions/Tag" + }, + "type": "array" + }, + "TransitGatewayArn": { + "type": "string" + } + }, + "required": [ + "CoreNetworkId", + "TransitGatewayArn" + ], + "type": "object" + }, + "Type": { + "enum": [ + "AWS::NetworkManager::TransitGatewayPeering" + ], + "type": "string" + }, + "UpdateReplacePolicy": { + "enum": [ + "Delete", + "Retain", + "Snapshot" + ], + "type": "string" + } + }, + "required": [ + "Type", + "Properties" + ], + "type": "object" + }, "AWS::NetworkManager::TransitGatewayRegistration": { "additionalProperties": false, "properties": { @@ -113730,7 +113830,6 @@ var CloudformationSchema = `{ } }, "required": [ - "LabelTemplate", "ResourceTypes", "SinkIdentifier" ], @@ -126978,20 +127077,11 @@ var CloudformationSchema = `{ "SubnetGroupName": { "type": "string" }, - "VpcEndpoint": { - "$ref": "#/definitions/AWS::Redshift::EndpointAccess.VpcEndpoint" - }, "VpcSecurityGroupIds": { "items": { "type": "string" }, "type": "array" - }, - "VpcSecurityGroups": { - "items": { - "$ref": "#/definitions/AWS::Redshift::EndpointAccess.VpcSecurityGroup" - }, - "type": "array" } }, "required": [ @@ -127461,9 +127551,6 @@ var CloudformationSchema = `{ }, "type": "array" }, - "Namespace": { - "$ref": "#/definitions/AWS::RedshiftServerless::Namespace.Namespace" - }, "NamespaceName": { "type": "string" }, @@ -127595,6 +127682,9 @@ var CloudformationSchema = `{ "NamespaceName": { "type": "string" }, + "Port": { + "type": "number" + }, "PubliclyAccessible": { "type": "boolean" }, @@ -127616,9 +127706,6 @@ var CloudformationSchema = `{ }, "type": "array" }, - "Workgroup": { - "$ref": "#/definitions/AWS::RedshiftServerless::Workgroup.Workgroup" - }, "WorkgroupName": { "type": "string" } @@ -132422,13 +132509,13 @@ var CloudformationSchema = `{ "Ip": { "type": "string" }, + "Ipv6": { + "type": "string" + }, "Port": { "type": "string" } }, - "required": [ - "Ip" - ], "type": "object" }, "AWS::Route53Resolver::ResolverRuleAssociation": { @@ -144793,6 +144880,154 @@ var CloudformationSchema = `{ ], "type": "object" }, + "AWS::SageMaker::Space": { + "additionalProperties": false, + "properties": { + "Condition": { + "type": "string" + }, + "DeletionPolicy": { + "enum": [ + "Delete", + "Retain", + "Snapshot" + ], + "type": "string" + }, + "DependsOn": { + "anyOf": [ + { + "pattern": "^[a-zA-Z0-9]+$", + "type": "string" + }, + { + "items": { + "pattern": "^[a-zA-Z0-9]+$", + "type": "string" + }, + "type": "array" + } + ] + }, + "Metadata": { + "type": "object" + }, + "Properties": { + "additionalProperties": false, + "properties": { + "DomainId": { + "type": "string" + }, + "SpaceName": { + "type": "string" + }, + "SpaceSettings": { + "$ref": "#/definitions/AWS::SageMaker::Space.SpaceSettings" + }, + "Tags": { + "items": { + "$ref": "#/definitions/Tag" + }, + "type": "array" + } + }, + "required": [ + "DomainId", + "SpaceName" + ], + "type": "object" + }, + "Type": { + "enum": [ + "AWS::SageMaker::Space" + ], + "type": "string" + }, + "UpdateReplacePolicy": { + "enum": [ + "Delete", + "Retain", + "Snapshot" + ], + "type": "string" + } + }, + "required": [ + "Type", + "Properties" + ], + "type": "object" + }, + "AWS::SageMaker::Space.CustomImage": { + "additionalProperties": false, + "properties": { + "AppImageConfigName": { + "type": "string" + }, + "ImageName": { + "type": "string" + }, + "ImageVersionNumber": { + "type": "number" + } + }, + "required": [ + "AppImageConfigName", + "ImageName" + ], + "type": "object" + }, + "AWS::SageMaker::Space.JupyterServerAppSettings": { + "additionalProperties": false, + "properties": { + "DefaultResourceSpec": { + "$ref": "#/definitions/AWS::SageMaker::Space.ResourceSpec" + } + }, + "type": "object" + }, + "AWS::SageMaker::Space.KernelGatewayAppSettings": { + "additionalProperties": false, + "properties": { + "CustomImages": { + "items": { + "$ref": "#/definitions/AWS::SageMaker::Space.CustomImage" + }, + "type": "array" + }, + "DefaultResourceSpec": { + "$ref": "#/definitions/AWS::SageMaker::Space.ResourceSpec" + } + }, + "type": "object" + }, + "AWS::SageMaker::Space.ResourceSpec": { + "additionalProperties": false, + "properties": { + "InstanceType": { + "type": "string" + }, + "SageMakerImageArn": { + "type": "string" + }, + "SageMakerImageVersionArn": { + "type": "string" + } + }, + "type": "object" + }, + "AWS::SageMaker::Space.SpaceSettings": { + "additionalProperties": false, + "properties": { + "JupyterServerAppSettings": { + "$ref": "#/definitions/AWS::SageMaker::Space.JupyterServerAppSettings" + }, + "KernelGatewayAppSettings": { + "$ref": "#/definitions/AWS::SageMaker::Space.KernelGatewayAppSettings" + } + }, + "type": "object" + }, "AWS::SageMaker::UserProfile": { "additionalProperties": false, "properties": { @@ -158450,6 +158685,9 @@ var CloudformationSchema = `{ { "$ref": "#/definitions/AWS::NetworkManager::SiteToSiteVpnAttachment" }, + { + "$ref": "#/definitions/AWS::NetworkManager::TransitGatewayPeering" + }, { "$ref": "#/definitions/AWS::NetworkManager::TransitGatewayRegistration" }, @@ -159083,6 +159321,9 @@ var CloudformationSchema = `{ { "$ref": "#/definitions/AWS::SageMaker::Project" }, + { + "$ref": "#/definitions/AWS::SageMaker::Space" + }, { "$ref": "#/definitions/AWS::SageMaker::UserProfile" }, diff --git a/schema/cloudformation.schema.json b/schema/cloudformation.schema.json index bfe627b82e..181a5c0ce1 100644 --- a/schema/cloudformation.schema.json +++ b/schema/cloudformation.schema.json @@ -32777,8 +32777,8 @@ "OrganizationConfigRuleName": { "type": "string" }, - "OrganizationCustomCodeRuleMetadata": { - "$ref": "#/definitions/AWS::Config::OrganizationConfigRule.OrganizationCustomCodeRuleMetadata" + "OrganizationCustomPolicyRuleMetadata": { + "$ref": "#/definitions/AWS::Config::OrganizationConfigRule.OrganizationCustomPolicyRuleMetadata" }, "OrganizationCustomRuleMetadata": { "$ref": "#/definitions/AWS::Config::OrganizationConfigRule.OrganizationCustomRuleMetadata" @@ -32813,12 +32813,9 @@ ], "type": "object" }, - "AWS::Config::OrganizationConfigRule.OrganizationCustomCodeRuleMetadata": { + "AWS::Config::OrganizationConfigRule.OrganizationCustomPolicyRuleMetadata": { "additionalProperties": false, "properties": { - "CodeText": { - "type": "string" - }, "DebugLogDeliveryAccounts": { "items": { "type": "string" @@ -32840,6 +32837,9 @@ }, "type": "array" }, + "PolicyText": { + "type": "string" + }, "ResourceIdScope": { "type": "string" }, @@ -32860,7 +32860,7 @@ } }, "required": [ - "CodeText", + "PolicyText", "Runtime" ], "type": "object" @@ -39843,9 +39843,6 @@ "type": "string" } }, - "required": [ - "ActivationKey" - ], "type": "object" }, "Type": { @@ -39864,8 +39861,7 @@ } }, "required": [ - "Type", - "Properties" + "Type" ], "type": "object" }, @@ -40112,7 +40108,6 @@ } }, "required": [ - "Protocol", "SecurityGroupArns", "StorageVirtualMachineArn" ], @@ -40262,7 +40257,6 @@ } }, "required": [ - "FsxFilesystemArn", "Protocol", "SecurityGroupArns" ], @@ -40703,6 +40697,9 @@ "SecretKey": { "type": "string" }, + "ServerCertificate": { + "type": "string" + }, "ServerHostname": { "type": "string" }, @@ -40803,7 +40800,6 @@ } }, "required": [ - "S3BucketArn", "S3Config" ], "type": "object" @@ -42387,6 +42383,18 @@ ], "type": "object" }, + "AWS::DynamoDB::GlobalTable.KinesisStreamSpecification": { + "additionalProperties": false, + "properties": { + "StreamArn": { + "type": "string" + } + }, + "required": [ + "StreamArn" + ], + "type": "object" + }, "AWS::DynamoDB::GlobalTable.LocalSecondaryIndex": { "additionalProperties": false, "properties": { @@ -42488,6 +42496,9 @@ }, "type": "array" }, + "KinesisStreamSpecification": { + "$ref": "#/definitions/AWS::DynamoDB::GlobalTable.KinesisStreamSpecification" + }, "PointInTimeRecoverySpecification": { "$ref": "#/definitions/AWS::DynamoDB::GlobalTable.PointInTimeRecoverySpecification" }, @@ -47887,6 +47898,15 @@ }, "Component": { "$ref": "#/definitions/AWS::EC2::NetworkInsightsAnalysis.AnalysisComponent" + }, + "LoadBalancers": { + "items": { + "$ref": "#/definitions/AWS::EC2::NetworkInsightsAnalysis.AnalysisComponent" + }, + "type": "array" + }, + "ServiceName": { + "type": "string" } }, "type": "object" @@ -48287,6 +48307,9 @@ "SequenceNumber": { "type": "number" }, + "ServiceName": { + "type": "string" + }, "SourceVpc": { "$ref": "#/definitions/AWS::EC2::NetworkInsightsAnalysis.AnalysisComponent" }, @@ -48405,7 +48428,6 @@ } }, "required": [ - "Destination", "Protocol", "Source" ], @@ -59432,6 +59454,9 @@ "TransitEncryptionEnabled": { "type": "boolean" }, + "TransitEncryptionMode": { + "type": "string" + }, "UserGroupIds": { "items": { "type": "string" @@ -112840,6 +112865,81 @@ }, "type": "object" }, + "AWS::NetworkManager::TransitGatewayPeering": { + "additionalProperties": false, + "properties": { + "Condition": { + "type": "string" + }, + "DeletionPolicy": { + "enum": [ + "Delete", + "Retain", + "Snapshot" + ], + "type": "string" + }, + "DependsOn": { + "anyOf": [ + { + "pattern": "^[a-zA-Z0-9]+$", + "type": "string" + }, + { + "items": { + "pattern": "^[a-zA-Z0-9]+$", + "type": "string" + }, + "type": "array" + } + ] + }, + "Metadata": { + "type": "object" + }, + "Properties": { + "additionalProperties": false, + "properties": { + "CoreNetworkId": { + "type": "string" + }, + "Tags": { + "items": { + "$ref": "#/definitions/Tag" + }, + "type": "array" + }, + "TransitGatewayArn": { + "type": "string" + } + }, + "required": [ + "CoreNetworkId", + "TransitGatewayArn" + ], + "type": "object" + }, + "Type": { + "enum": [ + "AWS::NetworkManager::TransitGatewayPeering" + ], + "type": "string" + }, + "UpdateReplacePolicy": { + "enum": [ + "Delete", + "Retain", + "Snapshot" + ], + "type": "string" + } + }, + "required": [ + "Type", + "Properties" + ], + "type": "object" + }, "AWS::NetworkManager::TransitGatewayRegistration": { "additionalProperties": false, "properties": { @@ -113725,7 +113825,6 @@ } }, "required": [ - "LabelTemplate", "ResourceTypes", "SinkIdentifier" ], @@ -126973,20 +127072,11 @@ "SubnetGroupName": { "type": "string" }, - "VpcEndpoint": { - "$ref": "#/definitions/AWS::Redshift::EndpointAccess.VpcEndpoint" - }, "VpcSecurityGroupIds": { "items": { "type": "string" }, "type": "array" - }, - "VpcSecurityGroups": { - "items": { - "$ref": "#/definitions/AWS::Redshift::EndpointAccess.VpcSecurityGroup" - }, - "type": "array" } }, "required": [ @@ -127456,9 +127546,6 @@ }, "type": "array" }, - "Namespace": { - "$ref": "#/definitions/AWS::RedshiftServerless::Namespace.Namespace" - }, "NamespaceName": { "type": "string" }, @@ -127590,6 +127677,9 @@ "NamespaceName": { "type": "string" }, + "Port": { + "type": "number" + }, "PubliclyAccessible": { "type": "boolean" }, @@ -127611,9 +127701,6 @@ }, "type": "array" }, - "Workgroup": { - "$ref": "#/definitions/AWS::RedshiftServerless::Workgroup.Workgroup" - }, "WorkgroupName": { "type": "string" } @@ -132417,13 +132504,13 @@ "Ip": { "type": "string" }, + "Ipv6": { + "type": "string" + }, "Port": { "type": "string" } }, - "required": [ - "Ip" - ], "type": "object" }, "AWS::Route53Resolver::ResolverRuleAssociation": { @@ -144788,6 +144875,154 @@ ], "type": "object" }, + "AWS::SageMaker::Space": { + "additionalProperties": false, + "properties": { + "Condition": { + "type": "string" + }, + "DeletionPolicy": { + "enum": [ + "Delete", + "Retain", + "Snapshot" + ], + "type": "string" + }, + "DependsOn": { + "anyOf": [ + { + "pattern": "^[a-zA-Z0-9]+$", + "type": "string" + }, + { + "items": { + "pattern": "^[a-zA-Z0-9]+$", + "type": "string" + }, + "type": "array" + } + ] + }, + "Metadata": { + "type": "object" + }, + "Properties": { + "additionalProperties": false, + "properties": { + "DomainId": { + "type": "string" + }, + "SpaceName": { + "type": "string" + }, + "SpaceSettings": { + "$ref": "#/definitions/AWS::SageMaker::Space.SpaceSettings" + }, + "Tags": { + "items": { + "$ref": "#/definitions/Tag" + }, + "type": "array" + } + }, + "required": [ + "DomainId", + "SpaceName" + ], + "type": "object" + }, + "Type": { + "enum": [ + "AWS::SageMaker::Space" + ], + "type": "string" + }, + "UpdateReplacePolicy": { + "enum": [ + "Delete", + "Retain", + "Snapshot" + ], + "type": "string" + } + }, + "required": [ + "Type", + "Properties" + ], + "type": "object" + }, + "AWS::SageMaker::Space.CustomImage": { + "additionalProperties": false, + "properties": { + "AppImageConfigName": { + "type": "string" + }, + "ImageName": { + "type": "string" + }, + "ImageVersionNumber": { + "type": "number" + } + }, + "required": [ + "AppImageConfigName", + "ImageName" + ], + "type": "object" + }, + "AWS::SageMaker::Space.JupyterServerAppSettings": { + "additionalProperties": false, + "properties": { + "DefaultResourceSpec": { + "$ref": "#/definitions/AWS::SageMaker::Space.ResourceSpec" + } + }, + "type": "object" + }, + "AWS::SageMaker::Space.KernelGatewayAppSettings": { + "additionalProperties": false, + "properties": { + "CustomImages": { + "items": { + "$ref": "#/definitions/AWS::SageMaker::Space.CustomImage" + }, + "type": "array" + }, + "DefaultResourceSpec": { + "$ref": "#/definitions/AWS::SageMaker::Space.ResourceSpec" + } + }, + "type": "object" + }, + "AWS::SageMaker::Space.ResourceSpec": { + "additionalProperties": false, + "properties": { + "InstanceType": { + "type": "string" + }, + "SageMakerImageArn": { + "type": "string" + }, + "SageMakerImageVersionArn": { + "type": "string" + } + }, + "type": "object" + }, + "AWS::SageMaker::Space.SpaceSettings": { + "additionalProperties": false, + "properties": { + "JupyterServerAppSettings": { + "$ref": "#/definitions/AWS::SageMaker::Space.JupyterServerAppSettings" + }, + "KernelGatewayAppSettings": { + "$ref": "#/definitions/AWS::SageMaker::Space.KernelGatewayAppSettings" + } + }, + "type": "object" + }, "AWS::SageMaker::UserProfile": { "additionalProperties": false, "properties": { @@ -158445,6 +158680,9 @@ { "$ref": "#/definitions/AWS::NetworkManager::SiteToSiteVpnAttachment" }, + { + "$ref": "#/definitions/AWS::NetworkManager::TransitGatewayPeering" + }, { "$ref": "#/definitions/AWS::NetworkManager::TransitGatewayRegistration" }, @@ -159078,6 +159316,9 @@ { "$ref": "#/definitions/AWS::SageMaker::Project" }, + { + "$ref": "#/definitions/AWS::SageMaker::Space" + }, { "$ref": "#/definitions/AWS::SageMaker::UserProfile" }, diff --git a/schema/sam.go b/schema/sam.go index 0236eb9d14..ef97fbb48d 100644 --- a/schema/sam.go +++ b/schema/sam.go @@ -32782,8 +32782,8 @@ var SamSchema = `{ "OrganizationConfigRuleName": { "type": "string" }, - "OrganizationCustomCodeRuleMetadata": { - "$ref": "#/definitions/AWS::Config::OrganizationConfigRule.OrganizationCustomCodeRuleMetadata" + "OrganizationCustomPolicyRuleMetadata": { + "$ref": "#/definitions/AWS::Config::OrganizationConfigRule.OrganizationCustomPolicyRuleMetadata" }, "OrganizationCustomRuleMetadata": { "$ref": "#/definitions/AWS::Config::OrganizationConfigRule.OrganizationCustomRuleMetadata" @@ -32818,12 +32818,9 @@ var SamSchema = `{ ], "type": "object" }, - "AWS::Config::OrganizationConfigRule.OrganizationCustomCodeRuleMetadata": { + "AWS::Config::OrganizationConfigRule.OrganizationCustomPolicyRuleMetadata": { "additionalProperties": false, "properties": { - "CodeText": { - "type": "string" - }, "DebugLogDeliveryAccounts": { "items": { "type": "string" @@ -32845,6 +32842,9 @@ var SamSchema = `{ }, "type": "array" }, + "PolicyText": { + "type": "string" + }, "ResourceIdScope": { "type": "string" }, @@ -32865,7 +32865,7 @@ var SamSchema = `{ } }, "required": [ - "CodeText", + "PolicyText", "Runtime" ], "type": "object" @@ -39848,9 +39848,6 @@ var SamSchema = `{ "type": "string" } }, - "required": [ - "ActivationKey" - ], "type": "object" }, "Type": { @@ -39869,8 +39866,7 @@ var SamSchema = `{ } }, "required": [ - "Type", - "Properties" + "Type" ], "type": "object" }, @@ -40117,7 +40113,6 @@ var SamSchema = `{ } }, "required": [ - "Protocol", "SecurityGroupArns", "StorageVirtualMachineArn" ], @@ -40267,7 +40262,6 @@ var SamSchema = `{ } }, "required": [ - "FsxFilesystemArn", "Protocol", "SecurityGroupArns" ], @@ -40708,6 +40702,9 @@ var SamSchema = `{ "SecretKey": { "type": "string" }, + "ServerCertificate": { + "type": "string" + }, "ServerHostname": { "type": "string" }, @@ -40808,7 +40805,6 @@ var SamSchema = `{ } }, "required": [ - "S3BucketArn", "S3Config" ], "type": "object" @@ -42392,6 +42388,18 @@ var SamSchema = `{ ], "type": "object" }, + "AWS::DynamoDB::GlobalTable.KinesisStreamSpecification": { + "additionalProperties": false, + "properties": { + "StreamArn": { + "type": "string" + } + }, + "required": [ + "StreamArn" + ], + "type": "object" + }, "AWS::DynamoDB::GlobalTable.LocalSecondaryIndex": { "additionalProperties": false, "properties": { @@ -42493,6 +42501,9 @@ var SamSchema = `{ }, "type": "array" }, + "KinesisStreamSpecification": { + "$ref": "#/definitions/AWS::DynamoDB::GlobalTable.KinesisStreamSpecification" + }, "PointInTimeRecoverySpecification": { "$ref": "#/definitions/AWS::DynamoDB::GlobalTable.PointInTimeRecoverySpecification" }, @@ -47892,6 +47903,15 @@ var SamSchema = `{ }, "Component": { "$ref": "#/definitions/AWS::EC2::NetworkInsightsAnalysis.AnalysisComponent" + }, + "LoadBalancers": { + "items": { + "$ref": "#/definitions/AWS::EC2::NetworkInsightsAnalysis.AnalysisComponent" + }, + "type": "array" + }, + "ServiceName": { + "type": "string" } }, "type": "object" @@ -48292,6 +48312,9 @@ var SamSchema = `{ "SequenceNumber": { "type": "number" }, + "ServiceName": { + "type": "string" + }, "SourceVpc": { "$ref": "#/definitions/AWS::EC2::NetworkInsightsAnalysis.AnalysisComponent" }, @@ -48410,7 +48433,6 @@ var SamSchema = `{ } }, "required": [ - "Destination", "Protocol", "Source" ], @@ -59437,6 +59459,9 @@ var SamSchema = `{ "TransitEncryptionEnabled": { "type": "boolean" }, + "TransitEncryptionMode": { + "type": "string" + }, "UserGroupIds": { "items": { "type": "string" @@ -112845,6 +112870,81 @@ var SamSchema = `{ }, "type": "object" }, + "AWS::NetworkManager::TransitGatewayPeering": { + "additionalProperties": false, + "properties": { + "Condition": { + "type": "string" + }, + "DeletionPolicy": { + "enum": [ + "Delete", + "Retain", + "Snapshot" + ], + "type": "string" + }, + "DependsOn": { + "anyOf": [ + { + "pattern": "^[a-zA-Z0-9]+$", + "type": "string" + }, + { + "items": { + "pattern": "^[a-zA-Z0-9]+$", + "type": "string" + }, + "type": "array" + } + ] + }, + "Metadata": { + "type": "object" + }, + "Properties": { + "additionalProperties": false, + "properties": { + "CoreNetworkId": { + "type": "string" + }, + "Tags": { + "items": { + "$ref": "#/definitions/Tag" + }, + "type": "array" + }, + "TransitGatewayArn": { + "type": "string" + } + }, + "required": [ + "CoreNetworkId", + "TransitGatewayArn" + ], + "type": "object" + }, + "Type": { + "enum": [ + "AWS::NetworkManager::TransitGatewayPeering" + ], + "type": "string" + }, + "UpdateReplacePolicy": { + "enum": [ + "Delete", + "Retain", + "Snapshot" + ], + "type": "string" + } + }, + "required": [ + "Type", + "Properties" + ], + "type": "object" + }, "AWS::NetworkManager::TransitGatewayRegistration": { "additionalProperties": false, "properties": { @@ -113730,7 +113830,6 @@ var SamSchema = `{ } }, "required": [ - "LabelTemplate", "ResourceTypes", "SinkIdentifier" ], @@ -126978,20 +127077,11 @@ var SamSchema = `{ "SubnetGroupName": { "type": "string" }, - "VpcEndpoint": { - "$ref": "#/definitions/AWS::Redshift::EndpointAccess.VpcEndpoint" - }, "VpcSecurityGroupIds": { "items": { "type": "string" }, "type": "array" - }, - "VpcSecurityGroups": { - "items": { - "$ref": "#/definitions/AWS::Redshift::EndpointAccess.VpcSecurityGroup" - }, - "type": "array" } }, "required": [ @@ -127461,9 +127551,6 @@ var SamSchema = `{ }, "type": "array" }, - "Namespace": { - "$ref": "#/definitions/AWS::RedshiftServerless::Namespace.Namespace" - }, "NamespaceName": { "type": "string" }, @@ -127595,6 +127682,9 @@ var SamSchema = `{ "NamespaceName": { "type": "string" }, + "Port": { + "type": "number" + }, "PubliclyAccessible": { "type": "boolean" }, @@ -127616,9 +127706,6 @@ var SamSchema = `{ }, "type": "array" }, - "Workgroup": { - "$ref": "#/definitions/AWS::RedshiftServerless::Workgroup.Workgroup" - }, "WorkgroupName": { "type": "string" } @@ -132422,13 +132509,13 @@ var SamSchema = `{ "Ip": { "type": "string" }, + "Ipv6": { + "type": "string" + }, "Port": { "type": "string" } }, - "required": [ - "Ip" - ], "type": "object" }, "AWS::Route53Resolver::ResolverRuleAssociation": { @@ -144793,6 +144880,154 @@ var SamSchema = `{ ], "type": "object" }, + "AWS::SageMaker::Space": { + "additionalProperties": false, + "properties": { + "Condition": { + "type": "string" + }, + "DeletionPolicy": { + "enum": [ + "Delete", + "Retain", + "Snapshot" + ], + "type": "string" + }, + "DependsOn": { + "anyOf": [ + { + "pattern": "^[a-zA-Z0-9]+$", + "type": "string" + }, + { + "items": { + "pattern": "^[a-zA-Z0-9]+$", + "type": "string" + }, + "type": "array" + } + ] + }, + "Metadata": { + "type": "object" + }, + "Properties": { + "additionalProperties": false, + "properties": { + "DomainId": { + "type": "string" + }, + "SpaceName": { + "type": "string" + }, + "SpaceSettings": { + "$ref": "#/definitions/AWS::SageMaker::Space.SpaceSettings" + }, + "Tags": { + "items": { + "$ref": "#/definitions/Tag" + }, + "type": "array" + } + }, + "required": [ + "DomainId", + "SpaceName" + ], + "type": "object" + }, + "Type": { + "enum": [ + "AWS::SageMaker::Space" + ], + "type": "string" + }, + "UpdateReplacePolicy": { + "enum": [ + "Delete", + "Retain", + "Snapshot" + ], + "type": "string" + } + }, + "required": [ + "Type", + "Properties" + ], + "type": "object" + }, + "AWS::SageMaker::Space.CustomImage": { + "additionalProperties": false, + "properties": { + "AppImageConfigName": { + "type": "string" + }, + "ImageName": { + "type": "string" + }, + "ImageVersionNumber": { + "type": "number" + } + }, + "required": [ + "AppImageConfigName", + "ImageName" + ], + "type": "object" + }, + "AWS::SageMaker::Space.JupyterServerAppSettings": { + "additionalProperties": false, + "properties": { + "DefaultResourceSpec": { + "$ref": "#/definitions/AWS::SageMaker::Space.ResourceSpec" + } + }, + "type": "object" + }, + "AWS::SageMaker::Space.KernelGatewayAppSettings": { + "additionalProperties": false, + "properties": { + "CustomImages": { + "items": { + "$ref": "#/definitions/AWS::SageMaker::Space.CustomImage" + }, + "type": "array" + }, + "DefaultResourceSpec": { + "$ref": "#/definitions/AWS::SageMaker::Space.ResourceSpec" + } + }, + "type": "object" + }, + "AWS::SageMaker::Space.ResourceSpec": { + "additionalProperties": false, + "properties": { + "InstanceType": { + "type": "string" + }, + "SageMakerImageArn": { + "type": "string" + }, + "SageMakerImageVersionArn": { + "type": "string" + } + }, + "type": "object" + }, + "AWS::SageMaker::Space.SpaceSettings": { + "additionalProperties": false, + "properties": { + "JupyterServerAppSettings": { + "$ref": "#/definitions/AWS::SageMaker::Space.JupyterServerAppSettings" + }, + "KernelGatewayAppSettings": { + "$ref": "#/definitions/AWS::SageMaker::Space.KernelGatewayAppSettings" + } + }, + "type": "object" + }, "AWS::SageMaker::UserProfile": { "additionalProperties": false, "properties": { @@ -161426,6 +161661,9 @@ var SamSchema = `{ { "$ref": "#/definitions/AWS::NetworkManager::SiteToSiteVpnAttachment" }, + { + "$ref": "#/definitions/AWS::NetworkManager::TransitGatewayPeering" + }, { "$ref": "#/definitions/AWS::NetworkManager::TransitGatewayRegistration" }, @@ -162059,6 +162297,9 @@ var SamSchema = `{ { "$ref": "#/definitions/AWS::SageMaker::Project" }, + { + "$ref": "#/definitions/AWS::SageMaker::Space" + }, { "$ref": "#/definitions/AWS::SageMaker::UserProfile" }, diff --git a/schema/sam.schema.json b/schema/sam.schema.json index 49e6a3881c..299f6c5506 100644 --- a/schema/sam.schema.json +++ b/schema/sam.schema.json @@ -32777,8 +32777,8 @@ "OrganizationConfigRuleName": { "type": "string" }, - "OrganizationCustomCodeRuleMetadata": { - "$ref": "#/definitions/AWS::Config::OrganizationConfigRule.OrganizationCustomCodeRuleMetadata" + "OrganizationCustomPolicyRuleMetadata": { + "$ref": "#/definitions/AWS::Config::OrganizationConfigRule.OrganizationCustomPolicyRuleMetadata" }, "OrganizationCustomRuleMetadata": { "$ref": "#/definitions/AWS::Config::OrganizationConfigRule.OrganizationCustomRuleMetadata" @@ -32813,12 +32813,9 @@ ], "type": "object" }, - "AWS::Config::OrganizationConfigRule.OrganizationCustomCodeRuleMetadata": { + "AWS::Config::OrganizationConfigRule.OrganizationCustomPolicyRuleMetadata": { "additionalProperties": false, "properties": { - "CodeText": { - "type": "string" - }, "DebugLogDeliveryAccounts": { "items": { "type": "string" @@ -32840,6 +32837,9 @@ }, "type": "array" }, + "PolicyText": { + "type": "string" + }, "ResourceIdScope": { "type": "string" }, @@ -32860,7 +32860,7 @@ } }, "required": [ - "CodeText", + "PolicyText", "Runtime" ], "type": "object" @@ -39843,9 +39843,6 @@ "type": "string" } }, - "required": [ - "ActivationKey" - ], "type": "object" }, "Type": { @@ -39864,8 +39861,7 @@ } }, "required": [ - "Type", - "Properties" + "Type" ], "type": "object" }, @@ -40112,7 +40108,6 @@ } }, "required": [ - "Protocol", "SecurityGroupArns", "StorageVirtualMachineArn" ], @@ -40262,7 +40257,6 @@ } }, "required": [ - "FsxFilesystemArn", "Protocol", "SecurityGroupArns" ], @@ -40703,6 +40697,9 @@ "SecretKey": { "type": "string" }, + "ServerCertificate": { + "type": "string" + }, "ServerHostname": { "type": "string" }, @@ -40803,7 +40800,6 @@ } }, "required": [ - "S3BucketArn", "S3Config" ], "type": "object" @@ -42387,6 +42383,18 @@ ], "type": "object" }, + "AWS::DynamoDB::GlobalTable.KinesisStreamSpecification": { + "additionalProperties": false, + "properties": { + "StreamArn": { + "type": "string" + } + }, + "required": [ + "StreamArn" + ], + "type": "object" + }, "AWS::DynamoDB::GlobalTable.LocalSecondaryIndex": { "additionalProperties": false, "properties": { @@ -42488,6 +42496,9 @@ }, "type": "array" }, + "KinesisStreamSpecification": { + "$ref": "#/definitions/AWS::DynamoDB::GlobalTable.KinesisStreamSpecification" + }, "PointInTimeRecoverySpecification": { "$ref": "#/definitions/AWS::DynamoDB::GlobalTable.PointInTimeRecoverySpecification" }, @@ -47887,6 +47898,15 @@ }, "Component": { "$ref": "#/definitions/AWS::EC2::NetworkInsightsAnalysis.AnalysisComponent" + }, + "LoadBalancers": { + "items": { + "$ref": "#/definitions/AWS::EC2::NetworkInsightsAnalysis.AnalysisComponent" + }, + "type": "array" + }, + "ServiceName": { + "type": "string" } }, "type": "object" @@ -48287,6 +48307,9 @@ "SequenceNumber": { "type": "number" }, + "ServiceName": { + "type": "string" + }, "SourceVpc": { "$ref": "#/definitions/AWS::EC2::NetworkInsightsAnalysis.AnalysisComponent" }, @@ -48405,7 +48428,6 @@ } }, "required": [ - "Destination", "Protocol", "Source" ], @@ -59432,6 +59454,9 @@ "TransitEncryptionEnabled": { "type": "boolean" }, + "TransitEncryptionMode": { + "type": "string" + }, "UserGroupIds": { "items": { "type": "string" @@ -112840,6 +112865,81 @@ }, "type": "object" }, + "AWS::NetworkManager::TransitGatewayPeering": { + "additionalProperties": false, + "properties": { + "Condition": { + "type": "string" + }, + "DeletionPolicy": { + "enum": [ + "Delete", + "Retain", + "Snapshot" + ], + "type": "string" + }, + "DependsOn": { + "anyOf": [ + { + "pattern": "^[a-zA-Z0-9]+$", + "type": "string" + }, + { + "items": { + "pattern": "^[a-zA-Z0-9]+$", + "type": "string" + }, + "type": "array" + } + ] + }, + "Metadata": { + "type": "object" + }, + "Properties": { + "additionalProperties": false, + "properties": { + "CoreNetworkId": { + "type": "string" + }, + "Tags": { + "items": { + "$ref": "#/definitions/Tag" + }, + "type": "array" + }, + "TransitGatewayArn": { + "type": "string" + } + }, + "required": [ + "CoreNetworkId", + "TransitGatewayArn" + ], + "type": "object" + }, + "Type": { + "enum": [ + "AWS::NetworkManager::TransitGatewayPeering" + ], + "type": "string" + }, + "UpdateReplacePolicy": { + "enum": [ + "Delete", + "Retain", + "Snapshot" + ], + "type": "string" + } + }, + "required": [ + "Type", + "Properties" + ], + "type": "object" + }, "AWS::NetworkManager::TransitGatewayRegistration": { "additionalProperties": false, "properties": { @@ -113725,7 +113825,6 @@ } }, "required": [ - "LabelTemplate", "ResourceTypes", "SinkIdentifier" ], @@ -126973,20 +127072,11 @@ "SubnetGroupName": { "type": "string" }, - "VpcEndpoint": { - "$ref": "#/definitions/AWS::Redshift::EndpointAccess.VpcEndpoint" - }, "VpcSecurityGroupIds": { "items": { "type": "string" }, "type": "array" - }, - "VpcSecurityGroups": { - "items": { - "$ref": "#/definitions/AWS::Redshift::EndpointAccess.VpcSecurityGroup" - }, - "type": "array" } }, "required": [ @@ -127456,9 +127546,6 @@ }, "type": "array" }, - "Namespace": { - "$ref": "#/definitions/AWS::RedshiftServerless::Namespace.Namespace" - }, "NamespaceName": { "type": "string" }, @@ -127590,6 +127677,9 @@ "NamespaceName": { "type": "string" }, + "Port": { + "type": "number" + }, "PubliclyAccessible": { "type": "boolean" }, @@ -127611,9 +127701,6 @@ }, "type": "array" }, - "Workgroup": { - "$ref": "#/definitions/AWS::RedshiftServerless::Workgroup.Workgroup" - }, "WorkgroupName": { "type": "string" } @@ -132417,13 +132504,13 @@ "Ip": { "type": "string" }, + "Ipv6": { + "type": "string" + }, "Port": { "type": "string" } }, - "required": [ - "Ip" - ], "type": "object" }, "AWS::Route53Resolver::ResolverRuleAssociation": { @@ -144788,6 +144875,154 @@ ], "type": "object" }, + "AWS::SageMaker::Space": { + "additionalProperties": false, + "properties": { + "Condition": { + "type": "string" + }, + "DeletionPolicy": { + "enum": [ + "Delete", + "Retain", + "Snapshot" + ], + "type": "string" + }, + "DependsOn": { + "anyOf": [ + { + "pattern": "^[a-zA-Z0-9]+$", + "type": "string" + }, + { + "items": { + "pattern": "^[a-zA-Z0-9]+$", + "type": "string" + }, + "type": "array" + } + ] + }, + "Metadata": { + "type": "object" + }, + "Properties": { + "additionalProperties": false, + "properties": { + "DomainId": { + "type": "string" + }, + "SpaceName": { + "type": "string" + }, + "SpaceSettings": { + "$ref": "#/definitions/AWS::SageMaker::Space.SpaceSettings" + }, + "Tags": { + "items": { + "$ref": "#/definitions/Tag" + }, + "type": "array" + } + }, + "required": [ + "DomainId", + "SpaceName" + ], + "type": "object" + }, + "Type": { + "enum": [ + "AWS::SageMaker::Space" + ], + "type": "string" + }, + "UpdateReplacePolicy": { + "enum": [ + "Delete", + "Retain", + "Snapshot" + ], + "type": "string" + } + }, + "required": [ + "Type", + "Properties" + ], + "type": "object" + }, + "AWS::SageMaker::Space.CustomImage": { + "additionalProperties": false, + "properties": { + "AppImageConfigName": { + "type": "string" + }, + "ImageName": { + "type": "string" + }, + "ImageVersionNumber": { + "type": "number" + } + }, + "required": [ + "AppImageConfigName", + "ImageName" + ], + "type": "object" + }, + "AWS::SageMaker::Space.JupyterServerAppSettings": { + "additionalProperties": false, + "properties": { + "DefaultResourceSpec": { + "$ref": "#/definitions/AWS::SageMaker::Space.ResourceSpec" + } + }, + "type": "object" + }, + "AWS::SageMaker::Space.KernelGatewayAppSettings": { + "additionalProperties": false, + "properties": { + "CustomImages": { + "items": { + "$ref": "#/definitions/AWS::SageMaker::Space.CustomImage" + }, + "type": "array" + }, + "DefaultResourceSpec": { + "$ref": "#/definitions/AWS::SageMaker::Space.ResourceSpec" + } + }, + "type": "object" + }, + "AWS::SageMaker::Space.ResourceSpec": { + "additionalProperties": false, + "properties": { + "InstanceType": { + "type": "string" + }, + "SageMakerImageArn": { + "type": "string" + }, + "SageMakerImageVersionArn": { + "type": "string" + } + }, + "type": "object" + }, + "AWS::SageMaker::Space.SpaceSettings": { + "additionalProperties": false, + "properties": { + "JupyterServerAppSettings": { + "$ref": "#/definitions/AWS::SageMaker::Space.JupyterServerAppSettings" + }, + "KernelGatewayAppSettings": { + "$ref": "#/definitions/AWS::SageMaker::Space.KernelGatewayAppSettings" + } + }, + "type": "object" + }, "AWS::SageMaker::UserProfile": { "additionalProperties": false, "properties": { @@ -161421,6 +161656,9 @@ { "$ref": "#/definitions/AWS::NetworkManager::SiteToSiteVpnAttachment" }, + { + "$ref": "#/definitions/AWS::NetworkManager::TransitGatewayPeering" + }, { "$ref": "#/definitions/AWS::NetworkManager::TransitGatewayRegistration" }, @@ -162054,6 +162292,9 @@ { "$ref": "#/definitions/AWS::SageMaker::Project" }, + { + "$ref": "#/definitions/AWS::SageMaker::Space" + }, { "$ref": "#/definitions/AWS::SageMaker::UserProfile" },