diff --git a/cloudformation/all.go b/cloudformation/all.go index b9187fb19d..61bbe2600d 100644 --- a/cloudformation/all.go +++ b/cloudformation/all.go @@ -51,6 +51,7 @@ import ( "github.com/awslabs/goformation/v7/cloudformation/codestarconnections" "github.com/awslabs/goformation/v7/cloudformation/codestarnotifications" "github.com/awslabs/goformation/v7/cloudformation/cognito" + "github.com/awslabs/goformation/v7/cloudformation/comprehend" "github.com/awslabs/goformation/v7/cloudformation/config" "github.com/awslabs/goformation/v7/cloudformation/connect" "github.com/awslabs/goformation/v7/cloudformation/connectcampaigns" @@ -212,6 +213,7 @@ import ( "github.com/awslabs/goformation/v7/cloudformation/timestream" "github.com/awslabs/goformation/v7/cloudformation/transfer" "github.com/awslabs/goformation/v7/cloudformation/voiceid" + "github.com/awslabs/goformation/v7/cloudformation/vpclattice" "github.com/awslabs/goformation/v7/cloudformation/waf" "github.com/awslabs/goformation/v7/cloudformation/wafregional" "github.com/awslabs/goformation/v7/cloudformation/wafv2" @@ -355,6 +357,7 @@ func AllResources() map[string]Resource { "AWS::Cassandra::Table": &cassandra.Table{}, "AWS::CertificateManager::Account": &certificatemanager.Account{}, "AWS::CertificateManager::Certificate": &certificatemanager.Certificate{}, + "AWS::Chatbot::MicrosoftTeamsChannelConfiguration": &chatbot.MicrosoftTeamsChannelConfiguration{}, "AWS::Chatbot::SlackChannelConfiguration": &chatbot.SlackChannelConfiguration{}, "AWS::Cloud9::EnvironmentEC2": &cloud9.EnvironmentEC2{}, "AWS::CloudFormation::CustomResource": &cloudformation.CustomResource{}, @@ -425,6 +428,7 @@ func AllResources() map[string]Resource { "AWS::Cognito::UserPoolUICustomizationAttachment": &cognito.UserPoolUICustomizationAttachment{}, "AWS::Cognito::UserPoolUser": &cognito.UserPoolUser{}, "AWS::Cognito::UserPoolUserToGroupAttachment": &cognito.UserPoolUserToGroupAttachment{}, + "AWS::Comprehend::Flywheel": &comprehend.Flywheel{}, "AWS::Config::AggregationAuthorization": &config.AggregationAuthorization{}, "AWS::Config::ConfigRule": &config.ConfigRule{}, "AWS::Config::ConfigurationAggregator": &config.ConfigurationAggregator{}, @@ -1149,6 +1153,7 @@ func AllResources() map[string]Resource { "AWS::SageMaker::FeatureGroup": &sagemaker.FeatureGroup{}, "AWS::SageMaker::Image": &sagemaker.Image{}, "AWS::SageMaker::ImageVersion": &sagemaker.ImageVersion{}, + "AWS::SageMaker::InferenceExperiment": &sagemaker.InferenceExperiment{}, "AWS::SageMaker::Model": &sagemaker.Model{}, "AWS::SageMaker::ModelBiasJobDefinition": &sagemaker.ModelBiasJobDefinition{}, "AWS::SageMaker::ModelCard": &sagemaker.ModelCard{}, @@ -1225,6 +1230,16 @@ func AllResources() map[string]Resource { "AWS::Transfer::User": &transfer.User{}, "AWS::Transfer::Workflow": &transfer.Workflow{}, "AWS::VoiceID::Domain": &voiceid.Domain{}, + "AWS::VpcLattice::AccessLogSubscription": &vpclattice.AccessLogSubscription{}, + "AWS::VpcLattice::AuthPolicy": &vpclattice.AuthPolicy{}, + "AWS::VpcLattice::Listener": &vpclattice.Listener{}, + "AWS::VpcLattice::ResourcePolicy": &vpclattice.ResourcePolicy{}, + "AWS::VpcLattice::Rule": &vpclattice.Rule{}, + "AWS::VpcLattice::Service": &vpclattice.Service{}, + "AWS::VpcLattice::ServiceNetwork": &vpclattice.ServiceNetwork{}, + "AWS::VpcLattice::ServiceNetworkServiceAssociation": &vpclattice.ServiceNetworkServiceAssociation{}, + "AWS::VpcLattice::ServiceNetworkVpcAssociation": &vpclattice.ServiceNetworkVpcAssociation{}, + "AWS::VpcLattice::TargetGroup": &vpclattice.TargetGroup{}, "AWS::WAF::ByteMatchSet": &waf.ByteMatchSet{}, "AWS::WAF::IPSet": &waf.IPSet{}, "AWS::WAF::Rule": &waf.Rule{}, @@ -4385,6 +4400,30 @@ func (t *Template) GetCertificateManagerCertificateWithName(name string) (*certi return nil, fmt.Errorf("resource %q of type certificatemanager.Certificate not found", name) } +// GetAllChatbotMicrosoftTeamsChannelConfigurationResources retrieves all chatbot.MicrosoftTeamsChannelConfiguration items from an AWS CloudFormation template +func (t *Template) GetAllChatbotMicrosoftTeamsChannelConfigurationResources() map[string]*chatbot.MicrosoftTeamsChannelConfiguration { + results := map[string]*chatbot.MicrosoftTeamsChannelConfiguration{} + for name, untyped := range t.Resources { + switch resource := untyped.(type) { + case *chatbot.MicrosoftTeamsChannelConfiguration: + results[name] = resource + } + } + return results +} + +// GetChatbotMicrosoftTeamsChannelConfigurationWithName retrieves all chatbot.MicrosoftTeamsChannelConfiguration items from an AWS CloudFormation template +// whose logical ID matches the provided name. Returns an error if not found. +func (t *Template) GetChatbotMicrosoftTeamsChannelConfigurationWithName(name string) (*chatbot.MicrosoftTeamsChannelConfiguration, error) { + if untyped, ok := t.Resources[name]; ok { + switch resource := untyped.(type) { + case *chatbot.MicrosoftTeamsChannelConfiguration: + return resource, nil + } + } + return nil, fmt.Errorf("resource %q of type chatbot.MicrosoftTeamsChannelConfiguration not found", name) +} + // GetAllChatbotSlackChannelConfigurationResources retrieves all chatbot.SlackChannelConfiguration items from an AWS CloudFormation template func (t *Template) GetAllChatbotSlackChannelConfigurationResources() map[string]*chatbot.SlackChannelConfiguration { results := map[string]*chatbot.SlackChannelConfiguration{} @@ -6065,6 +6104,30 @@ func (t *Template) GetCognitoUserPoolUserToGroupAttachmentWithName(name string) return nil, fmt.Errorf("resource %q of type cognito.UserPoolUserToGroupAttachment not found", name) } +// GetAllComprehendFlywheelResources retrieves all comprehend.Flywheel items from an AWS CloudFormation template +func (t *Template) GetAllComprehendFlywheelResources() map[string]*comprehend.Flywheel { + results := map[string]*comprehend.Flywheel{} + for name, untyped := range t.Resources { + switch resource := untyped.(type) { + case *comprehend.Flywheel: + results[name] = resource + } + } + return results +} + +// GetComprehendFlywheelWithName retrieves all comprehend.Flywheel items from an AWS CloudFormation template +// whose logical ID matches the provided name. Returns an error if not found. +func (t *Template) GetComprehendFlywheelWithName(name string) (*comprehend.Flywheel, error) { + if untyped, ok := t.Resources[name]; ok { + switch resource := untyped.(type) { + case *comprehend.Flywheel: + return resource, nil + } + } + return nil, fmt.Errorf("resource %q of type comprehend.Flywheel not found", name) +} + // GetAllConfigAggregationAuthorizationResources retrieves all config.AggregationAuthorization items from an AWS CloudFormation template func (t *Template) GetAllConfigAggregationAuthorizationResources() map[string]*config.AggregationAuthorization { results := map[string]*config.AggregationAuthorization{} @@ -23441,6 +23504,30 @@ func (t *Template) GetSageMakerImageVersionWithName(name string) (*sagemaker.Ima return nil, fmt.Errorf("resource %q of type sagemaker.ImageVersion not found", name) } +// GetAllSageMakerInferenceExperimentResources retrieves all sagemaker.InferenceExperiment items from an AWS CloudFormation template +func (t *Template) GetAllSageMakerInferenceExperimentResources() map[string]*sagemaker.InferenceExperiment { + results := map[string]*sagemaker.InferenceExperiment{} + for name, untyped := range t.Resources { + switch resource := untyped.(type) { + case *sagemaker.InferenceExperiment: + results[name] = resource + } + } + return results +} + +// GetSageMakerInferenceExperimentWithName retrieves all sagemaker.InferenceExperiment items from an AWS CloudFormation template +// whose logical ID matches the provided name. Returns an error if not found. +func (t *Template) GetSageMakerInferenceExperimentWithName(name string) (*sagemaker.InferenceExperiment, error) { + if untyped, ok := t.Resources[name]; ok { + switch resource := untyped.(type) { + case *sagemaker.InferenceExperiment: + return resource, nil + } + } + return nil, fmt.Errorf("resource %q of type sagemaker.InferenceExperiment not found", name) +} + // GetAllSageMakerModelResources retrieves all sagemaker.Model items from an AWS CloudFormation template func (t *Template) GetAllSageMakerModelResources() map[string]*sagemaker.Model { results := map[string]*sagemaker.Model{} @@ -25265,6 +25352,246 @@ func (t *Template) GetVoiceIDDomainWithName(name string) (*voiceid.Domain, error return nil, fmt.Errorf("resource %q of type voiceid.Domain not found", name) } +// GetAllVpcLatticeAccessLogSubscriptionResources retrieves all vpclattice.AccessLogSubscription items from an AWS CloudFormation template +func (t *Template) GetAllVpcLatticeAccessLogSubscriptionResources() map[string]*vpclattice.AccessLogSubscription { + results := map[string]*vpclattice.AccessLogSubscription{} + for name, untyped := range t.Resources { + switch resource := untyped.(type) { + case *vpclattice.AccessLogSubscription: + results[name] = resource + } + } + return results +} + +// GetVpcLatticeAccessLogSubscriptionWithName retrieves all vpclattice.AccessLogSubscription items from an AWS CloudFormation template +// whose logical ID matches the provided name. Returns an error if not found. +func (t *Template) GetVpcLatticeAccessLogSubscriptionWithName(name string) (*vpclattice.AccessLogSubscription, error) { + if untyped, ok := t.Resources[name]; ok { + switch resource := untyped.(type) { + case *vpclattice.AccessLogSubscription: + return resource, nil + } + } + return nil, fmt.Errorf("resource %q of type vpclattice.AccessLogSubscription not found", name) +} + +// GetAllVpcLatticeAuthPolicyResources retrieves all vpclattice.AuthPolicy items from an AWS CloudFormation template +func (t *Template) GetAllVpcLatticeAuthPolicyResources() map[string]*vpclattice.AuthPolicy { + results := map[string]*vpclattice.AuthPolicy{} + for name, untyped := range t.Resources { + switch resource := untyped.(type) { + case *vpclattice.AuthPolicy: + results[name] = resource + } + } + return results +} + +// GetVpcLatticeAuthPolicyWithName retrieves all vpclattice.AuthPolicy items from an AWS CloudFormation template +// whose logical ID matches the provided name. Returns an error if not found. +func (t *Template) GetVpcLatticeAuthPolicyWithName(name string) (*vpclattice.AuthPolicy, error) { + if untyped, ok := t.Resources[name]; ok { + switch resource := untyped.(type) { + case *vpclattice.AuthPolicy: + return resource, nil + } + } + return nil, fmt.Errorf("resource %q of type vpclattice.AuthPolicy not found", name) +} + +// GetAllVpcLatticeListenerResources retrieves all vpclattice.Listener items from an AWS CloudFormation template +func (t *Template) GetAllVpcLatticeListenerResources() map[string]*vpclattice.Listener { + results := map[string]*vpclattice.Listener{} + for name, untyped := range t.Resources { + switch resource := untyped.(type) { + case *vpclattice.Listener: + results[name] = resource + } + } + return results +} + +// GetVpcLatticeListenerWithName retrieves all vpclattice.Listener items from an AWS CloudFormation template +// whose logical ID matches the provided name. Returns an error if not found. +func (t *Template) GetVpcLatticeListenerWithName(name string) (*vpclattice.Listener, error) { + if untyped, ok := t.Resources[name]; ok { + switch resource := untyped.(type) { + case *vpclattice.Listener: + return resource, nil + } + } + return nil, fmt.Errorf("resource %q of type vpclattice.Listener not found", name) +} + +// GetAllVpcLatticeResourcePolicyResources retrieves all vpclattice.ResourcePolicy items from an AWS CloudFormation template +func (t *Template) GetAllVpcLatticeResourcePolicyResources() map[string]*vpclattice.ResourcePolicy { + results := map[string]*vpclattice.ResourcePolicy{} + for name, untyped := range t.Resources { + switch resource := untyped.(type) { + case *vpclattice.ResourcePolicy: + results[name] = resource + } + } + return results +} + +// GetVpcLatticeResourcePolicyWithName retrieves all vpclattice.ResourcePolicy items from an AWS CloudFormation template +// whose logical ID matches the provided name. Returns an error if not found. +func (t *Template) GetVpcLatticeResourcePolicyWithName(name string) (*vpclattice.ResourcePolicy, error) { + if untyped, ok := t.Resources[name]; ok { + switch resource := untyped.(type) { + case *vpclattice.ResourcePolicy: + return resource, nil + } + } + return nil, fmt.Errorf("resource %q of type vpclattice.ResourcePolicy not found", name) +} + +// GetAllVpcLatticeRuleResources retrieves all vpclattice.Rule items from an AWS CloudFormation template +func (t *Template) GetAllVpcLatticeRuleResources() map[string]*vpclattice.Rule { + results := map[string]*vpclattice.Rule{} + for name, untyped := range t.Resources { + switch resource := untyped.(type) { + case *vpclattice.Rule: + results[name] = resource + } + } + return results +} + +// GetVpcLatticeRuleWithName retrieves all vpclattice.Rule items from an AWS CloudFormation template +// whose logical ID matches the provided name. Returns an error if not found. +func (t *Template) GetVpcLatticeRuleWithName(name string) (*vpclattice.Rule, error) { + if untyped, ok := t.Resources[name]; ok { + switch resource := untyped.(type) { + case *vpclattice.Rule: + return resource, nil + } + } + return nil, fmt.Errorf("resource %q of type vpclattice.Rule not found", name) +} + +// GetAllVpcLatticeServiceResources retrieves all vpclattice.Service items from an AWS CloudFormation template +func (t *Template) GetAllVpcLatticeServiceResources() map[string]*vpclattice.Service { + results := map[string]*vpclattice.Service{} + for name, untyped := range t.Resources { + switch resource := untyped.(type) { + case *vpclattice.Service: + results[name] = resource + } + } + return results +} + +// GetVpcLatticeServiceWithName retrieves all vpclattice.Service items from an AWS CloudFormation template +// whose logical ID matches the provided name. Returns an error if not found. +func (t *Template) GetVpcLatticeServiceWithName(name string) (*vpclattice.Service, error) { + if untyped, ok := t.Resources[name]; ok { + switch resource := untyped.(type) { + case *vpclattice.Service: + return resource, nil + } + } + return nil, fmt.Errorf("resource %q of type vpclattice.Service not found", name) +} + +// GetAllVpcLatticeServiceNetworkResources retrieves all vpclattice.ServiceNetwork items from an AWS CloudFormation template +func (t *Template) GetAllVpcLatticeServiceNetworkResources() map[string]*vpclattice.ServiceNetwork { + results := map[string]*vpclattice.ServiceNetwork{} + for name, untyped := range t.Resources { + switch resource := untyped.(type) { + case *vpclattice.ServiceNetwork: + results[name] = resource + } + } + return results +} + +// GetVpcLatticeServiceNetworkWithName retrieves all vpclattice.ServiceNetwork items from an AWS CloudFormation template +// whose logical ID matches the provided name. Returns an error if not found. +func (t *Template) GetVpcLatticeServiceNetworkWithName(name string) (*vpclattice.ServiceNetwork, error) { + if untyped, ok := t.Resources[name]; ok { + switch resource := untyped.(type) { + case *vpclattice.ServiceNetwork: + return resource, nil + } + } + return nil, fmt.Errorf("resource %q of type vpclattice.ServiceNetwork not found", name) +} + +// GetAllVpcLatticeServiceNetworkServiceAssociationResources retrieves all vpclattice.ServiceNetworkServiceAssociation items from an AWS CloudFormation template +func (t *Template) GetAllVpcLatticeServiceNetworkServiceAssociationResources() map[string]*vpclattice.ServiceNetworkServiceAssociation { + results := map[string]*vpclattice.ServiceNetworkServiceAssociation{} + for name, untyped := range t.Resources { + switch resource := untyped.(type) { + case *vpclattice.ServiceNetworkServiceAssociation: + results[name] = resource + } + } + return results +} + +// GetVpcLatticeServiceNetworkServiceAssociationWithName retrieves all vpclattice.ServiceNetworkServiceAssociation items from an AWS CloudFormation template +// whose logical ID matches the provided name. Returns an error if not found. +func (t *Template) GetVpcLatticeServiceNetworkServiceAssociationWithName(name string) (*vpclattice.ServiceNetworkServiceAssociation, error) { + if untyped, ok := t.Resources[name]; ok { + switch resource := untyped.(type) { + case *vpclattice.ServiceNetworkServiceAssociation: + return resource, nil + } + } + return nil, fmt.Errorf("resource %q of type vpclattice.ServiceNetworkServiceAssociation not found", name) +} + +// GetAllVpcLatticeServiceNetworkVpcAssociationResources retrieves all vpclattice.ServiceNetworkVpcAssociation items from an AWS CloudFormation template +func (t *Template) GetAllVpcLatticeServiceNetworkVpcAssociationResources() map[string]*vpclattice.ServiceNetworkVpcAssociation { + results := map[string]*vpclattice.ServiceNetworkVpcAssociation{} + for name, untyped := range t.Resources { + switch resource := untyped.(type) { + case *vpclattice.ServiceNetworkVpcAssociation: + results[name] = resource + } + } + return results +} + +// GetVpcLatticeServiceNetworkVpcAssociationWithName retrieves all vpclattice.ServiceNetworkVpcAssociation items from an AWS CloudFormation template +// whose logical ID matches the provided name. Returns an error if not found. +func (t *Template) GetVpcLatticeServiceNetworkVpcAssociationWithName(name string) (*vpclattice.ServiceNetworkVpcAssociation, error) { + if untyped, ok := t.Resources[name]; ok { + switch resource := untyped.(type) { + case *vpclattice.ServiceNetworkVpcAssociation: + return resource, nil + } + } + return nil, fmt.Errorf("resource %q of type vpclattice.ServiceNetworkVpcAssociation not found", name) +} + +// GetAllVpcLatticeTargetGroupResources retrieves all vpclattice.TargetGroup items from an AWS CloudFormation template +func (t *Template) GetAllVpcLatticeTargetGroupResources() map[string]*vpclattice.TargetGroup { + results := map[string]*vpclattice.TargetGroup{} + for name, untyped := range t.Resources { + switch resource := untyped.(type) { + case *vpclattice.TargetGroup: + results[name] = resource + } + } + return results +} + +// GetVpcLatticeTargetGroupWithName retrieves all vpclattice.TargetGroup items from an AWS CloudFormation template +// whose logical ID matches the provided name. Returns an error if not found. +func (t *Template) GetVpcLatticeTargetGroupWithName(name string) (*vpclattice.TargetGroup, error) { + if untyped, ok := t.Resources[name]; ok { + switch resource := untyped.(type) { + case *vpclattice.TargetGroup: + return resource, nil + } + } + return nil, fmt.Errorf("resource %q of type vpclattice.TargetGroup not found", name) +} + // GetAllWAFByteMatchSetResources retrieves all waf.ByteMatchSet items from an AWS CloudFormation template func (t *Template) GetAllWAFByteMatchSetResources() map[string]*waf.ByteMatchSet { results := map[string]*waf.ByteMatchSet{} diff --git a/cloudformation/athena/aws-athena-workgroup_aclconfiguration.go b/cloudformation/athena/aws-athena-workgroup_aclconfiguration.go new file mode 100644 index 0000000000..63b306fc7a --- /dev/null +++ b/cloudformation/athena/aws-athena-workgroup_aclconfiguration.go @@ -0,0 +1,37 @@ +// Code generated by "go generate". Please don't change this file directly. + +package athena + +import ( + "github.com/awslabs/goformation/v7/cloudformation/policies" +) + +// WorkGroup_AclConfiguration AWS CloudFormation Resource (AWS::Athena::WorkGroup.AclConfiguration) +// See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-athena-workgroup-aclconfiguration.html +type WorkGroup_AclConfiguration struct { + + // S3AclOption AWS CloudFormation Property + // Required: true + // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-athena-workgroup-aclconfiguration.html#cfn-athena-workgroup-aclconfiguration-s3acloption + S3AclOption string `json:"S3AclOption"` + + // 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 *WorkGroup_AclConfiguration) AWSCloudFormationType() string { + return "AWS::Athena::WorkGroup.AclConfiguration" +} diff --git a/cloudformation/athena/aws-athena-workgroup_customercontentencryptionconfiguration.go b/cloudformation/athena/aws-athena-workgroup_customercontentencryptionconfiguration.go new file mode 100644 index 0000000000..a56c8f901b --- /dev/null +++ b/cloudformation/athena/aws-athena-workgroup_customercontentencryptionconfiguration.go @@ -0,0 +1,37 @@ +// Code generated by "go generate". Please don't change this file directly. + +package athena + +import ( + "github.com/awslabs/goformation/v7/cloudformation/policies" +) + +// WorkGroup_CustomerContentEncryptionConfiguration AWS CloudFormation Resource (AWS::Athena::WorkGroup.CustomerContentEncryptionConfiguration) +// See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-athena-workgroup-customercontentencryptionconfiguration.html +type WorkGroup_CustomerContentEncryptionConfiguration struct { + + // KmsKey AWS CloudFormation Property + // Required: true + // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-athena-workgroup-customercontentencryptionconfiguration.html#cfn-athena-workgroup-customercontentencryptionconfiguration-kmskey + KmsKey string `json:"KmsKey"` + + // 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 *WorkGroup_CustomerContentEncryptionConfiguration) AWSCloudFormationType() string { + return "AWS::Athena::WorkGroup.CustomerContentEncryptionConfiguration" +} diff --git a/cloudformation/athena/aws-athena-workgroup_resultconfiguration.go b/cloudformation/athena/aws-athena-workgroup_resultconfiguration.go index 59bd5b3e4d..32459a6e70 100644 --- a/cloudformation/athena/aws-athena-workgroup_resultconfiguration.go +++ b/cloudformation/athena/aws-athena-workgroup_resultconfiguration.go @@ -10,11 +10,21 @@ import ( // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-athena-workgroup-resultconfiguration.html type WorkGroup_ResultConfiguration struct { + // AclConfiguration AWS CloudFormation Property + // Required: false + // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-athena-workgroup-resultconfiguration.html#cfn-athena-workgroup-resultconfiguration-aclconfiguration + AclConfiguration *WorkGroup_AclConfiguration `json:"AclConfiguration,omitempty"` + // EncryptionConfiguration AWS CloudFormation Property // Required: false // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-athena-workgroup-resultconfiguration.html#cfn-athena-workgroup-resultconfiguration-encryptionconfiguration EncryptionConfiguration *WorkGroup_EncryptionConfiguration `json:"EncryptionConfiguration,omitempty"` + // ExpectedBucketOwner AWS CloudFormation Property + // Required: false + // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-athena-workgroup-resultconfiguration.html#cfn-athena-workgroup-resultconfiguration-expectedbucketowner + ExpectedBucketOwner *string `json:"ExpectedBucketOwner,omitempty"` + // OutputLocation AWS CloudFormation Property // Required: false // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-athena-workgroup-resultconfiguration.html#cfn-athena-workgroup-resultconfiguration-outputlocation diff --git a/cloudformation/athena/aws-athena-workgroup_workgroupconfiguration.go b/cloudformation/athena/aws-athena-workgroup_workgroupconfiguration.go index 415b7c8597..7414ca6976 100644 --- a/cloudformation/athena/aws-athena-workgroup_workgroupconfiguration.go +++ b/cloudformation/athena/aws-athena-workgroup_workgroupconfiguration.go @@ -10,11 +10,21 @@ import ( // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-athena-workgroup-workgroupconfiguration.html type WorkGroup_WorkGroupConfiguration struct { + // AdditionalConfiguration AWS CloudFormation Property + // Required: false + // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-athena-workgroup-workgroupconfiguration.html#cfn-athena-workgroup-workgroupconfiguration-additionalconfiguration + AdditionalConfiguration *string `json:"AdditionalConfiguration,omitempty"` + // BytesScannedCutoffPerQuery AWS CloudFormation Property // Required: false // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-athena-workgroup-workgroupconfiguration.html#cfn-athena-workgroup-workgroupconfiguration-bytesscannedcutoffperquery BytesScannedCutoffPerQuery *int `json:"BytesScannedCutoffPerQuery,omitempty"` + // CustomerContentEncryptionConfiguration AWS CloudFormation Property + // Required: false + // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-athena-workgroup-workgroupconfiguration.html#cfn-athena-workgroup-workgroupconfiguration-customercontentencryptionconfiguration + CustomerContentEncryptionConfiguration *WorkGroup_CustomerContentEncryptionConfiguration `json:"CustomerContentEncryptionConfiguration,omitempty"` + // EnforceWorkGroupConfiguration AWS CloudFormation Property // Required: false // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-athena-workgroup-workgroupconfiguration.html#cfn-athena-workgroup-workgroupconfiguration-enforceworkgroupconfiguration @@ -25,6 +35,11 @@ type WorkGroup_WorkGroupConfiguration struct { // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-athena-workgroup-workgroupconfiguration.html#cfn-athena-workgroup-workgroupconfiguration-engineversion EngineVersion *WorkGroup_EngineVersion `json:"EngineVersion,omitempty"` + // ExecutionRole AWS CloudFormation Property + // Required: false + // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-athena-workgroup-workgroupconfiguration.html#cfn-athena-workgroup-workgroupconfiguration-executionrole + ExecutionRole *string `json:"ExecutionRole,omitempty"` + // PublishCloudWatchMetricsEnabled AWS CloudFormation Property // Required: false // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-athena-workgroup-workgroupconfiguration.html#cfn-athena-workgroup-workgroupconfiguration-publishcloudwatchmetricsenabled diff --git a/cloudformation/cassandra/aws-cassandra-table.go b/cloudformation/cassandra/aws-cassandra-table.go index cfb2134d15..ac5d646638 100644 --- a/cloudformation/cassandra/aws-cassandra-table.go +++ b/cloudformation/cassandra/aws-cassandra-table.go @@ -19,6 +19,11 @@ type Table struct { // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-cassandra-table.html#cfn-cassandra-table-billingmode BillingMode *Table_BillingMode `json:"BillingMode,omitempty"` + // ClientSideTimestampsEnabled AWS CloudFormation Property + // Required: false + // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-cassandra-table.html#cfn-cassandra-table-clientsidetimestampsenabled + ClientSideTimestampsEnabled *bool `json:"ClientSideTimestampsEnabled,omitempty"` + // ClusteringKeyColumns AWS CloudFormation Property // Required: false // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-cassandra-table.html#cfn-cassandra-table-clusteringkeycolumns diff --git a/cloudformation/chatbot/aws-chatbot-microsoftteamschannelconfiguration.go b/cloudformation/chatbot/aws-chatbot-microsoftteamschannelconfiguration.go new file mode 100644 index 0000000000..3e95c13f6e --- /dev/null +++ b/cloudformation/chatbot/aws-chatbot-microsoftteamschannelconfiguration.go @@ -0,0 +1,157 @@ +// Code generated by "go generate". Please don't change this file directly. + +package chatbot + +import ( + "bytes" + "encoding/json" + + "github.com/awslabs/goformation/v7/cloudformation/policies" +) + +// MicrosoftTeamsChannelConfiguration AWS CloudFormation Resource (AWS::Chatbot::MicrosoftTeamsChannelConfiguration) +// See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-chatbot-microsoftteamschannelconfiguration.html +type MicrosoftTeamsChannelConfiguration struct { + + // ConfigurationName AWS CloudFormation Property + // Required: true + // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-chatbot-microsoftteamschannelconfiguration.html#cfn-chatbot-microsoftteamschannelconfiguration-configurationname + ConfigurationName string `json:"ConfigurationName"` + + // GuardrailPolicies AWS CloudFormation Property + // Required: false + // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-chatbot-microsoftteamschannelconfiguration.html#cfn-chatbot-microsoftteamschannelconfiguration-guardrailpolicies + GuardrailPolicies []string `json:"GuardrailPolicies,omitempty"` + + // IamRoleArn AWS CloudFormation Property + // Required: true + // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-chatbot-microsoftteamschannelconfiguration.html#cfn-chatbot-microsoftteamschannelconfiguration-iamrolearn + IamRoleArn string `json:"IamRoleArn"` + + // LoggingLevel AWS CloudFormation Property + // Required: false + // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-chatbot-microsoftteamschannelconfiguration.html#cfn-chatbot-microsoftteamschannelconfiguration-logginglevel + LoggingLevel *string `json:"LoggingLevel,omitempty"` + + // SnsTopicArns AWS CloudFormation Property + // Required: false + // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-chatbot-microsoftteamschannelconfiguration.html#cfn-chatbot-microsoftteamschannelconfiguration-snstopicarns + SnsTopicArns []string `json:"SnsTopicArns,omitempty"` + + // TeamId AWS CloudFormation Property + // Required: true + // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-chatbot-microsoftteamschannelconfiguration.html#cfn-chatbot-microsoftteamschannelconfiguration-teamid + TeamId string `json:"TeamId"` + + // TeamsChannelId AWS CloudFormation Property + // Required: true + // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-chatbot-microsoftteamschannelconfiguration.html#cfn-chatbot-microsoftteamschannelconfiguration-teamschannelid + TeamsChannelId string `json:"TeamsChannelId"` + + // TeamsTenantId AWS CloudFormation Property + // Required: true + // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-chatbot-microsoftteamschannelconfiguration.html#cfn-chatbot-microsoftteamschannelconfiguration-teamstenantid + TeamsTenantId string `json:"TeamsTenantId"` + + // UserRoleRequired AWS CloudFormation Property + // Required: false + // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-chatbot-microsoftteamschannelconfiguration.html#cfn-chatbot-microsoftteamschannelconfiguration-userrolerequired + UserRoleRequired *bool `json:"UserRoleRequired,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 *MicrosoftTeamsChannelConfiguration) AWSCloudFormationType() string { + return "AWS::Chatbot::MicrosoftTeamsChannelConfiguration" +} + +// MarshalJSON is a custom JSON marshalling hook that embeds this object into +// an AWS CloudFormation JSON resource's 'Properties' field and adds a 'Type'. +func (r MicrosoftTeamsChannelConfiguration) MarshalJSON() ([]byte, error) { + type Properties MicrosoftTeamsChannelConfiguration + 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 *MicrosoftTeamsChannelConfiguration) UnmarshalJSON(b []byte) error { + type Properties MicrosoftTeamsChannelConfiguration + 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 = MicrosoftTeamsChannelConfiguration(*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/comprehend/aws-comprehend-flywheel.go b/cloudformation/comprehend/aws-comprehend-flywheel.go new file mode 100644 index 0000000000..0d56dd464a --- /dev/null +++ b/cloudformation/comprehend/aws-comprehend-flywheel.go @@ -0,0 +1,153 @@ +// Code generated by "go generate". Please don't change this file directly. + +package comprehend + +import ( + "bytes" + "encoding/json" + + "github.com/awslabs/goformation/v7/cloudformation/policies" + "github.com/awslabs/goformation/v7/cloudformation/tags" +) + +// Flywheel AWS CloudFormation Resource (AWS::Comprehend::Flywheel) +// See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-comprehend-flywheel.html +type Flywheel struct { + + // ActiveModelArn AWS CloudFormation Property + // Required: false + // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-comprehend-flywheel.html#cfn-comprehend-flywheel-activemodelarn + ActiveModelArn *string `json:"ActiveModelArn,omitempty"` + + // DataAccessRoleArn AWS CloudFormation Property + // Required: true + // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-comprehend-flywheel.html#cfn-comprehend-flywheel-dataaccessrolearn + DataAccessRoleArn string `json:"DataAccessRoleArn"` + + // DataLakeS3Uri AWS CloudFormation Property + // Required: true + // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-comprehend-flywheel.html#cfn-comprehend-flywheel-datalakes3uri + DataLakeS3Uri string `json:"DataLakeS3Uri"` + + // DataSecurityConfig AWS CloudFormation Property + // Required: false + // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-comprehend-flywheel.html#cfn-comprehend-flywheel-datasecurityconfig + DataSecurityConfig *Flywheel_DataSecurityConfig `json:"DataSecurityConfig,omitempty"` + + // FlywheelName AWS CloudFormation Property + // Required: true + // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-comprehend-flywheel.html#cfn-comprehend-flywheel-flywheelname + FlywheelName string `json:"FlywheelName"` + + // ModelType AWS CloudFormation Property + // Required: false + // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-comprehend-flywheel.html#cfn-comprehend-flywheel-modeltype + ModelType *string `json:"ModelType,omitempty"` + + // Tags AWS CloudFormation Property + // Required: false + // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-comprehend-flywheel.html#cfn-comprehend-flywheel-tags + Tags []tags.Tag `json:"Tags,omitempty"` + + // TaskConfig AWS CloudFormation Property + // Required: false + // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-comprehend-flywheel.html#cfn-comprehend-flywheel-taskconfig + TaskConfig *Flywheel_TaskConfig `json:"TaskConfig,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 *Flywheel) AWSCloudFormationType() string { + return "AWS::Comprehend::Flywheel" +} + +// MarshalJSON is a custom JSON marshalling hook that embeds this object into +// an AWS CloudFormation JSON resource's 'Properties' field and adds a 'Type'. +func (r Flywheel) MarshalJSON() ([]byte, error) { + type Properties Flywheel + 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 *Flywheel) UnmarshalJSON(b []byte) error { + type Properties Flywheel + 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 = Flywheel(*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/comprehend/aws-comprehend-flywheel_datasecurityconfig.go b/cloudformation/comprehend/aws-comprehend-flywheel_datasecurityconfig.go new file mode 100644 index 0000000000..5ae32e306c --- /dev/null +++ b/cloudformation/comprehend/aws-comprehend-flywheel_datasecurityconfig.go @@ -0,0 +1,52 @@ +// Code generated by "go generate". Please don't change this file directly. + +package comprehend + +import ( + "github.com/awslabs/goformation/v7/cloudformation/policies" +) + +// Flywheel_DataSecurityConfig AWS CloudFormation Resource (AWS::Comprehend::Flywheel.DataSecurityConfig) +// See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-comprehend-flywheel-datasecurityconfig.html +type Flywheel_DataSecurityConfig struct { + + // DataLakeKmsKeyId AWS CloudFormation Property + // Required: false + // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-comprehend-flywheel-datasecurityconfig.html#cfn-comprehend-flywheel-datasecurityconfig-datalakekmskeyid + DataLakeKmsKeyId *string `json:"DataLakeKmsKeyId,omitempty"` + + // ModelKmsKeyId AWS CloudFormation Property + // Required: false + // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-comprehend-flywheel-datasecurityconfig.html#cfn-comprehend-flywheel-datasecurityconfig-modelkmskeyid + ModelKmsKeyId *string `json:"ModelKmsKeyId,omitempty"` + + // VolumeKmsKeyId AWS CloudFormation Property + // Required: false + // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-comprehend-flywheel-datasecurityconfig.html#cfn-comprehend-flywheel-datasecurityconfig-volumekmskeyid + VolumeKmsKeyId *string `json:"VolumeKmsKeyId,omitempty"` + + // VpcConfig AWS CloudFormation Property + // Required: false + // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-comprehend-flywheel-datasecurityconfig.html#cfn-comprehend-flywheel-datasecurityconfig-vpcconfig + VpcConfig *Flywheel_VpcConfig `json:"VpcConfig,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 *Flywheel_DataSecurityConfig) AWSCloudFormationType() string { + return "AWS::Comprehend::Flywheel.DataSecurityConfig" +} diff --git a/cloudformation/comprehend/aws-comprehend-flywheel_documentclassificationconfig.go b/cloudformation/comprehend/aws-comprehend-flywheel_documentclassificationconfig.go new file mode 100644 index 0000000000..34a0058cec --- /dev/null +++ b/cloudformation/comprehend/aws-comprehend-flywheel_documentclassificationconfig.go @@ -0,0 +1,42 @@ +// Code generated by "go generate". Please don't change this file directly. + +package comprehend + +import ( + "github.com/awslabs/goformation/v7/cloudformation/policies" +) + +// Flywheel_DocumentClassificationConfig AWS CloudFormation Resource (AWS::Comprehend::Flywheel.DocumentClassificationConfig) +// See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-comprehend-flywheel-documentclassificationconfig.html +type Flywheel_DocumentClassificationConfig struct { + + // Labels AWS CloudFormation Property + // Required: false + // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-comprehend-flywheel-documentclassificationconfig.html#cfn-comprehend-flywheel-documentclassificationconfig-labels + Labels []string `json:"Labels,omitempty"` + + // Mode AWS CloudFormation Property + // Required: true + // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-comprehend-flywheel-documentclassificationconfig.html#cfn-comprehend-flywheel-documentclassificationconfig-mode + Mode string `json:"Mode"` + + // 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 *Flywheel_DocumentClassificationConfig) AWSCloudFormationType() string { + return "AWS::Comprehend::Flywheel.DocumentClassificationConfig" +} diff --git a/cloudformation/comprehend/aws-comprehend-flywheel_entityrecognitionconfig.go b/cloudformation/comprehend/aws-comprehend-flywheel_entityrecognitionconfig.go new file mode 100644 index 0000000000..d6d8f850ed --- /dev/null +++ b/cloudformation/comprehend/aws-comprehend-flywheel_entityrecognitionconfig.go @@ -0,0 +1,37 @@ +// Code generated by "go generate". Please don't change this file directly. + +package comprehend + +import ( + "github.com/awslabs/goformation/v7/cloudformation/policies" +) + +// Flywheel_EntityRecognitionConfig AWS CloudFormation Resource (AWS::Comprehend::Flywheel.EntityRecognitionConfig) +// See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-comprehend-flywheel-entityrecognitionconfig.html +type Flywheel_EntityRecognitionConfig struct { + + // EntityTypes AWS CloudFormation Property + // Required: false + // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-comprehend-flywheel-entityrecognitionconfig.html#cfn-comprehend-flywheel-entityrecognitionconfig-entitytypes + EntityTypes []Flywheel_EntityTypesListItem `json:"EntityTypes,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 *Flywheel_EntityRecognitionConfig) AWSCloudFormationType() string { + return "AWS::Comprehend::Flywheel.EntityRecognitionConfig" +} diff --git a/cloudformation/comprehend/aws-comprehend-flywheel_entitytypeslistitem.go b/cloudformation/comprehend/aws-comprehend-flywheel_entitytypeslistitem.go new file mode 100644 index 0000000000..2186926727 --- /dev/null +++ b/cloudformation/comprehend/aws-comprehend-flywheel_entitytypeslistitem.go @@ -0,0 +1,37 @@ +// Code generated by "go generate". Please don't change this file directly. + +package comprehend + +import ( + "github.com/awslabs/goformation/v7/cloudformation/policies" +) + +// Flywheel_EntityTypesListItem AWS CloudFormation Resource (AWS::Comprehend::Flywheel.EntityTypesListItem) +// See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-comprehend-flywheel-entitytypeslistitem.html +type Flywheel_EntityTypesListItem struct { + + // Type AWS CloudFormation Property + // Required: true + // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-comprehend-flywheel-entitytypeslistitem.html#cfn-comprehend-flywheel-entitytypeslistitem-type + Type string `json:"Type"` + + // 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 *Flywheel_EntityTypesListItem) AWSCloudFormationType() string { + return "AWS::Comprehend::Flywheel.EntityTypesListItem" +} diff --git a/cloudformation/comprehend/aws-comprehend-flywheel_taskconfig.go b/cloudformation/comprehend/aws-comprehend-flywheel_taskconfig.go new file mode 100644 index 0000000000..c052565c67 --- /dev/null +++ b/cloudformation/comprehend/aws-comprehend-flywheel_taskconfig.go @@ -0,0 +1,47 @@ +// Code generated by "go generate". Please don't change this file directly. + +package comprehend + +import ( + "github.com/awslabs/goformation/v7/cloudformation/policies" +) + +// Flywheel_TaskConfig AWS CloudFormation Resource (AWS::Comprehend::Flywheel.TaskConfig) +// See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-comprehend-flywheel-taskconfig.html +type Flywheel_TaskConfig struct { + + // DocumentClassificationConfig AWS CloudFormation Property + // Required: false + // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-comprehend-flywheel-taskconfig.html#cfn-comprehend-flywheel-taskconfig-documentclassificationconfig + DocumentClassificationConfig *Flywheel_DocumentClassificationConfig `json:"DocumentClassificationConfig,omitempty"` + + // EntityRecognitionConfig AWS CloudFormation Property + // Required: false + // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-comprehend-flywheel-taskconfig.html#cfn-comprehend-flywheel-taskconfig-entityrecognitionconfig + EntityRecognitionConfig *Flywheel_EntityRecognitionConfig `json:"EntityRecognitionConfig,omitempty"` + + // LanguageCode AWS CloudFormation Property + // Required: true + // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-comprehend-flywheel-taskconfig.html#cfn-comprehend-flywheel-taskconfig-languagecode + LanguageCode string `json:"LanguageCode"` + + // 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 *Flywheel_TaskConfig) AWSCloudFormationType() string { + return "AWS::Comprehend::Flywheel.TaskConfig" +} diff --git a/cloudformation/comprehend/aws-comprehend-flywheel_vpcconfig.go b/cloudformation/comprehend/aws-comprehend-flywheel_vpcconfig.go new file mode 100644 index 0000000000..780d651d1d --- /dev/null +++ b/cloudformation/comprehend/aws-comprehend-flywheel_vpcconfig.go @@ -0,0 +1,42 @@ +// Code generated by "go generate". Please don't change this file directly. + +package comprehend + +import ( + "github.com/awslabs/goformation/v7/cloudformation/policies" +) + +// Flywheel_VpcConfig AWS CloudFormation Resource (AWS::Comprehend::Flywheel.VpcConfig) +// See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-comprehend-flywheel-vpcconfig.html +type Flywheel_VpcConfig struct { + + // SecurityGroupIds AWS CloudFormation Property + // Required: true + // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-comprehend-flywheel-vpcconfig.html#cfn-comprehend-flywheel-vpcconfig-securitygroupids + SecurityGroupIds []string `json:"SecurityGroupIds"` + + // Subnets AWS CloudFormation Property + // Required: true + // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-comprehend-flywheel-vpcconfig.html#cfn-comprehend-flywheel-vpcconfig-subnets + Subnets []string `json:"Subnets"` + + // 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 *Flywheel_VpcConfig) AWSCloudFormationType() string { + return "AWS::Comprehend::Flywheel.VpcConfig" +} diff --git a/cloudformation/elasticloadbalancingv2/aws-elasticloadbalancingv2-listenerrule.go b/cloudformation/elasticloadbalancingv2/aws-elasticloadbalancingv2-listenerrule.go index f2e5e879d4..aa61c06c8b 100644 --- a/cloudformation/elasticloadbalancingv2/aws-elasticloadbalancingv2-listenerrule.go +++ b/cloudformation/elasticloadbalancingv2/aws-elasticloadbalancingv2-listenerrule.go @@ -24,9 +24,9 @@ type ListenerRule struct { Conditions []ListenerRule_RuleCondition `json:"Conditions"` // ListenerArn AWS CloudFormation Property - // Required: true + // Required: false // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-elasticloadbalancingv2-listenerrule.html#cfn-elasticloadbalancingv2-listenerrule-listenerarn - ListenerArn string `json:"ListenerArn"` + ListenerArn *string `json:"ListenerArn,omitempty"` // Priority AWS CloudFormation Property // Required: true diff --git a/cloudformation/mediapackage/aws-mediapackage-packagingconfiguration_encryptioncontractconfiguration.go b/cloudformation/mediapackage/aws-mediapackage-packagingconfiguration_encryptioncontractconfiguration.go index 757ba969fb..7e9d372460 100644 --- a/cloudformation/mediapackage/aws-mediapackage-packagingconfiguration_encryptioncontractconfiguration.go +++ b/cloudformation/mediapackage/aws-mediapackage-packagingconfiguration_encryptioncontractconfiguration.go @@ -10,16 +10,6 @@ import ( // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-mediapackage-packagingconfiguration-encryptioncontractconfiguration.html type PackagingConfiguration_EncryptionContractConfiguration struct { - // PresetSpeke20Audio AWS CloudFormation Property - // Required: true - // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-mediapackage-packagingconfiguration-encryptioncontractconfiguration.html#cfn-mediapackage-packagingconfiguration-encryptioncontractconfiguration-presetspeke20audio - PresetSpeke20Audio string `json:"PresetSpeke20Audio"` - - // PresetSpeke20Video AWS CloudFormation Property - // Required: true - // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-mediapackage-packagingconfiguration-encryptioncontractconfiguration.html#cfn-mediapackage-packagingconfiguration-encryptioncontractconfiguration-presetspeke20video - PresetSpeke20Video string `json:"PresetSpeke20Video"` - // AWSCloudFormationDeletionPolicy represents a CloudFormation DeletionPolicy AWSCloudFormationDeletionPolicy policies.DeletionPolicy `json:"-"` diff --git a/cloudformation/rum/aws-rum-appmonitor_metricdefinition.go b/cloudformation/rum/aws-rum-appmonitor_metricdefinition.go index a3e95e726f..d55e5fb3ef 100644 --- a/cloudformation/rum/aws-rum-appmonitor_metricdefinition.go +++ b/cloudformation/rum/aws-rum-appmonitor_metricdefinition.go @@ -25,6 +25,11 @@ type AppMonitor_MetricDefinition struct { // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-rum-appmonitor-metricdefinition.html#cfn-rum-appmonitor-metricdefinition-name Name string `json:"Name"` + // Namespace AWS CloudFormation Property + // Required: false + // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-rum-appmonitor-metricdefinition.html#cfn-rum-appmonitor-metricdefinition-namespace + Namespace *string `json:"Namespace,omitempty"` + // UnitLabel AWS CloudFormation Property // Required: false // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-rum-appmonitor-metricdefinition.html#cfn-rum-appmonitor-metricdefinition-unitlabel diff --git a/cloudformation/s3/aws-s3-multiregionaccesspoint_region.go b/cloudformation/s3/aws-s3-multiregionaccesspoint_region.go index c27a4fcec8..de55165e6a 100644 --- a/cloudformation/s3/aws-s3-multiregionaccesspoint_region.go +++ b/cloudformation/s3/aws-s3-multiregionaccesspoint_region.go @@ -15,6 +15,11 @@ type MultiRegionAccessPoint_Region struct { // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-s3-multiregionaccesspoint-region.html#cfn-s3-multiregionaccesspoint-region-bucket Bucket string `json:"Bucket"` + // BucketAccountId AWS CloudFormation Property + // Required: false + // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-s3-multiregionaccesspoint-region.html#cfn-s3-multiregionaccesspoint-region-bucketaccountid + BucketAccountId *string `json:"BucketAccountId,omitempty"` + // AWSCloudFormationDeletionPolicy represents a CloudFormation DeletionPolicy AWSCloudFormationDeletionPolicy policies.DeletionPolicy `json:"-"` diff --git a/cloudformation/sagemaker/aws-sagemaker-inferenceexperiment.go b/cloudformation/sagemaker/aws-sagemaker-inferenceexperiment.go new file mode 100644 index 0000000000..1ef9151df9 --- /dev/null +++ b/cloudformation/sagemaker/aws-sagemaker-inferenceexperiment.go @@ -0,0 +1,178 @@ +// 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" +) + +// InferenceExperiment AWS CloudFormation Resource (AWS::SageMaker::InferenceExperiment) +// See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-sagemaker-inferenceexperiment.html +type InferenceExperiment struct { + + // DataStorageConfig AWS CloudFormation Property + // Required: false + // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-sagemaker-inferenceexperiment.html#cfn-sagemaker-inferenceexperiment-datastorageconfig + DataStorageConfig *InferenceExperiment_DataStorageConfig `json:"DataStorageConfig,omitempty"` + + // Description AWS CloudFormation Property + // Required: false + // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-sagemaker-inferenceexperiment.html#cfn-sagemaker-inferenceexperiment-description + Description *string `json:"Description,omitempty"` + + // DesiredState AWS CloudFormation Property + // Required: false + // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-sagemaker-inferenceexperiment.html#cfn-sagemaker-inferenceexperiment-desiredstate + DesiredState *string `json:"DesiredState,omitempty"` + + // EndpointName AWS CloudFormation Property + // Required: true + // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-sagemaker-inferenceexperiment.html#cfn-sagemaker-inferenceexperiment-endpointname + EndpointName string `json:"EndpointName"` + + // KmsKey AWS CloudFormation Property + // Required: false + // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-sagemaker-inferenceexperiment.html#cfn-sagemaker-inferenceexperiment-kmskey + KmsKey *string `json:"KmsKey,omitempty"` + + // ModelVariants AWS CloudFormation Property + // Required: true + // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-sagemaker-inferenceexperiment.html#cfn-sagemaker-inferenceexperiment-modelvariants + ModelVariants []InferenceExperiment_ModelVariantConfig `json:"ModelVariants"` + + // Name AWS CloudFormation Property + // Required: true + // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-sagemaker-inferenceexperiment.html#cfn-sagemaker-inferenceexperiment-name + Name string `json:"Name"` + + // RoleArn AWS CloudFormation Property + // Required: true + // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-sagemaker-inferenceexperiment.html#cfn-sagemaker-inferenceexperiment-rolearn + RoleArn string `json:"RoleArn"` + + // Schedule AWS CloudFormation Property + // Required: false + // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-sagemaker-inferenceexperiment.html#cfn-sagemaker-inferenceexperiment-schedule + Schedule *InferenceExperiment_InferenceExperimentSchedule `json:"Schedule,omitempty"` + + // ShadowModeConfig AWS CloudFormation Property + // Required: false + // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-sagemaker-inferenceexperiment.html#cfn-sagemaker-inferenceexperiment-shadowmodeconfig + ShadowModeConfig *InferenceExperiment_ShadowModeConfig `json:"ShadowModeConfig,omitempty"` + + // StatusReason AWS CloudFormation Property + // Required: false + // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-sagemaker-inferenceexperiment.html#cfn-sagemaker-inferenceexperiment-statusreason + StatusReason *string `json:"StatusReason,omitempty"` + + // Tags AWS CloudFormation Property + // Required: false + // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-sagemaker-inferenceexperiment.html#cfn-sagemaker-inferenceexperiment-tags + Tags []tags.Tag `json:"Tags,omitempty"` + + // Type AWS CloudFormation Property + // Required: true + // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-sagemaker-inferenceexperiment.html#cfn-sagemaker-inferenceexperiment-type + Type string `json:"Type"` + + // 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 *InferenceExperiment) AWSCloudFormationType() string { + return "AWS::SageMaker::InferenceExperiment" +} + +// MarshalJSON is a custom JSON marshalling hook that embeds this object into +// an AWS CloudFormation JSON resource's 'Properties' field and adds a 'Type'. +func (r InferenceExperiment) MarshalJSON() ([]byte, error) { + type Properties InferenceExperiment + 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 *InferenceExperiment) UnmarshalJSON(b []byte) error { + type Properties InferenceExperiment + 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 = InferenceExperiment(*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-inferenceexperiment_capturecontenttypeheader.go b/cloudformation/sagemaker/aws-sagemaker-inferenceexperiment_capturecontenttypeheader.go new file mode 100644 index 0000000000..3e37d379d4 --- /dev/null +++ b/cloudformation/sagemaker/aws-sagemaker-inferenceexperiment_capturecontenttypeheader.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" +) + +// InferenceExperiment_CaptureContentTypeHeader AWS CloudFormation Resource (AWS::SageMaker::InferenceExperiment.CaptureContentTypeHeader) +// See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-sagemaker-inferenceexperiment-capturecontenttypeheader.html +type InferenceExperiment_CaptureContentTypeHeader struct { + + // CsvContentTypes AWS CloudFormation Property + // Required: false + // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-sagemaker-inferenceexperiment-capturecontenttypeheader.html#cfn-sagemaker-inferenceexperiment-capturecontenttypeheader-csvcontenttypes + CsvContentTypes []string `json:"CsvContentTypes,omitempty"` + + // JsonContentTypes AWS CloudFormation Property + // Required: false + // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-sagemaker-inferenceexperiment-capturecontenttypeheader.html#cfn-sagemaker-inferenceexperiment-capturecontenttypeheader-jsoncontenttypes + JsonContentTypes []string `json:"JsonContentTypes,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 *InferenceExperiment_CaptureContentTypeHeader) AWSCloudFormationType() string { + return "AWS::SageMaker::InferenceExperiment.CaptureContentTypeHeader" +} diff --git a/cloudformation/sagemaker/aws-sagemaker-inferenceexperiment_datastorageconfig.go b/cloudformation/sagemaker/aws-sagemaker-inferenceexperiment_datastorageconfig.go new file mode 100644 index 0000000000..de2a5a99bd --- /dev/null +++ b/cloudformation/sagemaker/aws-sagemaker-inferenceexperiment_datastorageconfig.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" +) + +// InferenceExperiment_DataStorageConfig AWS CloudFormation Resource (AWS::SageMaker::InferenceExperiment.DataStorageConfig) +// See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-sagemaker-inferenceexperiment-datastorageconfig.html +type InferenceExperiment_DataStorageConfig struct { + + // ContentType AWS CloudFormation Property + // Required: false + // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-sagemaker-inferenceexperiment-datastorageconfig.html#cfn-sagemaker-inferenceexperiment-datastorageconfig-contenttype + ContentType *InferenceExperiment_CaptureContentTypeHeader `json:"ContentType,omitempty"` + + // Destination AWS CloudFormation Property + // Required: true + // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-sagemaker-inferenceexperiment-datastorageconfig.html#cfn-sagemaker-inferenceexperiment-datastorageconfig-destination + Destination string `json:"Destination"` + + // KmsKey AWS CloudFormation Property + // Required: false + // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-sagemaker-inferenceexperiment-datastorageconfig.html#cfn-sagemaker-inferenceexperiment-datastorageconfig-kmskey + KmsKey *string `json:"KmsKey,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 *InferenceExperiment_DataStorageConfig) AWSCloudFormationType() string { + return "AWS::SageMaker::InferenceExperiment.DataStorageConfig" +} diff --git a/cloudformation/sagemaker/aws-sagemaker-inferenceexperiment_endpointmetadata.go b/cloudformation/sagemaker/aws-sagemaker-inferenceexperiment_endpointmetadata.go new file mode 100644 index 0000000000..df9e6dc5d6 --- /dev/null +++ b/cloudformation/sagemaker/aws-sagemaker-inferenceexperiment_endpointmetadata.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" +) + +// InferenceExperiment_EndpointMetadata AWS CloudFormation Resource (AWS::SageMaker::InferenceExperiment.EndpointMetadata) +// See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-sagemaker-inferenceexperiment-endpointmetadata.html +type InferenceExperiment_EndpointMetadata struct { + + // EndpointConfigName AWS CloudFormation Property + // Required: false + // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-sagemaker-inferenceexperiment-endpointmetadata.html#cfn-sagemaker-inferenceexperiment-endpointmetadata-endpointconfigname + EndpointConfigName *string `json:"EndpointConfigName,omitempty"` + + // EndpointName AWS CloudFormation Property + // Required: true + // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-sagemaker-inferenceexperiment-endpointmetadata.html#cfn-sagemaker-inferenceexperiment-endpointmetadata-endpointname + EndpointName string `json:"EndpointName"` + + // EndpointStatus AWS CloudFormation Property + // Required: false + // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-sagemaker-inferenceexperiment-endpointmetadata.html#cfn-sagemaker-inferenceexperiment-endpointmetadata-endpointstatus + EndpointStatus *string `json:"EndpointStatus,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 *InferenceExperiment_EndpointMetadata) AWSCloudFormationType() string { + return "AWS::SageMaker::InferenceExperiment.EndpointMetadata" +} diff --git a/cloudformation/sagemaker/aws-sagemaker-inferenceexperiment_inferenceexperimentschedule.go b/cloudformation/sagemaker/aws-sagemaker-inferenceexperiment_inferenceexperimentschedule.go new file mode 100644 index 0000000000..a49d873253 --- /dev/null +++ b/cloudformation/sagemaker/aws-sagemaker-inferenceexperiment_inferenceexperimentschedule.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" +) + +// InferenceExperiment_InferenceExperimentSchedule AWS CloudFormation Resource (AWS::SageMaker::InferenceExperiment.InferenceExperimentSchedule) +// See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-sagemaker-inferenceexperiment-inferenceexperimentschedule.html +type InferenceExperiment_InferenceExperimentSchedule struct { + + // EndTime AWS CloudFormation Property + // Required: false + // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-sagemaker-inferenceexperiment-inferenceexperimentschedule.html#cfn-sagemaker-inferenceexperiment-inferenceexperimentschedule-endtime + EndTime *string `json:"EndTime,omitempty"` + + // StartTime AWS CloudFormation Property + // Required: false + // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-sagemaker-inferenceexperiment-inferenceexperimentschedule.html#cfn-sagemaker-inferenceexperiment-inferenceexperimentschedule-starttime + StartTime *string `json:"StartTime,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 *InferenceExperiment_InferenceExperimentSchedule) AWSCloudFormationType() string { + return "AWS::SageMaker::InferenceExperiment.InferenceExperimentSchedule" +} diff --git a/cloudformation/sagemaker/aws-sagemaker-inferenceexperiment_modelinfrastructureconfig.go b/cloudformation/sagemaker/aws-sagemaker-inferenceexperiment_modelinfrastructureconfig.go new file mode 100644 index 0000000000..341ebae8d0 --- /dev/null +++ b/cloudformation/sagemaker/aws-sagemaker-inferenceexperiment_modelinfrastructureconfig.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" +) + +// InferenceExperiment_ModelInfrastructureConfig AWS CloudFormation Resource (AWS::SageMaker::InferenceExperiment.ModelInfrastructureConfig) +// See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-sagemaker-inferenceexperiment-modelinfrastructureconfig.html +type InferenceExperiment_ModelInfrastructureConfig struct { + + // InfrastructureType AWS CloudFormation Property + // Required: true + // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-sagemaker-inferenceexperiment-modelinfrastructureconfig.html#cfn-sagemaker-inferenceexperiment-modelinfrastructureconfig-infrastructuretype + InfrastructureType string `json:"InfrastructureType"` + + // RealTimeInferenceConfig AWS CloudFormation Property + // Required: true + // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-sagemaker-inferenceexperiment-modelinfrastructureconfig.html#cfn-sagemaker-inferenceexperiment-modelinfrastructureconfig-realtimeinferenceconfig + RealTimeInferenceConfig *InferenceExperiment_RealTimeInferenceConfig `json:"RealTimeInferenceConfig"` + + // 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 *InferenceExperiment_ModelInfrastructureConfig) AWSCloudFormationType() string { + return "AWS::SageMaker::InferenceExperiment.ModelInfrastructureConfig" +} diff --git a/cloudformation/sagemaker/aws-sagemaker-inferenceexperiment_modelvariantconfig.go b/cloudformation/sagemaker/aws-sagemaker-inferenceexperiment_modelvariantconfig.go new file mode 100644 index 0000000000..3a7256f0d8 --- /dev/null +++ b/cloudformation/sagemaker/aws-sagemaker-inferenceexperiment_modelvariantconfig.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" +) + +// InferenceExperiment_ModelVariantConfig AWS CloudFormation Resource (AWS::SageMaker::InferenceExperiment.ModelVariantConfig) +// See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-sagemaker-inferenceexperiment-modelvariantconfig.html +type InferenceExperiment_ModelVariantConfig struct { + + // InfrastructureConfig AWS CloudFormation Property + // Required: true + // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-sagemaker-inferenceexperiment-modelvariantconfig.html#cfn-sagemaker-inferenceexperiment-modelvariantconfig-infrastructureconfig + InfrastructureConfig *InferenceExperiment_ModelInfrastructureConfig `json:"InfrastructureConfig"` + + // ModelName AWS CloudFormation Property + // Required: true + // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-sagemaker-inferenceexperiment-modelvariantconfig.html#cfn-sagemaker-inferenceexperiment-modelvariantconfig-modelname + ModelName string `json:"ModelName"` + + // VariantName AWS CloudFormation Property + // Required: true + // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-sagemaker-inferenceexperiment-modelvariantconfig.html#cfn-sagemaker-inferenceexperiment-modelvariantconfig-variantname + VariantName string `json:"VariantName"` + + // 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 *InferenceExperiment_ModelVariantConfig) AWSCloudFormationType() string { + return "AWS::SageMaker::InferenceExperiment.ModelVariantConfig" +} diff --git a/cloudformation/sagemaker/aws-sagemaker-inferenceexperiment_realtimeinferenceconfig.go b/cloudformation/sagemaker/aws-sagemaker-inferenceexperiment_realtimeinferenceconfig.go new file mode 100644 index 0000000000..cec33382fa --- /dev/null +++ b/cloudformation/sagemaker/aws-sagemaker-inferenceexperiment_realtimeinferenceconfig.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" +) + +// InferenceExperiment_RealTimeInferenceConfig AWS CloudFormation Resource (AWS::SageMaker::InferenceExperiment.RealTimeInferenceConfig) +// See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-sagemaker-inferenceexperiment-realtimeinferenceconfig.html +type InferenceExperiment_RealTimeInferenceConfig struct { + + // InstanceCount AWS CloudFormation Property + // Required: true + // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-sagemaker-inferenceexperiment-realtimeinferenceconfig.html#cfn-sagemaker-inferenceexperiment-realtimeinferenceconfig-instancecount + InstanceCount int `json:"InstanceCount"` + + // InstanceType AWS CloudFormation Property + // Required: true + // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-sagemaker-inferenceexperiment-realtimeinferenceconfig.html#cfn-sagemaker-inferenceexperiment-realtimeinferenceconfig-instancetype + InstanceType string `json:"InstanceType"` + + // 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 *InferenceExperiment_RealTimeInferenceConfig) AWSCloudFormationType() string { + return "AWS::SageMaker::InferenceExperiment.RealTimeInferenceConfig" +} diff --git a/cloudformation/sagemaker/aws-sagemaker-inferenceexperiment_shadowmodeconfig.go b/cloudformation/sagemaker/aws-sagemaker-inferenceexperiment_shadowmodeconfig.go new file mode 100644 index 0000000000..ff5a34265c --- /dev/null +++ b/cloudformation/sagemaker/aws-sagemaker-inferenceexperiment_shadowmodeconfig.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" +) + +// InferenceExperiment_ShadowModeConfig AWS CloudFormation Resource (AWS::SageMaker::InferenceExperiment.ShadowModeConfig) +// See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-sagemaker-inferenceexperiment-shadowmodeconfig.html +type InferenceExperiment_ShadowModeConfig struct { + + // ShadowModelVariants AWS CloudFormation Property + // Required: true + // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-sagemaker-inferenceexperiment-shadowmodeconfig.html#cfn-sagemaker-inferenceexperiment-shadowmodeconfig-shadowmodelvariants + ShadowModelVariants []InferenceExperiment_ShadowModelVariantConfig `json:"ShadowModelVariants"` + + // SourceModelVariantName AWS CloudFormation Property + // Required: true + // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-sagemaker-inferenceexperiment-shadowmodeconfig.html#cfn-sagemaker-inferenceexperiment-shadowmodeconfig-sourcemodelvariantname + SourceModelVariantName string `json:"SourceModelVariantName"` + + // 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 *InferenceExperiment_ShadowModeConfig) AWSCloudFormationType() string { + return "AWS::SageMaker::InferenceExperiment.ShadowModeConfig" +} diff --git a/cloudformation/sagemaker/aws-sagemaker-inferenceexperiment_shadowmodelvariantconfig.go b/cloudformation/sagemaker/aws-sagemaker-inferenceexperiment_shadowmodelvariantconfig.go new file mode 100644 index 0000000000..ad801d526c --- /dev/null +++ b/cloudformation/sagemaker/aws-sagemaker-inferenceexperiment_shadowmodelvariantconfig.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" +) + +// InferenceExperiment_ShadowModelVariantConfig AWS CloudFormation Resource (AWS::SageMaker::InferenceExperiment.ShadowModelVariantConfig) +// See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-sagemaker-inferenceexperiment-shadowmodelvariantconfig.html +type InferenceExperiment_ShadowModelVariantConfig struct { + + // SamplingPercentage AWS CloudFormation Property + // Required: true + // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-sagemaker-inferenceexperiment-shadowmodelvariantconfig.html#cfn-sagemaker-inferenceexperiment-shadowmodelvariantconfig-samplingpercentage + SamplingPercentage int `json:"SamplingPercentage"` + + // ShadowModelVariantName AWS CloudFormation Property + // Required: true + // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-sagemaker-inferenceexperiment-shadowmodelvariantconfig.html#cfn-sagemaker-inferenceexperiment-shadowmodelvariantconfig-shadowmodelvariantname + ShadowModelVariantName string `json:"ShadowModelVariantName"` + + // 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 *InferenceExperiment_ShadowModelVariantConfig) AWSCloudFormationType() string { + return "AWS::SageMaker::InferenceExperiment.ShadowModelVariantConfig" +} diff --git a/cloudformation/ssmcontacts/aws-ssmcontacts-contact.go b/cloudformation/ssmcontacts/aws-ssmcontacts-contact.go index 8f1c6194de..c4b1dc9d3d 100644 --- a/cloudformation/ssmcontacts/aws-ssmcontacts-contact.go +++ b/cloudformation/ssmcontacts/aws-ssmcontacts-contact.go @@ -24,9 +24,9 @@ type Contact struct { DisplayName string `json:"DisplayName"` // Plan AWS CloudFormation Property - // Required: true + // Required: false // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-ssmcontacts-contact.html#cfn-ssmcontacts-contact-plan - Plan []Contact_Stage `json:"Plan"` + Plan []Contact_Stage `json:"Plan,omitempty"` // Type AWS CloudFormation Property // Required: true diff --git a/cloudformation/vpclattice/aws-vpclattice-accesslogsubscription.go b/cloudformation/vpclattice/aws-vpclattice-accesslogsubscription.go new file mode 100644 index 0000000000..5be543154d --- /dev/null +++ b/cloudformation/vpclattice/aws-vpclattice-accesslogsubscription.go @@ -0,0 +1,128 @@ +// Code generated by "go generate". Please don't change this file directly. + +package vpclattice + +import ( + "bytes" + "encoding/json" + + "github.com/awslabs/goformation/v7/cloudformation/policies" + "github.com/awslabs/goformation/v7/cloudformation/tags" +) + +// AccessLogSubscription AWS CloudFormation Resource (AWS::VpcLattice::AccessLogSubscription) +// See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-vpclattice-accesslogsubscription.html +type AccessLogSubscription struct { + + // DestinationArn AWS CloudFormation Property + // Required: true + // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-vpclattice-accesslogsubscription.html#cfn-vpclattice-accesslogsubscription-destinationarn + DestinationArn string `json:"DestinationArn"` + + // ResourceIdentifier AWS CloudFormation Property + // Required: false + // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-vpclattice-accesslogsubscription.html#cfn-vpclattice-accesslogsubscription-resourceidentifier + ResourceIdentifier *string `json:"ResourceIdentifier,omitempty"` + + // Tags AWS CloudFormation Property + // Required: false + // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-vpclattice-accesslogsubscription.html#cfn-vpclattice-accesslogsubscription-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 *AccessLogSubscription) AWSCloudFormationType() string { + return "AWS::VpcLattice::AccessLogSubscription" +} + +// MarshalJSON is a custom JSON marshalling hook that embeds this object into +// an AWS CloudFormation JSON resource's 'Properties' field and adds a 'Type'. +func (r AccessLogSubscription) MarshalJSON() ([]byte, error) { + type Properties AccessLogSubscription + 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 *AccessLogSubscription) UnmarshalJSON(b []byte) error { + type Properties AccessLogSubscription + 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 = AccessLogSubscription(*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/vpclattice/aws-vpclattice-authpolicy.go b/cloudformation/vpclattice/aws-vpclattice-authpolicy.go new file mode 100644 index 0000000000..64bfcc4a48 --- /dev/null +++ b/cloudformation/vpclattice/aws-vpclattice-authpolicy.go @@ -0,0 +1,122 @@ +// Code generated by "go generate". Please don't change this file directly. + +package vpclattice + +import ( + "bytes" + "encoding/json" + + "github.com/awslabs/goformation/v7/cloudformation/policies" +) + +// AuthPolicy AWS CloudFormation Resource (AWS::VpcLattice::AuthPolicy) +// See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-vpclattice-authpolicy.html +type AuthPolicy struct { + + // Policy AWS CloudFormation Property + // Required: true + // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-vpclattice-authpolicy.html#cfn-vpclattice-authpolicy-policy + Policy interface{} `json:"Policy"` + + // ResourceIdentifier AWS CloudFormation Property + // Required: true + // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-vpclattice-authpolicy.html#cfn-vpclattice-authpolicy-resourceidentifier + ResourceIdentifier string `json:"ResourceIdentifier"` + + // 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 *AuthPolicy) AWSCloudFormationType() string { + return "AWS::VpcLattice::AuthPolicy" +} + +// MarshalJSON is a custom JSON marshalling hook that embeds this object into +// an AWS CloudFormation JSON resource's 'Properties' field and adds a 'Type'. +func (r AuthPolicy) MarshalJSON() ([]byte, error) { + type Properties AuthPolicy + 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 *AuthPolicy) UnmarshalJSON(b []byte) error { + type Properties AuthPolicy + 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 = AuthPolicy(*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/vpclattice/aws-vpclattice-listener.go b/cloudformation/vpclattice/aws-vpclattice-listener.go new file mode 100644 index 0000000000..c96e4f7a40 --- /dev/null +++ b/cloudformation/vpclattice/aws-vpclattice-listener.go @@ -0,0 +1,143 @@ +// Code generated by "go generate". Please don't change this file directly. + +package vpclattice + +import ( + "bytes" + "encoding/json" + + "github.com/awslabs/goformation/v7/cloudformation/policies" + "github.com/awslabs/goformation/v7/cloudformation/tags" +) + +// Listener AWS CloudFormation Resource (AWS::VpcLattice::Listener) +// See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-vpclattice-listener.html +type Listener struct { + + // DefaultAction AWS CloudFormation Property + // Required: true + // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-vpclattice-listener.html#cfn-vpclattice-listener-defaultaction + DefaultAction *Listener_DefaultAction `json:"DefaultAction"` + + // Name AWS CloudFormation Property + // Required: false + // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-vpclattice-listener.html#cfn-vpclattice-listener-name + Name *string `json:"Name,omitempty"` + + // Port AWS CloudFormation Property + // Required: false + // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-vpclattice-listener.html#cfn-vpclattice-listener-port + Port *int `json:"Port,omitempty"` + + // Protocol AWS CloudFormation Property + // Required: true + // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-vpclattice-listener.html#cfn-vpclattice-listener-protocol + Protocol string `json:"Protocol"` + + // ServiceIdentifier AWS CloudFormation Property + // Required: false + // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-vpclattice-listener.html#cfn-vpclattice-listener-serviceidentifier + ServiceIdentifier *string `json:"ServiceIdentifier,omitempty"` + + // Tags AWS CloudFormation Property + // Required: false + // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-vpclattice-listener.html#cfn-vpclattice-listener-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 *Listener) AWSCloudFormationType() string { + return "AWS::VpcLattice::Listener" +} + +// MarshalJSON is a custom JSON marshalling hook that embeds this object into +// an AWS CloudFormation JSON resource's 'Properties' field and adds a 'Type'. +func (r Listener) MarshalJSON() ([]byte, error) { + type Properties Listener + 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 *Listener) UnmarshalJSON(b []byte) error { + type Properties Listener + 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 = Listener(*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/vpclattice/aws-vpclattice-listener_defaultaction.go b/cloudformation/vpclattice/aws-vpclattice-listener_defaultaction.go new file mode 100644 index 0000000000..435702cef8 --- /dev/null +++ b/cloudformation/vpclattice/aws-vpclattice-listener_defaultaction.go @@ -0,0 +1,37 @@ +// Code generated by "go generate". Please don't change this file directly. + +package vpclattice + +import ( + "github.com/awslabs/goformation/v7/cloudformation/policies" +) + +// Listener_DefaultAction AWS CloudFormation Resource (AWS::VpcLattice::Listener.DefaultAction) +// See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-vpclattice-listener-defaultaction.html +type Listener_DefaultAction struct { + + // Forward AWS CloudFormation Property + // Required: true + // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-vpclattice-listener-defaultaction.html#cfn-vpclattice-listener-defaultaction-forward + Forward *Listener_Forward `json:"Forward"` + + // 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 *Listener_DefaultAction) AWSCloudFormationType() string { + return "AWS::VpcLattice::Listener.DefaultAction" +} diff --git a/cloudformation/vpclattice/aws-vpclattice-listener_forward.go b/cloudformation/vpclattice/aws-vpclattice-listener_forward.go new file mode 100644 index 0000000000..93483aeb60 --- /dev/null +++ b/cloudformation/vpclattice/aws-vpclattice-listener_forward.go @@ -0,0 +1,37 @@ +// Code generated by "go generate". Please don't change this file directly. + +package vpclattice + +import ( + "github.com/awslabs/goformation/v7/cloudformation/policies" +) + +// Listener_Forward AWS CloudFormation Resource (AWS::VpcLattice::Listener.Forward) +// See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-vpclattice-listener-forward.html +type Listener_Forward struct { + + // TargetGroups AWS CloudFormation Property + // Required: true + // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-vpclattice-listener-forward.html#cfn-vpclattice-listener-forward-targetgroups + TargetGroups []Listener_WeightedTargetGroup `json:"TargetGroups"` + + // 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 *Listener_Forward) AWSCloudFormationType() string { + return "AWS::VpcLattice::Listener.Forward" +} diff --git a/cloudformation/vpclattice/aws-vpclattice-listener_weightedtargetgroup.go b/cloudformation/vpclattice/aws-vpclattice-listener_weightedtargetgroup.go new file mode 100644 index 0000000000..21123beff8 --- /dev/null +++ b/cloudformation/vpclattice/aws-vpclattice-listener_weightedtargetgroup.go @@ -0,0 +1,42 @@ +// Code generated by "go generate". Please don't change this file directly. + +package vpclattice + +import ( + "github.com/awslabs/goformation/v7/cloudformation/policies" +) + +// Listener_WeightedTargetGroup AWS CloudFormation Resource (AWS::VpcLattice::Listener.WeightedTargetGroup) +// See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-vpclattice-listener-weightedtargetgroup.html +type Listener_WeightedTargetGroup struct { + + // TargetGroupIdentifier AWS CloudFormation Property + // Required: true + // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-vpclattice-listener-weightedtargetgroup.html#cfn-vpclattice-listener-weightedtargetgroup-targetgroupidentifier + TargetGroupIdentifier string `json:"TargetGroupIdentifier"` + + // Weight AWS CloudFormation Property + // Required: false + // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-vpclattice-listener-weightedtargetgroup.html#cfn-vpclattice-listener-weightedtargetgroup-weight + Weight *int `json:"Weight,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 *Listener_WeightedTargetGroup) AWSCloudFormationType() string { + return "AWS::VpcLattice::Listener.WeightedTargetGroup" +} diff --git a/cloudformation/vpclattice/aws-vpclattice-resourcepolicy.go b/cloudformation/vpclattice/aws-vpclattice-resourcepolicy.go new file mode 100644 index 0000000000..da731522ef --- /dev/null +++ b/cloudformation/vpclattice/aws-vpclattice-resourcepolicy.go @@ -0,0 +1,122 @@ +// Code generated by "go generate". Please don't change this file directly. + +package vpclattice + +import ( + "bytes" + "encoding/json" + + "github.com/awslabs/goformation/v7/cloudformation/policies" +) + +// ResourcePolicy AWS CloudFormation Resource (AWS::VpcLattice::ResourcePolicy) +// See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-vpclattice-resourcepolicy.html +type ResourcePolicy struct { + + // Policy AWS CloudFormation Property + // Required: true + // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-vpclattice-resourcepolicy.html#cfn-vpclattice-resourcepolicy-policy + Policy interface{} `json:"Policy"` + + // ResourceArn AWS CloudFormation Property + // Required: true + // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-vpclattice-resourcepolicy.html#cfn-vpclattice-resourcepolicy-resourcearn + ResourceArn string `json:"ResourceArn"` + + // 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 *ResourcePolicy) AWSCloudFormationType() string { + return "AWS::VpcLattice::ResourcePolicy" +} + +// MarshalJSON is a custom JSON marshalling hook that embeds this object into +// an AWS CloudFormation JSON resource's 'Properties' field and adds a 'Type'. +func (r ResourcePolicy) MarshalJSON() ([]byte, error) { + type Properties ResourcePolicy + 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 *ResourcePolicy) UnmarshalJSON(b []byte) error { + type Properties ResourcePolicy + 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 = ResourcePolicy(*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/vpclattice/aws-vpclattice-rule.go b/cloudformation/vpclattice/aws-vpclattice-rule.go new file mode 100644 index 0000000000..2dbff8b2f1 --- /dev/null +++ b/cloudformation/vpclattice/aws-vpclattice-rule.go @@ -0,0 +1,148 @@ +// Code generated by "go generate". Please don't change this file directly. + +package vpclattice + +import ( + "bytes" + "encoding/json" + + "github.com/awslabs/goformation/v7/cloudformation/policies" + "github.com/awslabs/goformation/v7/cloudformation/tags" +) + +// Rule AWS CloudFormation Resource (AWS::VpcLattice::Rule) +// See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-vpclattice-rule.html +type Rule struct { + + // Action AWS CloudFormation Property + // Required: true + // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-vpclattice-rule.html#cfn-vpclattice-rule-action + Action *Rule_Action `json:"Action"` + + // ListenerIdentifier AWS CloudFormation Property + // Required: false + // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-vpclattice-rule.html#cfn-vpclattice-rule-listeneridentifier + ListenerIdentifier *string `json:"ListenerIdentifier,omitempty"` + + // Match AWS CloudFormation Property + // Required: true + // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-vpclattice-rule.html#cfn-vpclattice-rule-match + Match *Rule_Match `json:"Match"` + + // Name AWS CloudFormation Property + // Required: false + // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-vpclattice-rule.html#cfn-vpclattice-rule-name + Name *string `json:"Name,omitempty"` + + // Priority AWS CloudFormation Property + // Required: true + // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-vpclattice-rule.html#cfn-vpclattice-rule-priority + Priority int `json:"Priority"` + + // ServiceIdentifier AWS CloudFormation Property + // Required: false + // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-vpclattice-rule.html#cfn-vpclattice-rule-serviceidentifier + ServiceIdentifier *string `json:"ServiceIdentifier,omitempty"` + + // Tags AWS CloudFormation Property + // Required: false + // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-vpclattice-rule.html#cfn-vpclattice-rule-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 *Rule) AWSCloudFormationType() string { + return "AWS::VpcLattice::Rule" +} + +// MarshalJSON is a custom JSON marshalling hook that embeds this object into +// an AWS CloudFormation JSON resource's 'Properties' field and adds a 'Type'. +func (r Rule) MarshalJSON() ([]byte, error) { + type Properties Rule + 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 *Rule) UnmarshalJSON(b []byte) error { + type Properties Rule + 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 = Rule(*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/vpclattice/aws-vpclattice-rule_action.go b/cloudformation/vpclattice/aws-vpclattice-rule_action.go new file mode 100644 index 0000000000..4238c8146e --- /dev/null +++ b/cloudformation/vpclattice/aws-vpclattice-rule_action.go @@ -0,0 +1,37 @@ +// Code generated by "go generate". Please don't change this file directly. + +package vpclattice + +import ( + "github.com/awslabs/goformation/v7/cloudformation/policies" +) + +// Rule_Action AWS CloudFormation Resource (AWS::VpcLattice::Rule.Action) +// See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-vpclattice-rule-action.html +type Rule_Action struct { + + // Forward AWS CloudFormation Property + // Required: true + // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-vpclattice-rule-action.html#cfn-vpclattice-rule-action-forward + Forward *Rule_Forward `json:"Forward"` + + // 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 *Rule_Action) AWSCloudFormationType() string { + return "AWS::VpcLattice::Rule.Action" +} diff --git a/cloudformation/vpclattice/aws-vpclattice-rule_forward.go b/cloudformation/vpclattice/aws-vpclattice-rule_forward.go new file mode 100644 index 0000000000..ad6fc75196 --- /dev/null +++ b/cloudformation/vpclattice/aws-vpclattice-rule_forward.go @@ -0,0 +1,37 @@ +// Code generated by "go generate". Please don't change this file directly. + +package vpclattice + +import ( + "github.com/awslabs/goformation/v7/cloudformation/policies" +) + +// Rule_Forward AWS CloudFormation Resource (AWS::VpcLattice::Rule.Forward) +// See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-vpclattice-rule-forward.html +type Rule_Forward struct { + + // TargetGroups AWS CloudFormation Property + // Required: true + // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-vpclattice-rule-forward.html#cfn-vpclattice-rule-forward-targetgroups + TargetGroups []Rule_WeightedTargetGroup `json:"TargetGroups"` + + // 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 *Rule_Forward) AWSCloudFormationType() string { + return "AWS::VpcLattice::Rule.Forward" +} diff --git a/cloudformation/vpclattice/aws-vpclattice-rule_headermatch.go b/cloudformation/vpclattice/aws-vpclattice-rule_headermatch.go new file mode 100644 index 0000000000..f9ad250297 --- /dev/null +++ b/cloudformation/vpclattice/aws-vpclattice-rule_headermatch.go @@ -0,0 +1,47 @@ +// Code generated by "go generate". Please don't change this file directly. + +package vpclattice + +import ( + "github.com/awslabs/goformation/v7/cloudformation/policies" +) + +// Rule_HeaderMatch AWS CloudFormation Resource (AWS::VpcLattice::Rule.HeaderMatch) +// See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-vpclattice-rule-headermatch.html +type Rule_HeaderMatch struct { + + // CaseSensitive AWS CloudFormation Property + // Required: false + // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-vpclattice-rule-headermatch.html#cfn-vpclattice-rule-headermatch-casesensitive + CaseSensitive *bool `json:"CaseSensitive,omitempty"` + + // Match AWS CloudFormation Property + // Required: true + // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-vpclattice-rule-headermatch.html#cfn-vpclattice-rule-headermatch-match + Match *Rule_HeaderMatchType `json:"Match"` + + // Name AWS CloudFormation Property + // Required: true + // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-vpclattice-rule-headermatch.html#cfn-vpclattice-rule-headermatch-name + Name string `json:"Name"` + + // 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 *Rule_HeaderMatch) AWSCloudFormationType() string { + return "AWS::VpcLattice::Rule.HeaderMatch" +} diff --git a/cloudformation/vpclattice/aws-vpclattice-rule_headermatchtype.go b/cloudformation/vpclattice/aws-vpclattice-rule_headermatchtype.go new file mode 100644 index 0000000000..67e9fc366a --- /dev/null +++ b/cloudformation/vpclattice/aws-vpclattice-rule_headermatchtype.go @@ -0,0 +1,47 @@ +// Code generated by "go generate". Please don't change this file directly. + +package vpclattice + +import ( + "github.com/awslabs/goformation/v7/cloudformation/policies" +) + +// Rule_HeaderMatchType AWS CloudFormation Resource (AWS::VpcLattice::Rule.HeaderMatchType) +// See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-vpclattice-rule-headermatchtype.html +type Rule_HeaderMatchType struct { + + // Contains AWS CloudFormation Property + // Required: false + // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-vpclattice-rule-headermatchtype.html#cfn-vpclattice-rule-headermatchtype-contains + Contains *string `json:"Contains,omitempty"` + + // Exact AWS CloudFormation Property + // Required: false + // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-vpclattice-rule-headermatchtype.html#cfn-vpclattice-rule-headermatchtype-exact + Exact *string `json:"Exact,omitempty"` + + // Prefix AWS CloudFormation Property + // Required: false + // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-vpclattice-rule-headermatchtype.html#cfn-vpclattice-rule-headermatchtype-prefix + Prefix *string `json:"Prefix,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 *Rule_HeaderMatchType) AWSCloudFormationType() string { + return "AWS::VpcLattice::Rule.HeaderMatchType" +} diff --git a/cloudformation/vpclattice/aws-vpclattice-rule_httpmatch.go b/cloudformation/vpclattice/aws-vpclattice-rule_httpmatch.go new file mode 100644 index 0000000000..593507e1cf --- /dev/null +++ b/cloudformation/vpclattice/aws-vpclattice-rule_httpmatch.go @@ -0,0 +1,47 @@ +// Code generated by "go generate". Please don't change this file directly. + +package vpclattice + +import ( + "github.com/awslabs/goformation/v7/cloudformation/policies" +) + +// Rule_HttpMatch AWS CloudFormation Resource (AWS::VpcLattice::Rule.HttpMatch) +// See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-vpclattice-rule-httpmatch.html +type Rule_HttpMatch struct { + + // HeaderMatches AWS CloudFormation Property + // Required: false + // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-vpclattice-rule-httpmatch.html#cfn-vpclattice-rule-httpmatch-headermatches + HeaderMatches []Rule_HeaderMatch `json:"HeaderMatches,omitempty"` + + // Method AWS CloudFormation Property + // Required: false + // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-vpclattice-rule-httpmatch.html#cfn-vpclattice-rule-httpmatch-method + Method *string `json:"Method,omitempty"` + + // PathMatch AWS CloudFormation Property + // Required: false + // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-vpclattice-rule-httpmatch.html#cfn-vpclattice-rule-httpmatch-pathmatch + PathMatch *Rule_PathMatch `json:"PathMatch,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 *Rule_HttpMatch) AWSCloudFormationType() string { + return "AWS::VpcLattice::Rule.HttpMatch" +} diff --git a/cloudformation/vpclattice/aws-vpclattice-rule_match.go b/cloudformation/vpclattice/aws-vpclattice-rule_match.go new file mode 100644 index 0000000000..ad3de0780f --- /dev/null +++ b/cloudformation/vpclattice/aws-vpclattice-rule_match.go @@ -0,0 +1,37 @@ +// Code generated by "go generate". Please don't change this file directly. + +package vpclattice + +import ( + "github.com/awslabs/goformation/v7/cloudformation/policies" +) + +// Rule_Match AWS CloudFormation Resource (AWS::VpcLattice::Rule.Match) +// See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-vpclattice-rule-match.html +type Rule_Match struct { + + // HttpMatch AWS CloudFormation Property + // Required: true + // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-vpclattice-rule-match.html#cfn-vpclattice-rule-match-httpmatch + HttpMatch *Rule_HttpMatch `json:"HttpMatch"` + + // 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 *Rule_Match) AWSCloudFormationType() string { + return "AWS::VpcLattice::Rule.Match" +} diff --git a/cloudformation/vpclattice/aws-vpclattice-rule_pathmatch.go b/cloudformation/vpclattice/aws-vpclattice-rule_pathmatch.go new file mode 100644 index 0000000000..af93f53681 --- /dev/null +++ b/cloudformation/vpclattice/aws-vpclattice-rule_pathmatch.go @@ -0,0 +1,42 @@ +// Code generated by "go generate". Please don't change this file directly. + +package vpclattice + +import ( + "github.com/awslabs/goformation/v7/cloudformation/policies" +) + +// Rule_PathMatch AWS CloudFormation Resource (AWS::VpcLattice::Rule.PathMatch) +// See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-vpclattice-rule-pathmatch.html +type Rule_PathMatch struct { + + // CaseSensitive AWS CloudFormation Property + // Required: false + // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-vpclattice-rule-pathmatch.html#cfn-vpclattice-rule-pathmatch-casesensitive + CaseSensitive *bool `json:"CaseSensitive,omitempty"` + + // Match AWS CloudFormation Property + // Required: true + // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-vpclattice-rule-pathmatch.html#cfn-vpclattice-rule-pathmatch-match + Match *Rule_PathMatchType `json:"Match"` + + // 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 *Rule_PathMatch) AWSCloudFormationType() string { + return "AWS::VpcLattice::Rule.PathMatch" +} diff --git a/cloudformation/vpclattice/aws-vpclattice-rule_pathmatchtype.go b/cloudformation/vpclattice/aws-vpclattice-rule_pathmatchtype.go new file mode 100644 index 0000000000..42cd70a5f9 --- /dev/null +++ b/cloudformation/vpclattice/aws-vpclattice-rule_pathmatchtype.go @@ -0,0 +1,42 @@ +// Code generated by "go generate". Please don't change this file directly. + +package vpclattice + +import ( + "github.com/awslabs/goformation/v7/cloudformation/policies" +) + +// Rule_PathMatchType AWS CloudFormation Resource (AWS::VpcLattice::Rule.PathMatchType) +// See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-vpclattice-rule-pathmatchtype.html +type Rule_PathMatchType struct { + + // Exact AWS CloudFormation Property + // Required: false + // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-vpclattice-rule-pathmatchtype.html#cfn-vpclattice-rule-pathmatchtype-exact + Exact *string `json:"Exact,omitempty"` + + // Prefix AWS CloudFormation Property + // Required: false + // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-vpclattice-rule-pathmatchtype.html#cfn-vpclattice-rule-pathmatchtype-prefix + Prefix *string `json:"Prefix,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 *Rule_PathMatchType) AWSCloudFormationType() string { + return "AWS::VpcLattice::Rule.PathMatchType" +} diff --git a/cloudformation/vpclattice/aws-vpclattice-rule_weightedtargetgroup.go b/cloudformation/vpclattice/aws-vpclattice-rule_weightedtargetgroup.go new file mode 100644 index 0000000000..cb555323e0 --- /dev/null +++ b/cloudformation/vpclattice/aws-vpclattice-rule_weightedtargetgroup.go @@ -0,0 +1,42 @@ +// Code generated by "go generate". Please don't change this file directly. + +package vpclattice + +import ( + "github.com/awslabs/goformation/v7/cloudformation/policies" +) + +// Rule_WeightedTargetGroup AWS CloudFormation Resource (AWS::VpcLattice::Rule.WeightedTargetGroup) +// See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-vpclattice-rule-weightedtargetgroup.html +type Rule_WeightedTargetGroup struct { + + // TargetGroupIdentifier AWS CloudFormation Property + // Required: true + // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-vpclattice-rule-weightedtargetgroup.html#cfn-vpclattice-rule-weightedtargetgroup-targetgroupidentifier + TargetGroupIdentifier string `json:"TargetGroupIdentifier"` + + // Weight AWS CloudFormation Property + // Required: false + // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-vpclattice-rule-weightedtargetgroup.html#cfn-vpclattice-rule-weightedtargetgroup-weight + Weight *int `json:"Weight,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 *Rule_WeightedTargetGroup) AWSCloudFormationType() string { + return "AWS::VpcLattice::Rule.WeightedTargetGroup" +} diff --git a/cloudformation/vpclattice/aws-vpclattice-service.go b/cloudformation/vpclattice/aws-vpclattice-service.go new file mode 100644 index 0000000000..4f504882a7 --- /dev/null +++ b/cloudformation/vpclattice/aws-vpclattice-service.go @@ -0,0 +1,143 @@ +// Code generated by "go generate". Please don't change this file directly. + +package vpclattice + +import ( + "bytes" + "encoding/json" + + "github.com/awslabs/goformation/v7/cloudformation/policies" + "github.com/awslabs/goformation/v7/cloudformation/tags" +) + +// Service AWS CloudFormation Resource (AWS::VpcLattice::Service) +// See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-vpclattice-service.html +type Service struct { + + // AuthType AWS CloudFormation Property + // Required: false + // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-vpclattice-service.html#cfn-vpclattice-service-authtype + AuthType *string `json:"AuthType,omitempty"` + + // CertificateArn AWS CloudFormation Property + // Required: false + // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-vpclattice-service.html#cfn-vpclattice-service-certificatearn + CertificateArn *string `json:"CertificateArn,omitempty"` + + // CustomDomainName AWS CloudFormation Property + // Required: false + // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-vpclattice-service.html#cfn-vpclattice-service-customdomainname + CustomDomainName *string `json:"CustomDomainName,omitempty"` + + // DnsEntry AWS CloudFormation Property + // Required: false + // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-vpclattice-service.html#cfn-vpclattice-service-dnsentry + DnsEntry *Service_DnsEntry `json:"DnsEntry,omitempty"` + + // Name AWS CloudFormation Property + // Required: false + // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-vpclattice-service.html#cfn-vpclattice-service-name + Name *string `json:"Name,omitempty"` + + // Tags AWS CloudFormation Property + // Required: false + // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-vpclattice-service.html#cfn-vpclattice-service-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 *Service) AWSCloudFormationType() string { + return "AWS::VpcLattice::Service" +} + +// MarshalJSON is a custom JSON marshalling hook that embeds this object into +// an AWS CloudFormation JSON resource's 'Properties' field and adds a 'Type'. +func (r Service) MarshalJSON() ([]byte, error) { + type Properties Service + 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 *Service) UnmarshalJSON(b []byte) error { + type Properties Service + 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 = Service(*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/vpclattice/aws-vpclattice-service_dnsentry.go b/cloudformation/vpclattice/aws-vpclattice-service_dnsentry.go new file mode 100644 index 0000000000..5258304407 --- /dev/null +++ b/cloudformation/vpclattice/aws-vpclattice-service_dnsentry.go @@ -0,0 +1,42 @@ +// Code generated by "go generate". Please don't change this file directly. + +package vpclattice + +import ( + "github.com/awslabs/goformation/v7/cloudformation/policies" +) + +// Service_DnsEntry AWS CloudFormation Resource (AWS::VpcLattice::Service.DnsEntry) +// See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-vpclattice-service-dnsentry.html +type Service_DnsEntry struct { + + // DomainName AWS CloudFormation Property + // Required: false + // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-vpclattice-service-dnsentry.html#cfn-vpclattice-service-dnsentry-domainname + DomainName *string `json:"DomainName,omitempty"` + + // HostedZoneId AWS CloudFormation Property + // Required: false + // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-vpclattice-service-dnsentry.html#cfn-vpclattice-service-dnsentry-hostedzoneid + HostedZoneId *string `json:"HostedZoneId,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 *Service_DnsEntry) AWSCloudFormationType() string { + return "AWS::VpcLattice::Service.DnsEntry" +} diff --git a/cloudformation/vpclattice/aws-vpclattice-servicenetwork.go b/cloudformation/vpclattice/aws-vpclattice-servicenetwork.go new file mode 100644 index 0000000000..2647558ede --- /dev/null +++ b/cloudformation/vpclattice/aws-vpclattice-servicenetwork.go @@ -0,0 +1,128 @@ +// Code generated by "go generate". Please don't change this file directly. + +package vpclattice + +import ( + "bytes" + "encoding/json" + + "github.com/awslabs/goformation/v7/cloudformation/policies" + "github.com/awslabs/goformation/v7/cloudformation/tags" +) + +// ServiceNetwork AWS CloudFormation Resource (AWS::VpcLattice::ServiceNetwork) +// See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-vpclattice-servicenetwork.html +type ServiceNetwork struct { + + // AuthType AWS CloudFormation Property + // Required: false + // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-vpclattice-servicenetwork.html#cfn-vpclattice-servicenetwork-authtype + AuthType *string `json:"AuthType,omitempty"` + + // Name AWS CloudFormation Property + // Required: false + // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-vpclattice-servicenetwork.html#cfn-vpclattice-servicenetwork-name + Name *string `json:"Name,omitempty"` + + // Tags AWS CloudFormation Property + // Required: false + // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-vpclattice-servicenetwork.html#cfn-vpclattice-servicenetwork-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 *ServiceNetwork) AWSCloudFormationType() string { + return "AWS::VpcLattice::ServiceNetwork" +} + +// MarshalJSON is a custom JSON marshalling hook that embeds this object into +// an AWS CloudFormation JSON resource's 'Properties' field and adds a 'Type'. +func (r ServiceNetwork) MarshalJSON() ([]byte, error) { + type Properties ServiceNetwork + 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 *ServiceNetwork) UnmarshalJSON(b []byte) error { + type Properties ServiceNetwork + 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 = ServiceNetwork(*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/vpclattice/aws-vpclattice-servicenetworkserviceassociation.go b/cloudformation/vpclattice/aws-vpclattice-servicenetworkserviceassociation.go new file mode 100644 index 0000000000..244611d72f --- /dev/null +++ b/cloudformation/vpclattice/aws-vpclattice-servicenetworkserviceassociation.go @@ -0,0 +1,133 @@ +// Code generated by "go generate". Please don't change this file directly. + +package vpclattice + +import ( + "bytes" + "encoding/json" + + "github.com/awslabs/goformation/v7/cloudformation/policies" + "github.com/awslabs/goformation/v7/cloudformation/tags" +) + +// ServiceNetworkServiceAssociation AWS CloudFormation Resource (AWS::VpcLattice::ServiceNetworkServiceAssociation) +// See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-vpclattice-servicenetworkserviceassociation.html +type ServiceNetworkServiceAssociation struct { + + // DnsEntry AWS CloudFormation Property + // Required: false + // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-vpclattice-servicenetworkserviceassociation.html#cfn-vpclattice-servicenetworkserviceassociation-dnsentry + DnsEntry *ServiceNetworkServiceAssociation_DnsEntry `json:"DnsEntry,omitempty"` + + // ServiceIdentifier AWS CloudFormation Property + // Required: false + // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-vpclattice-servicenetworkserviceassociation.html#cfn-vpclattice-servicenetworkserviceassociation-serviceidentifier + ServiceIdentifier *string `json:"ServiceIdentifier,omitempty"` + + // ServiceNetworkIdentifier AWS CloudFormation Property + // Required: false + // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-vpclattice-servicenetworkserviceassociation.html#cfn-vpclattice-servicenetworkserviceassociation-servicenetworkidentifier + ServiceNetworkIdentifier *string `json:"ServiceNetworkIdentifier,omitempty"` + + // Tags AWS CloudFormation Property + // Required: false + // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-vpclattice-servicenetworkserviceassociation.html#cfn-vpclattice-servicenetworkserviceassociation-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 *ServiceNetworkServiceAssociation) AWSCloudFormationType() string { + return "AWS::VpcLattice::ServiceNetworkServiceAssociation" +} + +// MarshalJSON is a custom JSON marshalling hook that embeds this object into +// an AWS CloudFormation JSON resource's 'Properties' field and adds a 'Type'. +func (r ServiceNetworkServiceAssociation) MarshalJSON() ([]byte, error) { + type Properties ServiceNetworkServiceAssociation + 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 *ServiceNetworkServiceAssociation) UnmarshalJSON(b []byte) error { + type Properties ServiceNetworkServiceAssociation + 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 = ServiceNetworkServiceAssociation(*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/vpclattice/aws-vpclattice-servicenetworkserviceassociation_dnsentry.go b/cloudformation/vpclattice/aws-vpclattice-servicenetworkserviceassociation_dnsentry.go new file mode 100644 index 0000000000..879c484be4 --- /dev/null +++ b/cloudformation/vpclattice/aws-vpclattice-servicenetworkserviceassociation_dnsentry.go @@ -0,0 +1,42 @@ +// Code generated by "go generate". Please don't change this file directly. + +package vpclattice + +import ( + "github.com/awslabs/goformation/v7/cloudformation/policies" +) + +// ServiceNetworkServiceAssociation_DnsEntry AWS CloudFormation Resource (AWS::VpcLattice::ServiceNetworkServiceAssociation.DnsEntry) +// See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-vpclattice-servicenetworkserviceassociation-dnsentry.html +type ServiceNetworkServiceAssociation_DnsEntry struct { + + // DomainName AWS CloudFormation Property + // Required: false + // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-vpclattice-servicenetworkserviceassociation-dnsentry.html#cfn-vpclattice-servicenetworkserviceassociation-dnsentry-domainname + DomainName *string `json:"DomainName,omitempty"` + + // HostedZoneId AWS CloudFormation Property + // Required: false + // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-vpclattice-servicenetworkserviceassociation-dnsentry.html#cfn-vpclattice-servicenetworkserviceassociation-dnsentry-hostedzoneid + HostedZoneId *string `json:"HostedZoneId,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 *ServiceNetworkServiceAssociation_DnsEntry) AWSCloudFormationType() string { + return "AWS::VpcLattice::ServiceNetworkServiceAssociation.DnsEntry" +} diff --git a/cloudformation/vpclattice/aws-vpclattice-servicenetworkvpcassociation.go b/cloudformation/vpclattice/aws-vpclattice-servicenetworkvpcassociation.go new file mode 100644 index 0000000000..6a38bb99a9 --- /dev/null +++ b/cloudformation/vpclattice/aws-vpclattice-servicenetworkvpcassociation.go @@ -0,0 +1,133 @@ +// Code generated by "go generate". Please don't change this file directly. + +package vpclattice + +import ( + "bytes" + "encoding/json" + + "github.com/awslabs/goformation/v7/cloudformation/policies" + "github.com/awslabs/goformation/v7/cloudformation/tags" +) + +// ServiceNetworkVpcAssociation AWS CloudFormation Resource (AWS::VpcLattice::ServiceNetworkVpcAssociation) +// See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-vpclattice-servicenetworkvpcassociation.html +type ServiceNetworkVpcAssociation struct { + + // SecurityGroupIds AWS CloudFormation Property + // Required: false + // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-vpclattice-servicenetworkvpcassociation.html#cfn-vpclattice-servicenetworkvpcassociation-securitygroupids + SecurityGroupIds []string `json:"SecurityGroupIds,omitempty"` + + // ServiceNetworkIdentifier AWS CloudFormation Property + // Required: false + // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-vpclattice-servicenetworkvpcassociation.html#cfn-vpclattice-servicenetworkvpcassociation-servicenetworkidentifier + ServiceNetworkIdentifier *string `json:"ServiceNetworkIdentifier,omitempty"` + + // Tags AWS CloudFormation Property + // Required: false + // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-vpclattice-servicenetworkvpcassociation.html#cfn-vpclattice-servicenetworkvpcassociation-tags + Tags []tags.Tag `json:"Tags,omitempty"` + + // VpcIdentifier AWS CloudFormation Property + // Required: false + // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-vpclattice-servicenetworkvpcassociation.html#cfn-vpclattice-servicenetworkvpcassociation-vpcidentifier + VpcIdentifier *string `json:"VpcIdentifier,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 *ServiceNetworkVpcAssociation) AWSCloudFormationType() string { + return "AWS::VpcLattice::ServiceNetworkVpcAssociation" +} + +// MarshalJSON is a custom JSON marshalling hook that embeds this object into +// an AWS CloudFormation JSON resource's 'Properties' field and adds a 'Type'. +func (r ServiceNetworkVpcAssociation) MarshalJSON() ([]byte, error) { + type Properties ServiceNetworkVpcAssociation + 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 *ServiceNetworkVpcAssociation) UnmarshalJSON(b []byte) error { + type Properties ServiceNetworkVpcAssociation + 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 = ServiceNetworkVpcAssociation(*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/vpclattice/aws-vpclattice-targetgroup.go b/cloudformation/vpclattice/aws-vpclattice-targetgroup.go new file mode 100644 index 0000000000..dcf9a484e5 --- /dev/null +++ b/cloudformation/vpclattice/aws-vpclattice-targetgroup.go @@ -0,0 +1,138 @@ +// Code generated by "go generate". Please don't change this file directly. + +package vpclattice + +import ( + "bytes" + "encoding/json" + + "github.com/awslabs/goformation/v7/cloudformation/policies" + "github.com/awslabs/goformation/v7/cloudformation/tags" +) + +// TargetGroup AWS CloudFormation Resource (AWS::VpcLattice::TargetGroup) +// See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-vpclattice-targetgroup.html +type TargetGroup struct { + + // Config AWS CloudFormation Property + // Required: false + // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-vpclattice-targetgroup.html#cfn-vpclattice-targetgroup-config + Config *TargetGroup_TargetGroupConfig `json:"Config,omitempty"` + + // Name AWS CloudFormation Property + // Required: false + // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-vpclattice-targetgroup.html#cfn-vpclattice-targetgroup-name + Name *string `json:"Name,omitempty"` + + // Tags AWS CloudFormation Property + // Required: false + // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-vpclattice-targetgroup.html#cfn-vpclattice-targetgroup-tags + Tags []tags.Tag `json:"Tags,omitempty"` + + // Targets AWS CloudFormation Property + // Required: false + // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-vpclattice-targetgroup.html#cfn-vpclattice-targetgroup-targets + Targets []TargetGroup_Target `json:"Targets,omitempty"` + + // Type AWS CloudFormation Property + // Required: true + // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-vpclattice-targetgroup.html#cfn-vpclattice-targetgroup-type + Type string `json:"Type"` + + // 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 *TargetGroup) AWSCloudFormationType() string { + return "AWS::VpcLattice::TargetGroup" +} + +// MarshalJSON is a custom JSON marshalling hook that embeds this object into +// an AWS CloudFormation JSON resource's 'Properties' field and adds a 'Type'. +func (r TargetGroup) MarshalJSON() ([]byte, error) { + type Properties TargetGroup + 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 *TargetGroup) UnmarshalJSON(b []byte) error { + type Properties TargetGroup + 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 = TargetGroup(*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/vpclattice/aws-vpclattice-targetgroup_healthcheckconfig.go b/cloudformation/vpclattice/aws-vpclattice-targetgroup_healthcheckconfig.go new file mode 100644 index 0000000000..2dda0314d5 --- /dev/null +++ b/cloudformation/vpclattice/aws-vpclattice-targetgroup_healthcheckconfig.go @@ -0,0 +1,77 @@ +// Code generated by "go generate". Please don't change this file directly. + +package vpclattice + +import ( + "github.com/awslabs/goformation/v7/cloudformation/policies" +) + +// TargetGroup_HealthCheckConfig AWS CloudFormation Resource (AWS::VpcLattice::TargetGroup.HealthCheckConfig) +// See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-vpclattice-targetgroup-healthcheckconfig.html +type TargetGroup_HealthCheckConfig struct { + + // Enabled AWS CloudFormation Property + // Required: false + // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-vpclattice-targetgroup-healthcheckconfig.html#cfn-vpclattice-targetgroup-healthcheckconfig-enabled + Enabled *bool `json:"Enabled,omitempty"` + + // HealthCheckIntervalSeconds AWS CloudFormation Property + // Required: false + // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-vpclattice-targetgroup-healthcheckconfig.html#cfn-vpclattice-targetgroup-healthcheckconfig-healthcheckintervalseconds + HealthCheckIntervalSeconds *int `json:"HealthCheckIntervalSeconds,omitempty"` + + // HealthCheckTimeoutSeconds AWS CloudFormation Property + // Required: false + // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-vpclattice-targetgroup-healthcheckconfig.html#cfn-vpclattice-targetgroup-healthcheckconfig-healthchecktimeoutseconds + HealthCheckTimeoutSeconds *int `json:"HealthCheckTimeoutSeconds,omitempty"` + + // HealthyThresholdCount AWS CloudFormation Property + // Required: false + // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-vpclattice-targetgroup-healthcheckconfig.html#cfn-vpclattice-targetgroup-healthcheckconfig-healthythresholdcount + HealthyThresholdCount *int `json:"HealthyThresholdCount,omitempty"` + + // Matcher AWS CloudFormation Property + // Required: false + // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-vpclattice-targetgroup-healthcheckconfig.html#cfn-vpclattice-targetgroup-healthcheckconfig-matcher + Matcher *TargetGroup_Matcher `json:"Matcher,omitempty"` + + // Path AWS CloudFormation Property + // Required: false + // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-vpclattice-targetgroup-healthcheckconfig.html#cfn-vpclattice-targetgroup-healthcheckconfig-path + Path *string `json:"Path,omitempty"` + + // Port AWS CloudFormation Property + // Required: false + // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-vpclattice-targetgroup-healthcheckconfig.html#cfn-vpclattice-targetgroup-healthcheckconfig-port + Port *int `json:"Port,omitempty"` + + // Protocol AWS CloudFormation Property + // Required: false + // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-vpclattice-targetgroup-healthcheckconfig.html#cfn-vpclattice-targetgroup-healthcheckconfig-protocol + Protocol *string `json:"Protocol,omitempty"` + + // UnhealthyThresholdCount AWS CloudFormation Property + // Required: false + // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-vpclattice-targetgroup-healthcheckconfig.html#cfn-vpclattice-targetgroup-healthcheckconfig-unhealthythresholdcount + UnhealthyThresholdCount *int `json:"UnhealthyThresholdCount,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 *TargetGroup_HealthCheckConfig) AWSCloudFormationType() string { + return "AWS::VpcLattice::TargetGroup.HealthCheckConfig" +} diff --git a/cloudformation/vpclattice/aws-vpclattice-targetgroup_matcher.go b/cloudformation/vpclattice/aws-vpclattice-targetgroup_matcher.go new file mode 100644 index 0000000000..ef41484c6d --- /dev/null +++ b/cloudformation/vpclattice/aws-vpclattice-targetgroup_matcher.go @@ -0,0 +1,37 @@ +// Code generated by "go generate". Please don't change this file directly. + +package vpclattice + +import ( + "github.com/awslabs/goformation/v7/cloudformation/policies" +) + +// TargetGroup_Matcher AWS CloudFormation Resource (AWS::VpcLattice::TargetGroup.Matcher) +// See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-vpclattice-targetgroup-matcher.html +type TargetGroup_Matcher struct { + + // HttpCode AWS CloudFormation Property + // Required: true + // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-vpclattice-targetgroup-matcher.html#cfn-vpclattice-targetgroup-matcher-httpcode + HttpCode string `json:"HttpCode"` + + // 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 *TargetGroup_Matcher) AWSCloudFormationType() string { + return "AWS::VpcLattice::TargetGroup.Matcher" +} diff --git a/cloudformation/vpclattice/aws-vpclattice-targetgroup_target.go b/cloudformation/vpclattice/aws-vpclattice-targetgroup_target.go new file mode 100644 index 0000000000..7360d515a6 --- /dev/null +++ b/cloudformation/vpclattice/aws-vpclattice-targetgroup_target.go @@ -0,0 +1,42 @@ +// Code generated by "go generate". Please don't change this file directly. + +package vpclattice + +import ( + "github.com/awslabs/goformation/v7/cloudformation/policies" +) + +// TargetGroup_Target AWS CloudFormation Resource (AWS::VpcLattice::TargetGroup.Target) +// See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-vpclattice-targetgroup-target.html +type TargetGroup_Target struct { + + // Id AWS CloudFormation Property + // Required: true + // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-vpclattice-targetgroup-target.html#cfn-vpclattice-targetgroup-target-id + Id string `json:"Id"` + + // Port AWS CloudFormation Property + // Required: false + // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-vpclattice-targetgroup-target.html#cfn-vpclattice-targetgroup-target-port + Port *int `json:"Port,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 *TargetGroup_Target) AWSCloudFormationType() string { + return "AWS::VpcLattice::TargetGroup.Target" +} diff --git a/cloudformation/vpclattice/aws-vpclattice-targetgroup_targetgroupconfig.go b/cloudformation/vpclattice/aws-vpclattice-targetgroup_targetgroupconfig.go new file mode 100644 index 0000000000..143b74a6f8 --- /dev/null +++ b/cloudformation/vpclattice/aws-vpclattice-targetgroup_targetgroupconfig.go @@ -0,0 +1,57 @@ +// Code generated by "go generate". Please don't change this file directly. + +package vpclattice + +import ( + "github.com/awslabs/goformation/v7/cloudformation/policies" +) + +// TargetGroup_TargetGroupConfig AWS CloudFormation Resource (AWS::VpcLattice::TargetGroup.TargetGroupConfig) +// See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-vpclattice-targetgroup-targetgroupconfig.html +type TargetGroup_TargetGroupConfig struct { + + // HealthCheck AWS CloudFormation Property + // Required: false + // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-vpclattice-targetgroup-targetgroupconfig.html#cfn-vpclattice-targetgroup-targetgroupconfig-healthcheck + HealthCheck *TargetGroup_HealthCheckConfig `json:"HealthCheck,omitempty"` + + // Port AWS CloudFormation Property + // Required: true + // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-vpclattice-targetgroup-targetgroupconfig.html#cfn-vpclattice-targetgroup-targetgroupconfig-port + Port int `json:"Port"` + + // Protocol AWS CloudFormation Property + // Required: true + // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-vpclattice-targetgroup-targetgroupconfig.html#cfn-vpclattice-targetgroup-targetgroupconfig-protocol + Protocol string `json:"Protocol"` + + // ProtocolVersion AWS CloudFormation Property + // Required: false + // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-vpclattice-targetgroup-targetgroupconfig.html#cfn-vpclattice-targetgroup-targetgroupconfig-protocolversion + ProtocolVersion *string `json:"ProtocolVersion,omitempty"` + + // VpcIdentifier AWS CloudFormation Property + // Required: true + // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-vpclattice-targetgroup-targetgroupconfig.html#cfn-vpclattice-targetgroup-targetgroupconfig-vpcidentifier + VpcIdentifier string `json:"VpcIdentifier"` + + // 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 *TargetGroup_TargetGroupConfig) AWSCloudFormationType() string { + return "AWS::VpcLattice::TargetGroup.TargetGroupConfig" +} diff --git a/schema/cdk.go b/schema/cdk.go index 74e75fccc2..21e524385a 100644 --- a/schema/cdk.go +++ b/schema/cdk.go @@ -16427,6 +16427,30 @@ var CdkSchema = `{ ], "type": "object" }, + "AWS::Athena::WorkGroup.AclConfiguration": { + "additionalProperties": false, + "properties": { + "S3AclOption": { + "type": "string" + } + }, + "required": [ + "S3AclOption" + ], + "type": "object" + }, + "AWS::Athena::WorkGroup.CustomerContentEncryptionConfiguration": { + "additionalProperties": false, + "properties": { + "KmsKey": { + "type": "string" + } + }, + "required": [ + "KmsKey" + ], + "type": "object" + }, "AWS::Athena::WorkGroup.EncryptionConfiguration": { "additionalProperties": false, "properties": { @@ -16457,9 +16481,15 @@ var CdkSchema = `{ "AWS::Athena::WorkGroup.ResultConfiguration": { "additionalProperties": false, "properties": { + "AclConfiguration": { + "$ref": "#/definitions/AWS::Athena::WorkGroup.AclConfiguration" + }, "EncryptionConfiguration": { "$ref": "#/definitions/AWS::Athena::WorkGroup.EncryptionConfiguration" }, + "ExpectedBucketOwner": { + "type": "string" + }, "OutputLocation": { "type": "string" } @@ -16469,15 +16499,24 @@ var CdkSchema = `{ "AWS::Athena::WorkGroup.WorkGroupConfiguration": { "additionalProperties": false, "properties": { + "AdditionalConfiguration": { + "type": "string" + }, "BytesScannedCutoffPerQuery": { "type": "number" }, + "CustomerContentEncryptionConfiguration": { + "$ref": "#/definitions/AWS::Athena::WorkGroup.CustomerContentEncryptionConfiguration" + }, "EnforceWorkGroupConfiguration": { "type": "boolean" }, "EngineVersion": { "$ref": "#/definitions/AWS::Athena::WorkGroup.EngineVersion" }, + "ExecutionRole": { + "type": "string" + }, "PublishCloudWatchMetricsEnabled": { "type": "boolean" }, @@ -21849,6 +21888,9 @@ var CdkSchema = `{ "BillingMode": { "$ref": "#/definitions/AWS::Cassandra::Table.BillingMode" }, + "ClientSideTimestampsEnabled": { + "type": "boolean" + }, "ClusteringKeyColumns": { "items": { "$ref": "#/definitions/AWS::Cassandra::Table.ClusteringKeyColumn" @@ -22177,7 +22219,7 @@ var CdkSchema = `{ ], "type": "object" }, - "AWS::Chatbot::SlackChannelConfiguration": { + "AWS::Chatbot::MicrosoftTeamsChannelConfiguration": { "additionalProperties": false, "properties": { "Condition": { @@ -22227,18 +22269,21 @@ var CdkSchema = `{ "LoggingLevel": { "type": "string" }, - "SlackChannelId": { - "type": "string" - }, - "SlackWorkspaceId": { - "type": "string" - }, "SnsTopicArns": { "items": { "type": "string" }, "type": "array" }, + "TeamId": { + "type": "string" + }, + "TeamsChannelId": { + "type": "string" + }, + "TeamsTenantId": { + "type": "string" + }, "UserRoleRequired": { "type": "boolean" } @@ -22246,14 +22291,15 @@ var CdkSchema = `{ "required": [ "ConfigurationName", "IamRoleArn", - "SlackChannelId", - "SlackWorkspaceId" + "TeamId", + "TeamsChannelId", + "TeamsTenantId" ], "type": "object" }, "Type": { "enum": [ - "AWS::Chatbot::SlackChannelConfiguration" + "AWS::Chatbot::MicrosoftTeamsChannelConfiguration" ], "type": "string" }, @@ -22272,7 +22318,7 @@ var CdkSchema = `{ ], "type": "object" }, - "AWS::Cloud9::EnvironmentEC2": { + "AWS::Chatbot::SlackChannelConfiguration": { "additionalProperties": false, "properties": { "Condition": { @@ -22307,51 +22353,48 @@ var CdkSchema = `{ "Properties": { "additionalProperties": false, "properties": { - "AutomaticStopTimeMinutes": { - "type": "number" - }, - "ConnectionType": { + "ConfigurationName": { "type": "string" }, - "Description": { - "type": "string" + "GuardrailPolicies": { + "items": { + "type": "string" + }, + "type": "array" }, - "ImageId": { + "IamRoleArn": { "type": "string" }, - "InstanceType": { + "LoggingLevel": { "type": "string" }, - "Name": { + "SlackChannelId": { "type": "string" }, - "OwnerArn": { + "SlackWorkspaceId": { "type": "string" }, - "Repositories": { + "SnsTopicArns": { "items": { - "$ref": "#/definitions/AWS::Cloud9::EnvironmentEC2.Repository" + "type": "string" }, "type": "array" }, - "SubnetId": { - "type": "string" - }, - "Tags": { - "items": { - "$ref": "#/definitions/Tag" - }, - "type": "array" + "UserRoleRequired": { + "type": "boolean" } }, "required": [ - "InstanceType" + "ConfigurationName", + "IamRoleArn", + "SlackChannelId", + "SlackWorkspaceId" ], "type": "object" }, "Type": { "enum": [ - "AWS::Cloud9::EnvironmentEC2" + "AWS::Chatbot::SlackChannelConfiguration" ], "type": "string" }, @@ -22370,23 +22413,7 @@ var CdkSchema = `{ ], "type": "object" }, - "AWS::Cloud9::EnvironmentEC2.Repository": { - "additionalProperties": false, - "properties": { - "PathComponent": { - "type": "string" - }, - "RepositoryUrl": { - "type": "string" - } - }, - "required": [ - "PathComponent", - "RepositoryUrl" - ], - "type": "object" - }, - "AWS::CloudFormation::CustomResource": { + "AWS::Cloud9::EnvironmentEC2": { "additionalProperties": false, "properties": { "Condition": { @@ -22421,18 +22448,51 @@ var CdkSchema = `{ "Properties": { "additionalProperties": false, "properties": { - "ServiceToken": { + "AutomaticStopTimeMinutes": { + "type": "number" + }, + "ConnectionType": { "type": "string" + }, + "Description": { + "type": "string" + }, + "ImageId": { + "type": "string" + }, + "InstanceType": { + "type": "string" + }, + "Name": { + "type": "string" + }, + "OwnerArn": { + "type": "string" + }, + "Repositories": { + "items": { + "$ref": "#/definitions/AWS::Cloud9::EnvironmentEC2.Repository" + }, + "type": "array" + }, + "SubnetId": { + "type": "string" + }, + "Tags": { + "items": { + "$ref": "#/definitions/Tag" + }, + "type": "array" } }, "required": [ - "ServiceToken" + "InstanceType" ], "type": "object" }, "Type": { "enum": [ - "AWS::CloudFormation::CustomResource" + "AWS::Cloud9::EnvironmentEC2" ], "type": "string" }, @@ -22451,74 +22511,23 @@ var CdkSchema = `{ ], "type": "object" }, - "AWS::CloudFormation::HookDefaultVersion": { + "AWS::Cloud9::EnvironmentEC2.Repository": { "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": { - "TypeName": { - "type": "string" - }, - "TypeVersionArn": { - "type": "string" - }, - "VersionId": { - "type": "string" - } - }, - "type": "object" - }, - "Type": { - "enum": [ - "AWS::CloudFormation::HookDefaultVersion" - ], + "PathComponent": { "type": "string" }, - "UpdateReplacePolicy": { - "enum": [ - "Delete", - "Retain", - "Snapshot" - ], + "RepositoryUrl": { "type": "string" } }, "required": [ - "Type" + "PathComponent", + "RepositoryUrl" ], "type": "object" }, - "AWS::CloudFormation::HookTypeConfig": { + "AWS::CloudFormation::CustomResource": { "additionalProperties": false, "properties": { "Condition": { @@ -22553,27 +22562,18 @@ var CdkSchema = `{ "Properties": { "additionalProperties": false, "properties": { - "Configuration": { - "type": "string" - }, - "ConfigurationAlias": { - "type": "string" - }, - "TypeArn": { - "type": "string" - }, - "TypeName": { + "ServiceToken": { "type": "string" } }, "required": [ - "Configuration" + "ServiceToken" ], "type": "object" }, "Type": { "enum": [ - "AWS::CloudFormation::HookTypeConfig" + "AWS::CloudFormation::CustomResource" ], "type": "string" }, @@ -22592,7 +22592,7 @@ var CdkSchema = `{ ], "type": "object" }, - "AWS::CloudFormation::HookVersion": { + "AWS::CloudFormation::HookDefaultVersion": { "additionalProperties": false, "properties": { "Condition": { @@ -22627,28 +22627,21 @@ var CdkSchema = `{ "Properties": { "additionalProperties": false, "properties": { - "ExecutionRoleArn": { + "TypeName": { "type": "string" }, - "LoggingConfig": { - "$ref": "#/definitions/AWS::CloudFormation::HookVersion.LoggingConfig" - }, - "SchemaHandlerPackage": { + "TypeVersionArn": { "type": "string" }, - "TypeName": { + "VersionId": { "type": "string" } }, - "required": [ - "SchemaHandlerPackage", - "TypeName" - ], "type": "object" }, "Type": { "enum": [ - "AWS::CloudFormation::HookVersion" + "AWS::CloudFormation::HookDefaultVersion" ], "type": "string" }, @@ -22662,24 +22655,172 @@ var CdkSchema = `{ } }, "required": [ - "Type", - "Properties" + "Type" ], "type": "object" }, - "AWS::CloudFormation::HookVersion.LoggingConfig": { - "additionalProperties": false, - "properties": { - "LogGroupName": { - "type": "string" - }, - "LogRoleArn": { - "type": "string" - } - }, - "type": "object" - }, - "AWS::CloudFormation::Macro": { + "AWS::CloudFormation::HookTypeConfig": { + "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": { + "Configuration": { + "type": "string" + }, + "ConfigurationAlias": { + "type": "string" + }, + "TypeArn": { + "type": "string" + }, + "TypeName": { + "type": "string" + } + }, + "required": [ + "Configuration" + ], + "type": "object" + }, + "Type": { + "enum": [ + "AWS::CloudFormation::HookTypeConfig" + ], + "type": "string" + }, + "UpdateReplacePolicy": { + "enum": [ + "Delete", + "Retain", + "Snapshot" + ], + "type": "string" + } + }, + "required": [ + "Type", + "Properties" + ], + "type": "object" + }, + "AWS::CloudFormation::HookVersion": { + "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": { + "ExecutionRoleArn": { + "type": "string" + }, + "LoggingConfig": { + "$ref": "#/definitions/AWS::CloudFormation::HookVersion.LoggingConfig" + }, + "SchemaHandlerPackage": { + "type": "string" + }, + "TypeName": { + "type": "string" + } + }, + "required": [ + "SchemaHandlerPackage", + "TypeName" + ], + "type": "object" + }, + "Type": { + "enum": [ + "AWS::CloudFormation::HookVersion" + ], + "type": "string" + }, + "UpdateReplacePolicy": { + "enum": [ + "Delete", + "Retain", + "Snapshot" + ], + "type": "string" + } + }, + "required": [ + "Type", + "Properties" + ], + "type": "object" + }, + "AWS::CloudFormation::HookVersion.LoggingConfig": { + "additionalProperties": false, + "properties": { + "LogGroupName": { + "type": "string" + }, + "LogRoleArn": { + "type": "string" + } + }, + "type": "object" + }, + "AWS::CloudFormation::Macro": { "additionalProperties": false, "properties": { "Condition": { @@ -32127,7 +32268,7 @@ var CdkSchema = `{ ], "type": "object" }, - "AWS::Config::AggregationAuthorization": { + "AWS::Comprehend::Flywheel": { "additionalProperties": false, "properties": { "Condition": { @@ -32162,10 +32303,22 @@ var CdkSchema = `{ "Properties": { "additionalProperties": false, "properties": { - "AuthorizedAccountId": { + "ActiveModelArn": { "type": "string" }, - "AuthorizedAwsRegion": { + "DataAccessRoleArn": { + "type": "string" + }, + "DataLakeS3Uri": { + "type": "string" + }, + "DataSecurityConfig": { + "$ref": "#/definitions/AWS::Comprehend::Flywheel.DataSecurityConfig" + }, + "FlywheelName": { + "type": "string" + }, + "ModelType": { "type": "string" }, "Tags": { @@ -32173,17 +32326,21 @@ var CdkSchema = `{ "$ref": "#/definitions/Tag" }, "type": "array" + }, + "TaskConfig": { + "$ref": "#/definitions/AWS::Comprehend::Flywheel.TaskConfig" } }, "required": [ - "AuthorizedAccountId", - "AuthorizedAwsRegion" + "DataAccessRoleArn", + "DataLakeS3Uri", + "FlywheelName" ], "type": "object" }, "Type": { "enum": [ - "AWS::Config::AggregationAuthorization" + "AWS::Comprehend::Flywheel" ], "type": "string" }, @@ -32202,7 +32359,182 @@ var CdkSchema = `{ ], "type": "object" }, - "AWS::Config::ConfigRule": { + "AWS::Comprehend::Flywheel.DataSecurityConfig": { + "additionalProperties": false, + "properties": { + "DataLakeKmsKeyId": { + "type": "string" + }, + "ModelKmsKeyId": { + "type": "string" + }, + "VolumeKmsKeyId": { + "type": "string" + }, + "VpcConfig": { + "$ref": "#/definitions/AWS::Comprehend::Flywheel.VpcConfig" + } + }, + "type": "object" + }, + "AWS::Comprehend::Flywheel.DocumentClassificationConfig": { + "additionalProperties": false, + "properties": { + "Labels": { + "items": { + "type": "string" + }, + "type": "array" + }, + "Mode": { + "type": "string" + } + }, + "required": [ + "Mode" + ], + "type": "object" + }, + "AWS::Comprehend::Flywheel.EntityRecognitionConfig": { + "additionalProperties": false, + "properties": { + "EntityTypes": { + "items": { + "$ref": "#/definitions/AWS::Comprehend::Flywheel.EntityTypesListItem" + }, + "type": "array" + } + }, + "type": "object" + }, + "AWS::Comprehend::Flywheel.EntityTypesListItem": { + "additionalProperties": false, + "properties": { + "Type": { + "type": "string" + } + }, + "required": [ + "Type" + ], + "type": "object" + }, + "AWS::Comprehend::Flywheel.TaskConfig": { + "additionalProperties": false, + "properties": { + "DocumentClassificationConfig": { + "$ref": "#/definitions/AWS::Comprehend::Flywheel.DocumentClassificationConfig" + }, + "EntityRecognitionConfig": { + "$ref": "#/definitions/AWS::Comprehend::Flywheel.EntityRecognitionConfig" + }, + "LanguageCode": { + "type": "string" + } + }, + "required": [ + "LanguageCode" + ], + "type": "object" + }, + "AWS::Comprehend::Flywheel.VpcConfig": { + "additionalProperties": false, + "properties": { + "SecurityGroupIds": { + "items": { + "type": "string" + }, + "type": "array" + }, + "Subnets": { + "items": { + "type": "string" + }, + "type": "array" + } + }, + "required": [ + "SecurityGroupIds", + "Subnets" + ], + "type": "object" + }, + "AWS::Config::AggregationAuthorization": { + "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": { + "AuthorizedAccountId": { + "type": "string" + }, + "AuthorizedAwsRegion": { + "type": "string" + }, + "Tags": { + "items": { + "$ref": "#/definitions/Tag" + }, + "type": "array" + } + }, + "required": [ + "AuthorizedAccountId", + "AuthorizedAwsRegion" + ], + "type": "object" + }, + "Type": { + "enum": [ + "AWS::Config::AggregationAuthorization" + ], + "type": "string" + }, + "UpdateReplacePolicy": { + "enum": [ + "Delete", + "Retain", + "Snapshot" + ], + "type": "string" + } + }, + "required": [ + "Type", + "Properties" + ], + "type": "object" + }, + "AWS::Config::ConfigRule": { "additionalProperties": false, "properties": { "Condition": { @@ -61424,7 +61756,6 @@ var CdkSchema = `{ "required": [ "Actions", "Conditions", - "ListenerArn", "Priority" ], "type": "object" @@ -110011,18 +110342,7 @@ var CdkSchema = `{ }, "AWS::MediaPackage::PackagingConfiguration.EncryptionContractConfiguration": { "additionalProperties": false, - "properties": { - "PresetSpeke20Audio": { - "type": "string" - }, - "PresetSpeke20Video": { - "type": "string" - } - }, - "required": [ - "PresetSpeke20Audio", - "PresetSpeke20Video" - ], + "properties": {}, "type": "object" }, "AWS::MediaPackage::PackagingConfiguration.HlsEncryption": { @@ -127304,6 +127624,9 @@ var CdkSchema = `{ "Name": { "type": "string" }, + "Namespace": { + "type": "string" + }, "UnitLabel": { "type": "string" }, @@ -134886,6 +135209,9 @@ var CdkSchema = `{ "properties": { "Bucket": { "type": "string" + }, + "BucketAccountId": { + "type": "string" } }, "required": [ @@ -139030,7 +139356,6 @@ var CdkSchema = `{ "required": [ "Alias", "DisplayName", - "Plan", "Type" ], "type": "object" @@ -142043,7 +142368,7 @@ var CdkSchema = `{ ], "type": "object" }, - "AWS::SageMaker::Model": { + "AWS::SageMaker::InferenceExperiment": { "additionalProperties": false, "properties": { "Condition": { @@ -142078,26 +142403,41 @@ var CdkSchema = `{ "Properties": { "additionalProperties": false, "properties": { - "Containers": { + "DataStorageConfig": { + "$ref": "#/definitions/AWS::SageMaker::InferenceExperiment.DataStorageConfig" + }, + "Description": { + "type": "string" + }, + "DesiredState": { + "type": "string" + }, + "EndpointName": { + "type": "string" + }, + "KmsKey": { + "type": "string" + }, + "ModelVariants": { "items": { - "$ref": "#/definitions/AWS::SageMaker::Model.ContainerDefinition" + "$ref": "#/definitions/AWS::SageMaker::InferenceExperiment.ModelVariantConfig" }, "type": "array" }, - "EnableNetworkIsolation": { - "type": "boolean" + "Name": { + "type": "string" }, - "ExecutionRoleArn": { + "RoleArn": { "type": "string" }, - "InferenceExecutionConfig": { - "$ref": "#/definitions/AWS::SageMaker::Model.InferenceExecutionConfig" + "Schedule": { + "$ref": "#/definitions/AWS::SageMaker::InferenceExperiment.InferenceExperimentSchedule" }, - "ModelName": { - "type": "string" + "ShadowModeConfig": { + "$ref": "#/definitions/AWS::SageMaker::InferenceExperiment.ShadowModeConfig" }, - "PrimaryContainer": { - "$ref": "#/definitions/AWS::SageMaker::Model.ContainerDefinition" + "StatusReason": { + "type": "string" }, "Tags": { "items": { @@ -142105,18 +142445,22 @@ var CdkSchema = `{ }, "type": "array" }, - "VpcConfig": { - "$ref": "#/definitions/AWS::SageMaker::Model.VpcConfig" + "Type": { + "type": "string" } }, "required": [ - "ExecutionRoleArn" + "EndpointName", + "ModelVariants", + "Name", + "RoleArn", + "Type" ], "type": "object" }, "Type": { "enum": [ - "AWS::SageMaker::Model" + "AWS::SageMaker::InferenceExperiment" ], "type": "string" }, @@ -142135,110 +142479,160 @@ var CdkSchema = `{ ], "type": "object" }, - "AWS::SageMaker::Model.ContainerDefinition": { + "AWS::SageMaker::InferenceExperiment.CaptureContentTypeHeader": { "additionalProperties": false, "properties": { - "ContainerHostname": { - "type": "string" + "CsvContentTypes": { + "items": { + "type": "string" + }, + "type": "array" }, - "Environment": { - "type": "object" + "JsonContentTypes": { + "items": { + "type": "string" + }, + "type": "array" + } + }, + "type": "object" + }, + "AWS::SageMaker::InferenceExperiment.DataStorageConfig": { + "additionalProperties": false, + "properties": { + "ContentType": { + "$ref": "#/definitions/AWS::SageMaker::InferenceExperiment.CaptureContentTypeHeader" }, - "Image": { + "Destination": { "type": "string" }, - "ImageConfig": { - "$ref": "#/definitions/AWS::SageMaker::Model.ImageConfig" - }, - "InferenceSpecificationName": { + "KmsKey": { "type": "string" - }, - "Mode": { + } + }, + "required": [ + "Destination" + ], + "type": "object" + }, + "AWS::SageMaker::InferenceExperiment.EndpointMetadata": { + "additionalProperties": false, + "properties": { + "EndpointConfigName": { "type": "string" }, - "ModelDataUrl": { + "EndpointName": { "type": "string" }, - "ModelPackageName": { + "EndpointStatus": { "type": "string" - }, - "MultiModelConfig": { - "$ref": "#/definitions/AWS::SageMaker::Model.MultiModelConfig" } }, + "required": [ + "EndpointName" + ], "type": "object" }, - "AWS::SageMaker::Model.ImageConfig": { + "AWS::SageMaker::InferenceExperiment.InferenceExperimentSchedule": { "additionalProperties": false, "properties": { - "RepositoryAccessMode": { + "EndTime": { "type": "string" }, - "RepositoryAuthConfig": { - "$ref": "#/definitions/AWS::SageMaker::Model.RepositoryAuthConfig" + "StartTime": { + "type": "string" } }, - "required": [ - "RepositoryAccessMode" - ], "type": "object" }, - "AWS::SageMaker::Model.InferenceExecutionConfig": { + "AWS::SageMaker::InferenceExperiment.ModelInfrastructureConfig": { "additionalProperties": false, "properties": { - "Mode": { + "InfrastructureType": { "type": "string" + }, + "RealTimeInferenceConfig": { + "$ref": "#/definitions/AWS::SageMaker::InferenceExperiment.RealTimeInferenceConfig" } }, "required": [ - "Mode" + "InfrastructureType", + "RealTimeInferenceConfig" ], "type": "object" }, - "AWS::SageMaker::Model.MultiModelConfig": { + "AWS::SageMaker::InferenceExperiment.ModelVariantConfig": { "additionalProperties": false, "properties": { - "ModelCacheSetting": { + "InfrastructureConfig": { + "$ref": "#/definitions/AWS::SageMaker::InferenceExperiment.ModelInfrastructureConfig" + }, + "ModelName": { + "type": "string" + }, + "VariantName": { "type": "string" } }, + "required": [ + "InfrastructureConfig", + "ModelName", + "VariantName" + ], "type": "object" }, - "AWS::SageMaker::Model.RepositoryAuthConfig": { + "AWS::SageMaker::InferenceExperiment.RealTimeInferenceConfig": { "additionalProperties": false, "properties": { - "RepositoryCredentialsProviderArn": { + "InstanceCount": { + "type": "number" + }, + "InstanceType": { "type": "string" } }, "required": [ - "RepositoryCredentialsProviderArn" + "InstanceCount", + "InstanceType" ], "type": "object" }, - "AWS::SageMaker::Model.VpcConfig": { + "AWS::SageMaker::InferenceExperiment.ShadowModeConfig": { "additionalProperties": false, "properties": { - "SecurityGroupIds": { + "ShadowModelVariants": { "items": { - "type": "string" + "$ref": "#/definitions/AWS::SageMaker::InferenceExperiment.ShadowModelVariantConfig" }, "type": "array" }, - "Subnets": { - "items": { - "type": "string" - }, - "type": "array" + "SourceModelVariantName": { + "type": "string" } }, "required": [ - "SecurityGroupIds", - "Subnets" + "ShadowModelVariants", + "SourceModelVariantName" ], "type": "object" }, - "AWS::SageMaker::ModelBiasJobDefinition": { + "AWS::SageMaker::InferenceExperiment.ShadowModelVariantConfig": { + "additionalProperties": false, + "properties": { + "SamplingPercentage": { + "type": "number" + }, + "ShadowModelVariantName": { + "type": "string" + } + }, + "required": [ + "SamplingPercentage", + "ShadowModelVariantName" + ], + "type": "object" + }, + "AWS::SageMaker::Model": { "additionalProperties": false, "properties": { "Condition": { @@ -142273,55 +142667,45 @@ var CdkSchema = `{ "Properties": { "additionalProperties": false, "properties": { - "EndpointName": { - "type": "string" - }, - "JobDefinitionName": { - "type": "string" - }, - "JobResources": { - "$ref": "#/definitions/AWS::SageMaker::ModelBiasJobDefinition.MonitoringResources" - }, - "ModelBiasAppSpecification": { - "$ref": "#/definitions/AWS::SageMaker::ModelBiasJobDefinition.ModelBiasAppSpecification" - }, - "ModelBiasBaselineConfig": { - "$ref": "#/definitions/AWS::SageMaker::ModelBiasJobDefinition.ModelBiasBaselineConfig" + "Containers": { + "items": { + "$ref": "#/definitions/AWS::SageMaker::Model.ContainerDefinition" + }, + "type": "array" }, - "ModelBiasJobInput": { - "$ref": "#/definitions/AWS::SageMaker::ModelBiasJobDefinition.ModelBiasJobInput" + "EnableNetworkIsolation": { + "type": "boolean" }, - "ModelBiasJobOutputConfig": { - "$ref": "#/definitions/AWS::SageMaker::ModelBiasJobDefinition.MonitoringOutputConfig" + "ExecutionRoleArn": { + "type": "string" }, - "NetworkConfig": { - "$ref": "#/definitions/AWS::SageMaker::ModelBiasJobDefinition.NetworkConfig" + "InferenceExecutionConfig": { + "$ref": "#/definitions/AWS::SageMaker::Model.InferenceExecutionConfig" }, - "RoleArn": { + "ModelName": { "type": "string" }, - "StoppingCondition": { - "$ref": "#/definitions/AWS::SageMaker::ModelBiasJobDefinition.StoppingCondition" + "PrimaryContainer": { + "$ref": "#/definitions/AWS::SageMaker::Model.ContainerDefinition" }, "Tags": { "items": { "$ref": "#/definitions/Tag" }, "type": "array" + }, + "VpcConfig": { + "$ref": "#/definitions/AWS::SageMaker::Model.VpcConfig" } }, "required": [ - "JobResources", - "ModelBiasAppSpecification", - "ModelBiasJobInput", - "ModelBiasJobOutputConfig", - "RoleArn" + "ExecutionRoleArn" ], "type": "object" }, "Type": { "enum": [ - "AWS::SageMaker::ModelBiasJobDefinition" + "AWS::SageMaker::Model" ], "type": "string" }, @@ -142340,311 +142724,88 @@ var CdkSchema = `{ ], "type": "object" }, - "AWS::SageMaker::ModelBiasJobDefinition.BatchTransformInput": { - "additionalProperties": false, - "properties": { - "DataCapturedDestinationS3Uri": { - "type": "string" - }, - "DatasetFormat": { - "$ref": "#/definitions/AWS::SageMaker::ModelBiasJobDefinition.DatasetFormat" - }, - "EndTimeOffset": { - "type": "string" - }, - "FeaturesAttribute": { - "type": "string" - }, - "InferenceAttribute": { - "type": "string" - }, - "LocalPath": { - "type": "string" - }, - "ProbabilityAttribute": { - "type": "string" - }, - "ProbabilityThresholdAttribute": { - "type": "number" - }, - "S3DataDistributionType": { - "type": "string" - }, - "S3InputMode": { - "type": "string" - }, - "StartTimeOffset": { - "type": "string" - } - }, - "required": [ - "DataCapturedDestinationS3Uri", - "DatasetFormat", - "LocalPath" - ], - "type": "object" - }, - "AWS::SageMaker::ModelBiasJobDefinition.ClusterConfig": { - "additionalProperties": false, - "properties": { - "InstanceCount": { - "type": "number" - }, - "InstanceType": { - "type": "string" - }, - "VolumeKmsKeyId": { - "type": "string" - }, - "VolumeSizeInGB": { - "type": "number" - } - }, - "required": [ - "InstanceCount", - "InstanceType", - "VolumeSizeInGB" - ], - "type": "object" - }, - "AWS::SageMaker::ModelBiasJobDefinition.ConstraintsResource": { - "additionalProperties": false, - "properties": { - "S3Uri": { - "type": "string" - } - }, - "type": "object" - }, - "AWS::SageMaker::ModelBiasJobDefinition.Csv": { - "additionalProperties": false, - "properties": { - "Header": { - "type": "boolean" - } - }, - "type": "object" - }, - "AWS::SageMaker::ModelBiasJobDefinition.DatasetFormat": { - "additionalProperties": false, - "properties": { - "Csv": { - "$ref": "#/definitions/AWS::SageMaker::ModelBiasJobDefinition.Csv" - }, - "Json": { - "$ref": "#/definitions/AWS::SageMaker::ModelBiasJobDefinition.Json" - }, - "Parquet": { - "type": "boolean" - } - }, - "type": "object" - }, - "AWS::SageMaker::ModelBiasJobDefinition.EndpointInput": { + "AWS::SageMaker::Model.ContainerDefinition": { "additionalProperties": false, "properties": { - "EndTimeOffset": { - "type": "string" - }, - "EndpointName": { + "ContainerHostname": { "type": "string" }, - "FeaturesAttribute": { - "type": "string" + "Environment": { + "type": "object" }, - "InferenceAttribute": { + "Image": { "type": "string" }, - "LocalPath": { - "type": "string" + "ImageConfig": { + "$ref": "#/definitions/AWS::SageMaker::Model.ImageConfig" }, - "ProbabilityAttribute": { + "InferenceSpecificationName": { "type": "string" }, - "ProbabilityThresholdAttribute": { - "type": "number" - }, - "S3DataDistributionType": { + "Mode": { "type": "string" }, - "S3InputMode": { + "ModelDataUrl": { "type": "string" }, - "StartTimeOffset": { - "type": "string" - } - }, - "required": [ - "EndpointName", - "LocalPath" - ], - "type": "object" - }, - "AWS::SageMaker::ModelBiasJobDefinition.Json": { - "additionalProperties": false, - "properties": { - "Line": { - "type": "boolean" - } - }, - "type": "object" - }, - "AWS::SageMaker::ModelBiasJobDefinition.ModelBiasAppSpecification": { - "additionalProperties": false, - "properties": { - "ConfigUri": { + "ModelPackageName": { "type": "string" }, - "Environment": { - "additionalProperties": true, - "patternProperties": { - "^[a-zA-Z0-9]+$": { - "type": "string" - } - }, - "type": "object" - }, - "ImageUri": { - "type": "string" + "MultiModelConfig": { + "$ref": "#/definitions/AWS::SageMaker::Model.MultiModelConfig" } }, - "required": [ - "ConfigUri", - "ImageUri" - ], "type": "object" }, - "AWS::SageMaker::ModelBiasJobDefinition.ModelBiasBaselineConfig": { + "AWS::SageMaker::Model.ImageConfig": { "additionalProperties": false, "properties": { - "BaseliningJobName": { + "RepositoryAccessMode": { "type": "string" }, - "ConstraintsResource": { - "$ref": "#/definitions/AWS::SageMaker::ModelBiasJobDefinition.ConstraintsResource" - } - }, - "type": "object" - }, - "AWS::SageMaker::ModelBiasJobDefinition.ModelBiasJobInput": { - "additionalProperties": false, - "properties": { - "BatchTransformInput": { - "$ref": "#/definitions/AWS::SageMaker::ModelBiasJobDefinition.BatchTransformInput" - }, - "EndpointInput": { - "$ref": "#/definitions/AWS::SageMaker::ModelBiasJobDefinition.EndpointInput" - }, - "GroundTruthS3Input": { - "$ref": "#/definitions/AWS::SageMaker::ModelBiasJobDefinition.MonitoringGroundTruthS3Input" + "RepositoryAuthConfig": { + "$ref": "#/definitions/AWS::SageMaker::Model.RepositoryAuthConfig" } }, "required": [ - "GroundTruthS3Input" + "RepositoryAccessMode" ], "type": "object" }, - "AWS::SageMaker::ModelBiasJobDefinition.MonitoringGroundTruthS3Input": { + "AWS::SageMaker::Model.InferenceExecutionConfig": { "additionalProperties": false, "properties": { - "S3Uri": { + "Mode": { "type": "string" } }, "required": [ - "S3Uri" - ], - "type": "object" - }, - "AWS::SageMaker::ModelBiasJobDefinition.MonitoringOutput": { - "additionalProperties": false, - "properties": { - "S3Output": { - "$ref": "#/definitions/AWS::SageMaker::ModelBiasJobDefinition.S3Output" - } - }, - "required": [ - "S3Output" + "Mode" ], "type": "object" }, - "AWS::SageMaker::ModelBiasJobDefinition.MonitoringOutputConfig": { + "AWS::SageMaker::Model.MultiModelConfig": { "additionalProperties": false, "properties": { - "KmsKeyId": { + "ModelCacheSetting": { "type": "string" - }, - "MonitoringOutputs": { - "items": { - "$ref": "#/definitions/AWS::SageMaker::ModelBiasJobDefinition.MonitoringOutput" - }, - "type": "array" - } - }, - "required": [ - "MonitoringOutputs" - ], - "type": "object" - }, - "AWS::SageMaker::ModelBiasJobDefinition.MonitoringResources": { - "additionalProperties": false, - "properties": { - "ClusterConfig": { - "$ref": "#/definitions/AWS::SageMaker::ModelBiasJobDefinition.ClusterConfig" - } - }, - "required": [ - "ClusterConfig" - ], - "type": "object" - }, - "AWS::SageMaker::ModelBiasJobDefinition.NetworkConfig": { - "additionalProperties": false, - "properties": { - "EnableInterContainerTrafficEncryption": { - "type": "boolean" - }, - "EnableNetworkIsolation": { - "type": "boolean" - }, - "VpcConfig": { - "$ref": "#/definitions/AWS::SageMaker::ModelBiasJobDefinition.VpcConfig" } }, "type": "object" }, - "AWS::SageMaker::ModelBiasJobDefinition.S3Output": { + "AWS::SageMaker::Model.RepositoryAuthConfig": { "additionalProperties": false, "properties": { - "LocalPath": { - "type": "string" - }, - "S3UploadMode": { - "type": "string" - }, - "S3Uri": { + "RepositoryCredentialsProviderArn": { "type": "string" } }, "required": [ - "LocalPath", - "S3Uri" - ], - "type": "object" - }, - "AWS::SageMaker::ModelBiasJobDefinition.StoppingCondition": { - "additionalProperties": false, - "properties": { - "MaxRuntimeInSeconds": { - "type": "number" - } - }, - "required": [ - "MaxRuntimeInSeconds" + "RepositoryCredentialsProviderArn" ], "type": "object" }, - "AWS::SageMaker::ModelBiasJobDefinition.VpcConfig": { + "AWS::SageMaker::Model.VpcConfig": { "additionalProperties": false, "properties": { "SecurityGroupIds": { @@ -142666,7 +142827,435 @@ var CdkSchema = `{ ], "type": "object" }, - "AWS::SageMaker::ModelCard": { + "AWS::SageMaker::ModelBiasJobDefinition": { + "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": { + "EndpointName": { + "type": "string" + }, + "JobDefinitionName": { + "type": "string" + }, + "JobResources": { + "$ref": "#/definitions/AWS::SageMaker::ModelBiasJobDefinition.MonitoringResources" + }, + "ModelBiasAppSpecification": { + "$ref": "#/definitions/AWS::SageMaker::ModelBiasJobDefinition.ModelBiasAppSpecification" + }, + "ModelBiasBaselineConfig": { + "$ref": "#/definitions/AWS::SageMaker::ModelBiasJobDefinition.ModelBiasBaselineConfig" + }, + "ModelBiasJobInput": { + "$ref": "#/definitions/AWS::SageMaker::ModelBiasJobDefinition.ModelBiasJobInput" + }, + "ModelBiasJobOutputConfig": { + "$ref": "#/definitions/AWS::SageMaker::ModelBiasJobDefinition.MonitoringOutputConfig" + }, + "NetworkConfig": { + "$ref": "#/definitions/AWS::SageMaker::ModelBiasJobDefinition.NetworkConfig" + }, + "RoleArn": { + "type": "string" + }, + "StoppingCondition": { + "$ref": "#/definitions/AWS::SageMaker::ModelBiasJobDefinition.StoppingCondition" + }, + "Tags": { + "items": { + "$ref": "#/definitions/Tag" + }, + "type": "array" + } + }, + "required": [ + "JobResources", + "ModelBiasAppSpecification", + "ModelBiasJobInput", + "ModelBiasJobOutputConfig", + "RoleArn" + ], + "type": "object" + }, + "Type": { + "enum": [ + "AWS::SageMaker::ModelBiasJobDefinition" + ], + "type": "string" + }, + "UpdateReplacePolicy": { + "enum": [ + "Delete", + "Retain", + "Snapshot" + ], + "type": "string" + } + }, + "required": [ + "Type", + "Properties" + ], + "type": "object" + }, + "AWS::SageMaker::ModelBiasJobDefinition.BatchTransformInput": { + "additionalProperties": false, + "properties": { + "DataCapturedDestinationS3Uri": { + "type": "string" + }, + "DatasetFormat": { + "$ref": "#/definitions/AWS::SageMaker::ModelBiasJobDefinition.DatasetFormat" + }, + "EndTimeOffset": { + "type": "string" + }, + "FeaturesAttribute": { + "type": "string" + }, + "InferenceAttribute": { + "type": "string" + }, + "LocalPath": { + "type": "string" + }, + "ProbabilityAttribute": { + "type": "string" + }, + "ProbabilityThresholdAttribute": { + "type": "number" + }, + "S3DataDistributionType": { + "type": "string" + }, + "S3InputMode": { + "type": "string" + }, + "StartTimeOffset": { + "type": "string" + } + }, + "required": [ + "DataCapturedDestinationS3Uri", + "DatasetFormat", + "LocalPath" + ], + "type": "object" + }, + "AWS::SageMaker::ModelBiasJobDefinition.ClusterConfig": { + "additionalProperties": false, + "properties": { + "InstanceCount": { + "type": "number" + }, + "InstanceType": { + "type": "string" + }, + "VolumeKmsKeyId": { + "type": "string" + }, + "VolumeSizeInGB": { + "type": "number" + } + }, + "required": [ + "InstanceCount", + "InstanceType", + "VolumeSizeInGB" + ], + "type": "object" + }, + "AWS::SageMaker::ModelBiasJobDefinition.ConstraintsResource": { + "additionalProperties": false, + "properties": { + "S3Uri": { + "type": "string" + } + }, + "type": "object" + }, + "AWS::SageMaker::ModelBiasJobDefinition.Csv": { + "additionalProperties": false, + "properties": { + "Header": { + "type": "boolean" + } + }, + "type": "object" + }, + "AWS::SageMaker::ModelBiasJobDefinition.DatasetFormat": { + "additionalProperties": false, + "properties": { + "Csv": { + "$ref": "#/definitions/AWS::SageMaker::ModelBiasJobDefinition.Csv" + }, + "Json": { + "$ref": "#/definitions/AWS::SageMaker::ModelBiasJobDefinition.Json" + }, + "Parquet": { + "type": "boolean" + } + }, + "type": "object" + }, + "AWS::SageMaker::ModelBiasJobDefinition.EndpointInput": { + "additionalProperties": false, + "properties": { + "EndTimeOffset": { + "type": "string" + }, + "EndpointName": { + "type": "string" + }, + "FeaturesAttribute": { + "type": "string" + }, + "InferenceAttribute": { + "type": "string" + }, + "LocalPath": { + "type": "string" + }, + "ProbabilityAttribute": { + "type": "string" + }, + "ProbabilityThresholdAttribute": { + "type": "number" + }, + "S3DataDistributionType": { + "type": "string" + }, + "S3InputMode": { + "type": "string" + }, + "StartTimeOffset": { + "type": "string" + } + }, + "required": [ + "EndpointName", + "LocalPath" + ], + "type": "object" + }, + "AWS::SageMaker::ModelBiasJobDefinition.Json": { + "additionalProperties": false, + "properties": { + "Line": { + "type": "boolean" + } + }, + "type": "object" + }, + "AWS::SageMaker::ModelBiasJobDefinition.ModelBiasAppSpecification": { + "additionalProperties": false, + "properties": { + "ConfigUri": { + "type": "string" + }, + "Environment": { + "additionalProperties": true, + "patternProperties": { + "^[a-zA-Z0-9]+$": { + "type": "string" + } + }, + "type": "object" + }, + "ImageUri": { + "type": "string" + } + }, + "required": [ + "ConfigUri", + "ImageUri" + ], + "type": "object" + }, + "AWS::SageMaker::ModelBiasJobDefinition.ModelBiasBaselineConfig": { + "additionalProperties": false, + "properties": { + "BaseliningJobName": { + "type": "string" + }, + "ConstraintsResource": { + "$ref": "#/definitions/AWS::SageMaker::ModelBiasJobDefinition.ConstraintsResource" + } + }, + "type": "object" + }, + "AWS::SageMaker::ModelBiasJobDefinition.ModelBiasJobInput": { + "additionalProperties": false, + "properties": { + "BatchTransformInput": { + "$ref": "#/definitions/AWS::SageMaker::ModelBiasJobDefinition.BatchTransformInput" + }, + "EndpointInput": { + "$ref": "#/definitions/AWS::SageMaker::ModelBiasJobDefinition.EndpointInput" + }, + "GroundTruthS3Input": { + "$ref": "#/definitions/AWS::SageMaker::ModelBiasJobDefinition.MonitoringGroundTruthS3Input" + } + }, + "required": [ + "GroundTruthS3Input" + ], + "type": "object" + }, + "AWS::SageMaker::ModelBiasJobDefinition.MonitoringGroundTruthS3Input": { + "additionalProperties": false, + "properties": { + "S3Uri": { + "type": "string" + } + }, + "required": [ + "S3Uri" + ], + "type": "object" + }, + "AWS::SageMaker::ModelBiasJobDefinition.MonitoringOutput": { + "additionalProperties": false, + "properties": { + "S3Output": { + "$ref": "#/definitions/AWS::SageMaker::ModelBiasJobDefinition.S3Output" + } + }, + "required": [ + "S3Output" + ], + "type": "object" + }, + "AWS::SageMaker::ModelBiasJobDefinition.MonitoringOutputConfig": { + "additionalProperties": false, + "properties": { + "KmsKeyId": { + "type": "string" + }, + "MonitoringOutputs": { + "items": { + "$ref": "#/definitions/AWS::SageMaker::ModelBiasJobDefinition.MonitoringOutput" + }, + "type": "array" + } + }, + "required": [ + "MonitoringOutputs" + ], + "type": "object" + }, + "AWS::SageMaker::ModelBiasJobDefinition.MonitoringResources": { + "additionalProperties": false, + "properties": { + "ClusterConfig": { + "$ref": "#/definitions/AWS::SageMaker::ModelBiasJobDefinition.ClusterConfig" + } + }, + "required": [ + "ClusterConfig" + ], + "type": "object" + }, + "AWS::SageMaker::ModelBiasJobDefinition.NetworkConfig": { + "additionalProperties": false, + "properties": { + "EnableInterContainerTrafficEncryption": { + "type": "boolean" + }, + "EnableNetworkIsolation": { + "type": "boolean" + }, + "VpcConfig": { + "$ref": "#/definitions/AWS::SageMaker::ModelBiasJobDefinition.VpcConfig" + } + }, + "type": "object" + }, + "AWS::SageMaker::ModelBiasJobDefinition.S3Output": { + "additionalProperties": false, + "properties": { + "LocalPath": { + "type": "string" + }, + "S3UploadMode": { + "type": "string" + }, + "S3Uri": { + "type": "string" + } + }, + "required": [ + "LocalPath", + "S3Uri" + ], + "type": "object" + }, + "AWS::SageMaker::ModelBiasJobDefinition.StoppingCondition": { + "additionalProperties": false, + "properties": { + "MaxRuntimeInSeconds": { + "type": "number" + } + }, + "required": [ + "MaxRuntimeInSeconds" + ], + "type": "object" + }, + "AWS::SageMaker::ModelBiasJobDefinition.VpcConfig": { + "additionalProperties": false, + "properties": { + "SecurityGroupIds": { + "items": { + "type": "string" + }, + "type": "array" + }, + "Subnets": { + "items": { + "type": "string" + }, + "type": "array" + } + }, + "required": [ + "SecurityGroupIds", + "Subnets" + ], + "type": "object" + }, + "AWS::SageMaker::ModelCard": { "additionalProperties": false, "properties": { "Condition": { @@ -151870,36 +152459,1262 @@ var CdkSchema = `{ "Properties": { "additionalProperties": false, "properties": { - "Description": { + "Description": { + "type": "string" + }, + "OnExceptionSteps": { + "items": { + "$ref": "#/definitions/AWS::Transfer::Workflow.WorkflowStep" + }, + "type": "array" + }, + "Steps": { + "items": { + "$ref": "#/definitions/AWS::Transfer::Workflow.WorkflowStep" + }, + "type": "array" + }, + "Tags": { + "items": { + "$ref": "#/definitions/Tag" + }, + "type": "array" + } + }, + "required": [ + "Steps" + ], + "type": "object" + }, + "Type": { + "enum": [ + "AWS::Transfer::Workflow" + ], + "type": "string" + }, + "UpdateReplacePolicy": { + "enum": [ + "Delete", + "Retain", + "Snapshot" + ], + "type": "string" + } + }, + "required": [ + "Type", + "Properties" + ], + "type": "object" + }, + "AWS::Transfer::Workflow.CopyStepDetails": { + "additionalProperties": false, + "properties": { + "DestinationFileLocation": { + "$ref": "#/definitions/AWS::Transfer::Workflow.S3FileLocation" + }, + "Name": { + "type": "string" + }, + "OverwriteExisting": { + "type": "string" + }, + "SourceFileLocation": { + "type": "string" + } + }, + "type": "object" + }, + "AWS::Transfer::Workflow.CustomStepDetails": { + "additionalProperties": false, + "properties": { + "Name": { + "type": "string" + }, + "SourceFileLocation": { + "type": "string" + }, + "Target": { + "type": "string" + }, + "TimeoutSeconds": { + "type": "number" + } + }, + "type": "object" + }, + "AWS::Transfer::Workflow.DecryptStepDetails": { + "additionalProperties": false, + "properties": { + "DestinationFileLocation": { + "$ref": "#/definitions/AWS::Transfer::Workflow.InputFileLocation" + }, + "Name": { + "type": "string" + }, + "OverwriteExisting": { + "type": "string" + }, + "SourceFileLocation": { + "type": "string" + }, + "Type": { + "type": "string" + } + }, + "type": "object" + }, + "AWS::Transfer::Workflow.DeleteStepDetails": { + "additionalProperties": false, + "properties": { + "Name": { + "type": "string" + }, + "SourceFileLocation": { + "type": "string" + } + }, + "type": "object" + }, + "AWS::Transfer::Workflow.EfsInputFileLocation": { + "additionalProperties": false, + "properties": { + "FileSystemId": { + "type": "string" + }, + "Path": { + "type": "string" + } + }, + "type": "object" + }, + "AWS::Transfer::Workflow.InputFileLocation": { + "additionalProperties": false, + "properties": { + "EfsFileLocation": { + "$ref": "#/definitions/AWS::Transfer::Workflow.EfsInputFileLocation" + }, + "S3FileLocation": { + "$ref": "#/definitions/AWS::Transfer::Workflow.S3InputFileLocation" + } + }, + "type": "object" + }, + "AWS::Transfer::Workflow.S3FileLocation": { + "additionalProperties": false, + "properties": { + "S3FileLocation": { + "$ref": "#/definitions/AWS::Transfer::Workflow.S3InputFileLocation" + } + }, + "type": "object" + }, + "AWS::Transfer::Workflow.S3InputFileLocation": { + "additionalProperties": false, + "properties": { + "Bucket": { + "type": "string" + }, + "Key": { + "type": "string" + } + }, + "type": "object" + }, + "AWS::Transfer::Workflow.S3Tag": { + "additionalProperties": false, + "properties": { + "Key": { + "type": "string" + }, + "Value": { + "type": "string" + } + }, + "required": [ + "Key", + "Value" + ], + "type": "object" + }, + "AWS::Transfer::Workflow.TagStepDetails": { + "additionalProperties": false, + "properties": { + "Name": { + "type": "string" + }, + "SourceFileLocation": { + "type": "string" + }, + "Tags": { + "items": { + "$ref": "#/definitions/AWS::Transfer::Workflow.S3Tag" + }, + "type": "array" + } + }, + "type": "object" + }, + "AWS::Transfer::Workflow.WorkflowStep": { + "additionalProperties": false, + "properties": { + "CopyStepDetails": { + "$ref": "#/definitions/AWS::Transfer::Workflow.CopyStepDetails" + }, + "CustomStepDetails": { + "$ref": "#/definitions/AWS::Transfer::Workflow.CustomStepDetails" + }, + "DecryptStepDetails": { + "$ref": "#/definitions/AWS::Transfer::Workflow.DecryptStepDetails" + }, + "DeleteStepDetails": { + "$ref": "#/definitions/AWS::Transfer::Workflow.DeleteStepDetails" + }, + "TagStepDetails": { + "$ref": "#/definitions/AWS::Transfer::Workflow.TagStepDetails" + }, + "Type": { + "type": "string" + } + }, + "type": "object" + }, + "AWS::VoiceID::Domain": { + "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": { + "Description": { + "type": "string" + }, + "Name": { + "type": "string" + }, + "ServerSideEncryptionConfiguration": { + "$ref": "#/definitions/AWS::VoiceID::Domain.ServerSideEncryptionConfiguration" + }, + "Tags": { + "items": { + "$ref": "#/definitions/Tag" + }, + "type": "array" + } + }, + "required": [ + "Name", + "ServerSideEncryptionConfiguration" + ], + "type": "object" + }, + "Type": { + "enum": [ + "AWS::VoiceID::Domain" + ], + "type": "string" + }, + "UpdateReplacePolicy": { + "enum": [ + "Delete", + "Retain", + "Snapshot" + ], + "type": "string" + } + }, + "required": [ + "Type", + "Properties" + ], + "type": "object" + }, + "AWS::VoiceID::Domain.ServerSideEncryptionConfiguration": { + "additionalProperties": false, + "properties": { + "KmsKeyId": { + "type": "string" + } + }, + "required": [ + "KmsKeyId" + ], + "type": "object" + }, + "AWS::VpcLattice::AccessLogSubscription": { + "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": { + "DestinationArn": { + "type": "string" + }, + "ResourceIdentifier": { + "type": "string" + }, + "Tags": { + "items": { + "$ref": "#/definitions/Tag" + }, + "type": "array" + } + }, + "required": [ + "DestinationArn" + ], + "type": "object" + }, + "Type": { + "enum": [ + "AWS::VpcLattice::AccessLogSubscription" + ], + "type": "string" + }, + "UpdateReplacePolicy": { + "enum": [ + "Delete", + "Retain", + "Snapshot" + ], + "type": "string" + } + }, + "required": [ + "Type", + "Properties" + ], + "type": "object" + }, + "AWS::VpcLattice::AuthPolicy": { + "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": { + "Policy": { + "type": "object" + }, + "ResourceIdentifier": { + "type": "string" + } + }, + "required": [ + "Policy", + "ResourceIdentifier" + ], + "type": "object" + }, + "Type": { + "enum": [ + "AWS::VpcLattice::AuthPolicy" + ], + "type": "string" + }, + "UpdateReplacePolicy": { + "enum": [ + "Delete", + "Retain", + "Snapshot" + ], + "type": "string" + } + }, + "required": [ + "Type", + "Properties" + ], + "type": "object" + }, + "AWS::VpcLattice::Listener": { + "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": { + "DefaultAction": { + "$ref": "#/definitions/AWS::VpcLattice::Listener.DefaultAction" + }, + "Name": { + "type": "string" + }, + "Port": { + "type": "number" + }, + "Protocol": { + "type": "string" + }, + "ServiceIdentifier": { + "type": "string" + }, + "Tags": { + "items": { + "$ref": "#/definitions/Tag" + }, + "type": "array" + } + }, + "required": [ + "DefaultAction", + "Protocol" + ], + "type": "object" + }, + "Type": { + "enum": [ + "AWS::VpcLattice::Listener" + ], + "type": "string" + }, + "UpdateReplacePolicy": { + "enum": [ + "Delete", + "Retain", + "Snapshot" + ], + "type": "string" + } + }, + "required": [ + "Type", + "Properties" + ], + "type": "object" + }, + "AWS::VpcLattice::Listener.DefaultAction": { + "additionalProperties": false, + "properties": { + "Forward": { + "$ref": "#/definitions/AWS::VpcLattice::Listener.Forward" + } + }, + "required": [ + "Forward" + ], + "type": "object" + }, + "AWS::VpcLattice::Listener.Forward": { + "additionalProperties": false, + "properties": { + "TargetGroups": { + "items": { + "$ref": "#/definitions/AWS::VpcLattice::Listener.WeightedTargetGroup" + }, + "type": "array" + } + }, + "required": [ + "TargetGroups" + ], + "type": "object" + }, + "AWS::VpcLattice::Listener.WeightedTargetGroup": { + "additionalProperties": false, + "properties": { + "TargetGroupIdentifier": { + "type": "string" + }, + "Weight": { + "type": "number" + } + }, + "required": [ + "TargetGroupIdentifier" + ], + "type": "object" + }, + "AWS::VpcLattice::ResourcePolicy": { + "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": { + "Policy": { + "type": "object" + }, + "ResourceArn": { + "type": "string" + } + }, + "required": [ + "Policy", + "ResourceArn" + ], + "type": "object" + }, + "Type": { + "enum": [ + "AWS::VpcLattice::ResourcePolicy" + ], + "type": "string" + }, + "UpdateReplacePolicy": { + "enum": [ + "Delete", + "Retain", + "Snapshot" + ], + "type": "string" + } + }, + "required": [ + "Type", + "Properties" + ], + "type": "object" + }, + "AWS::VpcLattice::Rule": { + "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": { + "Action": { + "$ref": "#/definitions/AWS::VpcLattice::Rule.Action" + }, + "ListenerIdentifier": { + "type": "string" + }, + "Match": { + "$ref": "#/definitions/AWS::VpcLattice::Rule.Match" + }, + "Name": { + "type": "string" + }, + "Priority": { + "type": "number" + }, + "ServiceIdentifier": { + "type": "string" + }, + "Tags": { + "items": { + "$ref": "#/definitions/Tag" + }, + "type": "array" + } + }, + "required": [ + "Action", + "Match", + "Priority" + ], + "type": "object" + }, + "Type": { + "enum": [ + "AWS::VpcLattice::Rule" + ], + "type": "string" + }, + "UpdateReplacePolicy": { + "enum": [ + "Delete", + "Retain", + "Snapshot" + ], + "type": "string" + } + }, + "required": [ + "Type", + "Properties" + ], + "type": "object" + }, + "AWS::VpcLattice::Rule.Action": { + "additionalProperties": false, + "properties": { + "Forward": { + "$ref": "#/definitions/AWS::VpcLattice::Rule.Forward" + } + }, + "required": [ + "Forward" + ], + "type": "object" + }, + "AWS::VpcLattice::Rule.Forward": { + "additionalProperties": false, + "properties": { + "TargetGroups": { + "items": { + "$ref": "#/definitions/AWS::VpcLattice::Rule.WeightedTargetGroup" + }, + "type": "array" + } + }, + "required": [ + "TargetGroups" + ], + "type": "object" + }, + "AWS::VpcLattice::Rule.HeaderMatch": { + "additionalProperties": false, + "properties": { + "CaseSensitive": { + "type": "boolean" + }, + "Match": { + "$ref": "#/definitions/AWS::VpcLattice::Rule.HeaderMatchType" + }, + "Name": { + "type": "string" + } + }, + "required": [ + "Match", + "Name" + ], + "type": "object" + }, + "AWS::VpcLattice::Rule.HeaderMatchType": { + "additionalProperties": false, + "properties": { + "Contains": { + "type": "string" + }, + "Exact": { + "type": "string" + }, + "Prefix": { + "type": "string" + } + }, + "type": "object" + }, + "AWS::VpcLattice::Rule.HttpMatch": { + "additionalProperties": false, + "properties": { + "HeaderMatches": { + "items": { + "$ref": "#/definitions/AWS::VpcLattice::Rule.HeaderMatch" + }, + "type": "array" + }, + "Method": { + "type": "string" + }, + "PathMatch": { + "$ref": "#/definitions/AWS::VpcLattice::Rule.PathMatch" + } + }, + "type": "object" + }, + "AWS::VpcLattice::Rule.Match": { + "additionalProperties": false, + "properties": { + "HttpMatch": { + "$ref": "#/definitions/AWS::VpcLattice::Rule.HttpMatch" + } + }, + "required": [ + "HttpMatch" + ], + "type": "object" + }, + "AWS::VpcLattice::Rule.PathMatch": { + "additionalProperties": false, + "properties": { + "CaseSensitive": { + "type": "boolean" + }, + "Match": { + "$ref": "#/definitions/AWS::VpcLattice::Rule.PathMatchType" + } + }, + "required": [ + "Match" + ], + "type": "object" + }, + "AWS::VpcLattice::Rule.PathMatchType": { + "additionalProperties": false, + "properties": { + "Exact": { + "type": "string" + }, + "Prefix": { + "type": "string" + } + }, + "type": "object" + }, + "AWS::VpcLattice::Rule.WeightedTargetGroup": { + "additionalProperties": false, + "properties": { + "TargetGroupIdentifier": { + "type": "string" + }, + "Weight": { + "type": "number" + } + }, + "required": [ + "TargetGroupIdentifier" + ], + "type": "object" + }, + "AWS::VpcLattice::Service": { + "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": { + "AuthType": { + "type": "string" + }, + "CertificateArn": { + "type": "string" + }, + "CustomDomainName": { + "type": "string" + }, + "DnsEntry": { + "$ref": "#/definitions/AWS::VpcLattice::Service.DnsEntry" + }, + "Name": { + "type": "string" + }, + "Tags": { + "items": { + "$ref": "#/definitions/Tag" + }, + "type": "array" + } + }, + "type": "object" + }, + "Type": { + "enum": [ + "AWS::VpcLattice::Service" + ], + "type": "string" + }, + "UpdateReplacePolicy": { + "enum": [ + "Delete", + "Retain", + "Snapshot" + ], + "type": "string" + } + }, + "required": [ + "Type" + ], + "type": "object" + }, + "AWS::VpcLattice::Service.DnsEntry": { + "additionalProperties": false, + "properties": { + "DomainName": { + "type": "string" + }, + "HostedZoneId": { + "type": "string" + } + }, + "type": "object" + }, + "AWS::VpcLattice::ServiceNetwork": { + "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": { + "AuthType": { + "type": "string" + }, + "Name": { + "type": "string" + }, + "Tags": { + "items": { + "$ref": "#/definitions/Tag" + }, + "type": "array" + } + }, + "type": "object" + }, + "Type": { + "enum": [ + "AWS::VpcLattice::ServiceNetwork" + ], + "type": "string" + }, + "UpdateReplacePolicy": { + "enum": [ + "Delete", + "Retain", + "Snapshot" + ], + "type": "string" + } + }, + "required": [ + "Type" + ], + "type": "object" + }, + "AWS::VpcLattice::ServiceNetworkServiceAssociation": { + "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": { + "DnsEntry": { + "$ref": "#/definitions/AWS::VpcLattice::ServiceNetworkServiceAssociation.DnsEntry" + }, + "ServiceIdentifier": { + "type": "string" + }, + "ServiceNetworkIdentifier": { + "type": "string" + }, + "Tags": { + "items": { + "$ref": "#/definitions/Tag" + }, + "type": "array" + } + }, + "type": "object" + }, + "Type": { + "enum": [ + "AWS::VpcLattice::ServiceNetworkServiceAssociation" + ], + "type": "string" + }, + "UpdateReplacePolicy": { + "enum": [ + "Delete", + "Retain", + "Snapshot" + ], + "type": "string" + } + }, + "required": [ + "Type" + ], + "type": "object" + }, + "AWS::VpcLattice::ServiceNetworkServiceAssociation.DnsEntry": { + "additionalProperties": false, + "properties": { + "DomainName": { + "type": "string" + }, + "HostedZoneId": { + "type": "string" + } + }, + "type": "object" + }, + "AWS::VpcLattice::ServiceNetworkVpcAssociation": { + "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": { + "SecurityGroupIds": { + "items": { + "type": "string" + }, + "type": "array" + }, + "ServiceNetworkIdentifier": { + "type": "string" + }, + "Tags": { + "items": { + "$ref": "#/definitions/Tag" + }, + "type": "array" + }, + "VpcIdentifier": { + "type": "string" + } + }, + "type": "object" + }, + "Type": { + "enum": [ + "AWS::VpcLattice::ServiceNetworkVpcAssociation" + ], + "type": "string" + }, + "UpdateReplacePolicy": { + "enum": [ + "Delete", + "Retain", + "Snapshot" + ], + "type": "string" + } + }, + "required": [ + "Type" + ], + "type": "object" + }, + "AWS::VpcLattice::TargetGroup": { + "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": { + "Config": { + "$ref": "#/definitions/AWS::VpcLattice::TargetGroup.TargetGroupConfig" + }, + "Name": { "type": "string" }, - "OnExceptionSteps": { + "Tags": { "items": { - "$ref": "#/definitions/AWS::Transfer::Workflow.WorkflowStep" + "$ref": "#/definitions/Tag" }, "type": "array" }, - "Steps": { + "Targets": { "items": { - "$ref": "#/definitions/AWS::Transfer::Workflow.WorkflowStep" + "$ref": "#/definitions/AWS::VpcLattice::TargetGroup.Target" }, "type": "array" }, - "Tags": { - "items": { - "$ref": "#/definitions/Tag" - }, - "type": "array" + "Type": { + "type": "string" } }, "required": [ - "Steps" + "Type" ], "type": "object" }, "Type": { "enum": [ - "AWS::Transfer::Workflow" + "AWS::VpcLattice::TargetGroup" ], "type": "string" }, @@ -151918,265 +153733,89 @@ var CdkSchema = `{ ], "type": "object" }, - "AWS::Transfer::Workflow.CopyStepDetails": { + "AWS::VpcLattice::TargetGroup.HealthCheckConfig": { "additionalProperties": false, "properties": { - "DestinationFileLocation": { - "$ref": "#/definitions/AWS::Transfer::Workflow.S3FileLocation" - }, - "Name": { - "type": "string" - }, - "OverwriteExisting": { - "type": "string" - }, - "SourceFileLocation": { - "type": "string" - } - }, - "type": "object" - }, - "AWS::Transfer::Workflow.CustomStepDetails": { - "additionalProperties": false, - "properties": { - "Name": { - "type": "string" - }, - "SourceFileLocation": { - "type": "string" - }, - "Target": { - "type": "string" + "Enabled": { + "type": "boolean" }, - "TimeoutSeconds": { + "HealthCheckIntervalSeconds": { "type": "number" - } - }, - "type": "object" - }, - "AWS::Transfer::Workflow.DecryptStepDetails": { - "additionalProperties": false, - "properties": { - "DestinationFileLocation": { - "$ref": "#/definitions/AWS::Transfer::Workflow.InputFileLocation" - }, - "Name": { - "type": "string" }, - "OverwriteExisting": { - "type": "string" - }, - "SourceFileLocation": { - "type": "string" + "HealthCheckTimeoutSeconds": { + "type": "number" }, - "Type": { - "type": "string" - } - }, - "type": "object" - }, - "AWS::Transfer::Workflow.DeleteStepDetails": { - "additionalProperties": false, - "properties": { - "Name": { - "type": "string" + "HealthyThresholdCount": { + "type": "number" }, - "SourceFileLocation": { - "type": "string" - } - }, - "type": "object" - }, - "AWS::Transfer::Workflow.EfsInputFileLocation": { - "additionalProperties": false, - "properties": { - "FileSystemId": { - "type": "string" + "Matcher": { + "$ref": "#/definitions/AWS::VpcLattice::TargetGroup.Matcher" }, "Path": { "type": "string" - } - }, - "type": "object" - }, - "AWS::Transfer::Workflow.InputFileLocation": { - "additionalProperties": false, - "properties": { - "EfsFileLocation": { - "$ref": "#/definitions/AWS::Transfer::Workflow.EfsInputFileLocation" }, - "S3FileLocation": { - "$ref": "#/definitions/AWS::Transfer::Workflow.S3InputFileLocation" - } - }, - "type": "object" - }, - "AWS::Transfer::Workflow.S3FileLocation": { - "additionalProperties": false, - "properties": { - "S3FileLocation": { - "$ref": "#/definitions/AWS::Transfer::Workflow.S3InputFileLocation" - } - }, - "type": "object" - }, - "AWS::Transfer::Workflow.S3InputFileLocation": { - "additionalProperties": false, - "properties": { - "Bucket": { - "type": "string" + "Port": { + "type": "number" }, - "Key": { + "Protocol": { "type": "string" + }, + "UnhealthyThresholdCount": { + "type": "number" } }, "type": "object" }, - "AWS::Transfer::Workflow.S3Tag": { + "AWS::VpcLattice::TargetGroup.Matcher": { "additionalProperties": false, "properties": { - "Key": { - "type": "string" - }, - "Value": { + "HttpCode": { "type": "string" } }, "required": [ - "Key", - "Value" + "HttpCode" ], "type": "object" }, - "AWS::Transfer::Workflow.TagStepDetails": { + "AWS::VpcLattice::TargetGroup.Target": { "additionalProperties": false, "properties": { - "Name": { - "type": "string" - }, - "SourceFileLocation": { + "Id": { "type": "string" }, - "Tags": { - "items": { - "$ref": "#/definitions/AWS::Transfer::Workflow.S3Tag" - }, - "type": "array" + "Port": { + "type": "number" } }, + "required": [ + "Id" + ], "type": "object" }, - "AWS::Transfer::Workflow.WorkflowStep": { + "AWS::VpcLattice::TargetGroup.TargetGroupConfig": { "additionalProperties": false, "properties": { - "CopyStepDetails": { - "$ref": "#/definitions/AWS::Transfer::Workflow.CopyStepDetails" - }, - "CustomStepDetails": { - "$ref": "#/definitions/AWS::Transfer::Workflow.CustomStepDetails" - }, - "DecryptStepDetails": { - "$ref": "#/definitions/AWS::Transfer::Workflow.DecryptStepDetails" - }, - "DeleteStepDetails": { - "$ref": "#/definitions/AWS::Transfer::Workflow.DeleteStepDetails" - }, - "TagStepDetails": { - "$ref": "#/definitions/AWS::Transfer::Workflow.TagStepDetails" + "HealthCheck": { + "$ref": "#/definitions/AWS::VpcLattice::TargetGroup.HealthCheckConfig" }, - "Type": { - "type": "string" - } - }, - "type": "object" - }, - "AWS::VoiceID::Domain": { - "additionalProperties": false, - "properties": { - "Condition": { - "type": "string" + "Port": { + "type": "number" }, - "DeletionPolicy": { - "enum": [ - "Delete", - "Retain", - "Snapshot" - ], + "Protocol": { "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": { - "Description": { - "type": "string" - }, - "Name": { - "type": "string" - }, - "ServerSideEncryptionConfiguration": { - "$ref": "#/definitions/AWS::VoiceID::Domain.ServerSideEncryptionConfiguration" - }, - "Tags": { - "items": { - "$ref": "#/definitions/Tag" - }, - "type": "array" - } - }, - "required": [ - "Name", - "ServerSideEncryptionConfiguration" - ], - "type": "object" - }, - "Type": { - "enum": [ - "AWS::VoiceID::Domain" - ], + "ProtocolVersion": { "type": "string" }, - "UpdateReplacePolicy": { - "enum": [ - "Delete", - "Retain", - "Snapshot" - ], - "type": "string" - } - }, - "required": [ - "Type", - "Properties" - ], - "type": "object" - }, - "AWS::VoiceID::Domain.ServerSideEncryptionConfiguration": { - "additionalProperties": false, - "properties": { - "KmsKeyId": { + "VpcIdentifier": { "type": "string" } }, "required": [ - "KmsKeyId" + "Port", + "Protocol", + "VpcIdentifier" ], "type": "object" }, @@ -158130,6 +159769,9 @@ var CdkSchema = `{ { "$ref": "#/definitions/AWS::CertificateManager::Certificate" }, + { + "$ref": "#/definitions/AWS::Chatbot::MicrosoftTeamsChannelConfiguration" + }, { "$ref": "#/definitions/AWS::Chatbot::SlackChannelConfiguration" }, @@ -158340,6 +159982,9 @@ var CdkSchema = `{ { "$ref": "#/definitions/AWS::Cognito::UserPoolUserToGroupAttachment" }, + { + "$ref": "#/definitions/AWS::Comprehend::Flywheel" + }, { "$ref": "#/definitions/AWS::Config::AggregationAuthorization" }, @@ -160512,6 +162157,9 @@ var CdkSchema = `{ { "$ref": "#/definitions/AWS::SageMaker::ImageVersion" }, + { + "$ref": "#/definitions/AWS::SageMaker::InferenceExperiment" + }, { "$ref": "#/definitions/AWS::SageMaker::Model" }, @@ -160719,6 +162367,36 @@ var CdkSchema = `{ { "$ref": "#/definitions/AWS::VoiceID::Domain" }, + { + "$ref": "#/definitions/AWS::VpcLattice::AccessLogSubscription" + }, + { + "$ref": "#/definitions/AWS::VpcLattice::AuthPolicy" + }, + { + "$ref": "#/definitions/AWS::VpcLattice::Listener" + }, + { + "$ref": "#/definitions/AWS::VpcLattice::ResourcePolicy" + }, + { + "$ref": "#/definitions/AWS::VpcLattice::Rule" + }, + { + "$ref": "#/definitions/AWS::VpcLattice::Service" + }, + { + "$ref": "#/definitions/AWS::VpcLattice::ServiceNetwork" + }, + { + "$ref": "#/definitions/AWS::VpcLattice::ServiceNetworkServiceAssociation" + }, + { + "$ref": "#/definitions/AWS::VpcLattice::ServiceNetworkVpcAssociation" + }, + { + "$ref": "#/definitions/AWS::VpcLattice::TargetGroup" + }, { "$ref": "#/definitions/AWS::WAF::ByteMatchSet" }, diff --git a/schema/cdk.schema.json b/schema/cdk.schema.json index f99de68ed0..ac10aa6cf8 100644 --- a/schema/cdk.schema.json +++ b/schema/cdk.schema.json @@ -16422,6 +16422,30 @@ ], "type": "object" }, + "AWS::Athena::WorkGroup.AclConfiguration": { + "additionalProperties": false, + "properties": { + "S3AclOption": { + "type": "string" + } + }, + "required": [ + "S3AclOption" + ], + "type": "object" + }, + "AWS::Athena::WorkGroup.CustomerContentEncryptionConfiguration": { + "additionalProperties": false, + "properties": { + "KmsKey": { + "type": "string" + } + }, + "required": [ + "KmsKey" + ], + "type": "object" + }, "AWS::Athena::WorkGroup.EncryptionConfiguration": { "additionalProperties": false, "properties": { @@ -16452,9 +16476,15 @@ "AWS::Athena::WorkGroup.ResultConfiguration": { "additionalProperties": false, "properties": { + "AclConfiguration": { + "$ref": "#/definitions/AWS::Athena::WorkGroup.AclConfiguration" + }, "EncryptionConfiguration": { "$ref": "#/definitions/AWS::Athena::WorkGroup.EncryptionConfiguration" }, + "ExpectedBucketOwner": { + "type": "string" + }, "OutputLocation": { "type": "string" } @@ -16464,15 +16494,24 @@ "AWS::Athena::WorkGroup.WorkGroupConfiguration": { "additionalProperties": false, "properties": { + "AdditionalConfiguration": { + "type": "string" + }, "BytesScannedCutoffPerQuery": { "type": "number" }, + "CustomerContentEncryptionConfiguration": { + "$ref": "#/definitions/AWS::Athena::WorkGroup.CustomerContentEncryptionConfiguration" + }, "EnforceWorkGroupConfiguration": { "type": "boolean" }, "EngineVersion": { "$ref": "#/definitions/AWS::Athena::WorkGroup.EngineVersion" }, + "ExecutionRole": { + "type": "string" + }, "PublishCloudWatchMetricsEnabled": { "type": "boolean" }, @@ -21844,6 +21883,9 @@ "BillingMode": { "$ref": "#/definitions/AWS::Cassandra::Table.BillingMode" }, + "ClientSideTimestampsEnabled": { + "type": "boolean" + }, "ClusteringKeyColumns": { "items": { "$ref": "#/definitions/AWS::Cassandra::Table.ClusteringKeyColumn" @@ -22172,7 +22214,7 @@ ], "type": "object" }, - "AWS::Chatbot::SlackChannelConfiguration": { + "AWS::Chatbot::MicrosoftTeamsChannelConfiguration": { "additionalProperties": false, "properties": { "Condition": { @@ -22222,18 +22264,21 @@ "LoggingLevel": { "type": "string" }, - "SlackChannelId": { - "type": "string" - }, - "SlackWorkspaceId": { - "type": "string" - }, "SnsTopicArns": { "items": { "type": "string" }, "type": "array" }, + "TeamId": { + "type": "string" + }, + "TeamsChannelId": { + "type": "string" + }, + "TeamsTenantId": { + "type": "string" + }, "UserRoleRequired": { "type": "boolean" } @@ -22241,14 +22286,15 @@ "required": [ "ConfigurationName", "IamRoleArn", - "SlackChannelId", - "SlackWorkspaceId" + "TeamId", + "TeamsChannelId", + "TeamsTenantId" ], "type": "object" }, "Type": { "enum": [ - "AWS::Chatbot::SlackChannelConfiguration" + "AWS::Chatbot::MicrosoftTeamsChannelConfiguration" ], "type": "string" }, @@ -22267,7 +22313,7 @@ ], "type": "object" }, - "AWS::Cloud9::EnvironmentEC2": { + "AWS::Chatbot::SlackChannelConfiguration": { "additionalProperties": false, "properties": { "Condition": { @@ -22302,51 +22348,48 @@ "Properties": { "additionalProperties": false, "properties": { - "AutomaticStopTimeMinutes": { - "type": "number" - }, - "ConnectionType": { + "ConfigurationName": { "type": "string" }, - "Description": { - "type": "string" + "GuardrailPolicies": { + "items": { + "type": "string" + }, + "type": "array" }, - "ImageId": { + "IamRoleArn": { "type": "string" }, - "InstanceType": { + "LoggingLevel": { "type": "string" }, - "Name": { + "SlackChannelId": { "type": "string" }, - "OwnerArn": { + "SlackWorkspaceId": { "type": "string" }, - "Repositories": { + "SnsTopicArns": { "items": { - "$ref": "#/definitions/AWS::Cloud9::EnvironmentEC2.Repository" + "type": "string" }, "type": "array" }, - "SubnetId": { - "type": "string" - }, - "Tags": { - "items": { - "$ref": "#/definitions/Tag" - }, - "type": "array" + "UserRoleRequired": { + "type": "boolean" } }, "required": [ - "InstanceType" + "ConfigurationName", + "IamRoleArn", + "SlackChannelId", + "SlackWorkspaceId" ], "type": "object" }, "Type": { "enum": [ - "AWS::Cloud9::EnvironmentEC2" + "AWS::Chatbot::SlackChannelConfiguration" ], "type": "string" }, @@ -22365,23 +22408,7 @@ ], "type": "object" }, - "AWS::Cloud9::EnvironmentEC2.Repository": { - "additionalProperties": false, - "properties": { - "PathComponent": { - "type": "string" - }, - "RepositoryUrl": { - "type": "string" - } - }, - "required": [ - "PathComponent", - "RepositoryUrl" - ], - "type": "object" - }, - "AWS::CloudFormation::CustomResource": { + "AWS::Cloud9::EnvironmentEC2": { "additionalProperties": false, "properties": { "Condition": { @@ -22416,18 +22443,51 @@ "Properties": { "additionalProperties": false, "properties": { - "ServiceToken": { + "AutomaticStopTimeMinutes": { + "type": "number" + }, + "ConnectionType": { "type": "string" + }, + "Description": { + "type": "string" + }, + "ImageId": { + "type": "string" + }, + "InstanceType": { + "type": "string" + }, + "Name": { + "type": "string" + }, + "OwnerArn": { + "type": "string" + }, + "Repositories": { + "items": { + "$ref": "#/definitions/AWS::Cloud9::EnvironmentEC2.Repository" + }, + "type": "array" + }, + "SubnetId": { + "type": "string" + }, + "Tags": { + "items": { + "$ref": "#/definitions/Tag" + }, + "type": "array" } }, "required": [ - "ServiceToken" + "InstanceType" ], "type": "object" }, "Type": { "enum": [ - "AWS::CloudFormation::CustomResource" + "AWS::Cloud9::EnvironmentEC2" ], "type": "string" }, @@ -22446,74 +22506,23 @@ ], "type": "object" }, - "AWS::CloudFormation::HookDefaultVersion": { + "AWS::Cloud9::EnvironmentEC2.Repository": { "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": { - "TypeName": { - "type": "string" - }, - "TypeVersionArn": { - "type": "string" - }, - "VersionId": { - "type": "string" - } - }, - "type": "object" - }, - "Type": { - "enum": [ - "AWS::CloudFormation::HookDefaultVersion" - ], + "PathComponent": { "type": "string" }, - "UpdateReplacePolicy": { - "enum": [ - "Delete", - "Retain", - "Snapshot" - ], + "RepositoryUrl": { "type": "string" } }, "required": [ - "Type" + "PathComponent", + "RepositoryUrl" ], "type": "object" }, - "AWS::CloudFormation::HookTypeConfig": { + "AWS::CloudFormation::CustomResource": { "additionalProperties": false, "properties": { "Condition": { @@ -22548,27 +22557,18 @@ "Properties": { "additionalProperties": false, "properties": { - "Configuration": { - "type": "string" - }, - "ConfigurationAlias": { - "type": "string" - }, - "TypeArn": { - "type": "string" - }, - "TypeName": { + "ServiceToken": { "type": "string" } }, "required": [ - "Configuration" + "ServiceToken" ], "type": "object" }, "Type": { "enum": [ - "AWS::CloudFormation::HookTypeConfig" + "AWS::CloudFormation::CustomResource" ], "type": "string" }, @@ -22587,7 +22587,7 @@ ], "type": "object" }, - "AWS::CloudFormation::HookVersion": { + "AWS::CloudFormation::HookDefaultVersion": { "additionalProperties": false, "properties": { "Condition": { @@ -22622,28 +22622,21 @@ "Properties": { "additionalProperties": false, "properties": { - "ExecutionRoleArn": { + "TypeName": { "type": "string" }, - "LoggingConfig": { - "$ref": "#/definitions/AWS::CloudFormation::HookVersion.LoggingConfig" - }, - "SchemaHandlerPackage": { + "TypeVersionArn": { "type": "string" }, - "TypeName": { + "VersionId": { "type": "string" } }, - "required": [ - "SchemaHandlerPackage", - "TypeName" - ], "type": "object" }, "Type": { "enum": [ - "AWS::CloudFormation::HookVersion" + "AWS::CloudFormation::HookDefaultVersion" ], "type": "string" }, @@ -22657,24 +22650,172 @@ } }, "required": [ - "Type", - "Properties" + "Type" ], "type": "object" }, - "AWS::CloudFormation::HookVersion.LoggingConfig": { - "additionalProperties": false, - "properties": { - "LogGroupName": { - "type": "string" - }, - "LogRoleArn": { - "type": "string" - } - }, - "type": "object" - }, - "AWS::CloudFormation::Macro": { + "AWS::CloudFormation::HookTypeConfig": { + "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": { + "Configuration": { + "type": "string" + }, + "ConfigurationAlias": { + "type": "string" + }, + "TypeArn": { + "type": "string" + }, + "TypeName": { + "type": "string" + } + }, + "required": [ + "Configuration" + ], + "type": "object" + }, + "Type": { + "enum": [ + "AWS::CloudFormation::HookTypeConfig" + ], + "type": "string" + }, + "UpdateReplacePolicy": { + "enum": [ + "Delete", + "Retain", + "Snapshot" + ], + "type": "string" + } + }, + "required": [ + "Type", + "Properties" + ], + "type": "object" + }, + "AWS::CloudFormation::HookVersion": { + "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": { + "ExecutionRoleArn": { + "type": "string" + }, + "LoggingConfig": { + "$ref": "#/definitions/AWS::CloudFormation::HookVersion.LoggingConfig" + }, + "SchemaHandlerPackage": { + "type": "string" + }, + "TypeName": { + "type": "string" + } + }, + "required": [ + "SchemaHandlerPackage", + "TypeName" + ], + "type": "object" + }, + "Type": { + "enum": [ + "AWS::CloudFormation::HookVersion" + ], + "type": "string" + }, + "UpdateReplacePolicy": { + "enum": [ + "Delete", + "Retain", + "Snapshot" + ], + "type": "string" + } + }, + "required": [ + "Type", + "Properties" + ], + "type": "object" + }, + "AWS::CloudFormation::HookVersion.LoggingConfig": { + "additionalProperties": false, + "properties": { + "LogGroupName": { + "type": "string" + }, + "LogRoleArn": { + "type": "string" + } + }, + "type": "object" + }, + "AWS::CloudFormation::Macro": { "additionalProperties": false, "properties": { "Condition": { @@ -32122,7 +32263,7 @@ ], "type": "object" }, - "AWS::Config::AggregationAuthorization": { + "AWS::Comprehend::Flywheel": { "additionalProperties": false, "properties": { "Condition": { @@ -32157,10 +32298,22 @@ "Properties": { "additionalProperties": false, "properties": { - "AuthorizedAccountId": { + "ActiveModelArn": { "type": "string" }, - "AuthorizedAwsRegion": { + "DataAccessRoleArn": { + "type": "string" + }, + "DataLakeS3Uri": { + "type": "string" + }, + "DataSecurityConfig": { + "$ref": "#/definitions/AWS::Comprehend::Flywheel.DataSecurityConfig" + }, + "FlywheelName": { + "type": "string" + }, + "ModelType": { "type": "string" }, "Tags": { @@ -32168,17 +32321,21 @@ "$ref": "#/definitions/Tag" }, "type": "array" + }, + "TaskConfig": { + "$ref": "#/definitions/AWS::Comprehend::Flywheel.TaskConfig" } }, "required": [ - "AuthorizedAccountId", - "AuthorizedAwsRegion" + "DataAccessRoleArn", + "DataLakeS3Uri", + "FlywheelName" ], "type": "object" }, "Type": { "enum": [ - "AWS::Config::AggregationAuthorization" + "AWS::Comprehend::Flywheel" ], "type": "string" }, @@ -32197,7 +32354,182 @@ ], "type": "object" }, - "AWS::Config::ConfigRule": { + "AWS::Comprehend::Flywheel.DataSecurityConfig": { + "additionalProperties": false, + "properties": { + "DataLakeKmsKeyId": { + "type": "string" + }, + "ModelKmsKeyId": { + "type": "string" + }, + "VolumeKmsKeyId": { + "type": "string" + }, + "VpcConfig": { + "$ref": "#/definitions/AWS::Comprehend::Flywheel.VpcConfig" + } + }, + "type": "object" + }, + "AWS::Comprehend::Flywheel.DocumentClassificationConfig": { + "additionalProperties": false, + "properties": { + "Labels": { + "items": { + "type": "string" + }, + "type": "array" + }, + "Mode": { + "type": "string" + } + }, + "required": [ + "Mode" + ], + "type": "object" + }, + "AWS::Comprehend::Flywheel.EntityRecognitionConfig": { + "additionalProperties": false, + "properties": { + "EntityTypes": { + "items": { + "$ref": "#/definitions/AWS::Comprehend::Flywheel.EntityTypesListItem" + }, + "type": "array" + } + }, + "type": "object" + }, + "AWS::Comprehend::Flywheel.EntityTypesListItem": { + "additionalProperties": false, + "properties": { + "Type": { + "type": "string" + } + }, + "required": [ + "Type" + ], + "type": "object" + }, + "AWS::Comprehend::Flywheel.TaskConfig": { + "additionalProperties": false, + "properties": { + "DocumentClassificationConfig": { + "$ref": "#/definitions/AWS::Comprehend::Flywheel.DocumentClassificationConfig" + }, + "EntityRecognitionConfig": { + "$ref": "#/definitions/AWS::Comprehend::Flywheel.EntityRecognitionConfig" + }, + "LanguageCode": { + "type": "string" + } + }, + "required": [ + "LanguageCode" + ], + "type": "object" + }, + "AWS::Comprehend::Flywheel.VpcConfig": { + "additionalProperties": false, + "properties": { + "SecurityGroupIds": { + "items": { + "type": "string" + }, + "type": "array" + }, + "Subnets": { + "items": { + "type": "string" + }, + "type": "array" + } + }, + "required": [ + "SecurityGroupIds", + "Subnets" + ], + "type": "object" + }, + "AWS::Config::AggregationAuthorization": { + "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": { + "AuthorizedAccountId": { + "type": "string" + }, + "AuthorizedAwsRegion": { + "type": "string" + }, + "Tags": { + "items": { + "$ref": "#/definitions/Tag" + }, + "type": "array" + } + }, + "required": [ + "AuthorizedAccountId", + "AuthorizedAwsRegion" + ], + "type": "object" + }, + "Type": { + "enum": [ + "AWS::Config::AggregationAuthorization" + ], + "type": "string" + }, + "UpdateReplacePolicy": { + "enum": [ + "Delete", + "Retain", + "Snapshot" + ], + "type": "string" + } + }, + "required": [ + "Type", + "Properties" + ], + "type": "object" + }, + "AWS::Config::ConfigRule": { "additionalProperties": false, "properties": { "Condition": { @@ -61419,7 +61751,6 @@ "required": [ "Actions", "Conditions", - "ListenerArn", "Priority" ], "type": "object" @@ -110006,18 +110337,7 @@ }, "AWS::MediaPackage::PackagingConfiguration.EncryptionContractConfiguration": { "additionalProperties": false, - "properties": { - "PresetSpeke20Audio": { - "type": "string" - }, - "PresetSpeke20Video": { - "type": "string" - } - }, - "required": [ - "PresetSpeke20Audio", - "PresetSpeke20Video" - ], + "properties": {}, "type": "object" }, "AWS::MediaPackage::PackagingConfiguration.HlsEncryption": { @@ -127299,6 +127619,9 @@ "Name": { "type": "string" }, + "Namespace": { + "type": "string" + }, "UnitLabel": { "type": "string" }, @@ -134881,6 +135204,9 @@ "properties": { "Bucket": { "type": "string" + }, + "BucketAccountId": { + "type": "string" } }, "required": [ @@ -139025,7 +139351,6 @@ "required": [ "Alias", "DisplayName", - "Plan", "Type" ], "type": "object" @@ -142038,7 +142363,7 @@ ], "type": "object" }, - "AWS::SageMaker::Model": { + "AWS::SageMaker::InferenceExperiment": { "additionalProperties": false, "properties": { "Condition": { @@ -142073,26 +142398,41 @@ "Properties": { "additionalProperties": false, "properties": { - "Containers": { + "DataStorageConfig": { + "$ref": "#/definitions/AWS::SageMaker::InferenceExperiment.DataStorageConfig" + }, + "Description": { + "type": "string" + }, + "DesiredState": { + "type": "string" + }, + "EndpointName": { + "type": "string" + }, + "KmsKey": { + "type": "string" + }, + "ModelVariants": { "items": { - "$ref": "#/definitions/AWS::SageMaker::Model.ContainerDefinition" + "$ref": "#/definitions/AWS::SageMaker::InferenceExperiment.ModelVariantConfig" }, "type": "array" }, - "EnableNetworkIsolation": { - "type": "boolean" + "Name": { + "type": "string" }, - "ExecutionRoleArn": { + "RoleArn": { "type": "string" }, - "InferenceExecutionConfig": { - "$ref": "#/definitions/AWS::SageMaker::Model.InferenceExecutionConfig" + "Schedule": { + "$ref": "#/definitions/AWS::SageMaker::InferenceExperiment.InferenceExperimentSchedule" }, - "ModelName": { - "type": "string" + "ShadowModeConfig": { + "$ref": "#/definitions/AWS::SageMaker::InferenceExperiment.ShadowModeConfig" }, - "PrimaryContainer": { - "$ref": "#/definitions/AWS::SageMaker::Model.ContainerDefinition" + "StatusReason": { + "type": "string" }, "Tags": { "items": { @@ -142100,18 +142440,22 @@ }, "type": "array" }, - "VpcConfig": { - "$ref": "#/definitions/AWS::SageMaker::Model.VpcConfig" + "Type": { + "type": "string" } }, "required": [ - "ExecutionRoleArn" + "EndpointName", + "ModelVariants", + "Name", + "RoleArn", + "Type" ], "type": "object" }, "Type": { "enum": [ - "AWS::SageMaker::Model" + "AWS::SageMaker::InferenceExperiment" ], "type": "string" }, @@ -142130,110 +142474,160 @@ ], "type": "object" }, - "AWS::SageMaker::Model.ContainerDefinition": { + "AWS::SageMaker::InferenceExperiment.CaptureContentTypeHeader": { "additionalProperties": false, "properties": { - "ContainerHostname": { - "type": "string" + "CsvContentTypes": { + "items": { + "type": "string" + }, + "type": "array" }, - "Environment": { - "type": "object" + "JsonContentTypes": { + "items": { + "type": "string" + }, + "type": "array" + } + }, + "type": "object" + }, + "AWS::SageMaker::InferenceExperiment.DataStorageConfig": { + "additionalProperties": false, + "properties": { + "ContentType": { + "$ref": "#/definitions/AWS::SageMaker::InferenceExperiment.CaptureContentTypeHeader" }, - "Image": { + "Destination": { "type": "string" }, - "ImageConfig": { - "$ref": "#/definitions/AWS::SageMaker::Model.ImageConfig" - }, - "InferenceSpecificationName": { + "KmsKey": { "type": "string" - }, - "Mode": { + } + }, + "required": [ + "Destination" + ], + "type": "object" + }, + "AWS::SageMaker::InferenceExperiment.EndpointMetadata": { + "additionalProperties": false, + "properties": { + "EndpointConfigName": { "type": "string" }, - "ModelDataUrl": { + "EndpointName": { "type": "string" }, - "ModelPackageName": { + "EndpointStatus": { "type": "string" - }, - "MultiModelConfig": { - "$ref": "#/definitions/AWS::SageMaker::Model.MultiModelConfig" } }, + "required": [ + "EndpointName" + ], "type": "object" }, - "AWS::SageMaker::Model.ImageConfig": { + "AWS::SageMaker::InferenceExperiment.InferenceExperimentSchedule": { "additionalProperties": false, "properties": { - "RepositoryAccessMode": { + "EndTime": { "type": "string" }, - "RepositoryAuthConfig": { - "$ref": "#/definitions/AWS::SageMaker::Model.RepositoryAuthConfig" + "StartTime": { + "type": "string" } }, - "required": [ - "RepositoryAccessMode" - ], "type": "object" }, - "AWS::SageMaker::Model.InferenceExecutionConfig": { + "AWS::SageMaker::InferenceExperiment.ModelInfrastructureConfig": { "additionalProperties": false, "properties": { - "Mode": { + "InfrastructureType": { "type": "string" + }, + "RealTimeInferenceConfig": { + "$ref": "#/definitions/AWS::SageMaker::InferenceExperiment.RealTimeInferenceConfig" } }, "required": [ - "Mode" + "InfrastructureType", + "RealTimeInferenceConfig" ], "type": "object" }, - "AWS::SageMaker::Model.MultiModelConfig": { + "AWS::SageMaker::InferenceExperiment.ModelVariantConfig": { "additionalProperties": false, "properties": { - "ModelCacheSetting": { + "InfrastructureConfig": { + "$ref": "#/definitions/AWS::SageMaker::InferenceExperiment.ModelInfrastructureConfig" + }, + "ModelName": { + "type": "string" + }, + "VariantName": { "type": "string" } }, + "required": [ + "InfrastructureConfig", + "ModelName", + "VariantName" + ], "type": "object" }, - "AWS::SageMaker::Model.RepositoryAuthConfig": { + "AWS::SageMaker::InferenceExperiment.RealTimeInferenceConfig": { "additionalProperties": false, "properties": { - "RepositoryCredentialsProviderArn": { + "InstanceCount": { + "type": "number" + }, + "InstanceType": { "type": "string" } }, "required": [ - "RepositoryCredentialsProviderArn" + "InstanceCount", + "InstanceType" ], "type": "object" }, - "AWS::SageMaker::Model.VpcConfig": { + "AWS::SageMaker::InferenceExperiment.ShadowModeConfig": { "additionalProperties": false, "properties": { - "SecurityGroupIds": { + "ShadowModelVariants": { "items": { - "type": "string" + "$ref": "#/definitions/AWS::SageMaker::InferenceExperiment.ShadowModelVariantConfig" }, "type": "array" }, - "Subnets": { - "items": { - "type": "string" - }, - "type": "array" + "SourceModelVariantName": { + "type": "string" } }, "required": [ - "SecurityGroupIds", - "Subnets" + "ShadowModelVariants", + "SourceModelVariantName" ], "type": "object" }, - "AWS::SageMaker::ModelBiasJobDefinition": { + "AWS::SageMaker::InferenceExperiment.ShadowModelVariantConfig": { + "additionalProperties": false, + "properties": { + "SamplingPercentage": { + "type": "number" + }, + "ShadowModelVariantName": { + "type": "string" + } + }, + "required": [ + "SamplingPercentage", + "ShadowModelVariantName" + ], + "type": "object" + }, + "AWS::SageMaker::Model": { "additionalProperties": false, "properties": { "Condition": { @@ -142268,55 +142662,45 @@ "Properties": { "additionalProperties": false, "properties": { - "EndpointName": { - "type": "string" - }, - "JobDefinitionName": { - "type": "string" - }, - "JobResources": { - "$ref": "#/definitions/AWS::SageMaker::ModelBiasJobDefinition.MonitoringResources" - }, - "ModelBiasAppSpecification": { - "$ref": "#/definitions/AWS::SageMaker::ModelBiasJobDefinition.ModelBiasAppSpecification" - }, - "ModelBiasBaselineConfig": { - "$ref": "#/definitions/AWS::SageMaker::ModelBiasJobDefinition.ModelBiasBaselineConfig" + "Containers": { + "items": { + "$ref": "#/definitions/AWS::SageMaker::Model.ContainerDefinition" + }, + "type": "array" }, - "ModelBiasJobInput": { - "$ref": "#/definitions/AWS::SageMaker::ModelBiasJobDefinition.ModelBiasJobInput" + "EnableNetworkIsolation": { + "type": "boolean" }, - "ModelBiasJobOutputConfig": { - "$ref": "#/definitions/AWS::SageMaker::ModelBiasJobDefinition.MonitoringOutputConfig" + "ExecutionRoleArn": { + "type": "string" }, - "NetworkConfig": { - "$ref": "#/definitions/AWS::SageMaker::ModelBiasJobDefinition.NetworkConfig" + "InferenceExecutionConfig": { + "$ref": "#/definitions/AWS::SageMaker::Model.InferenceExecutionConfig" }, - "RoleArn": { + "ModelName": { "type": "string" }, - "StoppingCondition": { - "$ref": "#/definitions/AWS::SageMaker::ModelBiasJobDefinition.StoppingCondition" + "PrimaryContainer": { + "$ref": "#/definitions/AWS::SageMaker::Model.ContainerDefinition" }, "Tags": { "items": { "$ref": "#/definitions/Tag" }, "type": "array" + }, + "VpcConfig": { + "$ref": "#/definitions/AWS::SageMaker::Model.VpcConfig" } }, "required": [ - "JobResources", - "ModelBiasAppSpecification", - "ModelBiasJobInput", - "ModelBiasJobOutputConfig", - "RoleArn" + "ExecutionRoleArn" ], "type": "object" }, "Type": { "enum": [ - "AWS::SageMaker::ModelBiasJobDefinition" + "AWS::SageMaker::Model" ], "type": "string" }, @@ -142335,311 +142719,88 @@ ], "type": "object" }, - "AWS::SageMaker::ModelBiasJobDefinition.BatchTransformInput": { - "additionalProperties": false, - "properties": { - "DataCapturedDestinationS3Uri": { - "type": "string" - }, - "DatasetFormat": { - "$ref": "#/definitions/AWS::SageMaker::ModelBiasJobDefinition.DatasetFormat" - }, - "EndTimeOffset": { - "type": "string" - }, - "FeaturesAttribute": { - "type": "string" - }, - "InferenceAttribute": { - "type": "string" - }, - "LocalPath": { - "type": "string" - }, - "ProbabilityAttribute": { - "type": "string" - }, - "ProbabilityThresholdAttribute": { - "type": "number" - }, - "S3DataDistributionType": { - "type": "string" - }, - "S3InputMode": { - "type": "string" - }, - "StartTimeOffset": { - "type": "string" - } - }, - "required": [ - "DataCapturedDestinationS3Uri", - "DatasetFormat", - "LocalPath" - ], - "type": "object" - }, - "AWS::SageMaker::ModelBiasJobDefinition.ClusterConfig": { - "additionalProperties": false, - "properties": { - "InstanceCount": { - "type": "number" - }, - "InstanceType": { - "type": "string" - }, - "VolumeKmsKeyId": { - "type": "string" - }, - "VolumeSizeInGB": { - "type": "number" - } - }, - "required": [ - "InstanceCount", - "InstanceType", - "VolumeSizeInGB" - ], - "type": "object" - }, - "AWS::SageMaker::ModelBiasJobDefinition.ConstraintsResource": { - "additionalProperties": false, - "properties": { - "S3Uri": { - "type": "string" - } - }, - "type": "object" - }, - "AWS::SageMaker::ModelBiasJobDefinition.Csv": { - "additionalProperties": false, - "properties": { - "Header": { - "type": "boolean" - } - }, - "type": "object" - }, - "AWS::SageMaker::ModelBiasJobDefinition.DatasetFormat": { - "additionalProperties": false, - "properties": { - "Csv": { - "$ref": "#/definitions/AWS::SageMaker::ModelBiasJobDefinition.Csv" - }, - "Json": { - "$ref": "#/definitions/AWS::SageMaker::ModelBiasJobDefinition.Json" - }, - "Parquet": { - "type": "boolean" - } - }, - "type": "object" - }, - "AWS::SageMaker::ModelBiasJobDefinition.EndpointInput": { + "AWS::SageMaker::Model.ContainerDefinition": { "additionalProperties": false, "properties": { - "EndTimeOffset": { - "type": "string" - }, - "EndpointName": { + "ContainerHostname": { "type": "string" }, - "FeaturesAttribute": { - "type": "string" + "Environment": { + "type": "object" }, - "InferenceAttribute": { + "Image": { "type": "string" }, - "LocalPath": { - "type": "string" + "ImageConfig": { + "$ref": "#/definitions/AWS::SageMaker::Model.ImageConfig" }, - "ProbabilityAttribute": { + "InferenceSpecificationName": { "type": "string" }, - "ProbabilityThresholdAttribute": { - "type": "number" - }, - "S3DataDistributionType": { + "Mode": { "type": "string" }, - "S3InputMode": { + "ModelDataUrl": { "type": "string" }, - "StartTimeOffset": { - "type": "string" - } - }, - "required": [ - "EndpointName", - "LocalPath" - ], - "type": "object" - }, - "AWS::SageMaker::ModelBiasJobDefinition.Json": { - "additionalProperties": false, - "properties": { - "Line": { - "type": "boolean" - } - }, - "type": "object" - }, - "AWS::SageMaker::ModelBiasJobDefinition.ModelBiasAppSpecification": { - "additionalProperties": false, - "properties": { - "ConfigUri": { + "ModelPackageName": { "type": "string" }, - "Environment": { - "additionalProperties": true, - "patternProperties": { - "^[a-zA-Z0-9]+$": { - "type": "string" - } - }, - "type": "object" - }, - "ImageUri": { - "type": "string" + "MultiModelConfig": { + "$ref": "#/definitions/AWS::SageMaker::Model.MultiModelConfig" } }, - "required": [ - "ConfigUri", - "ImageUri" - ], "type": "object" }, - "AWS::SageMaker::ModelBiasJobDefinition.ModelBiasBaselineConfig": { + "AWS::SageMaker::Model.ImageConfig": { "additionalProperties": false, "properties": { - "BaseliningJobName": { + "RepositoryAccessMode": { "type": "string" }, - "ConstraintsResource": { - "$ref": "#/definitions/AWS::SageMaker::ModelBiasJobDefinition.ConstraintsResource" - } - }, - "type": "object" - }, - "AWS::SageMaker::ModelBiasJobDefinition.ModelBiasJobInput": { - "additionalProperties": false, - "properties": { - "BatchTransformInput": { - "$ref": "#/definitions/AWS::SageMaker::ModelBiasJobDefinition.BatchTransformInput" - }, - "EndpointInput": { - "$ref": "#/definitions/AWS::SageMaker::ModelBiasJobDefinition.EndpointInput" - }, - "GroundTruthS3Input": { - "$ref": "#/definitions/AWS::SageMaker::ModelBiasJobDefinition.MonitoringGroundTruthS3Input" + "RepositoryAuthConfig": { + "$ref": "#/definitions/AWS::SageMaker::Model.RepositoryAuthConfig" } }, "required": [ - "GroundTruthS3Input" + "RepositoryAccessMode" ], "type": "object" }, - "AWS::SageMaker::ModelBiasJobDefinition.MonitoringGroundTruthS3Input": { + "AWS::SageMaker::Model.InferenceExecutionConfig": { "additionalProperties": false, "properties": { - "S3Uri": { + "Mode": { "type": "string" } }, "required": [ - "S3Uri" - ], - "type": "object" - }, - "AWS::SageMaker::ModelBiasJobDefinition.MonitoringOutput": { - "additionalProperties": false, - "properties": { - "S3Output": { - "$ref": "#/definitions/AWS::SageMaker::ModelBiasJobDefinition.S3Output" - } - }, - "required": [ - "S3Output" + "Mode" ], "type": "object" }, - "AWS::SageMaker::ModelBiasJobDefinition.MonitoringOutputConfig": { + "AWS::SageMaker::Model.MultiModelConfig": { "additionalProperties": false, "properties": { - "KmsKeyId": { + "ModelCacheSetting": { "type": "string" - }, - "MonitoringOutputs": { - "items": { - "$ref": "#/definitions/AWS::SageMaker::ModelBiasJobDefinition.MonitoringOutput" - }, - "type": "array" - } - }, - "required": [ - "MonitoringOutputs" - ], - "type": "object" - }, - "AWS::SageMaker::ModelBiasJobDefinition.MonitoringResources": { - "additionalProperties": false, - "properties": { - "ClusterConfig": { - "$ref": "#/definitions/AWS::SageMaker::ModelBiasJobDefinition.ClusterConfig" - } - }, - "required": [ - "ClusterConfig" - ], - "type": "object" - }, - "AWS::SageMaker::ModelBiasJobDefinition.NetworkConfig": { - "additionalProperties": false, - "properties": { - "EnableInterContainerTrafficEncryption": { - "type": "boolean" - }, - "EnableNetworkIsolation": { - "type": "boolean" - }, - "VpcConfig": { - "$ref": "#/definitions/AWS::SageMaker::ModelBiasJobDefinition.VpcConfig" } }, "type": "object" }, - "AWS::SageMaker::ModelBiasJobDefinition.S3Output": { + "AWS::SageMaker::Model.RepositoryAuthConfig": { "additionalProperties": false, "properties": { - "LocalPath": { - "type": "string" - }, - "S3UploadMode": { - "type": "string" - }, - "S3Uri": { + "RepositoryCredentialsProviderArn": { "type": "string" } }, "required": [ - "LocalPath", - "S3Uri" - ], - "type": "object" - }, - "AWS::SageMaker::ModelBiasJobDefinition.StoppingCondition": { - "additionalProperties": false, - "properties": { - "MaxRuntimeInSeconds": { - "type": "number" - } - }, - "required": [ - "MaxRuntimeInSeconds" + "RepositoryCredentialsProviderArn" ], "type": "object" }, - "AWS::SageMaker::ModelBiasJobDefinition.VpcConfig": { + "AWS::SageMaker::Model.VpcConfig": { "additionalProperties": false, "properties": { "SecurityGroupIds": { @@ -142661,7 +142822,435 @@ ], "type": "object" }, - "AWS::SageMaker::ModelCard": { + "AWS::SageMaker::ModelBiasJobDefinition": { + "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": { + "EndpointName": { + "type": "string" + }, + "JobDefinitionName": { + "type": "string" + }, + "JobResources": { + "$ref": "#/definitions/AWS::SageMaker::ModelBiasJobDefinition.MonitoringResources" + }, + "ModelBiasAppSpecification": { + "$ref": "#/definitions/AWS::SageMaker::ModelBiasJobDefinition.ModelBiasAppSpecification" + }, + "ModelBiasBaselineConfig": { + "$ref": "#/definitions/AWS::SageMaker::ModelBiasJobDefinition.ModelBiasBaselineConfig" + }, + "ModelBiasJobInput": { + "$ref": "#/definitions/AWS::SageMaker::ModelBiasJobDefinition.ModelBiasJobInput" + }, + "ModelBiasJobOutputConfig": { + "$ref": "#/definitions/AWS::SageMaker::ModelBiasJobDefinition.MonitoringOutputConfig" + }, + "NetworkConfig": { + "$ref": "#/definitions/AWS::SageMaker::ModelBiasJobDefinition.NetworkConfig" + }, + "RoleArn": { + "type": "string" + }, + "StoppingCondition": { + "$ref": "#/definitions/AWS::SageMaker::ModelBiasJobDefinition.StoppingCondition" + }, + "Tags": { + "items": { + "$ref": "#/definitions/Tag" + }, + "type": "array" + } + }, + "required": [ + "JobResources", + "ModelBiasAppSpecification", + "ModelBiasJobInput", + "ModelBiasJobOutputConfig", + "RoleArn" + ], + "type": "object" + }, + "Type": { + "enum": [ + "AWS::SageMaker::ModelBiasJobDefinition" + ], + "type": "string" + }, + "UpdateReplacePolicy": { + "enum": [ + "Delete", + "Retain", + "Snapshot" + ], + "type": "string" + } + }, + "required": [ + "Type", + "Properties" + ], + "type": "object" + }, + "AWS::SageMaker::ModelBiasJobDefinition.BatchTransformInput": { + "additionalProperties": false, + "properties": { + "DataCapturedDestinationS3Uri": { + "type": "string" + }, + "DatasetFormat": { + "$ref": "#/definitions/AWS::SageMaker::ModelBiasJobDefinition.DatasetFormat" + }, + "EndTimeOffset": { + "type": "string" + }, + "FeaturesAttribute": { + "type": "string" + }, + "InferenceAttribute": { + "type": "string" + }, + "LocalPath": { + "type": "string" + }, + "ProbabilityAttribute": { + "type": "string" + }, + "ProbabilityThresholdAttribute": { + "type": "number" + }, + "S3DataDistributionType": { + "type": "string" + }, + "S3InputMode": { + "type": "string" + }, + "StartTimeOffset": { + "type": "string" + } + }, + "required": [ + "DataCapturedDestinationS3Uri", + "DatasetFormat", + "LocalPath" + ], + "type": "object" + }, + "AWS::SageMaker::ModelBiasJobDefinition.ClusterConfig": { + "additionalProperties": false, + "properties": { + "InstanceCount": { + "type": "number" + }, + "InstanceType": { + "type": "string" + }, + "VolumeKmsKeyId": { + "type": "string" + }, + "VolumeSizeInGB": { + "type": "number" + } + }, + "required": [ + "InstanceCount", + "InstanceType", + "VolumeSizeInGB" + ], + "type": "object" + }, + "AWS::SageMaker::ModelBiasJobDefinition.ConstraintsResource": { + "additionalProperties": false, + "properties": { + "S3Uri": { + "type": "string" + } + }, + "type": "object" + }, + "AWS::SageMaker::ModelBiasJobDefinition.Csv": { + "additionalProperties": false, + "properties": { + "Header": { + "type": "boolean" + } + }, + "type": "object" + }, + "AWS::SageMaker::ModelBiasJobDefinition.DatasetFormat": { + "additionalProperties": false, + "properties": { + "Csv": { + "$ref": "#/definitions/AWS::SageMaker::ModelBiasJobDefinition.Csv" + }, + "Json": { + "$ref": "#/definitions/AWS::SageMaker::ModelBiasJobDefinition.Json" + }, + "Parquet": { + "type": "boolean" + } + }, + "type": "object" + }, + "AWS::SageMaker::ModelBiasJobDefinition.EndpointInput": { + "additionalProperties": false, + "properties": { + "EndTimeOffset": { + "type": "string" + }, + "EndpointName": { + "type": "string" + }, + "FeaturesAttribute": { + "type": "string" + }, + "InferenceAttribute": { + "type": "string" + }, + "LocalPath": { + "type": "string" + }, + "ProbabilityAttribute": { + "type": "string" + }, + "ProbabilityThresholdAttribute": { + "type": "number" + }, + "S3DataDistributionType": { + "type": "string" + }, + "S3InputMode": { + "type": "string" + }, + "StartTimeOffset": { + "type": "string" + } + }, + "required": [ + "EndpointName", + "LocalPath" + ], + "type": "object" + }, + "AWS::SageMaker::ModelBiasJobDefinition.Json": { + "additionalProperties": false, + "properties": { + "Line": { + "type": "boolean" + } + }, + "type": "object" + }, + "AWS::SageMaker::ModelBiasJobDefinition.ModelBiasAppSpecification": { + "additionalProperties": false, + "properties": { + "ConfigUri": { + "type": "string" + }, + "Environment": { + "additionalProperties": true, + "patternProperties": { + "^[a-zA-Z0-9]+$": { + "type": "string" + } + }, + "type": "object" + }, + "ImageUri": { + "type": "string" + } + }, + "required": [ + "ConfigUri", + "ImageUri" + ], + "type": "object" + }, + "AWS::SageMaker::ModelBiasJobDefinition.ModelBiasBaselineConfig": { + "additionalProperties": false, + "properties": { + "BaseliningJobName": { + "type": "string" + }, + "ConstraintsResource": { + "$ref": "#/definitions/AWS::SageMaker::ModelBiasJobDefinition.ConstraintsResource" + } + }, + "type": "object" + }, + "AWS::SageMaker::ModelBiasJobDefinition.ModelBiasJobInput": { + "additionalProperties": false, + "properties": { + "BatchTransformInput": { + "$ref": "#/definitions/AWS::SageMaker::ModelBiasJobDefinition.BatchTransformInput" + }, + "EndpointInput": { + "$ref": "#/definitions/AWS::SageMaker::ModelBiasJobDefinition.EndpointInput" + }, + "GroundTruthS3Input": { + "$ref": "#/definitions/AWS::SageMaker::ModelBiasJobDefinition.MonitoringGroundTruthS3Input" + } + }, + "required": [ + "GroundTruthS3Input" + ], + "type": "object" + }, + "AWS::SageMaker::ModelBiasJobDefinition.MonitoringGroundTruthS3Input": { + "additionalProperties": false, + "properties": { + "S3Uri": { + "type": "string" + } + }, + "required": [ + "S3Uri" + ], + "type": "object" + }, + "AWS::SageMaker::ModelBiasJobDefinition.MonitoringOutput": { + "additionalProperties": false, + "properties": { + "S3Output": { + "$ref": "#/definitions/AWS::SageMaker::ModelBiasJobDefinition.S3Output" + } + }, + "required": [ + "S3Output" + ], + "type": "object" + }, + "AWS::SageMaker::ModelBiasJobDefinition.MonitoringOutputConfig": { + "additionalProperties": false, + "properties": { + "KmsKeyId": { + "type": "string" + }, + "MonitoringOutputs": { + "items": { + "$ref": "#/definitions/AWS::SageMaker::ModelBiasJobDefinition.MonitoringOutput" + }, + "type": "array" + } + }, + "required": [ + "MonitoringOutputs" + ], + "type": "object" + }, + "AWS::SageMaker::ModelBiasJobDefinition.MonitoringResources": { + "additionalProperties": false, + "properties": { + "ClusterConfig": { + "$ref": "#/definitions/AWS::SageMaker::ModelBiasJobDefinition.ClusterConfig" + } + }, + "required": [ + "ClusterConfig" + ], + "type": "object" + }, + "AWS::SageMaker::ModelBiasJobDefinition.NetworkConfig": { + "additionalProperties": false, + "properties": { + "EnableInterContainerTrafficEncryption": { + "type": "boolean" + }, + "EnableNetworkIsolation": { + "type": "boolean" + }, + "VpcConfig": { + "$ref": "#/definitions/AWS::SageMaker::ModelBiasJobDefinition.VpcConfig" + } + }, + "type": "object" + }, + "AWS::SageMaker::ModelBiasJobDefinition.S3Output": { + "additionalProperties": false, + "properties": { + "LocalPath": { + "type": "string" + }, + "S3UploadMode": { + "type": "string" + }, + "S3Uri": { + "type": "string" + } + }, + "required": [ + "LocalPath", + "S3Uri" + ], + "type": "object" + }, + "AWS::SageMaker::ModelBiasJobDefinition.StoppingCondition": { + "additionalProperties": false, + "properties": { + "MaxRuntimeInSeconds": { + "type": "number" + } + }, + "required": [ + "MaxRuntimeInSeconds" + ], + "type": "object" + }, + "AWS::SageMaker::ModelBiasJobDefinition.VpcConfig": { + "additionalProperties": false, + "properties": { + "SecurityGroupIds": { + "items": { + "type": "string" + }, + "type": "array" + }, + "Subnets": { + "items": { + "type": "string" + }, + "type": "array" + } + }, + "required": [ + "SecurityGroupIds", + "Subnets" + ], + "type": "object" + }, + "AWS::SageMaker::ModelCard": { "additionalProperties": false, "properties": { "Condition": { @@ -151865,36 +152454,1262 @@ "Properties": { "additionalProperties": false, "properties": { - "Description": { + "Description": { + "type": "string" + }, + "OnExceptionSteps": { + "items": { + "$ref": "#/definitions/AWS::Transfer::Workflow.WorkflowStep" + }, + "type": "array" + }, + "Steps": { + "items": { + "$ref": "#/definitions/AWS::Transfer::Workflow.WorkflowStep" + }, + "type": "array" + }, + "Tags": { + "items": { + "$ref": "#/definitions/Tag" + }, + "type": "array" + } + }, + "required": [ + "Steps" + ], + "type": "object" + }, + "Type": { + "enum": [ + "AWS::Transfer::Workflow" + ], + "type": "string" + }, + "UpdateReplacePolicy": { + "enum": [ + "Delete", + "Retain", + "Snapshot" + ], + "type": "string" + } + }, + "required": [ + "Type", + "Properties" + ], + "type": "object" + }, + "AWS::Transfer::Workflow.CopyStepDetails": { + "additionalProperties": false, + "properties": { + "DestinationFileLocation": { + "$ref": "#/definitions/AWS::Transfer::Workflow.S3FileLocation" + }, + "Name": { + "type": "string" + }, + "OverwriteExisting": { + "type": "string" + }, + "SourceFileLocation": { + "type": "string" + } + }, + "type": "object" + }, + "AWS::Transfer::Workflow.CustomStepDetails": { + "additionalProperties": false, + "properties": { + "Name": { + "type": "string" + }, + "SourceFileLocation": { + "type": "string" + }, + "Target": { + "type": "string" + }, + "TimeoutSeconds": { + "type": "number" + } + }, + "type": "object" + }, + "AWS::Transfer::Workflow.DecryptStepDetails": { + "additionalProperties": false, + "properties": { + "DestinationFileLocation": { + "$ref": "#/definitions/AWS::Transfer::Workflow.InputFileLocation" + }, + "Name": { + "type": "string" + }, + "OverwriteExisting": { + "type": "string" + }, + "SourceFileLocation": { + "type": "string" + }, + "Type": { + "type": "string" + } + }, + "type": "object" + }, + "AWS::Transfer::Workflow.DeleteStepDetails": { + "additionalProperties": false, + "properties": { + "Name": { + "type": "string" + }, + "SourceFileLocation": { + "type": "string" + } + }, + "type": "object" + }, + "AWS::Transfer::Workflow.EfsInputFileLocation": { + "additionalProperties": false, + "properties": { + "FileSystemId": { + "type": "string" + }, + "Path": { + "type": "string" + } + }, + "type": "object" + }, + "AWS::Transfer::Workflow.InputFileLocation": { + "additionalProperties": false, + "properties": { + "EfsFileLocation": { + "$ref": "#/definitions/AWS::Transfer::Workflow.EfsInputFileLocation" + }, + "S3FileLocation": { + "$ref": "#/definitions/AWS::Transfer::Workflow.S3InputFileLocation" + } + }, + "type": "object" + }, + "AWS::Transfer::Workflow.S3FileLocation": { + "additionalProperties": false, + "properties": { + "S3FileLocation": { + "$ref": "#/definitions/AWS::Transfer::Workflow.S3InputFileLocation" + } + }, + "type": "object" + }, + "AWS::Transfer::Workflow.S3InputFileLocation": { + "additionalProperties": false, + "properties": { + "Bucket": { + "type": "string" + }, + "Key": { + "type": "string" + } + }, + "type": "object" + }, + "AWS::Transfer::Workflow.S3Tag": { + "additionalProperties": false, + "properties": { + "Key": { + "type": "string" + }, + "Value": { + "type": "string" + } + }, + "required": [ + "Key", + "Value" + ], + "type": "object" + }, + "AWS::Transfer::Workflow.TagStepDetails": { + "additionalProperties": false, + "properties": { + "Name": { + "type": "string" + }, + "SourceFileLocation": { + "type": "string" + }, + "Tags": { + "items": { + "$ref": "#/definitions/AWS::Transfer::Workflow.S3Tag" + }, + "type": "array" + } + }, + "type": "object" + }, + "AWS::Transfer::Workflow.WorkflowStep": { + "additionalProperties": false, + "properties": { + "CopyStepDetails": { + "$ref": "#/definitions/AWS::Transfer::Workflow.CopyStepDetails" + }, + "CustomStepDetails": { + "$ref": "#/definitions/AWS::Transfer::Workflow.CustomStepDetails" + }, + "DecryptStepDetails": { + "$ref": "#/definitions/AWS::Transfer::Workflow.DecryptStepDetails" + }, + "DeleteStepDetails": { + "$ref": "#/definitions/AWS::Transfer::Workflow.DeleteStepDetails" + }, + "TagStepDetails": { + "$ref": "#/definitions/AWS::Transfer::Workflow.TagStepDetails" + }, + "Type": { + "type": "string" + } + }, + "type": "object" + }, + "AWS::VoiceID::Domain": { + "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": { + "Description": { + "type": "string" + }, + "Name": { + "type": "string" + }, + "ServerSideEncryptionConfiguration": { + "$ref": "#/definitions/AWS::VoiceID::Domain.ServerSideEncryptionConfiguration" + }, + "Tags": { + "items": { + "$ref": "#/definitions/Tag" + }, + "type": "array" + } + }, + "required": [ + "Name", + "ServerSideEncryptionConfiguration" + ], + "type": "object" + }, + "Type": { + "enum": [ + "AWS::VoiceID::Domain" + ], + "type": "string" + }, + "UpdateReplacePolicy": { + "enum": [ + "Delete", + "Retain", + "Snapshot" + ], + "type": "string" + } + }, + "required": [ + "Type", + "Properties" + ], + "type": "object" + }, + "AWS::VoiceID::Domain.ServerSideEncryptionConfiguration": { + "additionalProperties": false, + "properties": { + "KmsKeyId": { + "type": "string" + } + }, + "required": [ + "KmsKeyId" + ], + "type": "object" + }, + "AWS::VpcLattice::AccessLogSubscription": { + "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": { + "DestinationArn": { + "type": "string" + }, + "ResourceIdentifier": { + "type": "string" + }, + "Tags": { + "items": { + "$ref": "#/definitions/Tag" + }, + "type": "array" + } + }, + "required": [ + "DestinationArn" + ], + "type": "object" + }, + "Type": { + "enum": [ + "AWS::VpcLattice::AccessLogSubscription" + ], + "type": "string" + }, + "UpdateReplacePolicy": { + "enum": [ + "Delete", + "Retain", + "Snapshot" + ], + "type": "string" + } + }, + "required": [ + "Type", + "Properties" + ], + "type": "object" + }, + "AWS::VpcLattice::AuthPolicy": { + "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": { + "Policy": { + "type": "object" + }, + "ResourceIdentifier": { + "type": "string" + } + }, + "required": [ + "Policy", + "ResourceIdentifier" + ], + "type": "object" + }, + "Type": { + "enum": [ + "AWS::VpcLattice::AuthPolicy" + ], + "type": "string" + }, + "UpdateReplacePolicy": { + "enum": [ + "Delete", + "Retain", + "Snapshot" + ], + "type": "string" + } + }, + "required": [ + "Type", + "Properties" + ], + "type": "object" + }, + "AWS::VpcLattice::Listener": { + "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": { + "DefaultAction": { + "$ref": "#/definitions/AWS::VpcLattice::Listener.DefaultAction" + }, + "Name": { + "type": "string" + }, + "Port": { + "type": "number" + }, + "Protocol": { + "type": "string" + }, + "ServiceIdentifier": { + "type": "string" + }, + "Tags": { + "items": { + "$ref": "#/definitions/Tag" + }, + "type": "array" + } + }, + "required": [ + "DefaultAction", + "Protocol" + ], + "type": "object" + }, + "Type": { + "enum": [ + "AWS::VpcLattice::Listener" + ], + "type": "string" + }, + "UpdateReplacePolicy": { + "enum": [ + "Delete", + "Retain", + "Snapshot" + ], + "type": "string" + } + }, + "required": [ + "Type", + "Properties" + ], + "type": "object" + }, + "AWS::VpcLattice::Listener.DefaultAction": { + "additionalProperties": false, + "properties": { + "Forward": { + "$ref": "#/definitions/AWS::VpcLattice::Listener.Forward" + } + }, + "required": [ + "Forward" + ], + "type": "object" + }, + "AWS::VpcLattice::Listener.Forward": { + "additionalProperties": false, + "properties": { + "TargetGroups": { + "items": { + "$ref": "#/definitions/AWS::VpcLattice::Listener.WeightedTargetGroup" + }, + "type": "array" + } + }, + "required": [ + "TargetGroups" + ], + "type": "object" + }, + "AWS::VpcLattice::Listener.WeightedTargetGroup": { + "additionalProperties": false, + "properties": { + "TargetGroupIdentifier": { + "type": "string" + }, + "Weight": { + "type": "number" + } + }, + "required": [ + "TargetGroupIdentifier" + ], + "type": "object" + }, + "AWS::VpcLattice::ResourcePolicy": { + "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": { + "Policy": { + "type": "object" + }, + "ResourceArn": { + "type": "string" + } + }, + "required": [ + "Policy", + "ResourceArn" + ], + "type": "object" + }, + "Type": { + "enum": [ + "AWS::VpcLattice::ResourcePolicy" + ], + "type": "string" + }, + "UpdateReplacePolicy": { + "enum": [ + "Delete", + "Retain", + "Snapshot" + ], + "type": "string" + } + }, + "required": [ + "Type", + "Properties" + ], + "type": "object" + }, + "AWS::VpcLattice::Rule": { + "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": { + "Action": { + "$ref": "#/definitions/AWS::VpcLattice::Rule.Action" + }, + "ListenerIdentifier": { + "type": "string" + }, + "Match": { + "$ref": "#/definitions/AWS::VpcLattice::Rule.Match" + }, + "Name": { + "type": "string" + }, + "Priority": { + "type": "number" + }, + "ServiceIdentifier": { + "type": "string" + }, + "Tags": { + "items": { + "$ref": "#/definitions/Tag" + }, + "type": "array" + } + }, + "required": [ + "Action", + "Match", + "Priority" + ], + "type": "object" + }, + "Type": { + "enum": [ + "AWS::VpcLattice::Rule" + ], + "type": "string" + }, + "UpdateReplacePolicy": { + "enum": [ + "Delete", + "Retain", + "Snapshot" + ], + "type": "string" + } + }, + "required": [ + "Type", + "Properties" + ], + "type": "object" + }, + "AWS::VpcLattice::Rule.Action": { + "additionalProperties": false, + "properties": { + "Forward": { + "$ref": "#/definitions/AWS::VpcLattice::Rule.Forward" + } + }, + "required": [ + "Forward" + ], + "type": "object" + }, + "AWS::VpcLattice::Rule.Forward": { + "additionalProperties": false, + "properties": { + "TargetGroups": { + "items": { + "$ref": "#/definitions/AWS::VpcLattice::Rule.WeightedTargetGroup" + }, + "type": "array" + } + }, + "required": [ + "TargetGroups" + ], + "type": "object" + }, + "AWS::VpcLattice::Rule.HeaderMatch": { + "additionalProperties": false, + "properties": { + "CaseSensitive": { + "type": "boolean" + }, + "Match": { + "$ref": "#/definitions/AWS::VpcLattice::Rule.HeaderMatchType" + }, + "Name": { + "type": "string" + } + }, + "required": [ + "Match", + "Name" + ], + "type": "object" + }, + "AWS::VpcLattice::Rule.HeaderMatchType": { + "additionalProperties": false, + "properties": { + "Contains": { + "type": "string" + }, + "Exact": { + "type": "string" + }, + "Prefix": { + "type": "string" + } + }, + "type": "object" + }, + "AWS::VpcLattice::Rule.HttpMatch": { + "additionalProperties": false, + "properties": { + "HeaderMatches": { + "items": { + "$ref": "#/definitions/AWS::VpcLattice::Rule.HeaderMatch" + }, + "type": "array" + }, + "Method": { + "type": "string" + }, + "PathMatch": { + "$ref": "#/definitions/AWS::VpcLattice::Rule.PathMatch" + } + }, + "type": "object" + }, + "AWS::VpcLattice::Rule.Match": { + "additionalProperties": false, + "properties": { + "HttpMatch": { + "$ref": "#/definitions/AWS::VpcLattice::Rule.HttpMatch" + } + }, + "required": [ + "HttpMatch" + ], + "type": "object" + }, + "AWS::VpcLattice::Rule.PathMatch": { + "additionalProperties": false, + "properties": { + "CaseSensitive": { + "type": "boolean" + }, + "Match": { + "$ref": "#/definitions/AWS::VpcLattice::Rule.PathMatchType" + } + }, + "required": [ + "Match" + ], + "type": "object" + }, + "AWS::VpcLattice::Rule.PathMatchType": { + "additionalProperties": false, + "properties": { + "Exact": { + "type": "string" + }, + "Prefix": { + "type": "string" + } + }, + "type": "object" + }, + "AWS::VpcLattice::Rule.WeightedTargetGroup": { + "additionalProperties": false, + "properties": { + "TargetGroupIdentifier": { + "type": "string" + }, + "Weight": { + "type": "number" + } + }, + "required": [ + "TargetGroupIdentifier" + ], + "type": "object" + }, + "AWS::VpcLattice::Service": { + "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": { + "AuthType": { + "type": "string" + }, + "CertificateArn": { + "type": "string" + }, + "CustomDomainName": { + "type": "string" + }, + "DnsEntry": { + "$ref": "#/definitions/AWS::VpcLattice::Service.DnsEntry" + }, + "Name": { + "type": "string" + }, + "Tags": { + "items": { + "$ref": "#/definitions/Tag" + }, + "type": "array" + } + }, + "type": "object" + }, + "Type": { + "enum": [ + "AWS::VpcLattice::Service" + ], + "type": "string" + }, + "UpdateReplacePolicy": { + "enum": [ + "Delete", + "Retain", + "Snapshot" + ], + "type": "string" + } + }, + "required": [ + "Type" + ], + "type": "object" + }, + "AWS::VpcLattice::Service.DnsEntry": { + "additionalProperties": false, + "properties": { + "DomainName": { + "type": "string" + }, + "HostedZoneId": { + "type": "string" + } + }, + "type": "object" + }, + "AWS::VpcLattice::ServiceNetwork": { + "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": { + "AuthType": { + "type": "string" + }, + "Name": { + "type": "string" + }, + "Tags": { + "items": { + "$ref": "#/definitions/Tag" + }, + "type": "array" + } + }, + "type": "object" + }, + "Type": { + "enum": [ + "AWS::VpcLattice::ServiceNetwork" + ], + "type": "string" + }, + "UpdateReplacePolicy": { + "enum": [ + "Delete", + "Retain", + "Snapshot" + ], + "type": "string" + } + }, + "required": [ + "Type" + ], + "type": "object" + }, + "AWS::VpcLattice::ServiceNetworkServiceAssociation": { + "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": { + "DnsEntry": { + "$ref": "#/definitions/AWS::VpcLattice::ServiceNetworkServiceAssociation.DnsEntry" + }, + "ServiceIdentifier": { + "type": "string" + }, + "ServiceNetworkIdentifier": { + "type": "string" + }, + "Tags": { + "items": { + "$ref": "#/definitions/Tag" + }, + "type": "array" + } + }, + "type": "object" + }, + "Type": { + "enum": [ + "AWS::VpcLattice::ServiceNetworkServiceAssociation" + ], + "type": "string" + }, + "UpdateReplacePolicy": { + "enum": [ + "Delete", + "Retain", + "Snapshot" + ], + "type": "string" + } + }, + "required": [ + "Type" + ], + "type": "object" + }, + "AWS::VpcLattice::ServiceNetworkServiceAssociation.DnsEntry": { + "additionalProperties": false, + "properties": { + "DomainName": { + "type": "string" + }, + "HostedZoneId": { + "type": "string" + } + }, + "type": "object" + }, + "AWS::VpcLattice::ServiceNetworkVpcAssociation": { + "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": { + "SecurityGroupIds": { + "items": { + "type": "string" + }, + "type": "array" + }, + "ServiceNetworkIdentifier": { + "type": "string" + }, + "Tags": { + "items": { + "$ref": "#/definitions/Tag" + }, + "type": "array" + }, + "VpcIdentifier": { + "type": "string" + } + }, + "type": "object" + }, + "Type": { + "enum": [ + "AWS::VpcLattice::ServiceNetworkVpcAssociation" + ], + "type": "string" + }, + "UpdateReplacePolicy": { + "enum": [ + "Delete", + "Retain", + "Snapshot" + ], + "type": "string" + } + }, + "required": [ + "Type" + ], + "type": "object" + }, + "AWS::VpcLattice::TargetGroup": { + "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": { + "Config": { + "$ref": "#/definitions/AWS::VpcLattice::TargetGroup.TargetGroupConfig" + }, + "Name": { "type": "string" }, - "OnExceptionSteps": { + "Tags": { "items": { - "$ref": "#/definitions/AWS::Transfer::Workflow.WorkflowStep" + "$ref": "#/definitions/Tag" }, "type": "array" }, - "Steps": { + "Targets": { "items": { - "$ref": "#/definitions/AWS::Transfer::Workflow.WorkflowStep" + "$ref": "#/definitions/AWS::VpcLattice::TargetGroup.Target" }, "type": "array" }, - "Tags": { - "items": { - "$ref": "#/definitions/Tag" - }, - "type": "array" + "Type": { + "type": "string" } }, "required": [ - "Steps" + "Type" ], "type": "object" }, "Type": { "enum": [ - "AWS::Transfer::Workflow" + "AWS::VpcLattice::TargetGroup" ], "type": "string" }, @@ -151913,265 +153728,89 @@ ], "type": "object" }, - "AWS::Transfer::Workflow.CopyStepDetails": { + "AWS::VpcLattice::TargetGroup.HealthCheckConfig": { "additionalProperties": false, "properties": { - "DestinationFileLocation": { - "$ref": "#/definitions/AWS::Transfer::Workflow.S3FileLocation" - }, - "Name": { - "type": "string" - }, - "OverwriteExisting": { - "type": "string" - }, - "SourceFileLocation": { - "type": "string" - } - }, - "type": "object" - }, - "AWS::Transfer::Workflow.CustomStepDetails": { - "additionalProperties": false, - "properties": { - "Name": { - "type": "string" - }, - "SourceFileLocation": { - "type": "string" - }, - "Target": { - "type": "string" + "Enabled": { + "type": "boolean" }, - "TimeoutSeconds": { + "HealthCheckIntervalSeconds": { "type": "number" - } - }, - "type": "object" - }, - "AWS::Transfer::Workflow.DecryptStepDetails": { - "additionalProperties": false, - "properties": { - "DestinationFileLocation": { - "$ref": "#/definitions/AWS::Transfer::Workflow.InputFileLocation" - }, - "Name": { - "type": "string" }, - "OverwriteExisting": { - "type": "string" - }, - "SourceFileLocation": { - "type": "string" + "HealthCheckTimeoutSeconds": { + "type": "number" }, - "Type": { - "type": "string" - } - }, - "type": "object" - }, - "AWS::Transfer::Workflow.DeleteStepDetails": { - "additionalProperties": false, - "properties": { - "Name": { - "type": "string" + "HealthyThresholdCount": { + "type": "number" }, - "SourceFileLocation": { - "type": "string" - } - }, - "type": "object" - }, - "AWS::Transfer::Workflow.EfsInputFileLocation": { - "additionalProperties": false, - "properties": { - "FileSystemId": { - "type": "string" + "Matcher": { + "$ref": "#/definitions/AWS::VpcLattice::TargetGroup.Matcher" }, "Path": { "type": "string" - } - }, - "type": "object" - }, - "AWS::Transfer::Workflow.InputFileLocation": { - "additionalProperties": false, - "properties": { - "EfsFileLocation": { - "$ref": "#/definitions/AWS::Transfer::Workflow.EfsInputFileLocation" }, - "S3FileLocation": { - "$ref": "#/definitions/AWS::Transfer::Workflow.S3InputFileLocation" - } - }, - "type": "object" - }, - "AWS::Transfer::Workflow.S3FileLocation": { - "additionalProperties": false, - "properties": { - "S3FileLocation": { - "$ref": "#/definitions/AWS::Transfer::Workflow.S3InputFileLocation" - } - }, - "type": "object" - }, - "AWS::Transfer::Workflow.S3InputFileLocation": { - "additionalProperties": false, - "properties": { - "Bucket": { - "type": "string" + "Port": { + "type": "number" }, - "Key": { + "Protocol": { "type": "string" + }, + "UnhealthyThresholdCount": { + "type": "number" } }, "type": "object" }, - "AWS::Transfer::Workflow.S3Tag": { + "AWS::VpcLattice::TargetGroup.Matcher": { "additionalProperties": false, "properties": { - "Key": { - "type": "string" - }, - "Value": { + "HttpCode": { "type": "string" } }, "required": [ - "Key", - "Value" + "HttpCode" ], "type": "object" }, - "AWS::Transfer::Workflow.TagStepDetails": { + "AWS::VpcLattice::TargetGroup.Target": { "additionalProperties": false, "properties": { - "Name": { - "type": "string" - }, - "SourceFileLocation": { + "Id": { "type": "string" }, - "Tags": { - "items": { - "$ref": "#/definitions/AWS::Transfer::Workflow.S3Tag" - }, - "type": "array" + "Port": { + "type": "number" } }, + "required": [ + "Id" + ], "type": "object" }, - "AWS::Transfer::Workflow.WorkflowStep": { + "AWS::VpcLattice::TargetGroup.TargetGroupConfig": { "additionalProperties": false, "properties": { - "CopyStepDetails": { - "$ref": "#/definitions/AWS::Transfer::Workflow.CopyStepDetails" - }, - "CustomStepDetails": { - "$ref": "#/definitions/AWS::Transfer::Workflow.CustomStepDetails" - }, - "DecryptStepDetails": { - "$ref": "#/definitions/AWS::Transfer::Workflow.DecryptStepDetails" - }, - "DeleteStepDetails": { - "$ref": "#/definitions/AWS::Transfer::Workflow.DeleteStepDetails" - }, - "TagStepDetails": { - "$ref": "#/definitions/AWS::Transfer::Workflow.TagStepDetails" + "HealthCheck": { + "$ref": "#/definitions/AWS::VpcLattice::TargetGroup.HealthCheckConfig" }, - "Type": { - "type": "string" - } - }, - "type": "object" - }, - "AWS::VoiceID::Domain": { - "additionalProperties": false, - "properties": { - "Condition": { - "type": "string" + "Port": { + "type": "number" }, - "DeletionPolicy": { - "enum": [ - "Delete", - "Retain", - "Snapshot" - ], + "Protocol": { "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": { - "Description": { - "type": "string" - }, - "Name": { - "type": "string" - }, - "ServerSideEncryptionConfiguration": { - "$ref": "#/definitions/AWS::VoiceID::Domain.ServerSideEncryptionConfiguration" - }, - "Tags": { - "items": { - "$ref": "#/definitions/Tag" - }, - "type": "array" - } - }, - "required": [ - "Name", - "ServerSideEncryptionConfiguration" - ], - "type": "object" - }, - "Type": { - "enum": [ - "AWS::VoiceID::Domain" - ], + "ProtocolVersion": { "type": "string" }, - "UpdateReplacePolicy": { - "enum": [ - "Delete", - "Retain", - "Snapshot" - ], - "type": "string" - } - }, - "required": [ - "Type", - "Properties" - ], - "type": "object" - }, - "AWS::VoiceID::Domain.ServerSideEncryptionConfiguration": { - "additionalProperties": false, - "properties": { - "KmsKeyId": { + "VpcIdentifier": { "type": "string" } }, "required": [ - "KmsKeyId" + "Port", + "Protocol", + "VpcIdentifier" ], "type": "object" }, @@ -158125,6 +159764,9 @@ { "$ref": "#/definitions/AWS::CertificateManager::Certificate" }, + { + "$ref": "#/definitions/AWS::Chatbot::MicrosoftTeamsChannelConfiguration" + }, { "$ref": "#/definitions/AWS::Chatbot::SlackChannelConfiguration" }, @@ -158335,6 +159977,9 @@ { "$ref": "#/definitions/AWS::Cognito::UserPoolUserToGroupAttachment" }, + { + "$ref": "#/definitions/AWS::Comprehend::Flywheel" + }, { "$ref": "#/definitions/AWS::Config::AggregationAuthorization" }, @@ -160507,6 +162152,9 @@ { "$ref": "#/definitions/AWS::SageMaker::ImageVersion" }, + { + "$ref": "#/definitions/AWS::SageMaker::InferenceExperiment" + }, { "$ref": "#/definitions/AWS::SageMaker::Model" }, @@ -160714,6 +162362,36 @@ { "$ref": "#/definitions/AWS::VoiceID::Domain" }, + { + "$ref": "#/definitions/AWS::VpcLattice::AccessLogSubscription" + }, + { + "$ref": "#/definitions/AWS::VpcLattice::AuthPolicy" + }, + { + "$ref": "#/definitions/AWS::VpcLattice::Listener" + }, + { + "$ref": "#/definitions/AWS::VpcLattice::ResourcePolicy" + }, + { + "$ref": "#/definitions/AWS::VpcLattice::Rule" + }, + { + "$ref": "#/definitions/AWS::VpcLattice::Service" + }, + { + "$ref": "#/definitions/AWS::VpcLattice::ServiceNetwork" + }, + { + "$ref": "#/definitions/AWS::VpcLattice::ServiceNetworkServiceAssociation" + }, + { + "$ref": "#/definitions/AWS::VpcLattice::ServiceNetworkVpcAssociation" + }, + { + "$ref": "#/definitions/AWS::VpcLattice::TargetGroup" + }, { "$ref": "#/definitions/AWS::WAF::ByteMatchSet" }, diff --git a/schema/cloudformation.go b/schema/cloudformation.go index c4848324a0..c2a1f2d578 100644 --- a/schema/cloudformation.go +++ b/schema/cloudformation.go @@ -16427,6 +16427,30 @@ var CloudformationSchema = `{ ], "type": "object" }, + "AWS::Athena::WorkGroup.AclConfiguration": { + "additionalProperties": false, + "properties": { + "S3AclOption": { + "type": "string" + } + }, + "required": [ + "S3AclOption" + ], + "type": "object" + }, + "AWS::Athena::WorkGroup.CustomerContentEncryptionConfiguration": { + "additionalProperties": false, + "properties": { + "KmsKey": { + "type": "string" + } + }, + "required": [ + "KmsKey" + ], + "type": "object" + }, "AWS::Athena::WorkGroup.EncryptionConfiguration": { "additionalProperties": false, "properties": { @@ -16457,9 +16481,15 @@ var CloudformationSchema = `{ "AWS::Athena::WorkGroup.ResultConfiguration": { "additionalProperties": false, "properties": { + "AclConfiguration": { + "$ref": "#/definitions/AWS::Athena::WorkGroup.AclConfiguration" + }, "EncryptionConfiguration": { "$ref": "#/definitions/AWS::Athena::WorkGroup.EncryptionConfiguration" }, + "ExpectedBucketOwner": { + "type": "string" + }, "OutputLocation": { "type": "string" } @@ -16469,15 +16499,24 @@ var CloudformationSchema = `{ "AWS::Athena::WorkGroup.WorkGroupConfiguration": { "additionalProperties": false, "properties": { + "AdditionalConfiguration": { + "type": "string" + }, "BytesScannedCutoffPerQuery": { "type": "number" }, + "CustomerContentEncryptionConfiguration": { + "$ref": "#/definitions/AWS::Athena::WorkGroup.CustomerContentEncryptionConfiguration" + }, "EnforceWorkGroupConfiguration": { "type": "boolean" }, "EngineVersion": { "$ref": "#/definitions/AWS::Athena::WorkGroup.EngineVersion" }, + "ExecutionRole": { + "type": "string" + }, "PublishCloudWatchMetricsEnabled": { "type": "boolean" }, @@ -21788,6 +21827,9 @@ var CloudformationSchema = `{ "BillingMode": { "$ref": "#/definitions/AWS::Cassandra::Table.BillingMode" }, + "ClientSideTimestampsEnabled": { + "type": "boolean" + }, "ClusteringKeyColumns": { "items": { "$ref": "#/definitions/AWS::Cassandra::Table.ClusteringKeyColumn" @@ -22116,7 +22158,7 @@ var CloudformationSchema = `{ ], "type": "object" }, - "AWS::Chatbot::SlackChannelConfiguration": { + "AWS::Chatbot::MicrosoftTeamsChannelConfiguration": { "additionalProperties": false, "properties": { "Condition": { @@ -22166,18 +22208,21 @@ var CloudformationSchema = `{ "LoggingLevel": { "type": "string" }, - "SlackChannelId": { - "type": "string" - }, - "SlackWorkspaceId": { - "type": "string" - }, "SnsTopicArns": { "items": { "type": "string" }, "type": "array" }, + "TeamId": { + "type": "string" + }, + "TeamsChannelId": { + "type": "string" + }, + "TeamsTenantId": { + "type": "string" + }, "UserRoleRequired": { "type": "boolean" } @@ -22185,14 +22230,15 @@ var CloudformationSchema = `{ "required": [ "ConfigurationName", "IamRoleArn", - "SlackChannelId", - "SlackWorkspaceId" + "TeamId", + "TeamsChannelId", + "TeamsTenantId" ], "type": "object" }, "Type": { "enum": [ - "AWS::Chatbot::SlackChannelConfiguration" + "AWS::Chatbot::MicrosoftTeamsChannelConfiguration" ], "type": "string" }, @@ -22211,7 +22257,7 @@ var CloudformationSchema = `{ ], "type": "object" }, - "AWS::Cloud9::EnvironmentEC2": { + "AWS::Chatbot::SlackChannelConfiguration": { "additionalProperties": false, "properties": { "Condition": { @@ -22246,51 +22292,48 @@ var CloudformationSchema = `{ "Properties": { "additionalProperties": false, "properties": { - "AutomaticStopTimeMinutes": { - "type": "number" - }, - "ConnectionType": { + "ConfigurationName": { "type": "string" }, - "Description": { - "type": "string" + "GuardrailPolicies": { + "items": { + "type": "string" + }, + "type": "array" }, - "ImageId": { + "IamRoleArn": { "type": "string" }, - "InstanceType": { + "LoggingLevel": { "type": "string" }, - "Name": { + "SlackChannelId": { "type": "string" }, - "OwnerArn": { + "SlackWorkspaceId": { "type": "string" }, - "Repositories": { + "SnsTopicArns": { "items": { - "$ref": "#/definitions/AWS::Cloud9::EnvironmentEC2.Repository" + "type": "string" }, "type": "array" }, - "SubnetId": { - "type": "string" - }, - "Tags": { - "items": { - "$ref": "#/definitions/Tag" - }, - "type": "array" + "UserRoleRequired": { + "type": "boolean" } }, "required": [ - "InstanceType" + "ConfigurationName", + "IamRoleArn", + "SlackChannelId", + "SlackWorkspaceId" ], "type": "object" }, "Type": { "enum": [ - "AWS::Cloud9::EnvironmentEC2" + "AWS::Chatbot::SlackChannelConfiguration" ], "type": "string" }, @@ -22309,23 +22352,7 @@ var CloudformationSchema = `{ ], "type": "object" }, - "AWS::Cloud9::EnvironmentEC2.Repository": { - "additionalProperties": false, - "properties": { - "PathComponent": { - "type": "string" - }, - "RepositoryUrl": { - "type": "string" - } - }, - "required": [ - "PathComponent", - "RepositoryUrl" - ], - "type": "object" - }, - "AWS::CloudFormation::CustomResource": { + "AWS::Cloud9::EnvironmentEC2": { "additionalProperties": false, "properties": { "Condition": { @@ -22360,18 +22387,51 @@ var CloudformationSchema = `{ "Properties": { "additionalProperties": false, "properties": { - "ServiceToken": { + "AutomaticStopTimeMinutes": { + "type": "number" + }, + "ConnectionType": { "type": "string" + }, + "Description": { + "type": "string" + }, + "ImageId": { + "type": "string" + }, + "InstanceType": { + "type": "string" + }, + "Name": { + "type": "string" + }, + "OwnerArn": { + "type": "string" + }, + "Repositories": { + "items": { + "$ref": "#/definitions/AWS::Cloud9::EnvironmentEC2.Repository" + }, + "type": "array" + }, + "SubnetId": { + "type": "string" + }, + "Tags": { + "items": { + "$ref": "#/definitions/Tag" + }, + "type": "array" } }, "required": [ - "ServiceToken" + "InstanceType" ], "type": "object" }, "Type": { "enum": [ - "AWS::CloudFormation::CustomResource" + "AWS::Cloud9::EnvironmentEC2" ], "type": "string" }, @@ -22390,74 +22450,23 @@ var CloudformationSchema = `{ ], "type": "object" }, - "AWS::CloudFormation::HookDefaultVersion": { + "AWS::Cloud9::EnvironmentEC2.Repository": { "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": { - "TypeName": { - "type": "string" - }, - "TypeVersionArn": { - "type": "string" - }, - "VersionId": { - "type": "string" - } - }, - "type": "object" - }, - "Type": { - "enum": [ - "AWS::CloudFormation::HookDefaultVersion" - ], + "PathComponent": { "type": "string" }, - "UpdateReplacePolicy": { - "enum": [ - "Delete", - "Retain", - "Snapshot" - ], + "RepositoryUrl": { "type": "string" } }, "required": [ - "Type" + "PathComponent", + "RepositoryUrl" ], "type": "object" }, - "AWS::CloudFormation::HookTypeConfig": { + "AWS::CloudFormation::CustomResource": { "additionalProperties": false, "properties": { "Condition": { @@ -22492,27 +22501,18 @@ var CloudformationSchema = `{ "Properties": { "additionalProperties": false, "properties": { - "Configuration": { - "type": "string" - }, - "ConfigurationAlias": { - "type": "string" - }, - "TypeArn": { - "type": "string" - }, - "TypeName": { + "ServiceToken": { "type": "string" } }, "required": [ - "Configuration" + "ServiceToken" ], "type": "object" }, "Type": { "enum": [ - "AWS::CloudFormation::HookTypeConfig" + "AWS::CloudFormation::CustomResource" ], "type": "string" }, @@ -22531,7 +22531,7 @@ var CloudformationSchema = `{ ], "type": "object" }, - "AWS::CloudFormation::HookVersion": { + "AWS::CloudFormation::HookDefaultVersion": { "additionalProperties": false, "properties": { "Condition": { @@ -22566,28 +22566,21 @@ var CloudformationSchema = `{ "Properties": { "additionalProperties": false, "properties": { - "ExecutionRoleArn": { + "TypeName": { "type": "string" }, - "LoggingConfig": { - "$ref": "#/definitions/AWS::CloudFormation::HookVersion.LoggingConfig" - }, - "SchemaHandlerPackage": { + "TypeVersionArn": { "type": "string" }, - "TypeName": { + "VersionId": { "type": "string" } }, - "required": [ - "SchemaHandlerPackage", - "TypeName" - ], "type": "object" }, "Type": { "enum": [ - "AWS::CloudFormation::HookVersion" + "AWS::CloudFormation::HookDefaultVersion" ], "type": "string" }, @@ -22601,24 +22594,172 @@ var CloudformationSchema = `{ } }, "required": [ - "Type", - "Properties" + "Type" ], "type": "object" }, - "AWS::CloudFormation::HookVersion.LoggingConfig": { - "additionalProperties": false, - "properties": { - "LogGroupName": { - "type": "string" - }, - "LogRoleArn": { - "type": "string" - } - }, - "type": "object" - }, - "AWS::CloudFormation::Macro": { + "AWS::CloudFormation::HookTypeConfig": { + "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": { + "Configuration": { + "type": "string" + }, + "ConfigurationAlias": { + "type": "string" + }, + "TypeArn": { + "type": "string" + }, + "TypeName": { + "type": "string" + } + }, + "required": [ + "Configuration" + ], + "type": "object" + }, + "Type": { + "enum": [ + "AWS::CloudFormation::HookTypeConfig" + ], + "type": "string" + }, + "UpdateReplacePolicy": { + "enum": [ + "Delete", + "Retain", + "Snapshot" + ], + "type": "string" + } + }, + "required": [ + "Type", + "Properties" + ], + "type": "object" + }, + "AWS::CloudFormation::HookVersion": { + "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": { + "ExecutionRoleArn": { + "type": "string" + }, + "LoggingConfig": { + "$ref": "#/definitions/AWS::CloudFormation::HookVersion.LoggingConfig" + }, + "SchemaHandlerPackage": { + "type": "string" + }, + "TypeName": { + "type": "string" + } + }, + "required": [ + "SchemaHandlerPackage", + "TypeName" + ], + "type": "object" + }, + "Type": { + "enum": [ + "AWS::CloudFormation::HookVersion" + ], + "type": "string" + }, + "UpdateReplacePolicy": { + "enum": [ + "Delete", + "Retain", + "Snapshot" + ], + "type": "string" + } + }, + "required": [ + "Type", + "Properties" + ], + "type": "object" + }, + "AWS::CloudFormation::HookVersion.LoggingConfig": { + "additionalProperties": false, + "properties": { + "LogGroupName": { + "type": "string" + }, + "LogRoleArn": { + "type": "string" + } + }, + "type": "object" + }, + "AWS::CloudFormation::Macro": { "additionalProperties": false, "properties": { "Condition": { @@ -32066,7 +32207,7 @@ var CloudformationSchema = `{ ], "type": "object" }, - "AWS::Config::AggregationAuthorization": { + "AWS::Comprehend::Flywheel": { "additionalProperties": false, "properties": { "Condition": { @@ -32101,10 +32242,22 @@ var CloudformationSchema = `{ "Properties": { "additionalProperties": false, "properties": { - "AuthorizedAccountId": { + "ActiveModelArn": { "type": "string" }, - "AuthorizedAwsRegion": { + "DataAccessRoleArn": { + "type": "string" + }, + "DataLakeS3Uri": { + "type": "string" + }, + "DataSecurityConfig": { + "$ref": "#/definitions/AWS::Comprehend::Flywheel.DataSecurityConfig" + }, + "FlywheelName": { + "type": "string" + }, + "ModelType": { "type": "string" }, "Tags": { @@ -32112,17 +32265,21 @@ var CloudformationSchema = `{ "$ref": "#/definitions/Tag" }, "type": "array" + }, + "TaskConfig": { + "$ref": "#/definitions/AWS::Comprehend::Flywheel.TaskConfig" } }, "required": [ - "AuthorizedAccountId", - "AuthorizedAwsRegion" + "DataAccessRoleArn", + "DataLakeS3Uri", + "FlywheelName" ], "type": "object" }, "Type": { "enum": [ - "AWS::Config::AggregationAuthorization" + "AWS::Comprehend::Flywheel" ], "type": "string" }, @@ -32141,7 +32298,182 @@ var CloudformationSchema = `{ ], "type": "object" }, - "AWS::Config::ConfigRule": { + "AWS::Comprehend::Flywheel.DataSecurityConfig": { + "additionalProperties": false, + "properties": { + "DataLakeKmsKeyId": { + "type": "string" + }, + "ModelKmsKeyId": { + "type": "string" + }, + "VolumeKmsKeyId": { + "type": "string" + }, + "VpcConfig": { + "$ref": "#/definitions/AWS::Comprehend::Flywheel.VpcConfig" + } + }, + "type": "object" + }, + "AWS::Comprehend::Flywheel.DocumentClassificationConfig": { + "additionalProperties": false, + "properties": { + "Labels": { + "items": { + "type": "string" + }, + "type": "array" + }, + "Mode": { + "type": "string" + } + }, + "required": [ + "Mode" + ], + "type": "object" + }, + "AWS::Comprehend::Flywheel.EntityRecognitionConfig": { + "additionalProperties": false, + "properties": { + "EntityTypes": { + "items": { + "$ref": "#/definitions/AWS::Comprehend::Flywheel.EntityTypesListItem" + }, + "type": "array" + } + }, + "type": "object" + }, + "AWS::Comprehend::Flywheel.EntityTypesListItem": { + "additionalProperties": false, + "properties": { + "Type": { + "type": "string" + } + }, + "required": [ + "Type" + ], + "type": "object" + }, + "AWS::Comprehend::Flywheel.TaskConfig": { + "additionalProperties": false, + "properties": { + "DocumentClassificationConfig": { + "$ref": "#/definitions/AWS::Comprehend::Flywheel.DocumentClassificationConfig" + }, + "EntityRecognitionConfig": { + "$ref": "#/definitions/AWS::Comprehend::Flywheel.EntityRecognitionConfig" + }, + "LanguageCode": { + "type": "string" + } + }, + "required": [ + "LanguageCode" + ], + "type": "object" + }, + "AWS::Comprehend::Flywheel.VpcConfig": { + "additionalProperties": false, + "properties": { + "SecurityGroupIds": { + "items": { + "type": "string" + }, + "type": "array" + }, + "Subnets": { + "items": { + "type": "string" + }, + "type": "array" + } + }, + "required": [ + "SecurityGroupIds", + "Subnets" + ], + "type": "object" + }, + "AWS::Config::AggregationAuthorization": { + "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": { + "AuthorizedAccountId": { + "type": "string" + }, + "AuthorizedAwsRegion": { + "type": "string" + }, + "Tags": { + "items": { + "$ref": "#/definitions/Tag" + }, + "type": "array" + } + }, + "required": [ + "AuthorizedAccountId", + "AuthorizedAwsRegion" + ], + "type": "object" + }, + "Type": { + "enum": [ + "AWS::Config::AggregationAuthorization" + ], + "type": "string" + }, + "UpdateReplacePolicy": { + "enum": [ + "Delete", + "Retain", + "Snapshot" + ], + "type": "string" + } + }, + "required": [ + "Type", + "Properties" + ], + "type": "object" + }, + "AWS::Config::ConfigRule": { "additionalProperties": false, "properties": { "Condition": { @@ -61363,7 +61695,6 @@ var CloudformationSchema = `{ "required": [ "Actions", "Conditions", - "ListenerArn", "Priority" ], "type": "object" @@ -109950,18 +110281,7 @@ var CloudformationSchema = `{ }, "AWS::MediaPackage::PackagingConfiguration.EncryptionContractConfiguration": { "additionalProperties": false, - "properties": { - "PresetSpeke20Audio": { - "type": "string" - }, - "PresetSpeke20Video": { - "type": "string" - } - }, - "required": [ - "PresetSpeke20Audio", - "PresetSpeke20Video" - ], + "properties": {}, "type": "object" }, "AWS::MediaPackage::PackagingConfiguration.HlsEncryption": { @@ -127243,6 +127563,9 @@ var CloudformationSchema = `{ "Name": { "type": "string" }, + "Namespace": { + "type": "string" + }, "UnitLabel": { "type": "string" }, @@ -134825,6 +135148,9 @@ var CloudformationSchema = `{ "properties": { "Bucket": { "type": "string" + }, + "BucketAccountId": { + "type": "string" } }, "required": [ @@ -138969,7 +139295,6 @@ var CloudformationSchema = `{ "required": [ "Alias", "DisplayName", - "Plan", "Type" ], "type": "object" @@ -141982,7 +142307,7 @@ var CloudformationSchema = `{ ], "type": "object" }, - "AWS::SageMaker::Model": { + "AWS::SageMaker::InferenceExperiment": { "additionalProperties": false, "properties": { "Condition": { @@ -142017,26 +142342,41 @@ var CloudformationSchema = `{ "Properties": { "additionalProperties": false, "properties": { - "Containers": { + "DataStorageConfig": { + "$ref": "#/definitions/AWS::SageMaker::InferenceExperiment.DataStorageConfig" + }, + "Description": { + "type": "string" + }, + "DesiredState": { + "type": "string" + }, + "EndpointName": { + "type": "string" + }, + "KmsKey": { + "type": "string" + }, + "ModelVariants": { "items": { - "$ref": "#/definitions/AWS::SageMaker::Model.ContainerDefinition" + "$ref": "#/definitions/AWS::SageMaker::InferenceExperiment.ModelVariantConfig" }, "type": "array" }, - "EnableNetworkIsolation": { - "type": "boolean" + "Name": { + "type": "string" }, - "ExecutionRoleArn": { + "RoleArn": { "type": "string" }, - "InferenceExecutionConfig": { - "$ref": "#/definitions/AWS::SageMaker::Model.InferenceExecutionConfig" + "Schedule": { + "$ref": "#/definitions/AWS::SageMaker::InferenceExperiment.InferenceExperimentSchedule" }, - "ModelName": { - "type": "string" + "ShadowModeConfig": { + "$ref": "#/definitions/AWS::SageMaker::InferenceExperiment.ShadowModeConfig" }, - "PrimaryContainer": { - "$ref": "#/definitions/AWS::SageMaker::Model.ContainerDefinition" + "StatusReason": { + "type": "string" }, "Tags": { "items": { @@ -142044,18 +142384,22 @@ var CloudformationSchema = `{ }, "type": "array" }, - "VpcConfig": { - "$ref": "#/definitions/AWS::SageMaker::Model.VpcConfig" + "Type": { + "type": "string" } }, "required": [ - "ExecutionRoleArn" + "EndpointName", + "ModelVariants", + "Name", + "RoleArn", + "Type" ], "type": "object" }, "Type": { "enum": [ - "AWS::SageMaker::Model" + "AWS::SageMaker::InferenceExperiment" ], "type": "string" }, @@ -142074,110 +142418,160 @@ var CloudformationSchema = `{ ], "type": "object" }, - "AWS::SageMaker::Model.ContainerDefinition": { + "AWS::SageMaker::InferenceExperiment.CaptureContentTypeHeader": { "additionalProperties": false, "properties": { - "ContainerHostname": { - "type": "string" + "CsvContentTypes": { + "items": { + "type": "string" + }, + "type": "array" }, - "Environment": { - "type": "object" + "JsonContentTypes": { + "items": { + "type": "string" + }, + "type": "array" + } + }, + "type": "object" + }, + "AWS::SageMaker::InferenceExperiment.DataStorageConfig": { + "additionalProperties": false, + "properties": { + "ContentType": { + "$ref": "#/definitions/AWS::SageMaker::InferenceExperiment.CaptureContentTypeHeader" }, - "Image": { + "Destination": { "type": "string" }, - "ImageConfig": { - "$ref": "#/definitions/AWS::SageMaker::Model.ImageConfig" - }, - "InferenceSpecificationName": { + "KmsKey": { "type": "string" - }, - "Mode": { + } + }, + "required": [ + "Destination" + ], + "type": "object" + }, + "AWS::SageMaker::InferenceExperiment.EndpointMetadata": { + "additionalProperties": false, + "properties": { + "EndpointConfigName": { "type": "string" }, - "ModelDataUrl": { + "EndpointName": { "type": "string" }, - "ModelPackageName": { + "EndpointStatus": { "type": "string" - }, - "MultiModelConfig": { - "$ref": "#/definitions/AWS::SageMaker::Model.MultiModelConfig" } }, + "required": [ + "EndpointName" + ], "type": "object" }, - "AWS::SageMaker::Model.ImageConfig": { + "AWS::SageMaker::InferenceExperiment.InferenceExperimentSchedule": { "additionalProperties": false, "properties": { - "RepositoryAccessMode": { + "EndTime": { "type": "string" }, - "RepositoryAuthConfig": { - "$ref": "#/definitions/AWS::SageMaker::Model.RepositoryAuthConfig" + "StartTime": { + "type": "string" } }, - "required": [ - "RepositoryAccessMode" - ], "type": "object" }, - "AWS::SageMaker::Model.InferenceExecutionConfig": { + "AWS::SageMaker::InferenceExperiment.ModelInfrastructureConfig": { "additionalProperties": false, "properties": { - "Mode": { + "InfrastructureType": { "type": "string" + }, + "RealTimeInferenceConfig": { + "$ref": "#/definitions/AWS::SageMaker::InferenceExperiment.RealTimeInferenceConfig" } }, "required": [ - "Mode" + "InfrastructureType", + "RealTimeInferenceConfig" ], "type": "object" }, - "AWS::SageMaker::Model.MultiModelConfig": { + "AWS::SageMaker::InferenceExperiment.ModelVariantConfig": { "additionalProperties": false, "properties": { - "ModelCacheSetting": { + "InfrastructureConfig": { + "$ref": "#/definitions/AWS::SageMaker::InferenceExperiment.ModelInfrastructureConfig" + }, + "ModelName": { + "type": "string" + }, + "VariantName": { "type": "string" } }, + "required": [ + "InfrastructureConfig", + "ModelName", + "VariantName" + ], "type": "object" }, - "AWS::SageMaker::Model.RepositoryAuthConfig": { + "AWS::SageMaker::InferenceExperiment.RealTimeInferenceConfig": { "additionalProperties": false, "properties": { - "RepositoryCredentialsProviderArn": { + "InstanceCount": { + "type": "number" + }, + "InstanceType": { "type": "string" } }, "required": [ - "RepositoryCredentialsProviderArn" + "InstanceCount", + "InstanceType" ], "type": "object" }, - "AWS::SageMaker::Model.VpcConfig": { + "AWS::SageMaker::InferenceExperiment.ShadowModeConfig": { "additionalProperties": false, "properties": { - "SecurityGroupIds": { + "ShadowModelVariants": { "items": { - "type": "string" + "$ref": "#/definitions/AWS::SageMaker::InferenceExperiment.ShadowModelVariantConfig" }, "type": "array" }, - "Subnets": { - "items": { - "type": "string" - }, - "type": "array" + "SourceModelVariantName": { + "type": "string" } }, "required": [ - "SecurityGroupIds", - "Subnets" + "ShadowModelVariants", + "SourceModelVariantName" ], "type": "object" }, - "AWS::SageMaker::ModelBiasJobDefinition": { + "AWS::SageMaker::InferenceExperiment.ShadowModelVariantConfig": { + "additionalProperties": false, + "properties": { + "SamplingPercentage": { + "type": "number" + }, + "ShadowModelVariantName": { + "type": "string" + } + }, + "required": [ + "SamplingPercentage", + "ShadowModelVariantName" + ], + "type": "object" + }, + "AWS::SageMaker::Model": { "additionalProperties": false, "properties": { "Condition": { @@ -142212,55 +142606,45 @@ var CloudformationSchema = `{ "Properties": { "additionalProperties": false, "properties": { - "EndpointName": { - "type": "string" - }, - "JobDefinitionName": { - "type": "string" - }, - "JobResources": { - "$ref": "#/definitions/AWS::SageMaker::ModelBiasJobDefinition.MonitoringResources" - }, - "ModelBiasAppSpecification": { - "$ref": "#/definitions/AWS::SageMaker::ModelBiasJobDefinition.ModelBiasAppSpecification" - }, - "ModelBiasBaselineConfig": { - "$ref": "#/definitions/AWS::SageMaker::ModelBiasJobDefinition.ModelBiasBaselineConfig" + "Containers": { + "items": { + "$ref": "#/definitions/AWS::SageMaker::Model.ContainerDefinition" + }, + "type": "array" }, - "ModelBiasJobInput": { - "$ref": "#/definitions/AWS::SageMaker::ModelBiasJobDefinition.ModelBiasJobInput" + "EnableNetworkIsolation": { + "type": "boolean" }, - "ModelBiasJobOutputConfig": { - "$ref": "#/definitions/AWS::SageMaker::ModelBiasJobDefinition.MonitoringOutputConfig" + "ExecutionRoleArn": { + "type": "string" }, - "NetworkConfig": { - "$ref": "#/definitions/AWS::SageMaker::ModelBiasJobDefinition.NetworkConfig" + "InferenceExecutionConfig": { + "$ref": "#/definitions/AWS::SageMaker::Model.InferenceExecutionConfig" }, - "RoleArn": { + "ModelName": { "type": "string" }, - "StoppingCondition": { - "$ref": "#/definitions/AWS::SageMaker::ModelBiasJobDefinition.StoppingCondition" + "PrimaryContainer": { + "$ref": "#/definitions/AWS::SageMaker::Model.ContainerDefinition" }, "Tags": { "items": { "$ref": "#/definitions/Tag" }, "type": "array" + }, + "VpcConfig": { + "$ref": "#/definitions/AWS::SageMaker::Model.VpcConfig" } }, "required": [ - "JobResources", - "ModelBiasAppSpecification", - "ModelBiasJobInput", - "ModelBiasJobOutputConfig", - "RoleArn" + "ExecutionRoleArn" ], "type": "object" }, "Type": { "enum": [ - "AWS::SageMaker::ModelBiasJobDefinition" + "AWS::SageMaker::Model" ], "type": "string" }, @@ -142279,311 +142663,88 @@ var CloudformationSchema = `{ ], "type": "object" }, - "AWS::SageMaker::ModelBiasJobDefinition.BatchTransformInput": { - "additionalProperties": false, - "properties": { - "DataCapturedDestinationS3Uri": { - "type": "string" - }, - "DatasetFormat": { - "$ref": "#/definitions/AWS::SageMaker::ModelBiasJobDefinition.DatasetFormat" - }, - "EndTimeOffset": { - "type": "string" - }, - "FeaturesAttribute": { - "type": "string" - }, - "InferenceAttribute": { - "type": "string" - }, - "LocalPath": { - "type": "string" - }, - "ProbabilityAttribute": { - "type": "string" - }, - "ProbabilityThresholdAttribute": { - "type": "number" - }, - "S3DataDistributionType": { - "type": "string" - }, - "S3InputMode": { - "type": "string" - }, - "StartTimeOffset": { - "type": "string" - } - }, - "required": [ - "DataCapturedDestinationS3Uri", - "DatasetFormat", - "LocalPath" - ], - "type": "object" - }, - "AWS::SageMaker::ModelBiasJobDefinition.ClusterConfig": { - "additionalProperties": false, - "properties": { - "InstanceCount": { - "type": "number" - }, - "InstanceType": { - "type": "string" - }, - "VolumeKmsKeyId": { - "type": "string" - }, - "VolumeSizeInGB": { - "type": "number" - } - }, - "required": [ - "InstanceCount", - "InstanceType", - "VolumeSizeInGB" - ], - "type": "object" - }, - "AWS::SageMaker::ModelBiasJobDefinition.ConstraintsResource": { - "additionalProperties": false, - "properties": { - "S3Uri": { - "type": "string" - } - }, - "type": "object" - }, - "AWS::SageMaker::ModelBiasJobDefinition.Csv": { - "additionalProperties": false, - "properties": { - "Header": { - "type": "boolean" - } - }, - "type": "object" - }, - "AWS::SageMaker::ModelBiasJobDefinition.DatasetFormat": { - "additionalProperties": false, - "properties": { - "Csv": { - "$ref": "#/definitions/AWS::SageMaker::ModelBiasJobDefinition.Csv" - }, - "Json": { - "$ref": "#/definitions/AWS::SageMaker::ModelBiasJobDefinition.Json" - }, - "Parquet": { - "type": "boolean" - } - }, - "type": "object" - }, - "AWS::SageMaker::ModelBiasJobDefinition.EndpointInput": { + "AWS::SageMaker::Model.ContainerDefinition": { "additionalProperties": false, "properties": { - "EndTimeOffset": { - "type": "string" - }, - "EndpointName": { + "ContainerHostname": { "type": "string" }, - "FeaturesAttribute": { - "type": "string" + "Environment": { + "type": "object" }, - "InferenceAttribute": { + "Image": { "type": "string" }, - "LocalPath": { - "type": "string" + "ImageConfig": { + "$ref": "#/definitions/AWS::SageMaker::Model.ImageConfig" }, - "ProbabilityAttribute": { + "InferenceSpecificationName": { "type": "string" }, - "ProbabilityThresholdAttribute": { - "type": "number" - }, - "S3DataDistributionType": { + "Mode": { "type": "string" }, - "S3InputMode": { + "ModelDataUrl": { "type": "string" }, - "StartTimeOffset": { - "type": "string" - } - }, - "required": [ - "EndpointName", - "LocalPath" - ], - "type": "object" - }, - "AWS::SageMaker::ModelBiasJobDefinition.Json": { - "additionalProperties": false, - "properties": { - "Line": { - "type": "boolean" - } - }, - "type": "object" - }, - "AWS::SageMaker::ModelBiasJobDefinition.ModelBiasAppSpecification": { - "additionalProperties": false, - "properties": { - "ConfigUri": { + "ModelPackageName": { "type": "string" }, - "Environment": { - "additionalProperties": true, - "patternProperties": { - "^[a-zA-Z0-9]+$": { - "type": "string" - } - }, - "type": "object" - }, - "ImageUri": { - "type": "string" + "MultiModelConfig": { + "$ref": "#/definitions/AWS::SageMaker::Model.MultiModelConfig" } }, - "required": [ - "ConfigUri", - "ImageUri" - ], "type": "object" }, - "AWS::SageMaker::ModelBiasJobDefinition.ModelBiasBaselineConfig": { + "AWS::SageMaker::Model.ImageConfig": { "additionalProperties": false, "properties": { - "BaseliningJobName": { + "RepositoryAccessMode": { "type": "string" }, - "ConstraintsResource": { - "$ref": "#/definitions/AWS::SageMaker::ModelBiasJobDefinition.ConstraintsResource" - } - }, - "type": "object" - }, - "AWS::SageMaker::ModelBiasJobDefinition.ModelBiasJobInput": { - "additionalProperties": false, - "properties": { - "BatchTransformInput": { - "$ref": "#/definitions/AWS::SageMaker::ModelBiasJobDefinition.BatchTransformInput" - }, - "EndpointInput": { - "$ref": "#/definitions/AWS::SageMaker::ModelBiasJobDefinition.EndpointInput" - }, - "GroundTruthS3Input": { - "$ref": "#/definitions/AWS::SageMaker::ModelBiasJobDefinition.MonitoringGroundTruthS3Input" + "RepositoryAuthConfig": { + "$ref": "#/definitions/AWS::SageMaker::Model.RepositoryAuthConfig" } }, "required": [ - "GroundTruthS3Input" + "RepositoryAccessMode" ], "type": "object" }, - "AWS::SageMaker::ModelBiasJobDefinition.MonitoringGroundTruthS3Input": { + "AWS::SageMaker::Model.InferenceExecutionConfig": { "additionalProperties": false, "properties": { - "S3Uri": { + "Mode": { "type": "string" } }, "required": [ - "S3Uri" - ], - "type": "object" - }, - "AWS::SageMaker::ModelBiasJobDefinition.MonitoringOutput": { - "additionalProperties": false, - "properties": { - "S3Output": { - "$ref": "#/definitions/AWS::SageMaker::ModelBiasJobDefinition.S3Output" - } - }, - "required": [ - "S3Output" + "Mode" ], "type": "object" }, - "AWS::SageMaker::ModelBiasJobDefinition.MonitoringOutputConfig": { + "AWS::SageMaker::Model.MultiModelConfig": { "additionalProperties": false, "properties": { - "KmsKeyId": { + "ModelCacheSetting": { "type": "string" - }, - "MonitoringOutputs": { - "items": { - "$ref": "#/definitions/AWS::SageMaker::ModelBiasJobDefinition.MonitoringOutput" - }, - "type": "array" - } - }, - "required": [ - "MonitoringOutputs" - ], - "type": "object" - }, - "AWS::SageMaker::ModelBiasJobDefinition.MonitoringResources": { - "additionalProperties": false, - "properties": { - "ClusterConfig": { - "$ref": "#/definitions/AWS::SageMaker::ModelBiasJobDefinition.ClusterConfig" - } - }, - "required": [ - "ClusterConfig" - ], - "type": "object" - }, - "AWS::SageMaker::ModelBiasJobDefinition.NetworkConfig": { - "additionalProperties": false, - "properties": { - "EnableInterContainerTrafficEncryption": { - "type": "boolean" - }, - "EnableNetworkIsolation": { - "type": "boolean" - }, - "VpcConfig": { - "$ref": "#/definitions/AWS::SageMaker::ModelBiasJobDefinition.VpcConfig" } }, "type": "object" }, - "AWS::SageMaker::ModelBiasJobDefinition.S3Output": { + "AWS::SageMaker::Model.RepositoryAuthConfig": { "additionalProperties": false, "properties": { - "LocalPath": { - "type": "string" - }, - "S3UploadMode": { - "type": "string" - }, - "S3Uri": { + "RepositoryCredentialsProviderArn": { "type": "string" } }, "required": [ - "LocalPath", - "S3Uri" - ], - "type": "object" - }, - "AWS::SageMaker::ModelBiasJobDefinition.StoppingCondition": { - "additionalProperties": false, - "properties": { - "MaxRuntimeInSeconds": { - "type": "number" - } - }, - "required": [ - "MaxRuntimeInSeconds" + "RepositoryCredentialsProviderArn" ], "type": "object" }, - "AWS::SageMaker::ModelBiasJobDefinition.VpcConfig": { + "AWS::SageMaker::Model.VpcConfig": { "additionalProperties": false, "properties": { "SecurityGroupIds": { @@ -142605,7 +142766,435 @@ var CloudformationSchema = `{ ], "type": "object" }, - "AWS::SageMaker::ModelCard": { + "AWS::SageMaker::ModelBiasJobDefinition": { + "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": { + "EndpointName": { + "type": "string" + }, + "JobDefinitionName": { + "type": "string" + }, + "JobResources": { + "$ref": "#/definitions/AWS::SageMaker::ModelBiasJobDefinition.MonitoringResources" + }, + "ModelBiasAppSpecification": { + "$ref": "#/definitions/AWS::SageMaker::ModelBiasJobDefinition.ModelBiasAppSpecification" + }, + "ModelBiasBaselineConfig": { + "$ref": "#/definitions/AWS::SageMaker::ModelBiasJobDefinition.ModelBiasBaselineConfig" + }, + "ModelBiasJobInput": { + "$ref": "#/definitions/AWS::SageMaker::ModelBiasJobDefinition.ModelBiasJobInput" + }, + "ModelBiasJobOutputConfig": { + "$ref": "#/definitions/AWS::SageMaker::ModelBiasJobDefinition.MonitoringOutputConfig" + }, + "NetworkConfig": { + "$ref": "#/definitions/AWS::SageMaker::ModelBiasJobDefinition.NetworkConfig" + }, + "RoleArn": { + "type": "string" + }, + "StoppingCondition": { + "$ref": "#/definitions/AWS::SageMaker::ModelBiasJobDefinition.StoppingCondition" + }, + "Tags": { + "items": { + "$ref": "#/definitions/Tag" + }, + "type": "array" + } + }, + "required": [ + "JobResources", + "ModelBiasAppSpecification", + "ModelBiasJobInput", + "ModelBiasJobOutputConfig", + "RoleArn" + ], + "type": "object" + }, + "Type": { + "enum": [ + "AWS::SageMaker::ModelBiasJobDefinition" + ], + "type": "string" + }, + "UpdateReplacePolicy": { + "enum": [ + "Delete", + "Retain", + "Snapshot" + ], + "type": "string" + } + }, + "required": [ + "Type", + "Properties" + ], + "type": "object" + }, + "AWS::SageMaker::ModelBiasJobDefinition.BatchTransformInput": { + "additionalProperties": false, + "properties": { + "DataCapturedDestinationS3Uri": { + "type": "string" + }, + "DatasetFormat": { + "$ref": "#/definitions/AWS::SageMaker::ModelBiasJobDefinition.DatasetFormat" + }, + "EndTimeOffset": { + "type": "string" + }, + "FeaturesAttribute": { + "type": "string" + }, + "InferenceAttribute": { + "type": "string" + }, + "LocalPath": { + "type": "string" + }, + "ProbabilityAttribute": { + "type": "string" + }, + "ProbabilityThresholdAttribute": { + "type": "number" + }, + "S3DataDistributionType": { + "type": "string" + }, + "S3InputMode": { + "type": "string" + }, + "StartTimeOffset": { + "type": "string" + } + }, + "required": [ + "DataCapturedDestinationS3Uri", + "DatasetFormat", + "LocalPath" + ], + "type": "object" + }, + "AWS::SageMaker::ModelBiasJobDefinition.ClusterConfig": { + "additionalProperties": false, + "properties": { + "InstanceCount": { + "type": "number" + }, + "InstanceType": { + "type": "string" + }, + "VolumeKmsKeyId": { + "type": "string" + }, + "VolumeSizeInGB": { + "type": "number" + } + }, + "required": [ + "InstanceCount", + "InstanceType", + "VolumeSizeInGB" + ], + "type": "object" + }, + "AWS::SageMaker::ModelBiasJobDefinition.ConstraintsResource": { + "additionalProperties": false, + "properties": { + "S3Uri": { + "type": "string" + } + }, + "type": "object" + }, + "AWS::SageMaker::ModelBiasJobDefinition.Csv": { + "additionalProperties": false, + "properties": { + "Header": { + "type": "boolean" + } + }, + "type": "object" + }, + "AWS::SageMaker::ModelBiasJobDefinition.DatasetFormat": { + "additionalProperties": false, + "properties": { + "Csv": { + "$ref": "#/definitions/AWS::SageMaker::ModelBiasJobDefinition.Csv" + }, + "Json": { + "$ref": "#/definitions/AWS::SageMaker::ModelBiasJobDefinition.Json" + }, + "Parquet": { + "type": "boolean" + } + }, + "type": "object" + }, + "AWS::SageMaker::ModelBiasJobDefinition.EndpointInput": { + "additionalProperties": false, + "properties": { + "EndTimeOffset": { + "type": "string" + }, + "EndpointName": { + "type": "string" + }, + "FeaturesAttribute": { + "type": "string" + }, + "InferenceAttribute": { + "type": "string" + }, + "LocalPath": { + "type": "string" + }, + "ProbabilityAttribute": { + "type": "string" + }, + "ProbabilityThresholdAttribute": { + "type": "number" + }, + "S3DataDistributionType": { + "type": "string" + }, + "S3InputMode": { + "type": "string" + }, + "StartTimeOffset": { + "type": "string" + } + }, + "required": [ + "EndpointName", + "LocalPath" + ], + "type": "object" + }, + "AWS::SageMaker::ModelBiasJobDefinition.Json": { + "additionalProperties": false, + "properties": { + "Line": { + "type": "boolean" + } + }, + "type": "object" + }, + "AWS::SageMaker::ModelBiasJobDefinition.ModelBiasAppSpecification": { + "additionalProperties": false, + "properties": { + "ConfigUri": { + "type": "string" + }, + "Environment": { + "additionalProperties": true, + "patternProperties": { + "^[a-zA-Z0-9]+$": { + "type": "string" + } + }, + "type": "object" + }, + "ImageUri": { + "type": "string" + } + }, + "required": [ + "ConfigUri", + "ImageUri" + ], + "type": "object" + }, + "AWS::SageMaker::ModelBiasJobDefinition.ModelBiasBaselineConfig": { + "additionalProperties": false, + "properties": { + "BaseliningJobName": { + "type": "string" + }, + "ConstraintsResource": { + "$ref": "#/definitions/AWS::SageMaker::ModelBiasJobDefinition.ConstraintsResource" + } + }, + "type": "object" + }, + "AWS::SageMaker::ModelBiasJobDefinition.ModelBiasJobInput": { + "additionalProperties": false, + "properties": { + "BatchTransformInput": { + "$ref": "#/definitions/AWS::SageMaker::ModelBiasJobDefinition.BatchTransformInput" + }, + "EndpointInput": { + "$ref": "#/definitions/AWS::SageMaker::ModelBiasJobDefinition.EndpointInput" + }, + "GroundTruthS3Input": { + "$ref": "#/definitions/AWS::SageMaker::ModelBiasJobDefinition.MonitoringGroundTruthS3Input" + } + }, + "required": [ + "GroundTruthS3Input" + ], + "type": "object" + }, + "AWS::SageMaker::ModelBiasJobDefinition.MonitoringGroundTruthS3Input": { + "additionalProperties": false, + "properties": { + "S3Uri": { + "type": "string" + } + }, + "required": [ + "S3Uri" + ], + "type": "object" + }, + "AWS::SageMaker::ModelBiasJobDefinition.MonitoringOutput": { + "additionalProperties": false, + "properties": { + "S3Output": { + "$ref": "#/definitions/AWS::SageMaker::ModelBiasJobDefinition.S3Output" + } + }, + "required": [ + "S3Output" + ], + "type": "object" + }, + "AWS::SageMaker::ModelBiasJobDefinition.MonitoringOutputConfig": { + "additionalProperties": false, + "properties": { + "KmsKeyId": { + "type": "string" + }, + "MonitoringOutputs": { + "items": { + "$ref": "#/definitions/AWS::SageMaker::ModelBiasJobDefinition.MonitoringOutput" + }, + "type": "array" + } + }, + "required": [ + "MonitoringOutputs" + ], + "type": "object" + }, + "AWS::SageMaker::ModelBiasJobDefinition.MonitoringResources": { + "additionalProperties": false, + "properties": { + "ClusterConfig": { + "$ref": "#/definitions/AWS::SageMaker::ModelBiasJobDefinition.ClusterConfig" + } + }, + "required": [ + "ClusterConfig" + ], + "type": "object" + }, + "AWS::SageMaker::ModelBiasJobDefinition.NetworkConfig": { + "additionalProperties": false, + "properties": { + "EnableInterContainerTrafficEncryption": { + "type": "boolean" + }, + "EnableNetworkIsolation": { + "type": "boolean" + }, + "VpcConfig": { + "$ref": "#/definitions/AWS::SageMaker::ModelBiasJobDefinition.VpcConfig" + } + }, + "type": "object" + }, + "AWS::SageMaker::ModelBiasJobDefinition.S3Output": { + "additionalProperties": false, + "properties": { + "LocalPath": { + "type": "string" + }, + "S3UploadMode": { + "type": "string" + }, + "S3Uri": { + "type": "string" + } + }, + "required": [ + "LocalPath", + "S3Uri" + ], + "type": "object" + }, + "AWS::SageMaker::ModelBiasJobDefinition.StoppingCondition": { + "additionalProperties": false, + "properties": { + "MaxRuntimeInSeconds": { + "type": "number" + } + }, + "required": [ + "MaxRuntimeInSeconds" + ], + "type": "object" + }, + "AWS::SageMaker::ModelBiasJobDefinition.VpcConfig": { + "additionalProperties": false, + "properties": { + "SecurityGroupIds": { + "items": { + "type": "string" + }, + "type": "array" + }, + "Subnets": { + "items": { + "type": "string" + }, + "type": "array" + } + }, + "required": [ + "SecurityGroupIds", + "Subnets" + ], + "type": "object" + }, + "AWS::SageMaker::ModelCard": { "additionalProperties": false, "properties": { "Condition": { @@ -151809,36 +152398,1262 @@ var CloudformationSchema = `{ "Properties": { "additionalProperties": false, "properties": { - "Description": { + "Description": { + "type": "string" + }, + "OnExceptionSteps": { + "items": { + "$ref": "#/definitions/AWS::Transfer::Workflow.WorkflowStep" + }, + "type": "array" + }, + "Steps": { + "items": { + "$ref": "#/definitions/AWS::Transfer::Workflow.WorkflowStep" + }, + "type": "array" + }, + "Tags": { + "items": { + "$ref": "#/definitions/Tag" + }, + "type": "array" + } + }, + "required": [ + "Steps" + ], + "type": "object" + }, + "Type": { + "enum": [ + "AWS::Transfer::Workflow" + ], + "type": "string" + }, + "UpdateReplacePolicy": { + "enum": [ + "Delete", + "Retain", + "Snapshot" + ], + "type": "string" + } + }, + "required": [ + "Type", + "Properties" + ], + "type": "object" + }, + "AWS::Transfer::Workflow.CopyStepDetails": { + "additionalProperties": false, + "properties": { + "DestinationFileLocation": { + "$ref": "#/definitions/AWS::Transfer::Workflow.S3FileLocation" + }, + "Name": { + "type": "string" + }, + "OverwriteExisting": { + "type": "string" + }, + "SourceFileLocation": { + "type": "string" + } + }, + "type": "object" + }, + "AWS::Transfer::Workflow.CustomStepDetails": { + "additionalProperties": false, + "properties": { + "Name": { + "type": "string" + }, + "SourceFileLocation": { + "type": "string" + }, + "Target": { + "type": "string" + }, + "TimeoutSeconds": { + "type": "number" + } + }, + "type": "object" + }, + "AWS::Transfer::Workflow.DecryptStepDetails": { + "additionalProperties": false, + "properties": { + "DestinationFileLocation": { + "$ref": "#/definitions/AWS::Transfer::Workflow.InputFileLocation" + }, + "Name": { + "type": "string" + }, + "OverwriteExisting": { + "type": "string" + }, + "SourceFileLocation": { + "type": "string" + }, + "Type": { + "type": "string" + } + }, + "type": "object" + }, + "AWS::Transfer::Workflow.DeleteStepDetails": { + "additionalProperties": false, + "properties": { + "Name": { + "type": "string" + }, + "SourceFileLocation": { + "type": "string" + } + }, + "type": "object" + }, + "AWS::Transfer::Workflow.EfsInputFileLocation": { + "additionalProperties": false, + "properties": { + "FileSystemId": { + "type": "string" + }, + "Path": { + "type": "string" + } + }, + "type": "object" + }, + "AWS::Transfer::Workflow.InputFileLocation": { + "additionalProperties": false, + "properties": { + "EfsFileLocation": { + "$ref": "#/definitions/AWS::Transfer::Workflow.EfsInputFileLocation" + }, + "S3FileLocation": { + "$ref": "#/definitions/AWS::Transfer::Workflow.S3InputFileLocation" + } + }, + "type": "object" + }, + "AWS::Transfer::Workflow.S3FileLocation": { + "additionalProperties": false, + "properties": { + "S3FileLocation": { + "$ref": "#/definitions/AWS::Transfer::Workflow.S3InputFileLocation" + } + }, + "type": "object" + }, + "AWS::Transfer::Workflow.S3InputFileLocation": { + "additionalProperties": false, + "properties": { + "Bucket": { + "type": "string" + }, + "Key": { + "type": "string" + } + }, + "type": "object" + }, + "AWS::Transfer::Workflow.S3Tag": { + "additionalProperties": false, + "properties": { + "Key": { + "type": "string" + }, + "Value": { + "type": "string" + } + }, + "required": [ + "Key", + "Value" + ], + "type": "object" + }, + "AWS::Transfer::Workflow.TagStepDetails": { + "additionalProperties": false, + "properties": { + "Name": { + "type": "string" + }, + "SourceFileLocation": { + "type": "string" + }, + "Tags": { + "items": { + "$ref": "#/definitions/AWS::Transfer::Workflow.S3Tag" + }, + "type": "array" + } + }, + "type": "object" + }, + "AWS::Transfer::Workflow.WorkflowStep": { + "additionalProperties": false, + "properties": { + "CopyStepDetails": { + "$ref": "#/definitions/AWS::Transfer::Workflow.CopyStepDetails" + }, + "CustomStepDetails": { + "$ref": "#/definitions/AWS::Transfer::Workflow.CustomStepDetails" + }, + "DecryptStepDetails": { + "$ref": "#/definitions/AWS::Transfer::Workflow.DecryptStepDetails" + }, + "DeleteStepDetails": { + "$ref": "#/definitions/AWS::Transfer::Workflow.DeleteStepDetails" + }, + "TagStepDetails": { + "$ref": "#/definitions/AWS::Transfer::Workflow.TagStepDetails" + }, + "Type": { + "type": "string" + } + }, + "type": "object" + }, + "AWS::VoiceID::Domain": { + "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": { + "Description": { + "type": "string" + }, + "Name": { + "type": "string" + }, + "ServerSideEncryptionConfiguration": { + "$ref": "#/definitions/AWS::VoiceID::Domain.ServerSideEncryptionConfiguration" + }, + "Tags": { + "items": { + "$ref": "#/definitions/Tag" + }, + "type": "array" + } + }, + "required": [ + "Name", + "ServerSideEncryptionConfiguration" + ], + "type": "object" + }, + "Type": { + "enum": [ + "AWS::VoiceID::Domain" + ], + "type": "string" + }, + "UpdateReplacePolicy": { + "enum": [ + "Delete", + "Retain", + "Snapshot" + ], + "type": "string" + } + }, + "required": [ + "Type", + "Properties" + ], + "type": "object" + }, + "AWS::VoiceID::Domain.ServerSideEncryptionConfiguration": { + "additionalProperties": false, + "properties": { + "KmsKeyId": { + "type": "string" + } + }, + "required": [ + "KmsKeyId" + ], + "type": "object" + }, + "AWS::VpcLattice::AccessLogSubscription": { + "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": { + "DestinationArn": { + "type": "string" + }, + "ResourceIdentifier": { + "type": "string" + }, + "Tags": { + "items": { + "$ref": "#/definitions/Tag" + }, + "type": "array" + } + }, + "required": [ + "DestinationArn" + ], + "type": "object" + }, + "Type": { + "enum": [ + "AWS::VpcLattice::AccessLogSubscription" + ], + "type": "string" + }, + "UpdateReplacePolicy": { + "enum": [ + "Delete", + "Retain", + "Snapshot" + ], + "type": "string" + } + }, + "required": [ + "Type", + "Properties" + ], + "type": "object" + }, + "AWS::VpcLattice::AuthPolicy": { + "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": { + "Policy": { + "type": "object" + }, + "ResourceIdentifier": { + "type": "string" + } + }, + "required": [ + "Policy", + "ResourceIdentifier" + ], + "type": "object" + }, + "Type": { + "enum": [ + "AWS::VpcLattice::AuthPolicy" + ], + "type": "string" + }, + "UpdateReplacePolicy": { + "enum": [ + "Delete", + "Retain", + "Snapshot" + ], + "type": "string" + } + }, + "required": [ + "Type", + "Properties" + ], + "type": "object" + }, + "AWS::VpcLattice::Listener": { + "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": { + "DefaultAction": { + "$ref": "#/definitions/AWS::VpcLattice::Listener.DefaultAction" + }, + "Name": { + "type": "string" + }, + "Port": { + "type": "number" + }, + "Protocol": { + "type": "string" + }, + "ServiceIdentifier": { + "type": "string" + }, + "Tags": { + "items": { + "$ref": "#/definitions/Tag" + }, + "type": "array" + } + }, + "required": [ + "DefaultAction", + "Protocol" + ], + "type": "object" + }, + "Type": { + "enum": [ + "AWS::VpcLattice::Listener" + ], + "type": "string" + }, + "UpdateReplacePolicy": { + "enum": [ + "Delete", + "Retain", + "Snapshot" + ], + "type": "string" + } + }, + "required": [ + "Type", + "Properties" + ], + "type": "object" + }, + "AWS::VpcLattice::Listener.DefaultAction": { + "additionalProperties": false, + "properties": { + "Forward": { + "$ref": "#/definitions/AWS::VpcLattice::Listener.Forward" + } + }, + "required": [ + "Forward" + ], + "type": "object" + }, + "AWS::VpcLattice::Listener.Forward": { + "additionalProperties": false, + "properties": { + "TargetGroups": { + "items": { + "$ref": "#/definitions/AWS::VpcLattice::Listener.WeightedTargetGroup" + }, + "type": "array" + } + }, + "required": [ + "TargetGroups" + ], + "type": "object" + }, + "AWS::VpcLattice::Listener.WeightedTargetGroup": { + "additionalProperties": false, + "properties": { + "TargetGroupIdentifier": { + "type": "string" + }, + "Weight": { + "type": "number" + } + }, + "required": [ + "TargetGroupIdentifier" + ], + "type": "object" + }, + "AWS::VpcLattice::ResourcePolicy": { + "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": { + "Policy": { + "type": "object" + }, + "ResourceArn": { + "type": "string" + } + }, + "required": [ + "Policy", + "ResourceArn" + ], + "type": "object" + }, + "Type": { + "enum": [ + "AWS::VpcLattice::ResourcePolicy" + ], + "type": "string" + }, + "UpdateReplacePolicy": { + "enum": [ + "Delete", + "Retain", + "Snapshot" + ], + "type": "string" + } + }, + "required": [ + "Type", + "Properties" + ], + "type": "object" + }, + "AWS::VpcLattice::Rule": { + "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": { + "Action": { + "$ref": "#/definitions/AWS::VpcLattice::Rule.Action" + }, + "ListenerIdentifier": { + "type": "string" + }, + "Match": { + "$ref": "#/definitions/AWS::VpcLattice::Rule.Match" + }, + "Name": { + "type": "string" + }, + "Priority": { + "type": "number" + }, + "ServiceIdentifier": { + "type": "string" + }, + "Tags": { + "items": { + "$ref": "#/definitions/Tag" + }, + "type": "array" + } + }, + "required": [ + "Action", + "Match", + "Priority" + ], + "type": "object" + }, + "Type": { + "enum": [ + "AWS::VpcLattice::Rule" + ], + "type": "string" + }, + "UpdateReplacePolicy": { + "enum": [ + "Delete", + "Retain", + "Snapshot" + ], + "type": "string" + } + }, + "required": [ + "Type", + "Properties" + ], + "type": "object" + }, + "AWS::VpcLattice::Rule.Action": { + "additionalProperties": false, + "properties": { + "Forward": { + "$ref": "#/definitions/AWS::VpcLattice::Rule.Forward" + } + }, + "required": [ + "Forward" + ], + "type": "object" + }, + "AWS::VpcLattice::Rule.Forward": { + "additionalProperties": false, + "properties": { + "TargetGroups": { + "items": { + "$ref": "#/definitions/AWS::VpcLattice::Rule.WeightedTargetGroup" + }, + "type": "array" + } + }, + "required": [ + "TargetGroups" + ], + "type": "object" + }, + "AWS::VpcLattice::Rule.HeaderMatch": { + "additionalProperties": false, + "properties": { + "CaseSensitive": { + "type": "boolean" + }, + "Match": { + "$ref": "#/definitions/AWS::VpcLattice::Rule.HeaderMatchType" + }, + "Name": { + "type": "string" + } + }, + "required": [ + "Match", + "Name" + ], + "type": "object" + }, + "AWS::VpcLattice::Rule.HeaderMatchType": { + "additionalProperties": false, + "properties": { + "Contains": { + "type": "string" + }, + "Exact": { + "type": "string" + }, + "Prefix": { + "type": "string" + } + }, + "type": "object" + }, + "AWS::VpcLattice::Rule.HttpMatch": { + "additionalProperties": false, + "properties": { + "HeaderMatches": { + "items": { + "$ref": "#/definitions/AWS::VpcLattice::Rule.HeaderMatch" + }, + "type": "array" + }, + "Method": { + "type": "string" + }, + "PathMatch": { + "$ref": "#/definitions/AWS::VpcLattice::Rule.PathMatch" + } + }, + "type": "object" + }, + "AWS::VpcLattice::Rule.Match": { + "additionalProperties": false, + "properties": { + "HttpMatch": { + "$ref": "#/definitions/AWS::VpcLattice::Rule.HttpMatch" + } + }, + "required": [ + "HttpMatch" + ], + "type": "object" + }, + "AWS::VpcLattice::Rule.PathMatch": { + "additionalProperties": false, + "properties": { + "CaseSensitive": { + "type": "boolean" + }, + "Match": { + "$ref": "#/definitions/AWS::VpcLattice::Rule.PathMatchType" + } + }, + "required": [ + "Match" + ], + "type": "object" + }, + "AWS::VpcLattice::Rule.PathMatchType": { + "additionalProperties": false, + "properties": { + "Exact": { + "type": "string" + }, + "Prefix": { + "type": "string" + } + }, + "type": "object" + }, + "AWS::VpcLattice::Rule.WeightedTargetGroup": { + "additionalProperties": false, + "properties": { + "TargetGroupIdentifier": { + "type": "string" + }, + "Weight": { + "type": "number" + } + }, + "required": [ + "TargetGroupIdentifier" + ], + "type": "object" + }, + "AWS::VpcLattice::Service": { + "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": { + "AuthType": { + "type": "string" + }, + "CertificateArn": { + "type": "string" + }, + "CustomDomainName": { + "type": "string" + }, + "DnsEntry": { + "$ref": "#/definitions/AWS::VpcLattice::Service.DnsEntry" + }, + "Name": { + "type": "string" + }, + "Tags": { + "items": { + "$ref": "#/definitions/Tag" + }, + "type": "array" + } + }, + "type": "object" + }, + "Type": { + "enum": [ + "AWS::VpcLattice::Service" + ], + "type": "string" + }, + "UpdateReplacePolicy": { + "enum": [ + "Delete", + "Retain", + "Snapshot" + ], + "type": "string" + } + }, + "required": [ + "Type" + ], + "type": "object" + }, + "AWS::VpcLattice::Service.DnsEntry": { + "additionalProperties": false, + "properties": { + "DomainName": { + "type": "string" + }, + "HostedZoneId": { + "type": "string" + } + }, + "type": "object" + }, + "AWS::VpcLattice::ServiceNetwork": { + "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": { + "AuthType": { + "type": "string" + }, + "Name": { + "type": "string" + }, + "Tags": { + "items": { + "$ref": "#/definitions/Tag" + }, + "type": "array" + } + }, + "type": "object" + }, + "Type": { + "enum": [ + "AWS::VpcLattice::ServiceNetwork" + ], + "type": "string" + }, + "UpdateReplacePolicy": { + "enum": [ + "Delete", + "Retain", + "Snapshot" + ], + "type": "string" + } + }, + "required": [ + "Type" + ], + "type": "object" + }, + "AWS::VpcLattice::ServiceNetworkServiceAssociation": { + "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": { + "DnsEntry": { + "$ref": "#/definitions/AWS::VpcLattice::ServiceNetworkServiceAssociation.DnsEntry" + }, + "ServiceIdentifier": { + "type": "string" + }, + "ServiceNetworkIdentifier": { + "type": "string" + }, + "Tags": { + "items": { + "$ref": "#/definitions/Tag" + }, + "type": "array" + } + }, + "type": "object" + }, + "Type": { + "enum": [ + "AWS::VpcLattice::ServiceNetworkServiceAssociation" + ], + "type": "string" + }, + "UpdateReplacePolicy": { + "enum": [ + "Delete", + "Retain", + "Snapshot" + ], + "type": "string" + } + }, + "required": [ + "Type" + ], + "type": "object" + }, + "AWS::VpcLattice::ServiceNetworkServiceAssociation.DnsEntry": { + "additionalProperties": false, + "properties": { + "DomainName": { + "type": "string" + }, + "HostedZoneId": { + "type": "string" + } + }, + "type": "object" + }, + "AWS::VpcLattice::ServiceNetworkVpcAssociation": { + "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": { + "SecurityGroupIds": { + "items": { + "type": "string" + }, + "type": "array" + }, + "ServiceNetworkIdentifier": { + "type": "string" + }, + "Tags": { + "items": { + "$ref": "#/definitions/Tag" + }, + "type": "array" + }, + "VpcIdentifier": { + "type": "string" + } + }, + "type": "object" + }, + "Type": { + "enum": [ + "AWS::VpcLattice::ServiceNetworkVpcAssociation" + ], + "type": "string" + }, + "UpdateReplacePolicy": { + "enum": [ + "Delete", + "Retain", + "Snapshot" + ], + "type": "string" + } + }, + "required": [ + "Type" + ], + "type": "object" + }, + "AWS::VpcLattice::TargetGroup": { + "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": { + "Config": { + "$ref": "#/definitions/AWS::VpcLattice::TargetGroup.TargetGroupConfig" + }, + "Name": { "type": "string" }, - "OnExceptionSteps": { + "Tags": { "items": { - "$ref": "#/definitions/AWS::Transfer::Workflow.WorkflowStep" + "$ref": "#/definitions/Tag" }, "type": "array" }, - "Steps": { + "Targets": { "items": { - "$ref": "#/definitions/AWS::Transfer::Workflow.WorkflowStep" + "$ref": "#/definitions/AWS::VpcLattice::TargetGroup.Target" }, "type": "array" }, - "Tags": { - "items": { - "$ref": "#/definitions/Tag" - }, - "type": "array" + "Type": { + "type": "string" } }, "required": [ - "Steps" + "Type" ], "type": "object" }, "Type": { "enum": [ - "AWS::Transfer::Workflow" + "AWS::VpcLattice::TargetGroup" ], "type": "string" }, @@ -151857,265 +153672,89 @@ var CloudformationSchema = `{ ], "type": "object" }, - "AWS::Transfer::Workflow.CopyStepDetails": { + "AWS::VpcLattice::TargetGroup.HealthCheckConfig": { "additionalProperties": false, "properties": { - "DestinationFileLocation": { - "$ref": "#/definitions/AWS::Transfer::Workflow.S3FileLocation" - }, - "Name": { - "type": "string" - }, - "OverwriteExisting": { - "type": "string" - }, - "SourceFileLocation": { - "type": "string" - } - }, - "type": "object" - }, - "AWS::Transfer::Workflow.CustomStepDetails": { - "additionalProperties": false, - "properties": { - "Name": { - "type": "string" - }, - "SourceFileLocation": { - "type": "string" - }, - "Target": { - "type": "string" + "Enabled": { + "type": "boolean" }, - "TimeoutSeconds": { + "HealthCheckIntervalSeconds": { "type": "number" - } - }, - "type": "object" - }, - "AWS::Transfer::Workflow.DecryptStepDetails": { - "additionalProperties": false, - "properties": { - "DestinationFileLocation": { - "$ref": "#/definitions/AWS::Transfer::Workflow.InputFileLocation" - }, - "Name": { - "type": "string" }, - "OverwriteExisting": { - "type": "string" - }, - "SourceFileLocation": { - "type": "string" + "HealthCheckTimeoutSeconds": { + "type": "number" }, - "Type": { - "type": "string" - } - }, - "type": "object" - }, - "AWS::Transfer::Workflow.DeleteStepDetails": { - "additionalProperties": false, - "properties": { - "Name": { - "type": "string" + "HealthyThresholdCount": { + "type": "number" }, - "SourceFileLocation": { - "type": "string" - } - }, - "type": "object" - }, - "AWS::Transfer::Workflow.EfsInputFileLocation": { - "additionalProperties": false, - "properties": { - "FileSystemId": { - "type": "string" + "Matcher": { + "$ref": "#/definitions/AWS::VpcLattice::TargetGroup.Matcher" }, "Path": { "type": "string" - } - }, - "type": "object" - }, - "AWS::Transfer::Workflow.InputFileLocation": { - "additionalProperties": false, - "properties": { - "EfsFileLocation": { - "$ref": "#/definitions/AWS::Transfer::Workflow.EfsInputFileLocation" }, - "S3FileLocation": { - "$ref": "#/definitions/AWS::Transfer::Workflow.S3InputFileLocation" - } - }, - "type": "object" - }, - "AWS::Transfer::Workflow.S3FileLocation": { - "additionalProperties": false, - "properties": { - "S3FileLocation": { - "$ref": "#/definitions/AWS::Transfer::Workflow.S3InputFileLocation" - } - }, - "type": "object" - }, - "AWS::Transfer::Workflow.S3InputFileLocation": { - "additionalProperties": false, - "properties": { - "Bucket": { - "type": "string" + "Port": { + "type": "number" }, - "Key": { + "Protocol": { "type": "string" + }, + "UnhealthyThresholdCount": { + "type": "number" } }, "type": "object" }, - "AWS::Transfer::Workflow.S3Tag": { + "AWS::VpcLattice::TargetGroup.Matcher": { "additionalProperties": false, "properties": { - "Key": { - "type": "string" - }, - "Value": { + "HttpCode": { "type": "string" } }, "required": [ - "Key", - "Value" + "HttpCode" ], "type": "object" }, - "AWS::Transfer::Workflow.TagStepDetails": { + "AWS::VpcLattice::TargetGroup.Target": { "additionalProperties": false, "properties": { - "Name": { - "type": "string" - }, - "SourceFileLocation": { + "Id": { "type": "string" }, - "Tags": { - "items": { - "$ref": "#/definitions/AWS::Transfer::Workflow.S3Tag" - }, - "type": "array" + "Port": { + "type": "number" } }, + "required": [ + "Id" + ], "type": "object" }, - "AWS::Transfer::Workflow.WorkflowStep": { + "AWS::VpcLattice::TargetGroup.TargetGroupConfig": { "additionalProperties": false, "properties": { - "CopyStepDetails": { - "$ref": "#/definitions/AWS::Transfer::Workflow.CopyStepDetails" - }, - "CustomStepDetails": { - "$ref": "#/definitions/AWS::Transfer::Workflow.CustomStepDetails" - }, - "DecryptStepDetails": { - "$ref": "#/definitions/AWS::Transfer::Workflow.DecryptStepDetails" - }, - "DeleteStepDetails": { - "$ref": "#/definitions/AWS::Transfer::Workflow.DeleteStepDetails" - }, - "TagStepDetails": { - "$ref": "#/definitions/AWS::Transfer::Workflow.TagStepDetails" + "HealthCheck": { + "$ref": "#/definitions/AWS::VpcLattice::TargetGroup.HealthCheckConfig" }, - "Type": { - "type": "string" - } - }, - "type": "object" - }, - "AWS::VoiceID::Domain": { - "additionalProperties": false, - "properties": { - "Condition": { - "type": "string" + "Port": { + "type": "number" }, - "DeletionPolicy": { - "enum": [ - "Delete", - "Retain", - "Snapshot" - ], + "Protocol": { "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": { - "Description": { - "type": "string" - }, - "Name": { - "type": "string" - }, - "ServerSideEncryptionConfiguration": { - "$ref": "#/definitions/AWS::VoiceID::Domain.ServerSideEncryptionConfiguration" - }, - "Tags": { - "items": { - "$ref": "#/definitions/Tag" - }, - "type": "array" - } - }, - "required": [ - "Name", - "ServerSideEncryptionConfiguration" - ], - "type": "object" - }, - "Type": { - "enum": [ - "AWS::VoiceID::Domain" - ], + "ProtocolVersion": { "type": "string" }, - "UpdateReplacePolicy": { - "enum": [ - "Delete", - "Retain", - "Snapshot" - ], - "type": "string" - } - }, - "required": [ - "Type", - "Properties" - ], - "type": "object" - }, - "AWS::VoiceID::Domain.ServerSideEncryptionConfiguration": { - "additionalProperties": false, - "properties": { - "KmsKeyId": { + "VpcIdentifier": { "type": "string" } }, "required": [ - "KmsKeyId" + "Port", + "Protocol", + "VpcIdentifier" ], "type": "object" }, @@ -158066,6 +159705,9 @@ var CloudformationSchema = `{ { "$ref": "#/definitions/AWS::CertificateManager::Certificate" }, + { + "$ref": "#/definitions/AWS::Chatbot::MicrosoftTeamsChannelConfiguration" + }, { "$ref": "#/definitions/AWS::Chatbot::SlackChannelConfiguration" }, @@ -158276,6 +159918,9 @@ var CloudformationSchema = `{ { "$ref": "#/definitions/AWS::Cognito::UserPoolUserToGroupAttachment" }, + { + "$ref": "#/definitions/AWS::Comprehend::Flywheel" + }, { "$ref": "#/definitions/AWS::Config::AggregationAuthorization" }, @@ -160448,6 +162093,9 @@ var CloudformationSchema = `{ { "$ref": "#/definitions/AWS::SageMaker::ImageVersion" }, + { + "$ref": "#/definitions/AWS::SageMaker::InferenceExperiment" + }, { "$ref": "#/definitions/AWS::SageMaker::Model" }, @@ -160655,6 +162303,36 @@ var CloudformationSchema = `{ { "$ref": "#/definitions/AWS::VoiceID::Domain" }, + { + "$ref": "#/definitions/AWS::VpcLattice::AccessLogSubscription" + }, + { + "$ref": "#/definitions/AWS::VpcLattice::AuthPolicy" + }, + { + "$ref": "#/definitions/AWS::VpcLattice::Listener" + }, + { + "$ref": "#/definitions/AWS::VpcLattice::ResourcePolicy" + }, + { + "$ref": "#/definitions/AWS::VpcLattice::Rule" + }, + { + "$ref": "#/definitions/AWS::VpcLattice::Service" + }, + { + "$ref": "#/definitions/AWS::VpcLattice::ServiceNetwork" + }, + { + "$ref": "#/definitions/AWS::VpcLattice::ServiceNetworkServiceAssociation" + }, + { + "$ref": "#/definitions/AWS::VpcLattice::ServiceNetworkVpcAssociation" + }, + { + "$ref": "#/definitions/AWS::VpcLattice::TargetGroup" + }, { "$ref": "#/definitions/AWS::WAF::ByteMatchSet" }, diff --git a/schema/cloudformation.schema.json b/schema/cloudformation.schema.json index d7764e1579..740c4f0bc8 100644 --- a/schema/cloudformation.schema.json +++ b/schema/cloudformation.schema.json @@ -16422,6 +16422,30 @@ ], "type": "object" }, + "AWS::Athena::WorkGroup.AclConfiguration": { + "additionalProperties": false, + "properties": { + "S3AclOption": { + "type": "string" + } + }, + "required": [ + "S3AclOption" + ], + "type": "object" + }, + "AWS::Athena::WorkGroup.CustomerContentEncryptionConfiguration": { + "additionalProperties": false, + "properties": { + "KmsKey": { + "type": "string" + } + }, + "required": [ + "KmsKey" + ], + "type": "object" + }, "AWS::Athena::WorkGroup.EncryptionConfiguration": { "additionalProperties": false, "properties": { @@ -16452,9 +16476,15 @@ "AWS::Athena::WorkGroup.ResultConfiguration": { "additionalProperties": false, "properties": { + "AclConfiguration": { + "$ref": "#/definitions/AWS::Athena::WorkGroup.AclConfiguration" + }, "EncryptionConfiguration": { "$ref": "#/definitions/AWS::Athena::WorkGroup.EncryptionConfiguration" }, + "ExpectedBucketOwner": { + "type": "string" + }, "OutputLocation": { "type": "string" } @@ -16464,15 +16494,24 @@ "AWS::Athena::WorkGroup.WorkGroupConfiguration": { "additionalProperties": false, "properties": { + "AdditionalConfiguration": { + "type": "string" + }, "BytesScannedCutoffPerQuery": { "type": "number" }, + "CustomerContentEncryptionConfiguration": { + "$ref": "#/definitions/AWS::Athena::WorkGroup.CustomerContentEncryptionConfiguration" + }, "EnforceWorkGroupConfiguration": { "type": "boolean" }, "EngineVersion": { "$ref": "#/definitions/AWS::Athena::WorkGroup.EngineVersion" }, + "ExecutionRole": { + "type": "string" + }, "PublishCloudWatchMetricsEnabled": { "type": "boolean" }, @@ -21783,6 +21822,9 @@ "BillingMode": { "$ref": "#/definitions/AWS::Cassandra::Table.BillingMode" }, + "ClientSideTimestampsEnabled": { + "type": "boolean" + }, "ClusteringKeyColumns": { "items": { "$ref": "#/definitions/AWS::Cassandra::Table.ClusteringKeyColumn" @@ -22111,7 +22153,7 @@ ], "type": "object" }, - "AWS::Chatbot::SlackChannelConfiguration": { + "AWS::Chatbot::MicrosoftTeamsChannelConfiguration": { "additionalProperties": false, "properties": { "Condition": { @@ -22161,18 +22203,21 @@ "LoggingLevel": { "type": "string" }, - "SlackChannelId": { - "type": "string" - }, - "SlackWorkspaceId": { - "type": "string" - }, "SnsTopicArns": { "items": { "type": "string" }, "type": "array" }, + "TeamId": { + "type": "string" + }, + "TeamsChannelId": { + "type": "string" + }, + "TeamsTenantId": { + "type": "string" + }, "UserRoleRequired": { "type": "boolean" } @@ -22180,14 +22225,15 @@ "required": [ "ConfigurationName", "IamRoleArn", - "SlackChannelId", - "SlackWorkspaceId" + "TeamId", + "TeamsChannelId", + "TeamsTenantId" ], "type": "object" }, "Type": { "enum": [ - "AWS::Chatbot::SlackChannelConfiguration" + "AWS::Chatbot::MicrosoftTeamsChannelConfiguration" ], "type": "string" }, @@ -22206,7 +22252,7 @@ ], "type": "object" }, - "AWS::Cloud9::EnvironmentEC2": { + "AWS::Chatbot::SlackChannelConfiguration": { "additionalProperties": false, "properties": { "Condition": { @@ -22241,51 +22287,48 @@ "Properties": { "additionalProperties": false, "properties": { - "AutomaticStopTimeMinutes": { - "type": "number" - }, - "ConnectionType": { + "ConfigurationName": { "type": "string" }, - "Description": { - "type": "string" + "GuardrailPolicies": { + "items": { + "type": "string" + }, + "type": "array" }, - "ImageId": { + "IamRoleArn": { "type": "string" }, - "InstanceType": { + "LoggingLevel": { "type": "string" }, - "Name": { + "SlackChannelId": { "type": "string" }, - "OwnerArn": { + "SlackWorkspaceId": { "type": "string" }, - "Repositories": { + "SnsTopicArns": { "items": { - "$ref": "#/definitions/AWS::Cloud9::EnvironmentEC2.Repository" + "type": "string" }, "type": "array" }, - "SubnetId": { - "type": "string" - }, - "Tags": { - "items": { - "$ref": "#/definitions/Tag" - }, - "type": "array" + "UserRoleRequired": { + "type": "boolean" } }, "required": [ - "InstanceType" + "ConfigurationName", + "IamRoleArn", + "SlackChannelId", + "SlackWorkspaceId" ], "type": "object" }, "Type": { "enum": [ - "AWS::Cloud9::EnvironmentEC2" + "AWS::Chatbot::SlackChannelConfiguration" ], "type": "string" }, @@ -22304,23 +22347,7 @@ ], "type": "object" }, - "AWS::Cloud9::EnvironmentEC2.Repository": { - "additionalProperties": false, - "properties": { - "PathComponent": { - "type": "string" - }, - "RepositoryUrl": { - "type": "string" - } - }, - "required": [ - "PathComponent", - "RepositoryUrl" - ], - "type": "object" - }, - "AWS::CloudFormation::CustomResource": { + "AWS::Cloud9::EnvironmentEC2": { "additionalProperties": false, "properties": { "Condition": { @@ -22355,18 +22382,51 @@ "Properties": { "additionalProperties": false, "properties": { - "ServiceToken": { + "AutomaticStopTimeMinutes": { + "type": "number" + }, + "ConnectionType": { "type": "string" + }, + "Description": { + "type": "string" + }, + "ImageId": { + "type": "string" + }, + "InstanceType": { + "type": "string" + }, + "Name": { + "type": "string" + }, + "OwnerArn": { + "type": "string" + }, + "Repositories": { + "items": { + "$ref": "#/definitions/AWS::Cloud9::EnvironmentEC2.Repository" + }, + "type": "array" + }, + "SubnetId": { + "type": "string" + }, + "Tags": { + "items": { + "$ref": "#/definitions/Tag" + }, + "type": "array" } }, "required": [ - "ServiceToken" + "InstanceType" ], "type": "object" }, "Type": { "enum": [ - "AWS::CloudFormation::CustomResource" + "AWS::Cloud9::EnvironmentEC2" ], "type": "string" }, @@ -22385,74 +22445,23 @@ ], "type": "object" }, - "AWS::CloudFormation::HookDefaultVersion": { + "AWS::Cloud9::EnvironmentEC2.Repository": { "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": { - "TypeName": { - "type": "string" - }, - "TypeVersionArn": { - "type": "string" - }, - "VersionId": { - "type": "string" - } - }, - "type": "object" - }, - "Type": { - "enum": [ - "AWS::CloudFormation::HookDefaultVersion" - ], + "PathComponent": { "type": "string" }, - "UpdateReplacePolicy": { - "enum": [ - "Delete", - "Retain", - "Snapshot" - ], + "RepositoryUrl": { "type": "string" } }, "required": [ - "Type" + "PathComponent", + "RepositoryUrl" ], "type": "object" }, - "AWS::CloudFormation::HookTypeConfig": { + "AWS::CloudFormation::CustomResource": { "additionalProperties": false, "properties": { "Condition": { @@ -22487,27 +22496,18 @@ "Properties": { "additionalProperties": false, "properties": { - "Configuration": { - "type": "string" - }, - "ConfigurationAlias": { - "type": "string" - }, - "TypeArn": { - "type": "string" - }, - "TypeName": { + "ServiceToken": { "type": "string" } }, "required": [ - "Configuration" + "ServiceToken" ], "type": "object" }, "Type": { "enum": [ - "AWS::CloudFormation::HookTypeConfig" + "AWS::CloudFormation::CustomResource" ], "type": "string" }, @@ -22526,7 +22526,7 @@ ], "type": "object" }, - "AWS::CloudFormation::HookVersion": { + "AWS::CloudFormation::HookDefaultVersion": { "additionalProperties": false, "properties": { "Condition": { @@ -22561,28 +22561,21 @@ "Properties": { "additionalProperties": false, "properties": { - "ExecutionRoleArn": { + "TypeName": { "type": "string" }, - "LoggingConfig": { - "$ref": "#/definitions/AWS::CloudFormation::HookVersion.LoggingConfig" - }, - "SchemaHandlerPackage": { + "TypeVersionArn": { "type": "string" }, - "TypeName": { + "VersionId": { "type": "string" } }, - "required": [ - "SchemaHandlerPackage", - "TypeName" - ], "type": "object" }, "Type": { "enum": [ - "AWS::CloudFormation::HookVersion" + "AWS::CloudFormation::HookDefaultVersion" ], "type": "string" }, @@ -22596,24 +22589,172 @@ } }, "required": [ - "Type", - "Properties" + "Type" ], "type": "object" }, - "AWS::CloudFormation::HookVersion.LoggingConfig": { - "additionalProperties": false, - "properties": { - "LogGroupName": { - "type": "string" - }, - "LogRoleArn": { - "type": "string" - } - }, - "type": "object" - }, - "AWS::CloudFormation::Macro": { + "AWS::CloudFormation::HookTypeConfig": { + "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": { + "Configuration": { + "type": "string" + }, + "ConfigurationAlias": { + "type": "string" + }, + "TypeArn": { + "type": "string" + }, + "TypeName": { + "type": "string" + } + }, + "required": [ + "Configuration" + ], + "type": "object" + }, + "Type": { + "enum": [ + "AWS::CloudFormation::HookTypeConfig" + ], + "type": "string" + }, + "UpdateReplacePolicy": { + "enum": [ + "Delete", + "Retain", + "Snapshot" + ], + "type": "string" + } + }, + "required": [ + "Type", + "Properties" + ], + "type": "object" + }, + "AWS::CloudFormation::HookVersion": { + "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": { + "ExecutionRoleArn": { + "type": "string" + }, + "LoggingConfig": { + "$ref": "#/definitions/AWS::CloudFormation::HookVersion.LoggingConfig" + }, + "SchemaHandlerPackage": { + "type": "string" + }, + "TypeName": { + "type": "string" + } + }, + "required": [ + "SchemaHandlerPackage", + "TypeName" + ], + "type": "object" + }, + "Type": { + "enum": [ + "AWS::CloudFormation::HookVersion" + ], + "type": "string" + }, + "UpdateReplacePolicy": { + "enum": [ + "Delete", + "Retain", + "Snapshot" + ], + "type": "string" + } + }, + "required": [ + "Type", + "Properties" + ], + "type": "object" + }, + "AWS::CloudFormation::HookVersion.LoggingConfig": { + "additionalProperties": false, + "properties": { + "LogGroupName": { + "type": "string" + }, + "LogRoleArn": { + "type": "string" + } + }, + "type": "object" + }, + "AWS::CloudFormation::Macro": { "additionalProperties": false, "properties": { "Condition": { @@ -32061,7 +32202,7 @@ ], "type": "object" }, - "AWS::Config::AggregationAuthorization": { + "AWS::Comprehend::Flywheel": { "additionalProperties": false, "properties": { "Condition": { @@ -32096,10 +32237,22 @@ "Properties": { "additionalProperties": false, "properties": { - "AuthorizedAccountId": { + "ActiveModelArn": { "type": "string" }, - "AuthorizedAwsRegion": { + "DataAccessRoleArn": { + "type": "string" + }, + "DataLakeS3Uri": { + "type": "string" + }, + "DataSecurityConfig": { + "$ref": "#/definitions/AWS::Comprehend::Flywheel.DataSecurityConfig" + }, + "FlywheelName": { + "type": "string" + }, + "ModelType": { "type": "string" }, "Tags": { @@ -32107,17 +32260,21 @@ "$ref": "#/definitions/Tag" }, "type": "array" + }, + "TaskConfig": { + "$ref": "#/definitions/AWS::Comprehend::Flywheel.TaskConfig" } }, "required": [ - "AuthorizedAccountId", - "AuthorizedAwsRegion" + "DataAccessRoleArn", + "DataLakeS3Uri", + "FlywheelName" ], "type": "object" }, "Type": { "enum": [ - "AWS::Config::AggregationAuthorization" + "AWS::Comprehend::Flywheel" ], "type": "string" }, @@ -32136,7 +32293,182 @@ ], "type": "object" }, - "AWS::Config::ConfigRule": { + "AWS::Comprehend::Flywheel.DataSecurityConfig": { + "additionalProperties": false, + "properties": { + "DataLakeKmsKeyId": { + "type": "string" + }, + "ModelKmsKeyId": { + "type": "string" + }, + "VolumeKmsKeyId": { + "type": "string" + }, + "VpcConfig": { + "$ref": "#/definitions/AWS::Comprehend::Flywheel.VpcConfig" + } + }, + "type": "object" + }, + "AWS::Comprehend::Flywheel.DocumentClassificationConfig": { + "additionalProperties": false, + "properties": { + "Labels": { + "items": { + "type": "string" + }, + "type": "array" + }, + "Mode": { + "type": "string" + } + }, + "required": [ + "Mode" + ], + "type": "object" + }, + "AWS::Comprehend::Flywheel.EntityRecognitionConfig": { + "additionalProperties": false, + "properties": { + "EntityTypes": { + "items": { + "$ref": "#/definitions/AWS::Comprehend::Flywheel.EntityTypesListItem" + }, + "type": "array" + } + }, + "type": "object" + }, + "AWS::Comprehend::Flywheel.EntityTypesListItem": { + "additionalProperties": false, + "properties": { + "Type": { + "type": "string" + } + }, + "required": [ + "Type" + ], + "type": "object" + }, + "AWS::Comprehend::Flywheel.TaskConfig": { + "additionalProperties": false, + "properties": { + "DocumentClassificationConfig": { + "$ref": "#/definitions/AWS::Comprehend::Flywheel.DocumentClassificationConfig" + }, + "EntityRecognitionConfig": { + "$ref": "#/definitions/AWS::Comprehend::Flywheel.EntityRecognitionConfig" + }, + "LanguageCode": { + "type": "string" + } + }, + "required": [ + "LanguageCode" + ], + "type": "object" + }, + "AWS::Comprehend::Flywheel.VpcConfig": { + "additionalProperties": false, + "properties": { + "SecurityGroupIds": { + "items": { + "type": "string" + }, + "type": "array" + }, + "Subnets": { + "items": { + "type": "string" + }, + "type": "array" + } + }, + "required": [ + "SecurityGroupIds", + "Subnets" + ], + "type": "object" + }, + "AWS::Config::AggregationAuthorization": { + "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": { + "AuthorizedAccountId": { + "type": "string" + }, + "AuthorizedAwsRegion": { + "type": "string" + }, + "Tags": { + "items": { + "$ref": "#/definitions/Tag" + }, + "type": "array" + } + }, + "required": [ + "AuthorizedAccountId", + "AuthorizedAwsRegion" + ], + "type": "object" + }, + "Type": { + "enum": [ + "AWS::Config::AggregationAuthorization" + ], + "type": "string" + }, + "UpdateReplacePolicy": { + "enum": [ + "Delete", + "Retain", + "Snapshot" + ], + "type": "string" + } + }, + "required": [ + "Type", + "Properties" + ], + "type": "object" + }, + "AWS::Config::ConfigRule": { "additionalProperties": false, "properties": { "Condition": { @@ -61358,7 +61690,6 @@ "required": [ "Actions", "Conditions", - "ListenerArn", "Priority" ], "type": "object" @@ -109945,18 +110276,7 @@ }, "AWS::MediaPackage::PackagingConfiguration.EncryptionContractConfiguration": { "additionalProperties": false, - "properties": { - "PresetSpeke20Audio": { - "type": "string" - }, - "PresetSpeke20Video": { - "type": "string" - } - }, - "required": [ - "PresetSpeke20Audio", - "PresetSpeke20Video" - ], + "properties": {}, "type": "object" }, "AWS::MediaPackage::PackagingConfiguration.HlsEncryption": { @@ -127238,6 +127558,9 @@ "Name": { "type": "string" }, + "Namespace": { + "type": "string" + }, "UnitLabel": { "type": "string" }, @@ -134820,6 +135143,9 @@ "properties": { "Bucket": { "type": "string" + }, + "BucketAccountId": { + "type": "string" } }, "required": [ @@ -138964,7 +139290,6 @@ "required": [ "Alias", "DisplayName", - "Plan", "Type" ], "type": "object" @@ -141977,7 +142302,7 @@ ], "type": "object" }, - "AWS::SageMaker::Model": { + "AWS::SageMaker::InferenceExperiment": { "additionalProperties": false, "properties": { "Condition": { @@ -142012,26 +142337,41 @@ "Properties": { "additionalProperties": false, "properties": { - "Containers": { + "DataStorageConfig": { + "$ref": "#/definitions/AWS::SageMaker::InferenceExperiment.DataStorageConfig" + }, + "Description": { + "type": "string" + }, + "DesiredState": { + "type": "string" + }, + "EndpointName": { + "type": "string" + }, + "KmsKey": { + "type": "string" + }, + "ModelVariants": { "items": { - "$ref": "#/definitions/AWS::SageMaker::Model.ContainerDefinition" + "$ref": "#/definitions/AWS::SageMaker::InferenceExperiment.ModelVariantConfig" }, "type": "array" }, - "EnableNetworkIsolation": { - "type": "boolean" + "Name": { + "type": "string" }, - "ExecutionRoleArn": { + "RoleArn": { "type": "string" }, - "InferenceExecutionConfig": { - "$ref": "#/definitions/AWS::SageMaker::Model.InferenceExecutionConfig" + "Schedule": { + "$ref": "#/definitions/AWS::SageMaker::InferenceExperiment.InferenceExperimentSchedule" }, - "ModelName": { - "type": "string" + "ShadowModeConfig": { + "$ref": "#/definitions/AWS::SageMaker::InferenceExperiment.ShadowModeConfig" }, - "PrimaryContainer": { - "$ref": "#/definitions/AWS::SageMaker::Model.ContainerDefinition" + "StatusReason": { + "type": "string" }, "Tags": { "items": { @@ -142039,18 +142379,22 @@ }, "type": "array" }, - "VpcConfig": { - "$ref": "#/definitions/AWS::SageMaker::Model.VpcConfig" + "Type": { + "type": "string" } }, "required": [ - "ExecutionRoleArn" + "EndpointName", + "ModelVariants", + "Name", + "RoleArn", + "Type" ], "type": "object" }, "Type": { "enum": [ - "AWS::SageMaker::Model" + "AWS::SageMaker::InferenceExperiment" ], "type": "string" }, @@ -142069,110 +142413,160 @@ ], "type": "object" }, - "AWS::SageMaker::Model.ContainerDefinition": { + "AWS::SageMaker::InferenceExperiment.CaptureContentTypeHeader": { "additionalProperties": false, "properties": { - "ContainerHostname": { - "type": "string" + "CsvContentTypes": { + "items": { + "type": "string" + }, + "type": "array" }, - "Environment": { - "type": "object" + "JsonContentTypes": { + "items": { + "type": "string" + }, + "type": "array" + } + }, + "type": "object" + }, + "AWS::SageMaker::InferenceExperiment.DataStorageConfig": { + "additionalProperties": false, + "properties": { + "ContentType": { + "$ref": "#/definitions/AWS::SageMaker::InferenceExperiment.CaptureContentTypeHeader" }, - "Image": { + "Destination": { "type": "string" }, - "ImageConfig": { - "$ref": "#/definitions/AWS::SageMaker::Model.ImageConfig" - }, - "InferenceSpecificationName": { + "KmsKey": { "type": "string" - }, - "Mode": { + } + }, + "required": [ + "Destination" + ], + "type": "object" + }, + "AWS::SageMaker::InferenceExperiment.EndpointMetadata": { + "additionalProperties": false, + "properties": { + "EndpointConfigName": { "type": "string" }, - "ModelDataUrl": { + "EndpointName": { "type": "string" }, - "ModelPackageName": { + "EndpointStatus": { "type": "string" - }, - "MultiModelConfig": { - "$ref": "#/definitions/AWS::SageMaker::Model.MultiModelConfig" } }, + "required": [ + "EndpointName" + ], "type": "object" }, - "AWS::SageMaker::Model.ImageConfig": { + "AWS::SageMaker::InferenceExperiment.InferenceExperimentSchedule": { "additionalProperties": false, "properties": { - "RepositoryAccessMode": { + "EndTime": { "type": "string" }, - "RepositoryAuthConfig": { - "$ref": "#/definitions/AWS::SageMaker::Model.RepositoryAuthConfig" + "StartTime": { + "type": "string" } }, - "required": [ - "RepositoryAccessMode" - ], "type": "object" }, - "AWS::SageMaker::Model.InferenceExecutionConfig": { + "AWS::SageMaker::InferenceExperiment.ModelInfrastructureConfig": { "additionalProperties": false, "properties": { - "Mode": { + "InfrastructureType": { "type": "string" + }, + "RealTimeInferenceConfig": { + "$ref": "#/definitions/AWS::SageMaker::InferenceExperiment.RealTimeInferenceConfig" } }, "required": [ - "Mode" + "InfrastructureType", + "RealTimeInferenceConfig" ], "type": "object" }, - "AWS::SageMaker::Model.MultiModelConfig": { + "AWS::SageMaker::InferenceExperiment.ModelVariantConfig": { "additionalProperties": false, "properties": { - "ModelCacheSetting": { + "InfrastructureConfig": { + "$ref": "#/definitions/AWS::SageMaker::InferenceExperiment.ModelInfrastructureConfig" + }, + "ModelName": { + "type": "string" + }, + "VariantName": { "type": "string" } }, + "required": [ + "InfrastructureConfig", + "ModelName", + "VariantName" + ], "type": "object" }, - "AWS::SageMaker::Model.RepositoryAuthConfig": { + "AWS::SageMaker::InferenceExperiment.RealTimeInferenceConfig": { "additionalProperties": false, "properties": { - "RepositoryCredentialsProviderArn": { + "InstanceCount": { + "type": "number" + }, + "InstanceType": { "type": "string" } }, "required": [ - "RepositoryCredentialsProviderArn" + "InstanceCount", + "InstanceType" ], "type": "object" }, - "AWS::SageMaker::Model.VpcConfig": { + "AWS::SageMaker::InferenceExperiment.ShadowModeConfig": { "additionalProperties": false, "properties": { - "SecurityGroupIds": { + "ShadowModelVariants": { "items": { - "type": "string" + "$ref": "#/definitions/AWS::SageMaker::InferenceExperiment.ShadowModelVariantConfig" }, "type": "array" }, - "Subnets": { - "items": { - "type": "string" - }, - "type": "array" + "SourceModelVariantName": { + "type": "string" } }, "required": [ - "SecurityGroupIds", - "Subnets" + "ShadowModelVariants", + "SourceModelVariantName" ], "type": "object" }, - "AWS::SageMaker::ModelBiasJobDefinition": { + "AWS::SageMaker::InferenceExperiment.ShadowModelVariantConfig": { + "additionalProperties": false, + "properties": { + "SamplingPercentage": { + "type": "number" + }, + "ShadowModelVariantName": { + "type": "string" + } + }, + "required": [ + "SamplingPercentage", + "ShadowModelVariantName" + ], + "type": "object" + }, + "AWS::SageMaker::Model": { "additionalProperties": false, "properties": { "Condition": { @@ -142207,55 +142601,45 @@ "Properties": { "additionalProperties": false, "properties": { - "EndpointName": { - "type": "string" - }, - "JobDefinitionName": { - "type": "string" - }, - "JobResources": { - "$ref": "#/definitions/AWS::SageMaker::ModelBiasJobDefinition.MonitoringResources" - }, - "ModelBiasAppSpecification": { - "$ref": "#/definitions/AWS::SageMaker::ModelBiasJobDefinition.ModelBiasAppSpecification" - }, - "ModelBiasBaselineConfig": { - "$ref": "#/definitions/AWS::SageMaker::ModelBiasJobDefinition.ModelBiasBaselineConfig" + "Containers": { + "items": { + "$ref": "#/definitions/AWS::SageMaker::Model.ContainerDefinition" + }, + "type": "array" }, - "ModelBiasJobInput": { - "$ref": "#/definitions/AWS::SageMaker::ModelBiasJobDefinition.ModelBiasJobInput" + "EnableNetworkIsolation": { + "type": "boolean" }, - "ModelBiasJobOutputConfig": { - "$ref": "#/definitions/AWS::SageMaker::ModelBiasJobDefinition.MonitoringOutputConfig" + "ExecutionRoleArn": { + "type": "string" }, - "NetworkConfig": { - "$ref": "#/definitions/AWS::SageMaker::ModelBiasJobDefinition.NetworkConfig" + "InferenceExecutionConfig": { + "$ref": "#/definitions/AWS::SageMaker::Model.InferenceExecutionConfig" }, - "RoleArn": { + "ModelName": { "type": "string" }, - "StoppingCondition": { - "$ref": "#/definitions/AWS::SageMaker::ModelBiasJobDefinition.StoppingCondition" + "PrimaryContainer": { + "$ref": "#/definitions/AWS::SageMaker::Model.ContainerDefinition" }, "Tags": { "items": { "$ref": "#/definitions/Tag" }, "type": "array" + }, + "VpcConfig": { + "$ref": "#/definitions/AWS::SageMaker::Model.VpcConfig" } }, "required": [ - "JobResources", - "ModelBiasAppSpecification", - "ModelBiasJobInput", - "ModelBiasJobOutputConfig", - "RoleArn" + "ExecutionRoleArn" ], "type": "object" }, "Type": { "enum": [ - "AWS::SageMaker::ModelBiasJobDefinition" + "AWS::SageMaker::Model" ], "type": "string" }, @@ -142274,311 +142658,88 @@ ], "type": "object" }, - "AWS::SageMaker::ModelBiasJobDefinition.BatchTransformInput": { - "additionalProperties": false, - "properties": { - "DataCapturedDestinationS3Uri": { - "type": "string" - }, - "DatasetFormat": { - "$ref": "#/definitions/AWS::SageMaker::ModelBiasJobDefinition.DatasetFormat" - }, - "EndTimeOffset": { - "type": "string" - }, - "FeaturesAttribute": { - "type": "string" - }, - "InferenceAttribute": { - "type": "string" - }, - "LocalPath": { - "type": "string" - }, - "ProbabilityAttribute": { - "type": "string" - }, - "ProbabilityThresholdAttribute": { - "type": "number" - }, - "S3DataDistributionType": { - "type": "string" - }, - "S3InputMode": { - "type": "string" - }, - "StartTimeOffset": { - "type": "string" - } - }, - "required": [ - "DataCapturedDestinationS3Uri", - "DatasetFormat", - "LocalPath" - ], - "type": "object" - }, - "AWS::SageMaker::ModelBiasJobDefinition.ClusterConfig": { - "additionalProperties": false, - "properties": { - "InstanceCount": { - "type": "number" - }, - "InstanceType": { - "type": "string" - }, - "VolumeKmsKeyId": { - "type": "string" - }, - "VolumeSizeInGB": { - "type": "number" - } - }, - "required": [ - "InstanceCount", - "InstanceType", - "VolumeSizeInGB" - ], - "type": "object" - }, - "AWS::SageMaker::ModelBiasJobDefinition.ConstraintsResource": { - "additionalProperties": false, - "properties": { - "S3Uri": { - "type": "string" - } - }, - "type": "object" - }, - "AWS::SageMaker::ModelBiasJobDefinition.Csv": { - "additionalProperties": false, - "properties": { - "Header": { - "type": "boolean" - } - }, - "type": "object" - }, - "AWS::SageMaker::ModelBiasJobDefinition.DatasetFormat": { - "additionalProperties": false, - "properties": { - "Csv": { - "$ref": "#/definitions/AWS::SageMaker::ModelBiasJobDefinition.Csv" - }, - "Json": { - "$ref": "#/definitions/AWS::SageMaker::ModelBiasJobDefinition.Json" - }, - "Parquet": { - "type": "boolean" - } - }, - "type": "object" - }, - "AWS::SageMaker::ModelBiasJobDefinition.EndpointInput": { + "AWS::SageMaker::Model.ContainerDefinition": { "additionalProperties": false, "properties": { - "EndTimeOffset": { - "type": "string" - }, - "EndpointName": { + "ContainerHostname": { "type": "string" }, - "FeaturesAttribute": { - "type": "string" + "Environment": { + "type": "object" }, - "InferenceAttribute": { + "Image": { "type": "string" }, - "LocalPath": { - "type": "string" + "ImageConfig": { + "$ref": "#/definitions/AWS::SageMaker::Model.ImageConfig" }, - "ProbabilityAttribute": { + "InferenceSpecificationName": { "type": "string" }, - "ProbabilityThresholdAttribute": { - "type": "number" - }, - "S3DataDistributionType": { + "Mode": { "type": "string" }, - "S3InputMode": { + "ModelDataUrl": { "type": "string" }, - "StartTimeOffset": { - "type": "string" - } - }, - "required": [ - "EndpointName", - "LocalPath" - ], - "type": "object" - }, - "AWS::SageMaker::ModelBiasJobDefinition.Json": { - "additionalProperties": false, - "properties": { - "Line": { - "type": "boolean" - } - }, - "type": "object" - }, - "AWS::SageMaker::ModelBiasJobDefinition.ModelBiasAppSpecification": { - "additionalProperties": false, - "properties": { - "ConfigUri": { + "ModelPackageName": { "type": "string" }, - "Environment": { - "additionalProperties": true, - "patternProperties": { - "^[a-zA-Z0-9]+$": { - "type": "string" - } - }, - "type": "object" - }, - "ImageUri": { - "type": "string" + "MultiModelConfig": { + "$ref": "#/definitions/AWS::SageMaker::Model.MultiModelConfig" } }, - "required": [ - "ConfigUri", - "ImageUri" - ], "type": "object" }, - "AWS::SageMaker::ModelBiasJobDefinition.ModelBiasBaselineConfig": { + "AWS::SageMaker::Model.ImageConfig": { "additionalProperties": false, "properties": { - "BaseliningJobName": { + "RepositoryAccessMode": { "type": "string" }, - "ConstraintsResource": { - "$ref": "#/definitions/AWS::SageMaker::ModelBiasJobDefinition.ConstraintsResource" - } - }, - "type": "object" - }, - "AWS::SageMaker::ModelBiasJobDefinition.ModelBiasJobInput": { - "additionalProperties": false, - "properties": { - "BatchTransformInput": { - "$ref": "#/definitions/AWS::SageMaker::ModelBiasJobDefinition.BatchTransformInput" - }, - "EndpointInput": { - "$ref": "#/definitions/AWS::SageMaker::ModelBiasJobDefinition.EndpointInput" - }, - "GroundTruthS3Input": { - "$ref": "#/definitions/AWS::SageMaker::ModelBiasJobDefinition.MonitoringGroundTruthS3Input" + "RepositoryAuthConfig": { + "$ref": "#/definitions/AWS::SageMaker::Model.RepositoryAuthConfig" } }, "required": [ - "GroundTruthS3Input" + "RepositoryAccessMode" ], "type": "object" }, - "AWS::SageMaker::ModelBiasJobDefinition.MonitoringGroundTruthS3Input": { + "AWS::SageMaker::Model.InferenceExecutionConfig": { "additionalProperties": false, "properties": { - "S3Uri": { + "Mode": { "type": "string" } }, "required": [ - "S3Uri" - ], - "type": "object" - }, - "AWS::SageMaker::ModelBiasJobDefinition.MonitoringOutput": { - "additionalProperties": false, - "properties": { - "S3Output": { - "$ref": "#/definitions/AWS::SageMaker::ModelBiasJobDefinition.S3Output" - } - }, - "required": [ - "S3Output" + "Mode" ], "type": "object" }, - "AWS::SageMaker::ModelBiasJobDefinition.MonitoringOutputConfig": { + "AWS::SageMaker::Model.MultiModelConfig": { "additionalProperties": false, "properties": { - "KmsKeyId": { + "ModelCacheSetting": { "type": "string" - }, - "MonitoringOutputs": { - "items": { - "$ref": "#/definitions/AWS::SageMaker::ModelBiasJobDefinition.MonitoringOutput" - }, - "type": "array" - } - }, - "required": [ - "MonitoringOutputs" - ], - "type": "object" - }, - "AWS::SageMaker::ModelBiasJobDefinition.MonitoringResources": { - "additionalProperties": false, - "properties": { - "ClusterConfig": { - "$ref": "#/definitions/AWS::SageMaker::ModelBiasJobDefinition.ClusterConfig" - } - }, - "required": [ - "ClusterConfig" - ], - "type": "object" - }, - "AWS::SageMaker::ModelBiasJobDefinition.NetworkConfig": { - "additionalProperties": false, - "properties": { - "EnableInterContainerTrafficEncryption": { - "type": "boolean" - }, - "EnableNetworkIsolation": { - "type": "boolean" - }, - "VpcConfig": { - "$ref": "#/definitions/AWS::SageMaker::ModelBiasJobDefinition.VpcConfig" } }, "type": "object" }, - "AWS::SageMaker::ModelBiasJobDefinition.S3Output": { + "AWS::SageMaker::Model.RepositoryAuthConfig": { "additionalProperties": false, "properties": { - "LocalPath": { - "type": "string" - }, - "S3UploadMode": { - "type": "string" - }, - "S3Uri": { + "RepositoryCredentialsProviderArn": { "type": "string" } }, "required": [ - "LocalPath", - "S3Uri" - ], - "type": "object" - }, - "AWS::SageMaker::ModelBiasJobDefinition.StoppingCondition": { - "additionalProperties": false, - "properties": { - "MaxRuntimeInSeconds": { - "type": "number" - } - }, - "required": [ - "MaxRuntimeInSeconds" + "RepositoryCredentialsProviderArn" ], "type": "object" }, - "AWS::SageMaker::ModelBiasJobDefinition.VpcConfig": { + "AWS::SageMaker::Model.VpcConfig": { "additionalProperties": false, "properties": { "SecurityGroupIds": { @@ -142600,7 +142761,435 @@ ], "type": "object" }, - "AWS::SageMaker::ModelCard": { + "AWS::SageMaker::ModelBiasJobDefinition": { + "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": { + "EndpointName": { + "type": "string" + }, + "JobDefinitionName": { + "type": "string" + }, + "JobResources": { + "$ref": "#/definitions/AWS::SageMaker::ModelBiasJobDefinition.MonitoringResources" + }, + "ModelBiasAppSpecification": { + "$ref": "#/definitions/AWS::SageMaker::ModelBiasJobDefinition.ModelBiasAppSpecification" + }, + "ModelBiasBaselineConfig": { + "$ref": "#/definitions/AWS::SageMaker::ModelBiasJobDefinition.ModelBiasBaselineConfig" + }, + "ModelBiasJobInput": { + "$ref": "#/definitions/AWS::SageMaker::ModelBiasJobDefinition.ModelBiasJobInput" + }, + "ModelBiasJobOutputConfig": { + "$ref": "#/definitions/AWS::SageMaker::ModelBiasJobDefinition.MonitoringOutputConfig" + }, + "NetworkConfig": { + "$ref": "#/definitions/AWS::SageMaker::ModelBiasJobDefinition.NetworkConfig" + }, + "RoleArn": { + "type": "string" + }, + "StoppingCondition": { + "$ref": "#/definitions/AWS::SageMaker::ModelBiasJobDefinition.StoppingCondition" + }, + "Tags": { + "items": { + "$ref": "#/definitions/Tag" + }, + "type": "array" + } + }, + "required": [ + "JobResources", + "ModelBiasAppSpecification", + "ModelBiasJobInput", + "ModelBiasJobOutputConfig", + "RoleArn" + ], + "type": "object" + }, + "Type": { + "enum": [ + "AWS::SageMaker::ModelBiasJobDefinition" + ], + "type": "string" + }, + "UpdateReplacePolicy": { + "enum": [ + "Delete", + "Retain", + "Snapshot" + ], + "type": "string" + } + }, + "required": [ + "Type", + "Properties" + ], + "type": "object" + }, + "AWS::SageMaker::ModelBiasJobDefinition.BatchTransformInput": { + "additionalProperties": false, + "properties": { + "DataCapturedDestinationS3Uri": { + "type": "string" + }, + "DatasetFormat": { + "$ref": "#/definitions/AWS::SageMaker::ModelBiasJobDefinition.DatasetFormat" + }, + "EndTimeOffset": { + "type": "string" + }, + "FeaturesAttribute": { + "type": "string" + }, + "InferenceAttribute": { + "type": "string" + }, + "LocalPath": { + "type": "string" + }, + "ProbabilityAttribute": { + "type": "string" + }, + "ProbabilityThresholdAttribute": { + "type": "number" + }, + "S3DataDistributionType": { + "type": "string" + }, + "S3InputMode": { + "type": "string" + }, + "StartTimeOffset": { + "type": "string" + } + }, + "required": [ + "DataCapturedDestinationS3Uri", + "DatasetFormat", + "LocalPath" + ], + "type": "object" + }, + "AWS::SageMaker::ModelBiasJobDefinition.ClusterConfig": { + "additionalProperties": false, + "properties": { + "InstanceCount": { + "type": "number" + }, + "InstanceType": { + "type": "string" + }, + "VolumeKmsKeyId": { + "type": "string" + }, + "VolumeSizeInGB": { + "type": "number" + } + }, + "required": [ + "InstanceCount", + "InstanceType", + "VolumeSizeInGB" + ], + "type": "object" + }, + "AWS::SageMaker::ModelBiasJobDefinition.ConstraintsResource": { + "additionalProperties": false, + "properties": { + "S3Uri": { + "type": "string" + } + }, + "type": "object" + }, + "AWS::SageMaker::ModelBiasJobDefinition.Csv": { + "additionalProperties": false, + "properties": { + "Header": { + "type": "boolean" + } + }, + "type": "object" + }, + "AWS::SageMaker::ModelBiasJobDefinition.DatasetFormat": { + "additionalProperties": false, + "properties": { + "Csv": { + "$ref": "#/definitions/AWS::SageMaker::ModelBiasJobDefinition.Csv" + }, + "Json": { + "$ref": "#/definitions/AWS::SageMaker::ModelBiasJobDefinition.Json" + }, + "Parquet": { + "type": "boolean" + } + }, + "type": "object" + }, + "AWS::SageMaker::ModelBiasJobDefinition.EndpointInput": { + "additionalProperties": false, + "properties": { + "EndTimeOffset": { + "type": "string" + }, + "EndpointName": { + "type": "string" + }, + "FeaturesAttribute": { + "type": "string" + }, + "InferenceAttribute": { + "type": "string" + }, + "LocalPath": { + "type": "string" + }, + "ProbabilityAttribute": { + "type": "string" + }, + "ProbabilityThresholdAttribute": { + "type": "number" + }, + "S3DataDistributionType": { + "type": "string" + }, + "S3InputMode": { + "type": "string" + }, + "StartTimeOffset": { + "type": "string" + } + }, + "required": [ + "EndpointName", + "LocalPath" + ], + "type": "object" + }, + "AWS::SageMaker::ModelBiasJobDefinition.Json": { + "additionalProperties": false, + "properties": { + "Line": { + "type": "boolean" + } + }, + "type": "object" + }, + "AWS::SageMaker::ModelBiasJobDefinition.ModelBiasAppSpecification": { + "additionalProperties": false, + "properties": { + "ConfigUri": { + "type": "string" + }, + "Environment": { + "additionalProperties": true, + "patternProperties": { + "^[a-zA-Z0-9]+$": { + "type": "string" + } + }, + "type": "object" + }, + "ImageUri": { + "type": "string" + } + }, + "required": [ + "ConfigUri", + "ImageUri" + ], + "type": "object" + }, + "AWS::SageMaker::ModelBiasJobDefinition.ModelBiasBaselineConfig": { + "additionalProperties": false, + "properties": { + "BaseliningJobName": { + "type": "string" + }, + "ConstraintsResource": { + "$ref": "#/definitions/AWS::SageMaker::ModelBiasJobDefinition.ConstraintsResource" + } + }, + "type": "object" + }, + "AWS::SageMaker::ModelBiasJobDefinition.ModelBiasJobInput": { + "additionalProperties": false, + "properties": { + "BatchTransformInput": { + "$ref": "#/definitions/AWS::SageMaker::ModelBiasJobDefinition.BatchTransformInput" + }, + "EndpointInput": { + "$ref": "#/definitions/AWS::SageMaker::ModelBiasJobDefinition.EndpointInput" + }, + "GroundTruthS3Input": { + "$ref": "#/definitions/AWS::SageMaker::ModelBiasJobDefinition.MonitoringGroundTruthS3Input" + } + }, + "required": [ + "GroundTruthS3Input" + ], + "type": "object" + }, + "AWS::SageMaker::ModelBiasJobDefinition.MonitoringGroundTruthS3Input": { + "additionalProperties": false, + "properties": { + "S3Uri": { + "type": "string" + } + }, + "required": [ + "S3Uri" + ], + "type": "object" + }, + "AWS::SageMaker::ModelBiasJobDefinition.MonitoringOutput": { + "additionalProperties": false, + "properties": { + "S3Output": { + "$ref": "#/definitions/AWS::SageMaker::ModelBiasJobDefinition.S3Output" + } + }, + "required": [ + "S3Output" + ], + "type": "object" + }, + "AWS::SageMaker::ModelBiasJobDefinition.MonitoringOutputConfig": { + "additionalProperties": false, + "properties": { + "KmsKeyId": { + "type": "string" + }, + "MonitoringOutputs": { + "items": { + "$ref": "#/definitions/AWS::SageMaker::ModelBiasJobDefinition.MonitoringOutput" + }, + "type": "array" + } + }, + "required": [ + "MonitoringOutputs" + ], + "type": "object" + }, + "AWS::SageMaker::ModelBiasJobDefinition.MonitoringResources": { + "additionalProperties": false, + "properties": { + "ClusterConfig": { + "$ref": "#/definitions/AWS::SageMaker::ModelBiasJobDefinition.ClusterConfig" + } + }, + "required": [ + "ClusterConfig" + ], + "type": "object" + }, + "AWS::SageMaker::ModelBiasJobDefinition.NetworkConfig": { + "additionalProperties": false, + "properties": { + "EnableInterContainerTrafficEncryption": { + "type": "boolean" + }, + "EnableNetworkIsolation": { + "type": "boolean" + }, + "VpcConfig": { + "$ref": "#/definitions/AWS::SageMaker::ModelBiasJobDefinition.VpcConfig" + } + }, + "type": "object" + }, + "AWS::SageMaker::ModelBiasJobDefinition.S3Output": { + "additionalProperties": false, + "properties": { + "LocalPath": { + "type": "string" + }, + "S3UploadMode": { + "type": "string" + }, + "S3Uri": { + "type": "string" + } + }, + "required": [ + "LocalPath", + "S3Uri" + ], + "type": "object" + }, + "AWS::SageMaker::ModelBiasJobDefinition.StoppingCondition": { + "additionalProperties": false, + "properties": { + "MaxRuntimeInSeconds": { + "type": "number" + } + }, + "required": [ + "MaxRuntimeInSeconds" + ], + "type": "object" + }, + "AWS::SageMaker::ModelBiasJobDefinition.VpcConfig": { + "additionalProperties": false, + "properties": { + "SecurityGroupIds": { + "items": { + "type": "string" + }, + "type": "array" + }, + "Subnets": { + "items": { + "type": "string" + }, + "type": "array" + } + }, + "required": [ + "SecurityGroupIds", + "Subnets" + ], + "type": "object" + }, + "AWS::SageMaker::ModelCard": { "additionalProperties": false, "properties": { "Condition": { @@ -151804,36 +152393,1262 @@ "Properties": { "additionalProperties": false, "properties": { - "Description": { + "Description": { + "type": "string" + }, + "OnExceptionSteps": { + "items": { + "$ref": "#/definitions/AWS::Transfer::Workflow.WorkflowStep" + }, + "type": "array" + }, + "Steps": { + "items": { + "$ref": "#/definitions/AWS::Transfer::Workflow.WorkflowStep" + }, + "type": "array" + }, + "Tags": { + "items": { + "$ref": "#/definitions/Tag" + }, + "type": "array" + } + }, + "required": [ + "Steps" + ], + "type": "object" + }, + "Type": { + "enum": [ + "AWS::Transfer::Workflow" + ], + "type": "string" + }, + "UpdateReplacePolicy": { + "enum": [ + "Delete", + "Retain", + "Snapshot" + ], + "type": "string" + } + }, + "required": [ + "Type", + "Properties" + ], + "type": "object" + }, + "AWS::Transfer::Workflow.CopyStepDetails": { + "additionalProperties": false, + "properties": { + "DestinationFileLocation": { + "$ref": "#/definitions/AWS::Transfer::Workflow.S3FileLocation" + }, + "Name": { + "type": "string" + }, + "OverwriteExisting": { + "type": "string" + }, + "SourceFileLocation": { + "type": "string" + } + }, + "type": "object" + }, + "AWS::Transfer::Workflow.CustomStepDetails": { + "additionalProperties": false, + "properties": { + "Name": { + "type": "string" + }, + "SourceFileLocation": { + "type": "string" + }, + "Target": { + "type": "string" + }, + "TimeoutSeconds": { + "type": "number" + } + }, + "type": "object" + }, + "AWS::Transfer::Workflow.DecryptStepDetails": { + "additionalProperties": false, + "properties": { + "DestinationFileLocation": { + "$ref": "#/definitions/AWS::Transfer::Workflow.InputFileLocation" + }, + "Name": { + "type": "string" + }, + "OverwriteExisting": { + "type": "string" + }, + "SourceFileLocation": { + "type": "string" + }, + "Type": { + "type": "string" + } + }, + "type": "object" + }, + "AWS::Transfer::Workflow.DeleteStepDetails": { + "additionalProperties": false, + "properties": { + "Name": { + "type": "string" + }, + "SourceFileLocation": { + "type": "string" + } + }, + "type": "object" + }, + "AWS::Transfer::Workflow.EfsInputFileLocation": { + "additionalProperties": false, + "properties": { + "FileSystemId": { + "type": "string" + }, + "Path": { + "type": "string" + } + }, + "type": "object" + }, + "AWS::Transfer::Workflow.InputFileLocation": { + "additionalProperties": false, + "properties": { + "EfsFileLocation": { + "$ref": "#/definitions/AWS::Transfer::Workflow.EfsInputFileLocation" + }, + "S3FileLocation": { + "$ref": "#/definitions/AWS::Transfer::Workflow.S3InputFileLocation" + } + }, + "type": "object" + }, + "AWS::Transfer::Workflow.S3FileLocation": { + "additionalProperties": false, + "properties": { + "S3FileLocation": { + "$ref": "#/definitions/AWS::Transfer::Workflow.S3InputFileLocation" + } + }, + "type": "object" + }, + "AWS::Transfer::Workflow.S3InputFileLocation": { + "additionalProperties": false, + "properties": { + "Bucket": { + "type": "string" + }, + "Key": { + "type": "string" + } + }, + "type": "object" + }, + "AWS::Transfer::Workflow.S3Tag": { + "additionalProperties": false, + "properties": { + "Key": { + "type": "string" + }, + "Value": { + "type": "string" + } + }, + "required": [ + "Key", + "Value" + ], + "type": "object" + }, + "AWS::Transfer::Workflow.TagStepDetails": { + "additionalProperties": false, + "properties": { + "Name": { + "type": "string" + }, + "SourceFileLocation": { + "type": "string" + }, + "Tags": { + "items": { + "$ref": "#/definitions/AWS::Transfer::Workflow.S3Tag" + }, + "type": "array" + } + }, + "type": "object" + }, + "AWS::Transfer::Workflow.WorkflowStep": { + "additionalProperties": false, + "properties": { + "CopyStepDetails": { + "$ref": "#/definitions/AWS::Transfer::Workflow.CopyStepDetails" + }, + "CustomStepDetails": { + "$ref": "#/definitions/AWS::Transfer::Workflow.CustomStepDetails" + }, + "DecryptStepDetails": { + "$ref": "#/definitions/AWS::Transfer::Workflow.DecryptStepDetails" + }, + "DeleteStepDetails": { + "$ref": "#/definitions/AWS::Transfer::Workflow.DeleteStepDetails" + }, + "TagStepDetails": { + "$ref": "#/definitions/AWS::Transfer::Workflow.TagStepDetails" + }, + "Type": { + "type": "string" + } + }, + "type": "object" + }, + "AWS::VoiceID::Domain": { + "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": { + "Description": { + "type": "string" + }, + "Name": { + "type": "string" + }, + "ServerSideEncryptionConfiguration": { + "$ref": "#/definitions/AWS::VoiceID::Domain.ServerSideEncryptionConfiguration" + }, + "Tags": { + "items": { + "$ref": "#/definitions/Tag" + }, + "type": "array" + } + }, + "required": [ + "Name", + "ServerSideEncryptionConfiguration" + ], + "type": "object" + }, + "Type": { + "enum": [ + "AWS::VoiceID::Domain" + ], + "type": "string" + }, + "UpdateReplacePolicy": { + "enum": [ + "Delete", + "Retain", + "Snapshot" + ], + "type": "string" + } + }, + "required": [ + "Type", + "Properties" + ], + "type": "object" + }, + "AWS::VoiceID::Domain.ServerSideEncryptionConfiguration": { + "additionalProperties": false, + "properties": { + "KmsKeyId": { + "type": "string" + } + }, + "required": [ + "KmsKeyId" + ], + "type": "object" + }, + "AWS::VpcLattice::AccessLogSubscription": { + "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": { + "DestinationArn": { + "type": "string" + }, + "ResourceIdentifier": { + "type": "string" + }, + "Tags": { + "items": { + "$ref": "#/definitions/Tag" + }, + "type": "array" + } + }, + "required": [ + "DestinationArn" + ], + "type": "object" + }, + "Type": { + "enum": [ + "AWS::VpcLattice::AccessLogSubscription" + ], + "type": "string" + }, + "UpdateReplacePolicy": { + "enum": [ + "Delete", + "Retain", + "Snapshot" + ], + "type": "string" + } + }, + "required": [ + "Type", + "Properties" + ], + "type": "object" + }, + "AWS::VpcLattice::AuthPolicy": { + "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": { + "Policy": { + "type": "object" + }, + "ResourceIdentifier": { + "type": "string" + } + }, + "required": [ + "Policy", + "ResourceIdentifier" + ], + "type": "object" + }, + "Type": { + "enum": [ + "AWS::VpcLattice::AuthPolicy" + ], + "type": "string" + }, + "UpdateReplacePolicy": { + "enum": [ + "Delete", + "Retain", + "Snapshot" + ], + "type": "string" + } + }, + "required": [ + "Type", + "Properties" + ], + "type": "object" + }, + "AWS::VpcLattice::Listener": { + "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": { + "DefaultAction": { + "$ref": "#/definitions/AWS::VpcLattice::Listener.DefaultAction" + }, + "Name": { + "type": "string" + }, + "Port": { + "type": "number" + }, + "Protocol": { + "type": "string" + }, + "ServiceIdentifier": { + "type": "string" + }, + "Tags": { + "items": { + "$ref": "#/definitions/Tag" + }, + "type": "array" + } + }, + "required": [ + "DefaultAction", + "Protocol" + ], + "type": "object" + }, + "Type": { + "enum": [ + "AWS::VpcLattice::Listener" + ], + "type": "string" + }, + "UpdateReplacePolicy": { + "enum": [ + "Delete", + "Retain", + "Snapshot" + ], + "type": "string" + } + }, + "required": [ + "Type", + "Properties" + ], + "type": "object" + }, + "AWS::VpcLattice::Listener.DefaultAction": { + "additionalProperties": false, + "properties": { + "Forward": { + "$ref": "#/definitions/AWS::VpcLattice::Listener.Forward" + } + }, + "required": [ + "Forward" + ], + "type": "object" + }, + "AWS::VpcLattice::Listener.Forward": { + "additionalProperties": false, + "properties": { + "TargetGroups": { + "items": { + "$ref": "#/definitions/AWS::VpcLattice::Listener.WeightedTargetGroup" + }, + "type": "array" + } + }, + "required": [ + "TargetGroups" + ], + "type": "object" + }, + "AWS::VpcLattice::Listener.WeightedTargetGroup": { + "additionalProperties": false, + "properties": { + "TargetGroupIdentifier": { + "type": "string" + }, + "Weight": { + "type": "number" + } + }, + "required": [ + "TargetGroupIdentifier" + ], + "type": "object" + }, + "AWS::VpcLattice::ResourcePolicy": { + "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": { + "Policy": { + "type": "object" + }, + "ResourceArn": { + "type": "string" + } + }, + "required": [ + "Policy", + "ResourceArn" + ], + "type": "object" + }, + "Type": { + "enum": [ + "AWS::VpcLattice::ResourcePolicy" + ], + "type": "string" + }, + "UpdateReplacePolicy": { + "enum": [ + "Delete", + "Retain", + "Snapshot" + ], + "type": "string" + } + }, + "required": [ + "Type", + "Properties" + ], + "type": "object" + }, + "AWS::VpcLattice::Rule": { + "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": { + "Action": { + "$ref": "#/definitions/AWS::VpcLattice::Rule.Action" + }, + "ListenerIdentifier": { + "type": "string" + }, + "Match": { + "$ref": "#/definitions/AWS::VpcLattice::Rule.Match" + }, + "Name": { + "type": "string" + }, + "Priority": { + "type": "number" + }, + "ServiceIdentifier": { + "type": "string" + }, + "Tags": { + "items": { + "$ref": "#/definitions/Tag" + }, + "type": "array" + } + }, + "required": [ + "Action", + "Match", + "Priority" + ], + "type": "object" + }, + "Type": { + "enum": [ + "AWS::VpcLattice::Rule" + ], + "type": "string" + }, + "UpdateReplacePolicy": { + "enum": [ + "Delete", + "Retain", + "Snapshot" + ], + "type": "string" + } + }, + "required": [ + "Type", + "Properties" + ], + "type": "object" + }, + "AWS::VpcLattice::Rule.Action": { + "additionalProperties": false, + "properties": { + "Forward": { + "$ref": "#/definitions/AWS::VpcLattice::Rule.Forward" + } + }, + "required": [ + "Forward" + ], + "type": "object" + }, + "AWS::VpcLattice::Rule.Forward": { + "additionalProperties": false, + "properties": { + "TargetGroups": { + "items": { + "$ref": "#/definitions/AWS::VpcLattice::Rule.WeightedTargetGroup" + }, + "type": "array" + } + }, + "required": [ + "TargetGroups" + ], + "type": "object" + }, + "AWS::VpcLattice::Rule.HeaderMatch": { + "additionalProperties": false, + "properties": { + "CaseSensitive": { + "type": "boolean" + }, + "Match": { + "$ref": "#/definitions/AWS::VpcLattice::Rule.HeaderMatchType" + }, + "Name": { + "type": "string" + } + }, + "required": [ + "Match", + "Name" + ], + "type": "object" + }, + "AWS::VpcLattice::Rule.HeaderMatchType": { + "additionalProperties": false, + "properties": { + "Contains": { + "type": "string" + }, + "Exact": { + "type": "string" + }, + "Prefix": { + "type": "string" + } + }, + "type": "object" + }, + "AWS::VpcLattice::Rule.HttpMatch": { + "additionalProperties": false, + "properties": { + "HeaderMatches": { + "items": { + "$ref": "#/definitions/AWS::VpcLattice::Rule.HeaderMatch" + }, + "type": "array" + }, + "Method": { + "type": "string" + }, + "PathMatch": { + "$ref": "#/definitions/AWS::VpcLattice::Rule.PathMatch" + } + }, + "type": "object" + }, + "AWS::VpcLattice::Rule.Match": { + "additionalProperties": false, + "properties": { + "HttpMatch": { + "$ref": "#/definitions/AWS::VpcLattice::Rule.HttpMatch" + } + }, + "required": [ + "HttpMatch" + ], + "type": "object" + }, + "AWS::VpcLattice::Rule.PathMatch": { + "additionalProperties": false, + "properties": { + "CaseSensitive": { + "type": "boolean" + }, + "Match": { + "$ref": "#/definitions/AWS::VpcLattice::Rule.PathMatchType" + } + }, + "required": [ + "Match" + ], + "type": "object" + }, + "AWS::VpcLattice::Rule.PathMatchType": { + "additionalProperties": false, + "properties": { + "Exact": { + "type": "string" + }, + "Prefix": { + "type": "string" + } + }, + "type": "object" + }, + "AWS::VpcLattice::Rule.WeightedTargetGroup": { + "additionalProperties": false, + "properties": { + "TargetGroupIdentifier": { + "type": "string" + }, + "Weight": { + "type": "number" + } + }, + "required": [ + "TargetGroupIdentifier" + ], + "type": "object" + }, + "AWS::VpcLattice::Service": { + "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": { + "AuthType": { + "type": "string" + }, + "CertificateArn": { + "type": "string" + }, + "CustomDomainName": { + "type": "string" + }, + "DnsEntry": { + "$ref": "#/definitions/AWS::VpcLattice::Service.DnsEntry" + }, + "Name": { + "type": "string" + }, + "Tags": { + "items": { + "$ref": "#/definitions/Tag" + }, + "type": "array" + } + }, + "type": "object" + }, + "Type": { + "enum": [ + "AWS::VpcLattice::Service" + ], + "type": "string" + }, + "UpdateReplacePolicy": { + "enum": [ + "Delete", + "Retain", + "Snapshot" + ], + "type": "string" + } + }, + "required": [ + "Type" + ], + "type": "object" + }, + "AWS::VpcLattice::Service.DnsEntry": { + "additionalProperties": false, + "properties": { + "DomainName": { + "type": "string" + }, + "HostedZoneId": { + "type": "string" + } + }, + "type": "object" + }, + "AWS::VpcLattice::ServiceNetwork": { + "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": { + "AuthType": { + "type": "string" + }, + "Name": { + "type": "string" + }, + "Tags": { + "items": { + "$ref": "#/definitions/Tag" + }, + "type": "array" + } + }, + "type": "object" + }, + "Type": { + "enum": [ + "AWS::VpcLattice::ServiceNetwork" + ], + "type": "string" + }, + "UpdateReplacePolicy": { + "enum": [ + "Delete", + "Retain", + "Snapshot" + ], + "type": "string" + } + }, + "required": [ + "Type" + ], + "type": "object" + }, + "AWS::VpcLattice::ServiceNetworkServiceAssociation": { + "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": { + "DnsEntry": { + "$ref": "#/definitions/AWS::VpcLattice::ServiceNetworkServiceAssociation.DnsEntry" + }, + "ServiceIdentifier": { + "type": "string" + }, + "ServiceNetworkIdentifier": { + "type": "string" + }, + "Tags": { + "items": { + "$ref": "#/definitions/Tag" + }, + "type": "array" + } + }, + "type": "object" + }, + "Type": { + "enum": [ + "AWS::VpcLattice::ServiceNetworkServiceAssociation" + ], + "type": "string" + }, + "UpdateReplacePolicy": { + "enum": [ + "Delete", + "Retain", + "Snapshot" + ], + "type": "string" + } + }, + "required": [ + "Type" + ], + "type": "object" + }, + "AWS::VpcLattice::ServiceNetworkServiceAssociation.DnsEntry": { + "additionalProperties": false, + "properties": { + "DomainName": { + "type": "string" + }, + "HostedZoneId": { + "type": "string" + } + }, + "type": "object" + }, + "AWS::VpcLattice::ServiceNetworkVpcAssociation": { + "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": { + "SecurityGroupIds": { + "items": { + "type": "string" + }, + "type": "array" + }, + "ServiceNetworkIdentifier": { + "type": "string" + }, + "Tags": { + "items": { + "$ref": "#/definitions/Tag" + }, + "type": "array" + }, + "VpcIdentifier": { + "type": "string" + } + }, + "type": "object" + }, + "Type": { + "enum": [ + "AWS::VpcLattice::ServiceNetworkVpcAssociation" + ], + "type": "string" + }, + "UpdateReplacePolicy": { + "enum": [ + "Delete", + "Retain", + "Snapshot" + ], + "type": "string" + } + }, + "required": [ + "Type" + ], + "type": "object" + }, + "AWS::VpcLattice::TargetGroup": { + "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": { + "Config": { + "$ref": "#/definitions/AWS::VpcLattice::TargetGroup.TargetGroupConfig" + }, + "Name": { "type": "string" }, - "OnExceptionSteps": { + "Tags": { "items": { - "$ref": "#/definitions/AWS::Transfer::Workflow.WorkflowStep" + "$ref": "#/definitions/Tag" }, "type": "array" }, - "Steps": { + "Targets": { "items": { - "$ref": "#/definitions/AWS::Transfer::Workflow.WorkflowStep" + "$ref": "#/definitions/AWS::VpcLattice::TargetGroup.Target" }, "type": "array" }, - "Tags": { - "items": { - "$ref": "#/definitions/Tag" - }, - "type": "array" + "Type": { + "type": "string" } }, "required": [ - "Steps" + "Type" ], "type": "object" }, "Type": { "enum": [ - "AWS::Transfer::Workflow" + "AWS::VpcLattice::TargetGroup" ], "type": "string" }, @@ -151852,265 +153667,89 @@ ], "type": "object" }, - "AWS::Transfer::Workflow.CopyStepDetails": { + "AWS::VpcLattice::TargetGroup.HealthCheckConfig": { "additionalProperties": false, "properties": { - "DestinationFileLocation": { - "$ref": "#/definitions/AWS::Transfer::Workflow.S3FileLocation" - }, - "Name": { - "type": "string" - }, - "OverwriteExisting": { - "type": "string" - }, - "SourceFileLocation": { - "type": "string" - } - }, - "type": "object" - }, - "AWS::Transfer::Workflow.CustomStepDetails": { - "additionalProperties": false, - "properties": { - "Name": { - "type": "string" - }, - "SourceFileLocation": { - "type": "string" - }, - "Target": { - "type": "string" + "Enabled": { + "type": "boolean" }, - "TimeoutSeconds": { + "HealthCheckIntervalSeconds": { "type": "number" - } - }, - "type": "object" - }, - "AWS::Transfer::Workflow.DecryptStepDetails": { - "additionalProperties": false, - "properties": { - "DestinationFileLocation": { - "$ref": "#/definitions/AWS::Transfer::Workflow.InputFileLocation" - }, - "Name": { - "type": "string" }, - "OverwriteExisting": { - "type": "string" - }, - "SourceFileLocation": { - "type": "string" + "HealthCheckTimeoutSeconds": { + "type": "number" }, - "Type": { - "type": "string" - } - }, - "type": "object" - }, - "AWS::Transfer::Workflow.DeleteStepDetails": { - "additionalProperties": false, - "properties": { - "Name": { - "type": "string" + "HealthyThresholdCount": { + "type": "number" }, - "SourceFileLocation": { - "type": "string" - } - }, - "type": "object" - }, - "AWS::Transfer::Workflow.EfsInputFileLocation": { - "additionalProperties": false, - "properties": { - "FileSystemId": { - "type": "string" + "Matcher": { + "$ref": "#/definitions/AWS::VpcLattice::TargetGroup.Matcher" }, "Path": { "type": "string" - } - }, - "type": "object" - }, - "AWS::Transfer::Workflow.InputFileLocation": { - "additionalProperties": false, - "properties": { - "EfsFileLocation": { - "$ref": "#/definitions/AWS::Transfer::Workflow.EfsInputFileLocation" }, - "S3FileLocation": { - "$ref": "#/definitions/AWS::Transfer::Workflow.S3InputFileLocation" - } - }, - "type": "object" - }, - "AWS::Transfer::Workflow.S3FileLocation": { - "additionalProperties": false, - "properties": { - "S3FileLocation": { - "$ref": "#/definitions/AWS::Transfer::Workflow.S3InputFileLocation" - } - }, - "type": "object" - }, - "AWS::Transfer::Workflow.S3InputFileLocation": { - "additionalProperties": false, - "properties": { - "Bucket": { - "type": "string" + "Port": { + "type": "number" }, - "Key": { + "Protocol": { "type": "string" + }, + "UnhealthyThresholdCount": { + "type": "number" } }, "type": "object" }, - "AWS::Transfer::Workflow.S3Tag": { + "AWS::VpcLattice::TargetGroup.Matcher": { "additionalProperties": false, "properties": { - "Key": { - "type": "string" - }, - "Value": { + "HttpCode": { "type": "string" } }, "required": [ - "Key", - "Value" + "HttpCode" ], "type": "object" }, - "AWS::Transfer::Workflow.TagStepDetails": { + "AWS::VpcLattice::TargetGroup.Target": { "additionalProperties": false, "properties": { - "Name": { - "type": "string" - }, - "SourceFileLocation": { + "Id": { "type": "string" }, - "Tags": { - "items": { - "$ref": "#/definitions/AWS::Transfer::Workflow.S3Tag" - }, - "type": "array" + "Port": { + "type": "number" } }, + "required": [ + "Id" + ], "type": "object" }, - "AWS::Transfer::Workflow.WorkflowStep": { + "AWS::VpcLattice::TargetGroup.TargetGroupConfig": { "additionalProperties": false, "properties": { - "CopyStepDetails": { - "$ref": "#/definitions/AWS::Transfer::Workflow.CopyStepDetails" - }, - "CustomStepDetails": { - "$ref": "#/definitions/AWS::Transfer::Workflow.CustomStepDetails" - }, - "DecryptStepDetails": { - "$ref": "#/definitions/AWS::Transfer::Workflow.DecryptStepDetails" - }, - "DeleteStepDetails": { - "$ref": "#/definitions/AWS::Transfer::Workflow.DeleteStepDetails" - }, - "TagStepDetails": { - "$ref": "#/definitions/AWS::Transfer::Workflow.TagStepDetails" + "HealthCheck": { + "$ref": "#/definitions/AWS::VpcLattice::TargetGroup.HealthCheckConfig" }, - "Type": { - "type": "string" - } - }, - "type": "object" - }, - "AWS::VoiceID::Domain": { - "additionalProperties": false, - "properties": { - "Condition": { - "type": "string" + "Port": { + "type": "number" }, - "DeletionPolicy": { - "enum": [ - "Delete", - "Retain", - "Snapshot" - ], + "Protocol": { "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": { - "Description": { - "type": "string" - }, - "Name": { - "type": "string" - }, - "ServerSideEncryptionConfiguration": { - "$ref": "#/definitions/AWS::VoiceID::Domain.ServerSideEncryptionConfiguration" - }, - "Tags": { - "items": { - "$ref": "#/definitions/Tag" - }, - "type": "array" - } - }, - "required": [ - "Name", - "ServerSideEncryptionConfiguration" - ], - "type": "object" - }, - "Type": { - "enum": [ - "AWS::VoiceID::Domain" - ], + "ProtocolVersion": { "type": "string" }, - "UpdateReplacePolicy": { - "enum": [ - "Delete", - "Retain", - "Snapshot" - ], - "type": "string" - } - }, - "required": [ - "Type", - "Properties" - ], - "type": "object" - }, - "AWS::VoiceID::Domain.ServerSideEncryptionConfiguration": { - "additionalProperties": false, - "properties": { - "KmsKeyId": { + "VpcIdentifier": { "type": "string" } }, "required": [ - "KmsKeyId" + "Port", + "Protocol", + "VpcIdentifier" ], "type": "object" }, @@ -158061,6 +159700,9 @@ { "$ref": "#/definitions/AWS::CertificateManager::Certificate" }, + { + "$ref": "#/definitions/AWS::Chatbot::MicrosoftTeamsChannelConfiguration" + }, { "$ref": "#/definitions/AWS::Chatbot::SlackChannelConfiguration" }, @@ -158271,6 +159913,9 @@ { "$ref": "#/definitions/AWS::Cognito::UserPoolUserToGroupAttachment" }, + { + "$ref": "#/definitions/AWS::Comprehend::Flywheel" + }, { "$ref": "#/definitions/AWS::Config::AggregationAuthorization" }, @@ -160443,6 +162088,9 @@ { "$ref": "#/definitions/AWS::SageMaker::ImageVersion" }, + { + "$ref": "#/definitions/AWS::SageMaker::InferenceExperiment" + }, { "$ref": "#/definitions/AWS::SageMaker::Model" }, @@ -160650,6 +162298,36 @@ { "$ref": "#/definitions/AWS::VoiceID::Domain" }, + { + "$ref": "#/definitions/AWS::VpcLattice::AccessLogSubscription" + }, + { + "$ref": "#/definitions/AWS::VpcLattice::AuthPolicy" + }, + { + "$ref": "#/definitions/AWS::VpcLattice::Listener" + }, + { + "$ref": "#/definitions/AWS::VpcLattice::ResourcePolicy" + }, + { + "$ref": "#/definitions/AWS::VpcLattice::Rule" + }, + { + "$ref": "#/definitions/AWS::VpcLattice::Service" + }, + { + "$ref": "#/definitions/AWS::VpcLattice::ServiceNetwork" + }, + { + "$ref": "#/definitions/AWS::VpcLattice::ServiceNetworkServiceAssociation" + }, + { + "$ref": "#/definitions/AWS::VpcLattice::ServiceNetworkVpcAssociation" + }, + { + "$ref": "#/definitions/AWS::VpcLattice::TargetGroup" + }, { "$ref": "#/definitions/AWS::WAF::ByteMatchSet" }, diff --git a/schema/sam.go b/schema/sam.go index 45e21919b9..eda3134de8 100644 --- a/schema/sam.go +++ b/schema/sam.go @@ -16427,6 +16427,30 @@ var SamSchema = `{ ], "type": "object" }, + "AWS::Athena::WorkGroup.AclConfiguration": { + "additionalProperties": false, + "properties": { + "S3AclOption": { + "type": "string" + } + }, + "required": [ + "S3AclOption" + ], + "type": "object" + }, + "AWS::Athena::WorkGroup.CustomerContentEncryptionConfiguration": { + "additionalProperties": false, + "properties": { + "KmsKey": { + "type": "string" + } + }, + "required": [ + "KmsKey" + ], + "type": "object" + }, "AWS::Athena::WorkGroup.EncryptionConfiguration": { "additionalProperties": false, "properties": { @@ -16457,9 +16481,15 @@ var SamSchema = `{ "AWS::Athena::WorkGroup.ResultConfiguration": { "additionalProperties": false, "properties": { + "AclConfiguration": { + "$ref": "#/definitions/AWS::Athena::WorkGroup.AclConfiguration" + }, "EncryptionConfiguration": { "$ref": "#/definitions/AWS::Athena::WorkGroup.EncryptionConfiguration" }, + "ExpectedBucketOwner": { + "type": "string" + }, "OutputLocation": { "type": "string" } @@ -16469,15 +16499,24 @@ var SamSchema = `{ "AWS::Athena::WorkGroup.WorkGroupConfiguration": { "additionalProperties": false, "properties": { + "AdditionalConfiguration": { + "type": "string" + }, "BytesScannedCutoffPerQuery": { "type": "number" }, + "CustomerContentEncryptionConfiguration": { + "$ref": "#/definitions/AWS::Athena::WorkGroup.CustomerContentEncryptionConfiguration" + }, "EnforceWorkGroupConfiguration": { "type": "boolean" }, "EngineVersion": { "$ref": "#/definitions/AWS::Athena::WorkGroup.EngineVersion" }, + "ExecutionRole": { + "type": "string" + }, "PublishCloudWatchMetricsEnabled": { "type": "boolean" }, @@ -21788,6 +21827,9 @@ var SamSchema = `{ "BillingMode": { "$ref": "#/definitions/AWS::Cassandra::Table.BillingMode" }, + "ClientSideTimestampsEnabled": { + "type": "boolean" + }, "ClusteringKeyColumns": { "items": { "$ref": "#/definitions/AWS::Cassandra::Table.ClusteringKeyColumn" @@ -22116,7 +22158,7 @@ var SamSchema = `{ ], "type": "object" }, - "AWS::Chatbot::SlackChannelConfiguration": { + "AWS::Chatbot::MicrosoftTeamsChannelConfiguration": { "additionalProperties": false, "properties": { "Condition": { @@ -22166,18 +22208,21 @@ var SamSchema = `{ "LoggingLevel": { "type": "string" }, - "SlackChannelId": { - "type": "string" - }, - "SlackWorkspaceId": { - "type": "string" - }, "SnsTopicArns": { "items": { "type": "string" }, "type": "array" }, + "TeamId": { + "type": "string" + }, + "TeamsChannelId": { + "type": "string" + }, + "TeamsTenantId": { + "type": "string" + }, "UserRoleRequired": { "type": "boolean" } @@ -22185,14 +22230,15 @@ var SamSchema = `{ "required": [ "ConfigurationName", "IamRoleArn", - "SlackChannelId", - "SlackWorkspaceId" + "TeamId", + "TeamsChannelId", + "TeamsTenantId" ], "type": "object" }, "Type": { "enum": [ - "AWS::Chatbot::SlackChannelConfiguration" + "AWS::Chatbot::MicrosoftTeamsChannelConfiguration" ], "type": "string" }, @@ -22211,7 +22257,7 @@ var SamSchema = `{ ], "type": "object" }, - "AWS::Cloud9::EnvironmentEC2": { + "AWS::Chatbot::SlackChannelConfiguration": { "additionalProperties": false, "properties": { "Condition": { @@ -22246,51 +22292,48 @@ var SamSchema = `{ "Properties": { "additionalProperties": false, "properties": { - "AutomaticStopTimeMinutes": { - "type": "number" - }, - "ConnectionType": { + "ConfigurationName": { "type": "string" }, - "Description": { - "type": "string" + "GuardrailPolicies": { + "items": { + "type": "string" + }, + "type": "array" }, - "ImageId": { + "IamRoleArn": { "type": "string" }, - "InstanceType": { + "LoggingLevel": { "type": "string" }, - "Name": { + "SlackChannelId": { "type": "string" }, - "OwnerArn": { + "SlackWorkspaceId": { "type": "string" }, - "Repositories": { + "SnsTopicArns": { "items": { - "$ref": "#/definitions/AWS::Cloud9::EnvironmentEC2.Repository" + "type": "string" }, "type": "array" }, - "SubnetId": { - "type": "string" - }, - "Tags": { - "items": { - "$ref": "#/definitions/Tag" - }, - "type": "array" + "UserRoleRequired": { + "type": "boolean" } }, "required": [ - "InstanceType" + "ConfigurationName", + "IamRoleArn", + "SlackChannelId", + "SlackWorkspaceId" ], "type": "object" }, "Type": { "enum": [ - "AWS::Cloud9::EnvironmentEC2" + "AWS::Chatbot::SlackChannelConfiguration" ], "type": "string" }, @@ -22309,23 +22352,7 @@ var SamSchema = `{ ], "type": "object" }, - "AWS::Cloud9::EnvironmentEC2.Repository": { - "additionalProperties": false, - "properties": { - "PathComponent": { - "type": "string" - }, - "RepositoryUrl": { - "type": "string" - } - }, - "required": [ - "PathComponent", - "RepositoryUrl" - ], - "type": "object" - }, - "AWS::CloudFormation::CustomResource": { + "AWS::Cloud9::EnvironmentEC2": { "additionalProperties": false, "properties": { "Condition": { @@ -22360,18 +22387,51 @@ var SamSchema = `{ "Properties": { "additionalProperties": false, "properties": { - "ServiceToken": { + "AutomaticStopTimeMinutes": { + "type": "number" + }, + "ConnectionType": { "type": "string" + }, + "Description": { + "type": "string" + }, + "ImageId": { + "type": "string" + }, + "InstanceType": { + "type": "string" + }, + "Name": { + "type": "string" + }, + "OwnerArn": { + "type": "string" + }, + "Repositories": { + "items": { + "$ref": "#/definitions/AWS::Cloud9::EnvironmentEC2.Repository" + }, + "type": "array" + }, + "SubnetId": { + "type": "string" + }, + "Tags": { + "items": { + "$ref": "#/definitions/Tag" + }, + "type": "array" } }, "required": [ - "ServiceToken" + "InstanceType" ], "type": "object" }, "Type": { "enum": [ - "AWS::CloudFormation::CustomResource" + "AWS::Cloud9::EnvironmentEC2" ], "type": "string" }, @@ -22390,74 +22450,23 @@ var SamSchema = `{ ], "type": "object" }, - "AWS::CloudFormation::HookDefaultVersion": { + "AWS::Cloud9::EnvironmentEC2.Repository": { "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": { - "TypeName": { - "type": "string" - }, - "TypeVersionArn": { - "type": "string" - }, - "VersionId": { - "type": "string" - } - }, - "type": "object" - }, - "Type": { - "enum": [ - "AWS::CloudFormation::HookDefaultVersion" - ], + "PathComponent": { "type": "string" }, - "UpdateReplacePolicy": { - "enum": [ - "Delete", - "Retain", - "Snapshot" - ], + "RepositoryUrl": { "type": "string" } }, "required": [ - "Type" + "PathComponent", + "RepositoryUrl" ], "type": "object" }, - "AWS::CloudFormation::HookTypeConfig": { + "AWS::CloudFormation::CustomResource": { "additionalProperties": false, "properties": { "Condition": { @@ -22492,27 +22501,18 @@ var SamSchema = `{ "Properties": { "additionalProperties": false, "properties": { - "Configuration": { - "type": "string" - }, - "ConfigurationAlias": { - "type": "string" - }, - "TypeArn": { - "type": "string" - }, - "TypeName": { + "ServiceToken": { "type": "string" } }, "required": [ - "Configuration" + "ServiceToken" ], "type": "object" }, "Type": { "enum": [ - "AWS::CloudFormation::HookTypeConfig" + "AWS::CloudFormation::CustomResource" ], "type": "string" }, @@ -22531,7 +22531,7 @@ var SamSchema = `{ ], "type": "object" }, - "AWS::CloudFormation::HookVersion": { + "AWS::CloudFormation::HookDefaultVersion": { "additionalProperties": false, "properties": { "Condition": { @@ -22566,28 +22566,21 @@ var SamSchema = `{ "Properties": { "additionalProperties": false, "properties": { - "ExecutionRoleArn": { + "TypeName": { "type": "string" }, - "LoggingConfig": { - "$ref": "#/definitions/AWS::CloudFormation::HookVersion.LoggingConfig" - }, - "SchemaHandlerPackage": { + "TypeVersionArn": { "type": "string" }, - "TypeName": { + "VersionId": { "type": "string" } }, - "required": [ - "SchemaHandlerPackage", - "TypeName" - ], "type": "object" }, "Type": { "enum": [ - "AWS::CloudFormation::HookVersion" + "AWS::CloudFormation::HookDefaultVersion" ], "type": "string" }, @@ -22601,24 +22594,172 @@ var SamSchema = `{ } }, "required": [ - "Type", - "Properties" + "Type" ], "type": "object" }, - "AWS::CloudFormation::HookVersion.LoggingConfig": { - "additionalProperties": false, - "properties": { - "LogGroupName": { - "type": "string" - }, - "LogRoleArn": { - "type": "string" - } - }, - "type": "object" - }, - "AWS::CloudFormation::Macro": { + "AWS::CloudFormation::HookTypeConfig": { + "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": { + "Configuration": { + "type": "string" + }, + "ConfigurationAlias": { + "type": "string" + }, + "TypeArn": { + "type": "string" + }, + "TypeName": { + "type": "string" + } + }, + "required": [ + "Configuration" + ], + "type": "object" + }, + "Type": { + "enum": [ + "AWS::CloudFormation::HookTypeConfig" + ], + "type": "string" + }, + "UpdateReplacePolicy": { + "enum": [ + "Delete", + "Retain", + "Snapshot" + ], + "type": "string" + } + }, + "required": [ + "Type", + "Properties" + ], + "type": "object" + }, + "AWS::CloudFormation::HookVersion": { + "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": { + "ExecutionRoleArn": { + "type": "string" + }, + "LoggingConfig": { + "$ref": "#/definitions/AWS::CloudFormation::HookVersion.LoggingConfig" + }, + "SchemaHandlerPackage": { + "type": "string" + }, + "TypeName": { + "type": "string" + } + }, + "required": [ + "SchemaHandlerPackage", + "TypeName" + ], + "type": "object" + }, + "Type": { + "enum": [ + "AWS::CloudFormation::HookVersion" + ], + "type": "string" + }, + "UpdateReplacePolicy": { + "enum": [ + "Delete", + "Retain", + "Snapshot" + ], + "type": "string" + } + }, + "required": [ + "Type", + "Properties" + ], + "type": "object" + }, + "AWS::CloudFormation::HookVersion.LoggingConfig": { + "additionalProperties": false, + "properties": { + "LogGroupName": { + "type": "string" + }, + "LogRoleArn": { + "type": "string" + } + }, + "type": "object" + }, + "AWS::CloudFormation::Macro": { "additionalProperties": false, "properties": { "Condition": { @@ -32066,7 +32207,7 @@ var SamSchema = `{ ], "type": "object" }, - "AWS::Config::AggregationAuthorization": { + "AWS::Comprehend::Flywheel": { "additionalProperties": false, "properties": { "Condition": { @@ -32101,10 +32242,22 @@ var SamSchema = `{ "Properties": { "additionalProperties": false, "properties": { - "AuthorizedAccountId": { + "ActiveModelArn": { "type": "string" }, - "AuthorizedAwsRegion": { + "DataAccessRoleArn": { + "type": "string" + }, + "DataLakeS3Uri": { + "type": "string" + }, + "DataSecurityConfig": { + "$ref": "#/definitions/AWS::Comprehend::Flywheel.DataSecurityConfig" + }, + "FlywheelName": { + "type": "string" + }, + "ModelType": { "type": "string" }, "Tags": { @@ -32112,17 +32265,21 @@ var SamSchema = `{ "$ref": "#/definitions/Tag" }, "type": "array" + }, + "TaskConfig": { + "$ref": "#/definitions/AWS::Comprehend::Flywheel.TaskConfig" } }, "required": [ - "AuthorizedAccountId", - "AuthorizedAwsRegion" + "DataAccessRoleArn", + "DataLakeS3Uri", + "FlywheelName" ], "type": "object" }, "Type": { "enum": [ - "AWS::Config::AggregationAuthorization" + "AWS::Comprehend::Flywheel" ], "type": "string" }, @@ -32141,7 +32298,182 @@ var SamSchema = `{ ], "type": "object" }, - "AWS::Config::ConfigRule": { + "AWS::Comprehend::Flywheel.DataSecurityConfig": { + "additionalProperties": false, + "properties": { + "DataLakeKmsKeyId": { + "type": "string" + }, + "ModelKmsKeyId": { + "type": "string" + }, + "VolumeKmsKeyId": { + "type": "string" + }, + "VpcConfig": { + "$ref": "#/definitions/AWS::Comprehend::Flywheel.VpcConfig" + } + }, + "type": "object" + }, + "AWS::Comprehend::Flywheel.DocumentClassificationConfig": { + "additionalProperties": false, + "properties": { + "Labels": { + "items": { + "type": "string" + }, + "type": "array" + }, + "Mode": { + "type": "string" + } + }, + "required": [ + "Mode" + ], + "type": "object" + }, + "AWS::Comprehend::Flywheel.EntityRecognitionConfig": { + "additionalProperties": false, + "properties": { + "EntityTypes": { + "items": { + "$ref": "#/definitions/AWS::Comprehend::Flywheel.EntityTypesListItem" + }, + "type": "array" + } + }, + "type": "object" + }, + "AWS::Comprehend::Flywheel.EntityTypesListItem": { + "additionalProperties": false, + "properties": { + "Type": { + "type": "string" + } + }, + "required": [ + "Type" + ], + "type": "object" + }, + "AWS::Comprehend::Flywheel.TaskConfig": { + "additionalProperties": false, + "properties": { + "DocumentClassificationConfig": { + "$ref": "#/definitions/AWS::Comprehend::Flywheel.DocumentClassificationConfig" + }, + "EntityRecognitionConfig": { + "$ref": "#/definitions/AWS::Comprehend::Flywheel.EntityRecognitionConfig" + }, + "LanguageCode": { + "type": "string" + } + }, + "required": [ + "LanguageCode" + ], + "type": "object" + }, + "AWS::Comprehend::Flywheel.VpcConfig": { + "additionalProperties": false, + "properties": { + "SecurityGroupIds": { + "items": { + "type": "string" + }, + "type": "array" + }, + "Subnets": { + "items": { + "type": "string" + }, + "type": "array" + } + }, + "required": [ + "SecurityGroupIds", + "Subnets" + ], + "type": "object" + }, + "AWS::Config::AggregationAuthorization": { + "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": { + "AuthorizedAccountId": { + "type": "string" + }, + "AuthorizedAwsRegion": { + "type": "string" + }, + "Tags": { + "items": { + "$ref": "#/definitions/Tag" + }, + "type": "array" + } + }, + "required": [ + "AuthorizedAccountId", + "AuthorizedAwsRegion" + ], + "type": "object" + }, + "Type": { + "enum": [ + "AWS::Config::AggregationAuthorization" + ], + "type": "string" + }, + "UpdateReplacePolicy": { + "enum": [ + "Delete", + "Retain", + "Snapshot" + ], + "type": "string" + } + }, + "required": [ + "Type", + "Properties" + ], + "type": "object" + }, + "AWS::Config::ConfigRule": { "additionalProperties": false, "properties": { "Condition": { @@ -61363,7 +61695,6 @@ var SamSchema = `{ "required": [ "Actions", "Conditions", - "ListenerArn", "Priority" ], "type": "object" @@ -109950,18 +110281,7 @@ var SamSchema = `{ }, "AWS::MediaPackage::PackagingConfiguration.EncryptionContractConfiguration": { "additionalProperties": false, - "properties": { - "PresetSpeke20Audio": { - "type": "string" - }, - "PresetSpeke20Video": { - "type": "string" - } - }, - "required": [ - "PresetSpeke20Audio", - "PresetSpeke20Video" - ], + "properties": {}, "type": "object" }, "AWS::MediaPackage::PackagingConfiguration.HlsEncryption": { @@ -127243,6 +127563,9 @@ var SamSchema = `{ "Name": { "type": "string" }, + "Namespace": { + "type": "string" + }, "UnitLabel": { "type": "string" }, @@ -134825,6 +135148,9 @@ var SamSchema = `{ "properties": { "Bucket": { "type": "string" + }, + "BucketAccountId": { + "type": "string" } }, "required": [ @@ -138969,7 +139295,6 @@ var SamSchema = `{ "required": [ "Alias", "DisplayName", - "Plan", "Type" ], "type": "object" @@ -141982,7 +142307,7 @@ var SamSchema = `{ ], "type": "object" }, - "AWS::SageMaker::Model": { + "AWS::SageMaker::InferenceExperiment": { "additionalProperties": false, "properties": { "Condition": { @@ -142017,26 +142342,41 @@ var SamSchema = `{ "Properties": { "additionalProperties": false, "properties": { - "Containers": { + "DataStorageConfig": { + "$ref": "#/definitions/AWS::SageMaker::InferenceExperiment.DataStorageConfig" + }, + "Description": { + "type": "string" + }, + "DesiredState": { + "type": "string" + }, + "EndpointName": { + "type": "string" + }, + "KmsKey": { + "type": "string" + }, + "ModelVariants": { "items": { - "$ref": "#/definitions/AWS::SageMaker::Model.ContainerDefinition" + "$ref": "#/definitions/AWS::SageMaker::InferenceExperiment.ModelVariantConfig" }, "type": "array" }, - "EnableNetworkIsolation": { - "type": "boolean" + "Name": { + "type": "string" }, - "ExecutionRoleArn": { + "RoleArn": { "type": "string" }, - "InferenceExecutionConfig": { - "$ref": "#/definitions/AWS::SageMaker::Model.InferenceExecutionConfig" + "Schedule": { + "$ref": "#/definitions/AWS::SageMaker::InferenceExperiment.InferenceExperimentSchedule" }, - "ModelName": { - "type": "string" + "ShadowModeConfig": { + "$ref": "#/definitions/AWS::SageMaker::InferenceExperiment.ShadowModeConfig" }, - "PrimaryContainer": { - "$ref": "#/definitions/AWS::SageMaker::Model.ContainerDefinition" + "StatusReason": { + "type": "string" }, "Tags": { "items": { @@ -142044,18 +142384,22 @@ var SamSchema = `{ }, "type": "array" }, - "VpcConfig": { - "$ref": "#/definitions/AWS::SageMaker::Model.VpcConfig" + "Type": { + "type": "string" } }, "required": [ - "ExecutionRoleArn" + "EndpointName", + "ModelVariants", + "Name", + "RoleArn", + "Type" ], "type": "object" }, "Type": { "enum": [ - "AWS::SageMaker::Model" + "AWS::SageMaker::InferenceExperiment" ], "type": "string" }, @@ -142074,110 +142418,160 @@ var SamSchema = `{ ], "type": "object" }, - "AWS::SageMaker::Model.ContainerDefinition": { + "AWS::SageMaker::InferenceExperiment.CaptureContentTypeHeader": { "additionalProperties": false, "properties": { - "ContainerHostname": { - "type": "string" + "CsvContentTypes": { + "items": { + "type": "string" + }, + "type": "array" }, - "Environment": { - "type": "object" + "JsonContentTypes": { + "items": { + "type": "string" + }, + "type": "array" + } + }, + "type": "object" + }, + "AWS::SageMaker::InferenceExperiment.DataStorageConfig": { + "additionalProperties": false, + "properties": { + "ContentType": { + "$ref": "#/definitions/AWS::SageMaker::InferenceExperiment.CaptureContentTypeHeader" }, - "Image": { + "Destination": { "type": "string" }, - "ImageConfig": { - "$ref": "#/definitions/AWS::SageMaker::Model.ImageConfig" - }, - "InferenceSpecificationName": { + "KmsKey": { "type": "string" - }, - "Mode": { + } + }, + "required": [ + "Destination" + ], + "type": "object" + }, + "AWS::SageMaker::InferenceExperiment.EndpointMetadata": { + "additionalProperties": false, + "properties": { + "EndpointConfigName": { "type": "string" }, - "ModelDataUrl": { + "EndpointName": { "type": "string" }, - "ModelPackageName": { + "EndpointStatus": { "type": "string" - }, - "MultiModelConfig": { - "$ref": "#/definitions/AWS::SageMaker::Model.MultiModelConfig" } }, + "required": [ + "EndpointName" + ], "type": "object" }, - "AWS::SageMaker::Model.ImageConfig": { + "AWS::SageMaker::InferenceExperiment.InferenceExperimentSchedule": { "additionalProperties": false, "properties": { - "RepositoryAccessMode": { + "EndTime": { "type": "string" }, - "RepositoryAuthConfig": { - "$ref": "#/definitions/AWS::SageMaker::Model.RepositoryAuthConfig" + "StartTime": { + "type": "string" } }, - "required": [ - "RepositoryAccessMode" - ], "type": "object" }, - "AWS::SageMaker::Model.InferenceExecutionConfig": { + "AWS::SageMaker::InferenceExperiment.ModelInfrastructureConfig": { "additionalProperties": false, "properties": { - "Mode": { + "InfrastructureType": { "type": "string" + }, + "RealTimeInferenceConfig": { + "$ref": "#/definitions/AWS::SageMaker::InferenceExperiment.RealTimeInferenceConfig" } }, "required": [ - "Mode" + "InfrastructureType", + "RealTimeInferenceConfig" ], "type": "object" }, - "AWS::SageMaker::Model.MultiModelConfig": { + "AWS::SageMaker::InferenceExperiment.ModelVariantConfig": { "additionalProperties": false, "properties": { - "ModelCacheSetting": { + "InfrastructureConfig": { + "$ref": "#/definitions/AWS::SageMaker::InferenceExperiment.ModelInfrastructureConfig" + }, + "ModelName": { + "type": "string" + }, + "VariantName": { "type": "string" } }, + "required": [ + "InfrastructureConfig", + "ModelName", + "VariantName" + ], "type": "object" }, - "AWS::SageMaker::Model.RepositoryAuthConfig": { + "AWS::SageMaker::InferenceExperiment.RealTimeInferenceConfig": { "additionalProperties": false, "properties": { - "RepositoryCredentialsProviderArn": { + "InstanceCount": { + "type": "number" + }, + "InstanceType": { "type": "string" } }, "required": [ - "RepositoryCredentialsProviderArn" + "InstanceCount", + "InstanceType" ], "type": "object" }, - "AWS::SageMaker::Model.VpcConfig": { + "AWS::SageMaker::InferenceExperiment.ShadowModeConfig": { "additionalProperties": false, "properties": { - "SecurityGroupIds": { + "ShadowModelVariants": { "items": { - "type": "string" + "$ref": "#/definitions/AWS::SageMaker::InferenceExperiment.ShadowModelVariantConfig" }, "type": "array" }, - "Subnets": { - "items": { - "type": "string" - }, - "type": "array" + "SourceModelVariantName": { + "type": "string" } }, "required": [ - "SecurityGroupIds", - "Subnets" + "ShadowModelVariants", + "SourceModelVariantName" ], "type": "object" }, - "AWS::SageMaker::ModelBiasJobDefinition": { + "AWS::SageMaker::InferenceExperiment.ShadowModelVariantConfig": { + "additionalProperties": false, + "properties": { + "SamplingPercentage": { + "type": "number" + }, + "ShadowModelVariantName": { + "type": "string" + } + }, + "required": [ + "SamplingPercentage", + "ShadowModelVariantName" + ], + "type": "object" + }, + "AWS::SageMaker::Model": { "additionalProperties": false, "properties": { "Condition": { @@ -142212,55 +142606,45 @@ var SamSchema = `{ "Properties": { "additionalProperties": false, "properties": { - "EndpointName": { - "type": "string" - }, - "JobDefinitionName": { - "type": "string" - }, - "JobResources": { - "$ref": "#/definitions/AWS::SageMaker::ModelBiasJobDefinition.MonitoringResources" - }, - "ModelBiasAppSpecification": { - "$ref": "#/definitions/AWS::SageMaker::ModelBiasJobDefinition.ModelBiasAppSpecification" - }, - "ModelBiasBaselineConfig": { - "$ref": "#/definitions/AWS::SageMaker::ModelBiasJobDefinition.ModelBiasBaselineConfig" + "Containers": { + "items": { + "$ref": "#/definitions/AWS::SageMaker::Model.ContainerDefinition" + }, + "type": "array" }, - "ModelBiasJobInput": { - "$ref": "#/definitions/AWS::SageMaker::ModelBiasJobDefinition.ModelBiasJobInput" + "EnableNetworkIsolation": { + "type": "boolean" }, - "ModelBiasJobOutputConfig": { - "$ref": "#/definitions/AWS::SageMaker::ModelBiasJobDefinition.MonitoringOutputConfig" + "ExecutionRoleArn": { + "type": "string" }, - "NetworkConfig": { - "$ref": "#/definitions/AWS::SageMaker::ModelBiasJobDefinition.NetworkConfig" + "InferenceExecutionConfig": { + "$ref": "#/definitions/AWS::SageMaker::Model.InferenceExecutionConfig" }, - "RoleArn": { + "ModelName": { "type": "string" }, - "StoppingCondition": { - "$ref": "#/definitions/AWS::SageMaker::ModelBiasJobDefinition.StoppingCondition" + "PrimaryContainer": { + "$ref": "#/definitions/AWS::SageMaker::Model.ContainerDefinition" }, "Tags": { "items": { "$ref": "#/definitions/Tag" }, "type": "array" + }, + "VpcConfig": { + "$ref": "#/definitions/AWS::SageMaker::Model.VpcConfig" } }, "required": [ - "JobResources", - "ModelBiasAppSpecification", - "ModelBiasJobInput", - "ModelBiasJobOutputConfig", - "RoleArn" + "ExecutionRoleArn" ], "type": "object" }, "Type": { "enum": [ - "AWS::SageMaker::ModelBiasJobDefinition" + "AWS::SageMaker::Model" ], "type": "string" }, @@ -142279,311 +142663,88 @@ var SamSchema = `{ ], "type": "object" }, - "AWS::SageMaker::ModelBiasJobDefinition.BatchTransformInput": { - "additionalProperties": false, - "properties": { - "DataCapturedDestinationS3Uri": { - "type": "string" - }, - "DatasetFormat": { - "$ref": "#/definitions/AWS::SageMaker::ModelBiasJobDefinition.DatasetFormat" - }, - "EndTimeOffset": { - "type": "string" - }, - "FeaturesAttribute": { - "type": "string" - }, - "InferenceAttribute": { - "type": "string" - }, - "LocalPath": { - "type": "string" - }, - "ProbabilityAttribute": { - "type": "string" - }, - "ProbabilityThresholdAttribute": { - "type": "number" - }, - "S3DataDistributionType": { - "type": "string" - }, - "S3InputMode": { - "type": "string" - }, - "StartTimeOffset": { - "type": "string" - } - }, - "required": [ - "DataCapturedDestinationS3Uri", - "DatasetFormat", - "LocalPath" - ], - "type": "object" - }, - "AWS::SageMaker::ModelBiasJobDefinition.ClusterConfig": { - "additionalProperties": false, - "properties": { - "InstanceCount": { - "type": "number" - }, - "InstanceType": { - "type": "string" - }, - "VolumeKmsKeyId": { - "type": "string" - }, - "VolumeSizeInGB": { - "type": "number" - } - }, - "required": [ - "InstanceCount", - "InstanceType", - "VolumeSizeInGB" - ], - "type": "object" - }, - "AWS::SageMaker::ModelBiasJobDefinition.ConstraintsResource": { - "additionalProperties": false, - "properties": { - "S3Uri": { - "type": "string" - } - }, - "type": "object" - }, - "AWS::SageMaker::ModelBiasJobDefinition.Csv": { - "additionalProperties": false, - "properties": { - "Header": { - "type": "boolean" - } - }, - "type": "object" - }, - "AWS::SageMaker::ModelBiasJobDefinition.DatasetFormat": { - "additionalProperties": false, - "properties": { - "Csv": { - "$ref": "#/definitions/AWS::SageMaker::ModelBiasJobDefinition.Csv" - }, - "Json": { - "$ref": "#/definitions/AWS::SageMaker::ModelBiasJobDefinition.Json" - }, - "Parquet": { - "type": "boolean" - } - }, - "type": "object" - }, - "AWS::SageMaker::ModelBiasJobDefinition.EndpointInput": { + "AWS::SageMaker::Model.ContainerDefinition": { "additionalProperties": false, "properties": { - "EndTimeOffset": { - "type": "string" - }, - "EndpointName": { + "ContainerHostname": { "type": "string" }, - "FeaturesAttribute": { - "type": "string" + "Environment": { + "type": "object" }, - "InferenceAttribute": { + "Image": { "type": "string" }, - "LocalPath": { - "type": "string" + "ImageConfig": { + "$ref": "#/definitions/AWS::SageMaker::Model.ImageConfig" }, - "ProbabilityAttribute": { + "InferenceSpecificationName": { "type": "string" }, - "ProbabilityThresholdAttribute": { - "type": "number" - }, - "S3DataDistributionType": { + "Mode": { "type": "string" }, - "S3InputMode": { + "ModelDataUrl": { "type": "string" }, - "StartTimeOffset": { - "type": "string" - } - }, - "required": [ - "EndpointName", - "LocalPath" - ], - "type": "object" - }, - "AWS::SageMaker::ModelBiasJobDefinition.Json": { - "additionalProperties": false, - "properties": { - "Line": { - "type": "boolean" - } - }, - "type": "object" - }, - "AWS::SageMaker::ModelBiasJobDefinition.ModelBiasAppSpecification": { - "additionalProperties": false, - "properties": { - "ConfigUri": { + "ModelPackageName": { "type": "string" }, - "Environment": { - "additionalProperties": true, - "patternProperties": { - "^[a-zA-Z0-9]+$": { - "type": "string" - } - }, - "type": "object" - }, - "ImageUri": { - "type": "string" + "MultiModelConfig": { + "$ref": "#/definitions/AWS::SageMaker::Model.MultiModelConfig" } }, - "required": [ - "ConfigUri", - "ImageUri" - ], "type": "object" }, - "AWS::SageMaker::ModelBiasJobDefinition.ModelBiasBaselineConfig": { + "AWS::SageMaker::Model.ImageConfig": { "additionalProperties": false, "properties": { - "BaseliningJobName": { + "RepositoryAccessMode": { "type": "string" }, - "ConstraintsResource": { - "$ref": "#/definitions/AWS::SageMaker::ModelBiasJobDefinition.ConstraintsResource" - } - }, - "type": "object" - }, - "AWS::SageMaker::ModelBiasJobDefinition.ModelBiasJobInput": { - "additionalProperties": false, - "properties": { - "BatchTransformInput": { - "$ref": "#/definitions/AWS::SageMaker::ModelBiasJobDefinition.BatchTransformInput" - }, - "EndpointInput": { - "$ref": "#/definitions/AWS::SageMaker::ModelBiasJobDefinition.EndpointInput" - }, - "GroundTruthS3Input": { - "$ref": "#/definitions/AWS::SageMaker::ModelBiasJobDefinition.MonitoringGroundTruthS3Input" + "RepositoryAuthConfig": { + "$ref": "#/definitions/AWS::SageMaker::Model.RepositoryAuthConfig" } }, "required": [ - "GroundTruthS3Input" + "RepositoryAccessMode" ], "type": "object" }, - "AWS::SageMaker::ModelBiasJobDefinition.MonitoringGroundTruthS3Input": { + "AWS::SageMaker::Model.InferenceExecutionConfig": { "additionalProperties": false, "properties": { - "S3Uri": { + "Mode": { "type": "string" } }, "required": [ - "S3Uri" - ], - "type": "object" - }, - "AWS::SageMaker::ModelBiasJobDefinition.MonitoringOutput": { - "additionalProperties": false, - "properties": { - "S3Output": { - "$ref": "#/definitions/AWS::SageMaker::ModelBiasJobDefinition.S3Output" - } - }, - "required": [ - "S3Output" + "Mode" ], "type": "object" }, - "AWS::SageMaker::ModelBiasJobDefinition.MonitoringOutputConfig": { + "AWS::SageMaker::Model.MultiModelConfig": { "additionalProperties": false, "properties": { - "KmsKeyId": { + "ModelCacheSetting": { "type": "string" - }, - "MonitoringOutputs": { - "items": { - "$ref": "#/definitions/AWS::SageMaker::ModelBiasJobDefinition.MonitoringOutput" - }, - "type": "array" - } - }, - "required": [ - "MonitoringOutputs" - ], - "type": "object" - }, - "AWS::SageMaker::ModelBiasJobDefinition.MonitoringResources": { - "additionalProperties": false, - "properties": { - "ClusterConfig": { - "$ref": "#/definitions/AWS::SageMaker::ModelBiasJobDefinition.ClusterConfig" - } - }, - "required": [ - "ClusterConfig" - ], - "type": "object" - }, - "AWS::SageMaker::ModelBiasJobDefinition.NetworkConfig": { - "additionalProperties": false, - "properties": { - "EnableInterContainerTrafficEncryption": { - "type": "boolean" - }, - "EnableNetworkIsolation": { - "type": "boolean" - }, - "VpcConfig": { - "$ref": "#/definitions/AWS::SageMaker::ModelBiasJobDefinition.VpcConfig" } }, "type": "object" }, - "AWS::SageMaker::ModelBiasJobDefinition.S3Output": { + "AWS::SageMaker::Model.RepositoryAuthConfig": { "additionalProperties": false, "properties": { - "LocalPath": { - "type": "string" - }, - "S3UploadMode": { - "type": "string" - }, - "S3Uri": { + "RepositoryCredentialsProviderArn": { "type": "string" } }, "required": [ - "LocalPath", - "S3Uri" - ], - "type": "object" - }, - "AWS::SageMaker::ModelBiasJobDefinition.StoppingCondition": { - "additionalProperties": false, - "properties": { - "MaxRuntimeInSeconds": { - "type": "number" - } - }, - "required": [ - "MaxRuntimeInSeconds" + "RepositoryCredentialsProviderArn" ], "type": "object" }, - "AWS::SageMaker::ModelBiasJobDefinition.VpcConfig": { + "AWS::SageMaker::Model.VpcConfig": { "additionalProperties": false, "properties": { "SecurityGroupIds": { @@ -142605,7 +142766,435 @@ var SamSchema = `{ ], "type": "object" }, - "AWS::SageMaker::ModelCard": { + "AWS::SageMaker::ModelBiasJobDefinition": { + "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": { + "EndpointName": { + "type": "string" + }, + "JobDefinitionName": { + "type": "string" + }, + "JobResources": { + "$ref": "#/definitions/AWS::SageMaker::ModelBiasJobDefinition.MonitoringResources" + }, + "ModelBiasAppSpecification": { + "$ref": "#/definitions/AWS::SageMaker::ModelBiasJobDefinition.ModelBiasAppSpecification" + }, + "ModelBiasBaselineConfig": { + "$ref": "#/definitions/AWS::SageMaker::ModelBiasJobDefinition.ModelBiasBaselineConfig" + }, + "ModelBiasJobInput": { + "$ref": "#/definitions/AWS::SageMaker::ModelBiasJobDefinition.ModelBiasJobInput" + }, + "ModelBiasJobOutputConfig": { + "$ref": "#/definitions/AWS::SageMaker::ModelBiasJobDefinition.MonitoringOutputConfig" + }, + "NetworkConfig": { + "$ref": "#/definitions/AWS::SageMaker::ModelBiasJobDefinition.NetworkConfig" + }, + "RoleArn": { + "type": "string" + }, + "StoppingCondition": { + "$ref": "#/definitions/AWS::SageMaker::ModelBiasJobDefinition.StoppingCondition" + }, + "Tags": { + "items": { + "$ref": "#/definitions/Tag" + }, + "type": "array" + } + }, + "required": [ + "JobResources", + "ModelBiasAppSpecification", + "ModelBiasJobInput", + "ModelBiasJobOutputConfig", + "RoleArn" + ], + "type": "object" + }, + "Type": { + "enum": [ + "AWS::SageMaker::ModelBiasJobDefinition" + ], + "type": "string" + }, + "UpdateReplacePolicy": { + "enum": [ + "Delete", + "Retain", + "Snapshot" + ], + "type": "string" + } + }, + "required": [ + "Type", + "Properties" + ], + "type": "object" + }, + "AWS::SageMaker::ModelBiasJobDefinition.BatchTransformInput": { + "additionalProperties": false, + "properties": { + "DataCapturedDestinationS3Uri": { + "type": "string" + }, + "DatasetFormat": { + "$ref": "#/definitions/AWS::SageMaker::ModelBiasJobDefinition.DatasetFormat" + }, + "EndTimeOffset": { + "type": "string" + }, + "FeaturesAttribute": { + "type": "string" + }, + "InferenceAttribute": { + "type": "string" + }, + "LocalPath": { + "type": "string" + }, + "ProbabilityAttribute": { + "type": "string" + }, + "ProbabilityThresholdAttribute": { + "type": "number" + }, + "S3DataDistributionType": { + "type": "string" + }, + "S3InputMode": { + "type": "string" + }, + "StartTimeOffset": { + "type": "string" + } + }, + "required": [ + "DataCapturedDestinationS3Uri", + "DatasetFormat", + "LocalPath" + ], + "type": "object" + }, + "AWS::SageMaker::ModelBiasJobDefinition.ClusterConfig": { + "additionalProperties": false, + "properties": { + "InstanceCount": { + "type": "number" + }, + "InstanceType": { + "type": "string" + }, + "VolumeKmsKeyId": { + "type": "string" + }, + "VolumeSizeInGB": { + "type": "number" + } + }, + "required": [ + "InstanceCount", + "InstanceType", + "VolumeSizeInGB" + ], + "type": "object" + }, + "AWS::SageMaker::ModelBiasJobDefinition.ConstraintsResource": { + "additionalProperties": false, + "properties": { + "S3Uri": { + "type": "string" + } + }, + "type": "object" + }, + "AWS::SageMaker::ModelBiasJobDefinition.Csv": { + "additionalProperties": false, + "properties": { + "Header": { + "type": "boolean" + } + }, + "type": "object" + }, + "AWS::SageMaker::ModelBiasJobDefinition.DatasetFormat": { + "additionalProperties": false, + "properties": { + "Csv": { + "$ref": "#/definitions/AWS::SageMaker::ModelBiasJobDefinition.Csv" + }, + "Json": { + "$ref": "#/definitions/AWS::SageMaker::ModelBiasJobDefinition.Json" + }, + "Parquet": { + "type": "boolean" + } + }, + "type": "object" + }, + "AWS::SageMaker::ModelBiasJobDefinition.EndpointInput": { + "additionalProperties": false, + "properties": { + "EndTimeOffset": { + "type": "string" + }, + "EndpointName": { + "type": "string" + }, + "FeaturesAttribute": { + "type": "string" + }, + "InferenceAttribute": { + "type": "string" + }, + "LocalPath": { + "type": "string" + }, + "ProbabilityAttribute": { + "type": "string" + }, + "ProbabilityThresholdAttribute": { + "type": "number" + }, + "S3DataDistributionType": { + "type": "string" + }, + "S3InputMode": { + "type": "string" + }, + "StartTimeOffset": { + "type": "string" + } + }, + "required": [ + "EndpointName", + "LocalPath" + ], + "type": "object" + }, + "AWS::SageMaker::ModelBiasJobDefinition.Json": { + "additionalProperties": false, + "properties": { + "Line": { + "type": "boolean" + } + }, + "type": "object" + }, + "AWS::SageMaker::ModelBiasJobDefinition.ModelBiasAppSpecification": { + "additionalProperties": false, + "properties": { + "ConfigUri": { + "type": "string" + }, + "Environment": { + "additionalProperties": true, + "patternProperties": { + "^[a-zA-Z0-9]+$": { + "type": "string" + } + }, + "type": "object" + }, + "ImageUri": { + "type": "string" + } + }, + "required": [ + "ConfigUri", + "ImageUri" + ], + "type": "object" + }, + "AWS::SageMaker::ModelBiasJobDefinition.ModelBiasBaselineConfig": { + "additionalProperties": false, + "properties": { + "BaseliningJobName": { + "type": "string" + }, + "ConstraintsResource": { + "$ref": "#/definitions/AWS::SageMaker::ModelBiasJobDefinition.ConstraintsResource" + } + }, + "type": "object" + }, + "AWS::SageMaker::ModelBiasJobDefinition.ModelBiasJobInput": { + "additionalProperties": false, + "properties": { + "BatchTransformInput": { + "$ref": "#/definitions/AWS::SageMaker::ModelBiasJobDefinition.BatchTransformInput" + }, + "EndpointInput": { + "$ref": "#/definitions/AWS::SageMaker::ModelBiasJobDefinition.EndpointInput" + }, + "GroundTruthS3Input": { + "$ref": "#/definitions/AWS::SageMaker::ModelBiasJobDefinition.MonitoringGroundTruthS3Input" + } + }, + "required": [ + "GroundTruthS3Input" + ], + "type": "object" + }, + "AWS::SageMaker::ModelBiasJobDefinition.MonitoringGroundTruthS3Input": { + "additionalProperties": false, + "properties": { + "S3Uri": { + "type": "string" + } + }, + "required": [ + "S3Uri" + ], + "type": "object" + }, + "AWS::SageMaker::ModelBiasJobDefinition.MonitoringOutput": { + "additionalProperties": false, + "properties": { + "S3Output": { + "$ref": "#/definitions/AWS::SageMaker::ModelBiasJobDefinition.S3Output" + } + }, + "required": [ + "S3Output" + ], + "type": "object" + }, + "AWS::SageMaker::ModelBiasJobDefinition.MonitoringOutputConfig": { + "additionalProperties": false, + "properties": { + "KmsKeyId": { + "type": "string" + }, + "MonitoringOutputs": { + "items": { + "$ref": "#/definitions/AWS::SageMaker::ModelBiasJobDefinition.MonitoringOutput" + }, + "type": "array" + } + }, + "required": [ + "MonitoringOutputs" + ], + "type": "object" + }, + "AWS::SageMaker::ModelBiasJobDefinition.MonitoringResources": { + "additionalProperties": false, + "properties": { + "ClusterConfig": { + "$ref": "#/definitions/AWS::SageMaker::ModelBiasJobDefinition.ClusterConfig" + } + }, + "required": [ + "ClusterConfig" + ], + "type": "object" + }, + "AWS::SageMaker::ModelBiasJobDefinition.NetworkConfig": { + "additionalProperties": false, + "properties": { + "EnableInterContainerTrafficEncryption": { + "type": "boolean" + }, + "EnableNetworkIsolation": { + "type": "boolean" + }, + "VpcConfig": { + "$ref": "#/definitions/AWS::SageMaker::ModelBiasJobDefinition.VpcConfig" + } + }, + "type": "object" + }, + "AWS::SageMaker::ModelBiasJobDefinition.S3Output": { + "additionalProperties": false, + "properties": { + "LocalPath": { + "type": "string" + }, + "S3UploadMode": { + "type": "string" + }, + "S3Uri": { + "type": "string" + } + }, + "required": [ + "LocalPath", + "S3Uri" + ], + "type": "object" + }, + "AWS::SageMaker::ModelBiasJobDefinition.StoppingCondition": { + "additionalProperties": false, + "properties": { + "MaxRuntimeInSeconds": { + "type": "number" + } + }, + "required": [ + "MaxRuntimeInSeconds" + ], + "type": "object" + }, + "AWS::SageMaker::ModelBiasJobDefinition.VpcConfig": { + "additionalProperties": false, + "properties": { + "SecurityGroupIds": { + "items": { + "type": "string" + }, + "type": "array" + }, + "Subnets": { + "items": { + "type": "string" + }, + "type": "array" + } + }, + "required": [ + "SecurityGroupIds", + "Subnets" + ], + "type": "object" + }, + "AWS::SageMaker::ModelCard": { "additionalProperties": false, "properties": { "Condition": { @@ -154493,36 +155082,1262 @@ var SamSchema = `{ "Properties": { "additionalProperties": false, "properties": { - "Description": { + "Description": { + "type": "string" + }, + "OnExceptionSteps": { + "items": { + "$ref": "#/definitions/AWS::Transfer::Workflow.WorkflowStep" + }, + "type": "array" + }, + "Steps": { + "items": { + "$ref": "#/definitions/AWS::Transfer::Workflow.WorkflowStep" + }, + "type": "array" + }, + "Tags": { + "items": { + "$ref": "#/definitions/Tag" + }, + "type": "array" + } + }, + "required": [ + "Steps" + ], + "type": "object" + }, + "Type": { + "enum": [ + "AWS::Transfer::Workflow" + ], + "type": "string" + }, + "UpdateReplacePolicy": { + "enum": [ + "Delete", + "Retain", + "Snapshot" + ], + "type": "string" + } + }, + "required": [ + "Type", + "Properties" + ], + "type": "object" + }, + "AWS::Transfer::Workflow.CopyStepDetails": { + "additionalProperties": false, + "properties": { + "DestinationFileLocation": { + "$ref": "#/definitions/AWS::Transfer::Workflow.S3FileLocation" + }, + "Name": { + "type": "string" + }, + "OverwriteExisting": { + "type": "string" + }, + "SourceFileLocation": { + "type": "string" + } + }, + "type": "object" + }, + "AWS::Transfer::Workflow.CustomStepDetails": { + "additionalProperties": false, + "properties": { + "Name": { + "type": "string" + }, + "SourceFileLocation": { + "type": "string" + }, + "Target": { + "type": "string" + }, + "TimeoutSeconds": { + "type": "number" + } + }, + "type": "object" + }, + "AWS::Transfer::Workflow.DecryptStepDetails": { + "additionalProperties": false, + "properties": { + "DestinationFileLocation": { + "$ref": "#/definitions/AWS::Transfer::Workflow.InputFileLocation" + }, + "Name": { + "type": "string" + }, + "OverwriteExisting": { + "type": "string" + }, + "SourceFileLocation": { + "type": "string" + }, + "Type": { + "type": "string" + } + }, + "type": "object" + }, + "AWS::Transfer::Workflow.DeleteStepDetails": { + "additionalProperties": false, + "properties": { + "Name": { + "type": "string" + }, + "SourceFileLocation": { + "type": "string" + } + }, + "type": "object" + }, + "AWS::Transfer::Workflow.EfsInputFileLocation": { + "additionalProperties": false, + "properties": { + "FileSystemId": { + "type": "string" + }, + "Path": { + "type": "string" + } + }, + "type": "object" + }, + "AWS::Transfer::Workflow.InputFileLocation": { + "additionalProperties": false, + "properties": { + "EfsFileLocation": { + "$ref": "#/definitions/AWS::Transfer::Workflow.EfsInputFileLocation" + }, + "S3FileLocation": { + "$ref": "#/definitions/AWS::Transfer::Workflow.S3InputFileLocation" + } + }, + "type": "object" + }, + "AWS::Transfer::Workflow.S3FileLocation": { + "additionalProperties": false, + "properties": { + "S3FileLocation": { + "$ref": "#/definitions/AWS::Transfer::Workflow.S3InputFileLocation" + } + }, + "type": "object" + }, + "AWS::Transfer::Workflow.S3InputFileLocation": { + "additionalProperties": false, + "properties": { + "Bucket": { + "type": "string" + }, + "Key": { + "type": "string" + } + }, + "type": "object" + }, + "AWS::Transfer::Workflow.S3Tag": { + "additionalProperties": false, + "properties": { + "Key": { + "type": "string" + }, + "Value": { + "type": "string" + } + }, + "required": [ + "Key", + "Value" + ], + "type": "object" + }, + "AWS::Transfer::Workflow.TagStepDetails": { + "additionalProperties": false, + "properties": { + "Name": { + "type": "string" + }, + "SourceFileLocation": { + "type": "string" + }, + "Tags": { + "items": { + "$ref": "#/definitions/AWS::Transfer::Workflow.S3Tag" + }, + "type": "array" + } + }, + "type": "object" + }, + "AWS::Transfer::Workflow.WorkflowStep": { + "additionalProperties": false, + "properties": { + "CopyStepDetails": { + "$ref": "#/definitions/AWS::Transfer::Workflow.CopyStepDetails" + }, + "CustomStepDetails": { + "$ref": "#/definitions/AWS::Transfer::Workflow.CustomStepDetails" + }, + "DecryptStepDetails": { + "$ref": "#/definitions/AWS::Transfer::Workflow.DecryptStepDetails" + }, + "DeleteStepDetails": { + "$ref": "#/definitions/AWS::Transfer::Workflow.DeleteStepDetails" + }, + "TagStepDetails": { + "$ref": "#/definitions/AWS::Transfer::Workflow.TagStepDetails" + }, + "Type": { + "type": "string" + } + }, + "type": "object" + }, + "AWS::VoiceID::Domain": { + "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": { + "Description": { + "type": "string" + }, + "Name": { + "type": "string" + }, + "ServerSideEncryptionConfiguration": { + "$ref": "#/definitions/AWS::VoiceID::Domain.ServerSideEncryptionConfiguration" + }, + "Tags": { + "items": { + "$ref": "#/definitions/Tag" + }, + "type": "array" + } + }, + "required": [ + "Name", + "ServerSideEncryptionConfiguration" + ], + "type": "object" + }, + "Type": { + "enum": [ + "AWS::VoiceID::Domain" + ], + "type": "string" + }, + "UpdateReplacePolicy": { + "enum": [ + "Delete", + "Retain", + "Snapshot" + ], + "type": "string" + } + }, + "required": [ + "Type", + "Properties" + ], + "type": "object" + }, + "AWS::VoiceID::Domain.ServerSideEncryptionConfiguration": { + "additionalProperties": false, + "properties": { + "KmsKeyId": { + "type": "string" + } + }, + "required": [ + "KmsKeyId" + ], + "type": "object" + }, + "AWS::VpcLattice::AccessLogSubscription": { + "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": { + "DestinationArn": { + "type": "string" + }, + "ResourceIdentifier": { + "type": "string" + }, + "Tags": { + "items": { + "$ref": "#/definitions/Tag" + }, + "type": "array" + } + }, + "required": [ + "DestinationArn" + ], + "type": "object" + }, + "Type": { + "enum": [ + "AWS::VpcLattice::AccessLogSubscription" + ], + "type": "string" + }, + "UpdateReplacePolicy": { + "enum": [ + "Delete", + "Retain", + "Snapshot" + ], + "type": "string" + } + }, + "required": [ + "Type", + "Properties" + ], + "type": "object" + }, + "AWS::VpcLattice::AuthPolicy": { + "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": { + "Policy": { + "type": "object" + }, + "ResourceIdentifier": { + "type": "string" + } + }, + "required": [ + "Policy", + "ResourceIdentifier" + ], + "type": "object" + }, + "Type": { + "enum": [ + "AWS::VpcLattice::AuthPolicy" + ], + "type": "string" + }, + "UpdateReplacePolicy": { + "enum": [ + "Delete", + "Retain", + "Snapshot" + ], + "type": "string" + } + }, + "required": [ + "Type", + "Properties" + ], + "type": "object" + }, + "AWS::VpcLattice::Listener": { + "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": { + "DefaultAction": { + "$ref": "#/definitions/AWS::VpcLattice::Listener.DefaultAction" + }, + "Name": { + "type": "string" + }, + "Port": { + "type": "number" + }, + "Protocol": { + "type": "string" + }, + "ServiceIdentifier": { + "type": "string" + }, + "Tags": { + "items": { + "$ref": "#/definitions/Tag" + }, + "type": "array" + } + }, + "required": [ + "DefaultAction", + "Protocol" + ], + "type": "object" + }, + "Type": { + "enum": [ + "AWS::VpcLattice::Listener" + ], + "type": "string" + }, + "UpdateReplacePolicy": { + "enum": [ + "Delete", + "Retain", + "Snapshot" + ], + "type": "string" + } + }, + "required": [ + "Type", + "Properties" + ], + "type": "object" + }, + "AWS::VpcLattice::Listener.DefaultAction": { + "additionalProperties": false, + "properties": { + "Forward": { + "$ref": "#/definitions/AWS::VpcLattice::Listener.Forward" + } + }, + "required": [ + "Forward" + ], + "type": "object" + }, + "AWS::VpcLattice::Listener.Forward": { + "additionalProperties": false, + "properties": { + "TargetGroups": { + "items": { + "$ref": "#/definitions/AWS::VpcLattice::Listener.WeightedTargetGroup" + }, + "type": "array" + } + }, + "required": [ + "TargetGroups" + ], + "type": "object" + }, + "AWS::VpcLattice::Listener.WeightedTargetGroup": { + "additionalProperties": false, + "properties": { + "TargetGroupIdentifier": { + "type": "string" + }, + "Weight": { + "type": "number" + } + }, + "required": [ + "TargetGroupIdentifier" + ], + "type": "object" + }, + "AWS::VpcLattice::ResourcePolicy": { + "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": { + "Policy": { + "type": "object" + }, + "ResourceArn": { + "type": "string" + } + }, + "required": [ + "Policy", + "ResourceArn" + ], + "type": "object" + }, + "Type": { + "enum": [ + "AWS::VpcLattice::ResourcePolicy" + ], + "type": "string" + }, + "UpdateReplacePolicy": { + "enum": [ + "Delete", + "Retain", + "Snapshot" + ], + "type": "string" + } + }, + "required": [ + "Type", + "Properties" + ], + "type": "object" + }, + "AWS::VpcLattice::Rule": { + "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": { + "Action": { + "$ref": "#/definitions/AWS::VpcLattice::Rule.Action" + }, + "ListenerIdentifier": { + "type": "string" + }, + "Match": { + "$ref": "#/definitions/AWS::VpcLattice::Rule.Match" + }, + "Name": { + "type": "string" + }, + "Priority": { + "type": "number" + }, + "ServiceIdentifier": { + "type": "string" + }, + "Tags": { + "items": { + "$ref": "#/definitions/Tag" + }, + "type": "array" + } + }, + "required": [ + "Action", + "Match", + "Priority" + ], + "type": "object" + }, + "Type": { + "enum": [ + "AWS::VpcLattice::Rule" + ], + "type": "string" + }, + "UpdateReplacePolicy": { + "enum": [ + "Delete", + "Retain", + "Snapshot" + ], + "type": "string" + } + }, + "required": [ + "Type", + "Properties" + ], + "type": "object" + }, + "AWS::VpcLattice::Rule.Action": { + "additionalProperties": false, + "properties": { + "Forward": { + "$ref": "#/definitions/AWS::VpcLattice::Rule.Forward" + } + }, + "required": [ + "Forward" + ], + "type": "object" + }, + "AWS::VpcLattice::Rule.Forward": { + "additionalProperties": false, + "properties": { + "TargetGroups": { + "items": { + "$ref": "#/definitions/AWS::VpcLattice::Rule.WeightedTargetGroup" + }, + "type": "array" + } + }, + "required": [ + "TargetGroups" + ], + "type": "object" + }, + "AWS::VpcLattice::Rule.HeaderMatch": { + "additionalProperties": false, + "properties": { + "CaseSensitive": { + "type": "boolean" + }, + "Match": { + "$ref": "#/definitions/AWS::VpcLattice::Rule.HeaderMatchType" + }, + "Name": { + "type": "string" + } + }, + "required": [ + "Match", + "Name" + ], + "type": "object" + }, + "AWS::VpcLattice::Rule.HeaderMatchType": { + "additionalProperties": false, + "properties": { + "Contains": { + "type": "string" + }, + "Exact": { + "type": "string" + }, + "Prefix": { + "type": "string" + } + }, + "type": "object" + }, + "AWS::VpcLattice::Rule.HttpMatch": { + "additionalProperties": false, + "properties": { + "HeaderMatches": { + "items": { + "$ref": "#/definitions/AWS::VpcLattice::Rule.HeaderMatch" + }, + "type": "array" + }, + "Method": { + "type": "string" + }, + "PathMatch": { + "$ref": "#/definitions/AWS::VpcLattice::Rule.PathMatch" + } + }, + "type": "object" + }, + "AWS::VpcLattice::Rule.Match": { + "additionalProperties": false, + "properties": { + "HttpMatch": { + "$ref": "#/definitions/AWS::VpcLattice::Rule.HttpMatch" + } + }, + "required": [ + "HttpMatch" + ], + "type": "object" + }, + "AWS::VpcLattice::Rule.PathMatch": { + "additionalProperties": false, + "properties": { + "CaseSensitive": { + "type": "boolean" + }, + "Match": { + "$ref": "#/definitions/AWS::VpcLattice::Rule.PathMatchType" + } + }, + "required": [ + "Match" + ], + "type": "object" + }, + "AWS::VpcLattice::Rule.PathMatchType": { + "additionalProperties": false, + "properties": { + "Exact": { + "type": "string" + }, + "Prefix": { + "type": "string" + } + }, + "type": "object" + }, + "AWS::VpcLattice::Rule.WeightedTargetGroup": { + "additionalProperties": false, + "properties": { + "TargetGroupIdentifier": { + "type": "string" + }, + "Weight": { + "type": "number" + } + }, + "required": [ + "TargetGroupIdentifier" + ], + "type": "object" + }, + "AWS::VpcLattice::Service": { + "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": { + "AuthType": { + "type": "string" + }, + "CertificateArn": { + "type": "string" + }, + "CustomDomainName": { + "type": "string" + }, + "DnsEntry": { + "$ref": "#/definitions/AWS::VpcLattice::Service.DnsEntry" + }, + "Name": { + "type": "string" + }, + "Tags": { + "items": { + "$ref": "#/definitions/Tag" + }, + "type": "array" + } + }, + "type": "object" + }, + "Type": { + "enum": [ + "AWS::VpcLattice::Service" + ], + "type": "string" + }, + "UpdateReplacePolicy": { + "enum": [ + "Delete", + "Retain", + "Snapshot" + ], + "type": "string" + } + }, + "required": [ + "Type" + ], + "type": "object" + }, + "AWS::VpcLattice::Service.DnsEntry": { + "additionalProperties": false, + "properties": { + "DomainName": { + "type": "string" + }, + "HostedZoneId": { + "type": "string" + } + }, + "type": "object" + }, + "AWS::VpcLattice::ServiceNetwork": { + "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": { + "AuthType": { + "type": "string" + }, + "Name": { + "type": "string" + }, + "Tags": { + "items": { + "$ref": "#/definitions/Tag" + }, + "type": "array" + } + }, + "type": "object" + }, + "Type": { + "enum": [ + "AWS::VpcLattice::ServiceNetwork" + ], + "type": "string" + }, + "UpdateReplacePolicy": { + "enum": [ + "Delete", + "Retain", + "Snapshot" + ], + "type": "string" + } + }, + "required": [ + "Type" + ], + "type": "object" + }, + "AWS::VpcLattice::ServiceNetworkServiceAssociation": { + "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": { + "DnsEntry": { + "$ref": "#/definitions/AWS::VpcLattice::ServiceNetworkServiceAssociation.DnsEntry" + }, + "ServiceIdentifier": { + "type": "string" + }, + "ServiceNetworkIdentifier": { + "type": "string" + }, + "Tags": { + "items": { + "$ref": "#/definitions/Tag" + }, + "type": "array" + } + }, + "type": "object" + }, + "Type": { + "enum": [ + "AWS::VpcLattice::ServiceNetworkServiceAssociation" + ], + "type": "string" + }, + "UpdateReplacePolicy": { + "enum": [ + "Delete", + "Retain", + "Snapshot" + ], + "type": "string" + } + }, + "required": [ + "Type" + ], + "type": "object" + }, + "AWS::VpcLattice::ServiceNetworkServiceAssociation.DnsEntry": { + "additionalProperties": false, + "properties": { + "DomainName": { + "type": "string" + }, + "HostedZoneId": { + "type": "string" + } + }, + "type": "object" + }, + "AWS::VpcLattice::ServiceNetworkVpcAssociation": { + "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": { + "SecurityGroupIds": { + "items": { + "type": "string" + }, + "type": "array" + }, + "ServiceNetworkIdentifier": { + "type": "string" + }, + "Tags": { + "items": { + "$ref": "#/definitions/Tag" + }, + "type": "array" + }, + "VpcIdentifier": { + "type": "string" + } + }, + "type": "object" + }, + "Type": { + "enum": [ + "AWS::VpcLattice::ServiceNetworkVpcAssociation" + ], + "type": "string" + }, + "UpdateReplacePolicy": { + "enum": [ + "Delete", + "Retain", + "Snapshot" + ], + "type": "string" + } + }, + "required": [ + "Type" + ], + "type": "object" + }, + "AWS::VpcLattice::TargetGroup": { + "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": { + "Config": { + "$ref": "#/definitions/AWS::VpcLattice::TargetGroup.TargetGroupConfig" + }, + "Name": { "type": "string" }, - "OnExceptionSteps": { + "Tags": { "items": { - "$ref": "#/definitions/AWS::Transfer::Workflow.WorkflowStep" + "$ref": "#/definitions/Tag" }, "type": "array" }, - "Steps": { + "Targets": { "items": { - "$ref": "#/definitions/AWS::Transfer::Workflow.WorkflowStep" + "$ref": "#/definitions/AWS::VpcLattice::TargetGroup.Target" }, "type": "array" }, - "Tags": { - "items": { - "$ref": "#/definitions/Tag" - }, - "type": "array" + "Type": { + "type": "string" } }, "required": [ - "Steps" + "Type" ], "type": "object" }, "Type": { "enum": [ - "AWS::Transfer::Workflow" + "AWS::VpcLattice::TargetGroup" ], "type": "string" }, @@ -154541,265 +156356,89 @@ var SamSchema = `{ ], "type": "object" }, - "AWS::Transfer::Workflow.CopyStepDetails": { + "AWS::VpcLattice::TargetGroup.HealthCheckConfig": { "additionalProperties": false, "properties": { - "DestinationFileLocation": { - "$ref": "#/definitions/AWS::Transfer::Workflow.S3FileLocation" - }, - "Name": { - "type": "string" - }, - "OverwriteExisting": { - "type": "string" - }, - "SourceFileLocation": { - "type": "string" - } - }, - "type": "object" - }, - "AWS::Transfer::Workflow.CustomStepDetails": { - "additionalProperties": false, - "properties": { - "Name": { - "type": "string" - }, - "SourceFileLocation": { - "type": "string" - }, - "Target": { - "type": "string" + "Enabled": { + "type": "boolean" }, - "TimeoutSeconds": { + "HealthCheckIntervalSeconds": { "type": "number" - } - }, - "type": "object" - }, - "AWS::Transfer::Workflow.DecryptStepDetails": { - "additionalProperties": false, - "properties": { - "DestinationFileLocation": { - "$ref": "#/definitions/AWS::Transfer::Workflow.InputFileLocation" - }, - "Name": { - "type": "string" }, - "OverwriteExisting": { - "type": "string" - }, - "SourceFileLocation": { - "type": "string" + "HealthCheckTimeoutSeconds": { + "type": "number" }, - "Type": { - "type": "string" - } - }, - "type": "object" - }, - "AWS::Transfer::Workflow.DeleteStepDetails": { - "additionalProperties": false, - "properties": { - "Name": { - "type": "string" + "HealthyThresholdCount": { + "type": "number" }, - "SourceFileLocation": { - "type": "string" - } - }, - "type": "object" - }, - "AWS::Transfer::Workflow.EfsInputFileLocation": { - "additionalProperties": false, - "properties": { - "FileSystemId": { - "type": "string" + "Matcher": { + "$ref": "#/definitions/AWS::VpcLattice::TargetGroup.Matcher" }, "Path": { "type": "string" - } - }, - "type": "object" - }, - "AWS::Transfer::Workflow.InputFileLocation": { - "additionalProperties": false, - "properties": { - "EfsFileLocation": { - "$ref": "#/definitions/AWS::Transfer::Workflow.EfsInputFileLocation" }, - "S3FileLocation": { - "$ref": "#/definitions/AWS::Transfer::Workflow.S3InputFileLocation" - } - }, - "type": "object" - }, - "AWS::Transfer::Workflow.S3FileLocation": { - "additionalProperties": false, - "properties": { - "S3FileLocation": { - "$ref": "#/definitions/AWS::Transfer::Workflow.S3InputFileLocation" - } - }, - "type": "object" - }, - "AWS::Transfer::Workflow.S3InputFileLocation": { - "additionalProperties": false, - "properties": { - "Bucket": { - "type": "string" + "Port": { + "type": "number" }, - "Key": { + "Protocol": { "type": "string" + }, + "UnhealthyThresholdCount": { + "type": "number" } }, "type": "object" }, - "AWS::Transfer::Workflow.S3Tag": { + "AWS::VpcLattice::TargetGroup.Matcher": { "additionalProperties": false, "properties": { - "Key": { - "type": "string" - }, - "Value": { + "HttpCode": { "type": "string" } }, "required": [ - "Key", - "Value" + "HttpCode" ], "type": "object" }, - "AWS::Transfer::Workflow.TagStepDetails": { + "AWS::VpcLattice::TargetGroup.Target": { "additionalProperties": false, "properties": { - "Name": { - "type": "string" - }, - "SourceFileLocation": { + "Id": { "type": "string" }, - "Tags": { - "items": { - "$ref": "#/definitions/AWS::Transfer::Workflow.S3Tag" - }, - "type": "array" + "Port": { + "type": "number" } }, + "required": [ + "Id" + ], "type": "object" }, - "AWS::Transfer::Workflow.WorkflowStep": { + "AWS::VpcLattice::TargetGroup.TargetGroupConfig": { "additionalProperties": false, "properties": { - "CopyStepDetails": { - "$ref": "#/definitions/AWS::Transfer::Workflow.CopyStepDetails" - }, - "CustomStepDetails": { - "$ref": "#/definitions/AWS::Transfer::Workflow.CustomStepDetails" - }, - "DecryptStepDetails": { - "$ref": "#/definitions/AWS::Transfer::Workflow.DecryptStepDetails" - }, - "DeleteStepDetails": { - "$ref": "#/definitions/AWS::Transfer::Workflow.DeleteStepDetails" - }, - "TagStepDetails": { - "$ref": "#/definitions/AWS::Transfer::Workflow.TagStepDetails" + "HealthCheck": { + "$ref": "#/definitions/AWS::VpcLattice::TargetGroup.HealthCheckConfig" }, - "Type": { - "type": "string" - } - }, - "type": "object" - }, - "AWS::VoiceID::Domain": { - "additionalProperties": false, - "properties": { - "Condition": { - "type": "string" + "Port": { + "type": "number" }, - "DeletionPolicy": { - "enum": [ - "Delete", - "Retain", - "Snapshot" - ], + "Protocol": { "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": { - "Description": { - "type": "string" - }, - "Name": { - "type": "string" - }, - "ServerSideEncryptionConfiguration": { - "$ref": "#/definitions/AWS::VoiceID::Domain.ServerSideEncryptionConfiguration" - }, - "Tags": { - "items": { - "$ref": "#/definitions/Tag" - }, - "type": "array" - } - }, - "required": [ - "Name", - "ServerSideEncryptionConfiguration" - ], - "type": "object" - }, - "Type": { - "enum": [ - "AWS::VoiceID::Domain" - ], + "ProtocolVersion": { "type": "string" }, - "UpdateReplacePolicy": { - "enum": [ - "Delete", - "Retain", - "Snapshot" - ], - "type": "string" - } - }, - "required": [ - "Type", - "Properties" - ], - "type": "object" - }, - "AWS::VoiceID::Domain.ServerSideEncryptionConfiguration": { - "additionalProperties": false, - "properties": { - "KmsKeyId": { + "VpcIdentifier": { "type": "string" } }, "required": [ - "KmsKeyId" + "Port", + "Protocol", + "VpcIdentifier" ], "type": "object" }, @@ -161042,6 +162681,9 @@ var SamSchema = `{ { "$ref": "#/definitions/AWS::CertificateManager::Certificate" }, + { + "$ref": "#/definitions/AWS::Chatbot::MicrosoftTeamsChannelConfiguration" + }, { "$ref": "#/definitions/AWS::Chatbot::SlackChannelConfiguration" }, @@ -161252,6 +162894,9 @@ var SamSchema = `{ { "$ref": "#/definitions/AWS::Cognito::UserPoolUserToGroupAttachment" }, + { + "$ref": "#/definitions/AWS::Comprehend::Flywheel" + }, { "$ref": "#/definitions/AWS::Config::AggregationAuthorization" }, @@ -163424,6 +165069,9 @@ var SamSchema = `{ { "$ref": "#/definitions/AWS::SageMaker::ImageVersion" }, + { + "$ref": "#/definitions/AWS::SageMaker::InferenceExperiment" + }, { "$ref": "#/definitions/AWS::SageMaker::Model" }, @@ -163652,6 +165300,36 @@ var SamSchema = `{ { "$ref": "#/definitions/AWS::VoiceID::Domain" }, + { + "$ref": "#/definitions/AWS::VpcLattice::AccessLogSubscription" + }, + { + "$ref": "#/definitions/AWS::VpcLattice::AuthPolicy" + }, + { + "$ref": "#/definitions/AWS::VpcLattice::Listener" + }, + { + "$ref": "#/definitions/AWS::VpcLattice::ResourcePolicy" + }, + { + "$ref": "#/definitions/AWS::VpcLattice::Rule" + }, + { + "$ref": "#/definitions/AWS::VpcLattice::Service" + }, + { + "$ref": "#/definitions/AWS::VpcLattice::ServiceNetwork" + }, + { + "$ref": "#/definitions/AWS::VpcLattice::ServiceNetworkServiceAssociation" + }, + { + "$ref": "#/definitions/AWS::VpcLattice::ServiceNetworkVpcAssociation" + }, + { + "$ref": "#/definitions/AWS::VpcLattice::TargetGroup" + }, { "$ref": "#/definitions/AWS::WAF::ByteMatchSet" }, diff --git a/schema/sam.schema.json b/schema/sam.schema.json index a33f39a2cb..3ca36fbfcd 100644 --- a/schema/sam.schema.json +++ b/schema/sam.schema.json @@ -16422,6 +16422,30 @@ ], "type": "object" }, + "AWS::Athena::WorkGroup.AclConfiguration": { + "additionalProperties": false, + "properties": { + "S3AclOption": { + "type": "string" + } + }, + "required": [ + "S3AclOption" + ], + "type": "object" + }, + "AWS::Athena::WorkGroup.CustomerContentEncryptionConfiguration": { + "additionalProperties": false, + "properties": { + "KmsKey": { + "type": "string" + } + }, + "required": [ + "KmsKey" + ], + "type": "object" + }, "AWS::Athena::WorkGroup.EncryptionConfiguration": { "additionalProperties": false, "properties": { @@ -16452,9 +16476,15 @@ "AWS::Athena::WorkGroup.ResultConfiguration": { "additionalProperties": false, "properties": { + "AclConfiguration": { + "$ref": "#/definitions/AWS::Athena::WorkGroup.AclConfiguration" + }, "EncryptionConfiguration": { "$ref": "#/definitions/AWS::Athena::WorkGroup.EncryptionConfiguration" }, + "ExpectedBucketOwner": { + "type": "string" + }, "OutputLocation": { "type": "string" } @@ -16464,15 +16494,24 @@ "AWS::Athena::WorkGroup.WorkGroupConfiguration": { "additionalProperties": false, "properties": { + "AdditionalConfiguration": { + "type": "string" + }, "BytesScannedCutoffPerQuery": { "type": "number" }, + "CustomerContentEncryptionConfiguration": { + "$ref": "#/definitions/AWS::Athena::WorkGroup.CustomerContentEncryptionConfiguration" + }, "EnforceWorkGroupConfiguration": { "type": "boolean" }, "EngineVersion": { "$ref": "#/definitions/AWS::Athena::WorkGroup.EngineVersion" }, + "ExecutionRole": { + "type": "string" + }, "PublishCloudWatchMetricsEnabled": { "type": "boolean" }, @@ -21783,6 +21822,9 @@ "BillingMode": { "$ref": "#/definitions/AWS::Cassandra::Table.BillingMode" }, + "ClientSideTimestampsEnabled": { + "type": "boolean" + }, "ClusteringKeyColumns": { "items": { "$ref": "#/definitions/AWS::Cassandra::Table.ClusteringKeyColumn" @@ -22111,7 +22153,7 @@ ], "type": "object" }, - "AWS::Chatbot::SlackChannelConfiguration": { + "AWS::Chatbot::MicrosoftTeamsChannelConfiguration": { "additionalProperties": false, "properties": { "Condition": { @@ -22161,18 +22203,21 @@ "LoggingLevel": { "type": "string" }, - "SlackChannelId": { - "type": "string" - }, - "SlackWorkspaceId": { - "type": "string" - }, "SnsTopicArns": { "items": { "type": "string" }, "type": "array" }, + "TeamId": { + "type": "string" + }, + "TeamsChannelId": { + "type": "string" + }, + "TeamsTenantId": { + "type": "string" + }, "UserRoleRequired": { "type": "boolean" } @@ -22180,14 +22225,15 @@ "required": [ "ConfigurationName", "IamRoleArn", - "SlackChannelId", - "SlackWorkspaceId" + "TeamId", + "TeamsChannelId", + "TeamsTenantId" ], "type": "object" }, "Type": { "enum": [ - "AWS::Chatbot::SlackChannelConfiguration" + "AWS::Chatbot::MicrosoftTeamsChannelConfiguration" ], "type": "string" }, @@ -22206,7 +22252,7 @@ ], "type": "object" }, - "AWS::Cloud9::EnvironmentEC2": { + "AWS::Chatbot::SlackChannelConfiguration": { "additionalProperties": false, "properties": { "Condition": { @@ -22241,51 +22287,48 @@ "Properties": { "additionalProperties": false, "properties": { - "AutomaticStopTimeMinutes": { - "type": "number" - }, - "ConnectionType": { + "ConfigurationName": { "type": "string" }, - "Description": { - "type": "string" + "GuardrailPolicies": { + "items": { + "type": "string" + }, + "type": "array" }, - "ImageId": { + "IamRoleArn": { "type": "string" }, - "InstanceType": { + "LoggingLevel": { "type": "string" }, - "Name": { + "SlackChannelId": { "type": "string" }, - "OwnerArn": { + "SlackWorkspaceId": { "type": "string" }, - "Repositories": { + "SnsTopicArns": { "items": { - "$ref": "#/definitions/AWS::Cloud9::EnvironmentEC2.Repository" + "type": "string" }, "type": "array" }, - "SubnetId": { - "type": "string" - }, - "Tags": { - "items": { - "$ref": "#/definitions/Tag" - }, - "type": "array" + "UserRoleRequired": { + "type": "boolean" } }, "required": [ - "InstanceType" + "ConfigurationName", + "IamRoleArn", + "SlackChannelId", + "SlackWorkspaceId" ], "type": "object" }, "Type": { "enum": [ - "AWS::Cloud9::EnvironmentEC2" + "AWS::Chatbot::SlackChannelConfiguration" ], "type": "string" }, @@ -22304,23 +22347,7 @@ ], "type": "object" }, - "AWS::Cloud9::EnvironmentEC2.Repository": { - "additionalProperties": false, - "properties": { - "PathComponent": { - "type": "string" - }, - "RepositoryUrl": { - "type": "string" - } - }, - "required": [ - "PathComponent", - "RepositoryUrl" - ], - "type": "object" - }, - "AWS::CloudFormation::CustomResource": { + "AWS::Cloud9::EnvironmentEC2": { "additionalProperties": false, "properties": { "Condition": { @@ -22355,18 +22382,51 @@ "Properties": { "additionalProperties": false, "properties": { - "ServiceToken": { + "AutomaticStopTimeMinutes": { + "type": "number" + }, + "ConnectionType": { "type": "string" + }, + "Description": { + "type": "string" + }, + "ImageId": { + "type": "string" + }, + "InstanceType": { + "type": "string" + }, + "Name": { + "type": "string" + }, + "OwnerArn": { + "type": "string" + }, + "Repositories": { + "items": { + "$ref": "#/definitions/AWS::Cloud9::EnvironmentEC2.Repository" + }, + "type": "array" + }, + "SubnetId": { + "type": "string" + }, + "Tags": { + "items": { + "$ref": "#/definitions/Tag" + }, + "type": "array" } }, "required": [ - "ServiceToken" + "InstanceType" ], "type": "object" }, "Type": { "enum": [ - "AWS::CloudFormation::CustomResource" + "AWS::Cloud9::EnvironmentEC2" ], "type": "string" }, @@ -22385,74 +22445,23 @@ ], "type": "object" }, - "AWS::CloudFormation::HookDefaultVersion": { + "AWS::Cloud9::EnvironmentEC2.Repository": { "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": { - "TypeName": { - "type": "string" - }, - "TypeVersionArn": { - "type": "string" - }, - "VersionId": { - "type": "string" - } - }, - "type": "object" - }, - "Type": { - "enum": [ - "AWS::CloudFormation::HookDefaultVersion" - ], + "PathComponent": { "type": "string" }, - "UpdateReplacePolicy": { - "enum": [ - "Delete", - "Retain", - "Snapshot" - ], + "RepositoryUrl": { "type": "string" } }, "required": [ - "Type" + "PathComponent", + "RepositoryUrl" ], "type": "object" }, - "AWS::CloudFormation::HookTypeConfig": { + "AWS::CloudFormation::CustomResource": { "additionalProperties": false, "properties": { "Condition": { @@ -22487,27 +22496,18 @@ "Properties": { "additionalProperties": false, "properties": { - "Configuration": { - "type": "string" - }, - "ConfigurationAlias": { - "type": "string" - }, - "TypeArn": { - "type": "string" - }, - "TypeName": { + "ServiceToken": { "type": "string" } }, "required": [ - "Configuration" + "ServiceToken" ], "type": "object" }, "Type": { "enum": [ - "AWS::CloudFormation::HookTypeConfig" + "AWS::CloudFormation::CustomResource" ], "type": "string" }, @@ -22526,7 +22526,7 @@ ], "type": "object" }, - "AWS::CloudFormation::HookVersion": { + "AWS::CloudFormation::HookDefaultVersion": { "additionalProperties": false, "properties": { "Condition": { @@ -22561,28 +22561,21 @@ "Properties": { "additionalProperties": false, "properties": { - "ExecutionRoleArn": { + "TypeName": { "type": "string" }, - "LoggingConfig": { - "$ref": "#/definitions/AWS::CloudFormation::HookVersion.LoggingConfig" - }, - "SchemaHandlerPackage": { + "TypeVersionArn": { "type": "string" }, - "TypeName": { + "VersionId": { "type": "string" } }, - "required": [ - "SchemaHandlerPackage", - "TypeName" - ], "type": "object" }, "Type": { "enum": [ - "AWS::CloudFormation::HookVersion" + "AWS::CloudFormation::HookDefaultVersion" ], "type": "string" }, @@ -22596,24 +22589,172 @@ } }, "required": [ - "Type", - "Properties" + "Type" ], "type": "object" }, - "AWS::CloudFormation::HookVersion.LoggingConfig": { - "additionalProperties": false, - "properties": { - "LogGroupName": { - "type": "string" - }, - "LogRoleArn": { - "type": "string" - } - }, - "type": "object" - }, - "AWS::CloudFormation::Macro": { + "AWS::CloudFormation::HookTypeConfig": { + "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": { + "Configuration": { + "type": "string" + }, + "ConfigurationAlias": { + "type": "string" + }, + "TypeArn": { + "type": "string" + }, + "TypeName": { + "type": "string" + } + }, + "required": [ + "Configuration" + ], + "type": "object" + }, + "Type": { + "enum": [ + "AWS::CloudFormation::HookTypeConfig" + ], + "type": "string" + }, + "UpdateReplacePolicy": { + "enum": [ + "Delete", + "Retain", + "Snapshot" + ], + "type": "string" + } + }, + "required": [ + "Type", + "Properties" + ], + "type": "object" + }, + "AWS::CloudFormation::HookVersion": { + "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": { + "ExecutionRoleArn": { + "type": "string" + }, + "LoggingConfig": { + "$ref": "#/definitions/AWS::CloudFormation::HookVersion.LoggingConfig" + }, + "SchemaHandlerPackage": { + "type": "string" + }, + "TypeName": { + "type": "string" + } + }, + "required": [ + "SchemaHandlerPackage", + "TypeName" + ], + "type": "object" + }, + "Type": { + "enum": [ + "AWS::CloudFormation::HookVersion" + ], + "type": "string" + }, + "UpdateReplacePolicy": { + "enum": [ + "Delete", + "Retain", + "Snapshot" + ], + "type": "string" + } + }, + "required": [ + "Type", + "Properties" + ], + "type": "object" + }, + "AWS::CloudFormation::HookVersion.LoggingConfig": { + "additionalProperties": false, + "properties": { + "LogGroupName": { + "type": "string" + }, + "LogRoleArn": { + "type": "string" + } + }, + "type": "object" + }, + "AWS::CloudFormation::Macro": { "additionalProperties": false, "properties": { "Condition": { @@ -32061,7 +32202,7 @@ ], "type": "object" }, - "AWS::Config::AggregationAuthorization": { + "AWS::Comprehend::Flywheel": { "additionalProperties": false, "properties": { "Condition": { @@ -32096,10 +32237,22 @@ "Properties": { "additionalProperties": false, "properties": { - "AuthorizedAccountId": { + "ActiveModelArn": { "type": "string" }, - "AuthorizedAwsRegion": { + "DataAccessRoleArn": { + "type": "string" + }, + "DataLakeS3Uri": { + "type": "string" + }, + "DataSecurityConfig": { + "$ref": "#/definitions/AWS::Comprehend::Flywheel.DataSecurityConfig" + }, + "FlywheelName": { + "type": "string" + }, + "ModelType": { "type": "string" }, "Tags": { @@ -32107,17 +32260,21 @@ "$ref": "#/definitions/Tag" }, "type": "array" + }, + "TaskConfig": { + "$ref": "#/definitions/AWS::Comprehend::Flywheel.TaskConfig" } }, "required": [ - "AuthorizedAccountId", - "AuthorizedAwsRegion" + "DataAccessRoleArn", + "DataLakeS3Uri", + "FlywheelName" ], "type": "object" }, "Type": { "enum": [ - "AWS::Config::AggregationAuthorization" + "AWS::Comprehend::Flywheel" ], "type": "string" }, @@ -32136,7 +32293,182 @@ ], "type": "object" }, - "AWS::Config::ConfigRule": { + "AWS::Comprehend::Flywheel.DataSecurityConfig": { + "additionalProperties": false, + "properties": { + "DataLakeKmsKeyId": { + "type": "string" + }, + "ModelKmsKeyId": { + "type": "string" + }, + "VolumeKmsKeyId": { + "type": "string" + }, + "VpcConfig": { + "$ref": "#/definitions/AWS::Comprehend::Flywheel.VpcConfig" + } + }, + "type": "object" + }, + "AWS::Comprehend::Flywheel.DocumentClassificationConfig": { + "additionalProperties": false, + "properties": { + "Labels": { + "items": { + "type": "string" + }, + "type": "array" + }, + "Mode": { + "type": "string" + } + }, + "required": [ + "Mode" + ], + "type": "object" + }, + "AWS::Comprehend::Flywheel.EntityRecognitionConfig": { + "additionalProperties": false, + "properties": { + "EntityTypes": { + "items": { + "$ref": "#/definitions/AWS::Comprehend::Flywheel.EntityTypesListItem" + }, + "type": "array" + } + }, + "type": "object" + }, + "AWS::Comprehend::Flywheel.EntityTypesListItem": { + "additionalProperties": false, + "properties": { + "Type": { + "type": "string" + } + }, + "required": [ + "Type" + ], + "type": "object" + }, + "AWS::Comprehend::Flywheel.TaskConfig": { + "additionalProperties": false, + "properties": { + "DocumentClassificationConfig": { + "$ref": "#/definitions/AWS::Comprehend::Flywheel.DocumentClassificationConfig" + }, + "EntityRecognitionConfig": { + "$ref": "#/definitions/AWS::Comprehend::Flywheel.EntityRecognitionConfig" + }, + "LanguageCode": { + "type": "string" + } + }, + "required": [ + "LanguageCode" + ], + "type": "object" + }, + "AWS::Comprehend::Flywheel.VpcConfig": { + "additionalProperties": false, + "properties": { + "SecurityGroupIds": { + "items": { + "type": "string" + }, + "type": "array" + }, + "Subnets": { + "items": { + "type": "string" + }, + "type": "array" + } + }, + "required": [ + "SecurityGroupIds", + "Subnets" + ], + "type": "object" + }, + "AWS::Config::AggregationAuthorization": { + "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": { + "AuthorizedAccountId": { + "type": "string" + }, + "AuthorizedAwsRegion": { + "type": "string" + }, + "Tags": { + "items": { + "$ref": "#/definitions/Tag" + }, + "type": "array" + } + }, + "required": [ + "AuthorizedAccountId", + "AuthorizedAwsRegion" + ], + "type": "object" + }, + "Type": { + "enum": [ + "AWS::Config::AggregationAuthorization" + ], + "type": "string" + }, + "UpdateReplacePolicy": { + "enum": [ + "Delete", + "Retain", + "Snapshot" + ], + "type": "string" + } + }, + "required": [ + "Type", + "Properties" + ], + "type": "object" + }, + "AWS::Config::ConfigRule": { "additionalProperties": false, "properties": { "Condition": { @@ -61358,7 +61690,6 @@ "required": [ "Actions", "Conditions", - "ListenerArn", "Priority" ], "type": "object" @@ -109945,18 +110276,7 @@ }, "AWS::MediaPackage::PackagingConfiguration.EncryptionContractConfiguration": { "additionalProperties": false, - "properties": { - "PresetSpeke20Audio": { - "type": "string" - }, - "PresetSpeke20Video": { - "type": "string" - } - }, - "required": [ - "PresetSpeke20Audio", - "PresetSpeke20Video" - ], + "properties": {}, "type": "object" }, "AWS::MediaPackage::PackagingConfiguration.HlsEncryption": { @@ -127238,6 +127558,9 @@ "Name": { "type": "string" }, + "Namespace": { + "type": "string" + }, "UnitLabel": { "type": "string" }, @@ -134820,6 +135143,9 @@ "properties": { "Bucket": { "type": "string" + }, + "BucketAccountId": { + "type": "string" } }, "required": [ @@ -138964,7 +139290,6 @@ "required": [ "Alias", "DisplayName", - "Plan", "Type" ], "type": "object" @@ -141977,7 +142302,7 @@ ], "type": "object" }, - "AWS::SageMaker::Model": { + "AWS::SageMaker::InferenceExperiment": { "additionalProperties": false, "properties": { "Condition": { @@ -142012,26 +142337,41 @@ "Properties": { "additionalProperties": false, "properties": { - "Containers": { + "DataStorageConfig": { + "$ref": "#/definitions/AWS::SageMaker::InferenceExperiment.DataStorageConfig" + }, + "Description": { + "type": "string" + }, + "DesiredState": { + "type": "string" + }, + "EndpointName": { + "type": "string" + }, + "KmsKey": { + "type": "string" + }, + "ModelVariants": { "items": { - "$ref": "#/definitions/AWS::SageMaker::Model.ContainerDefinition" + "$ref": "#/definitions/AWS::SageMaker::InferenceExperiment.ModelVariantConfig" }, "type": "array" }, - "EnableNetworkIsolation": { - "type": "boolean" + "Name": { + "type": "string" }, - "ExecutionRoleArn": { + "RoleArn": { "type": "string" }, - "InferenceExecutionConfig": { - "$ref": "#/definitions/AWS::SageMaker::Model.InferenceExecutionConfig" + "Schedule": { + "$ref": "#/definitions/AWS::SageMaker::InferenceExperiment.InferenceExperimentSchedule" }, - "ModelName": { - "type": "string" + "ShadowModeConfig": { + "$ref": "#/definitions/AWS::SageMaker::InferenceExperiment.ShadowModeConfig" }, - "PrimaryContainer": { - "$ref": "#/definitions/AWS::SageMaker::Model.ContainerDefinition" + "StatusReason": { + "type": "string" }, "Tags": { "items": { @@ -142039,18 +142379,22 @@ }, "type": "array" }, - "VpcConfig": { - "$ref": "#/definitions/AWS::SageMaker::Model.VpcConfig" + "Type": { + "type": "string" } }, "required": [ - "ExecutionRoleArn" + "EndpointName", + "ModelVariants", + "Name", + "RoleArn", + "Type" ], "type": "object" }, "Type": { "enum": [ - "AWS::SageMaker::Model" + "AWS::SageMaker::InferenceExperiment" ], "type": "string" }, @@ -142069,110 +142413,160 @@ ], "type": "object" }, - "AWS::SageMaker::Model.ContainerDefinition": { + "AWS::SageMaker::InferenceExperiment.CaptureContentTypeHeader": { "additionalProperties": false, "properties": { - "ContainerHostname": { - "type": "string" + "CsvContentTypes": { + "items": { + "type": "string" + }, + "type": "array" }, - "Environment": { - "type": "object" + "JsonContentTypes": { + "items": { + "type": "string" + }, + "type": "array" + } + }, + "type": "object" + }, + "AWS::SageMaker::InferenceExperiment.DataStorageConfig": { + "additionalProperties": false, + "properties": { + "ContentType": { + "$ref": "#/definitions/AWS::SageMaker::InferenceExperiment.CaptureContentTypeHeader" }, - "Image": { + "Destination": { "type": "string" }, - "ImageConfig": { - "$ref": "#/definitions/AWS::SageMaker::Model.ImageConfig" - }, - "InferenceSpecificationName": { + "KmsKey": { "type": "string" - }, - "Mode": { + } + }, + "required": [ + "Destination" + ], + "type": "object" + }, + "AWS::SageMaker::InferenceExperiment.EndpointMetadata": { + "additionalProperties": false, + "properties": { + "EndpointConfigName": { "type": "string" }, - "ModelDataUrl": { + "EndpointName": { "type": "string" }, - "ModelPackageName": { + "EndpointStatus": { "type": "string" - }, - "MultiModelConfig": { - "$ref": "#/definitions/AWS::SageMaker::Model.MultiModelConfig" } }, + "required": [ + "EndpointName" + ], "type": "object" }, - "AWS::SageMaker::Model.ImageConfig": { + "AWS::SageMaker::InferenceExperiment.InferenceExperimentSchedule": { "additionalProperties": false, "properties": { - "RepositoryAccessMode": { + "EndTime": { "type": "string" }, - "RepositoryAuthConfig": { - "$ref": "#/definitions/AWS::SageMaker::Model.RepositoryAuthConfig" + "StartTime": { + "type": "string" } }, - "required": [ - "RepositoryAccessMode" - ], "type": "object" }, - "AWS::SageMaker::Model.InferenceExecutionConfig": { + "AWS::SageMaker::InferenceExperiment.ModelInfrastructureConfig": { "additionalProperties": false, "properties": { - "Mode": { + "InfrastructureType": { "type": "string" + }, + "RealTimeInferenceConfig": { + "$ref": "#/definitions/AWS::SageMaker::InferenceExperiment.RealTimeInferenceConfig" } }, "required": [ - "Mode" + "InfrastructureType", + "RealTimeInferenceConfig" ], "type": "object" }, - "AWS::SageMaker::Model.MultiModelConfig": { + "AWS::SageMaker::InferenceExperiment.ModelVariantConfig": { "additionalProperties": false, "properties": { - "ModelCacheSetting": { + "InfrastructureConfig": { + "$ref": "#/definitions/AWS::SageMaker::InferenceExperiment.ModelInfrastructureConfig" + }, + "ModelName": { + "type": "string" + }, + "VariantName": { "type": "string" } }, + "required": [ + "InfrastructureConfig", + "ModelName", + "VariantName" + ], "type": "object" }, - "AWS::SageMaker::Model.RepositoryAuthConfig": { + "AWS::SageMaker::InferenceExperiment.RealTimeInferenceConfig": { "additionalProperties": false, "properties": { - "RepositoryCredentialsProviderArn": { + "InstanceCount": { + "type": "number" + }, + "InstanceType": { "type": "string" } }, "required": [ - "RepositoryCredentialsProviderArn" + "InstanceCount", + "InstanceType" ], "type": "object" }, - "AWS::SageMaker::Model.VpcConfig": { + "AWS::SageMaker::InferenceExperiment.ShadowModeConfig": { "additionalProperties": false, "properties": { - "SecurityGroupIds": { + "ShadowModelVariants": { "items": { - "type": "string" + "$ref": "#/definitions/AWS::SageMaker::InferenceExperiment.ShadowModelVariantConfig" }, "type": "array" }, - "Subnets": { - "items": { - "type": "string" - }, - "type": "array" + "SourceModelVariantName": { + "type": "string" } }, "required": [ - "SecurityGroupIds", - "Subnets" + "ShadowModelVariants", + "SourceModelVariantName" ], "type": "object" }, - "AWS::SageMaker::ModelBiasJobDefinition": { + "AWS::SageMaker::InferenceExperiment.ShadowModelVariantConfig": { + "additionalProperties": false, + "properties": { + "SamplingPercentage": { + "type": "number" + }, + "ShadowModelVariantName": { + "type": "string" + } + }, + "required": [ + "SamplingPercentage", + "ShadowModelVariantName" + ], + "type": "object" + }, + "AWS::SageMaker::Model": { "additionalProperties": false, "properties": { "Condition": { @@ -142207,55 +142601,45 @@ "Properties": { "additionalProperties": false, "properties": { - "EndpointName": { - "type": "string" - }, - "JobDefinitionName": { - "type": "string" - }, - "JobResources": { - "$ref": "#/definitions/AWS::SageMaker::ModelBiasJobDefinition.MonitoringResources" - }, - "ModelBiasAppSpecification": { - "$ref": "#/definitions/AWS::SageMaker::ModelBiasJobDefinition.ModelBiasAppSpecification" - }, - "ModelBiasBaselineConfig": { - "$ref": "#/definitions/AWS::SageMaker::ModelBiasJobDefinition.ModelBiasBaselineConfig" + "Containers": { + "items": { + "$ref": "#/definitions/AWS::SageMaker::Model.ContainerDefinition" + }, + "type": "array" }, - "ModelBiasJobInput": { - "$ref": "#/definitions/AWS::SageMaker::ModelBiasJobDefinition.ModelBiasJobInput" + "EnableNetworkIsolation": { + "type": "boolean" }, - "ModelBiasJobOutputConfig": { - "$ref": "#/definitions/AWS::SageMaker::ModelBiasJobDefinition.MonitoringOutputConfig" + "ExecutionRoleArn": { + "type": "string" }, - "NetworkConfig": { - "$ref": "#/definitions/AWS::SageMaker::ModelBiasJobDefinition.NetworkConfig" + "InferenceExecutionConfig": { + "$ref": "#/definitions/AWS::SageMaker::Model.InferenceExecutionConfig" }, - "RoleArn": { + "ModelName": { "type": "string" }, - "StoppingCondition": { - "$ref": "#/definitions/AWS::SageMaker::ModelBiasJobDefinition.StoppingCondition" + "PrimaryContainer": { + "$ref": "#/definitions/AWS::SageMaker::Model.ContainerDefinition" }, "Tags": { "items": { "$ref": "#/definitions/Tag" }, "type": "array" + }, + "VpcConfig": { + "$ref": "#/definitions/AWS::SageMaker::Model.VpcConfig" } }, "required": [ - "JobResources", - "ModelBiasAppSpecification", - "ModelBiasJobInput", - "ModelBiasJobOutputConfig", - "RoleArn" + "ExecutionRoleArn" ], "type": "object" }, "Type": { "enum": [ - "AWS::SageMaker::ModelBiasJobDefinition" + "AWS::SageMaker::Model" ], "type": "string" }, @@ -142274,311 +142658,88 @@ ], "type": "object" }, - "AWS::SageMaker::ModelBiasJobDefinition.BatchTransformInput": { - "additionalProperties": false, - "properties": { - "DataCapturedDestinationS3Uri": { - "type": "string" - }, - "DatasetFormat": { - "$ref": "#/definitions/AWS::SageMaker::ModelBiasJobDefinition.DatasetFormat" - }, - "EndTimeOffset": { - "type": "string" - }, - "FeaturesAttribute": { - "type": "string" - }, - "InferenceAttribute": { - "type": "string" - }, - "LocalPath": { - "type": "string" - }, - "ProbabilityAttribute": { - "type": "string" - }, - "ProbabilityThresholdAttribute": { - "type": "number" - }, - "S3DataDistributionType": { - "type": "string" - }, - "S3InputMode": { - "type": "string" - }, - "StartTimeOffset": { - "type": "string" - } - }, - "required": [ - "DataCapturedDestinationS3Uri", - "DatasetFormat", - "LocalPath" - ], - "type": "object" - }, - "AWS::SageMaker::ModelBiasJobDefinition.ClusterConfig": { - "additionalProperties": false, - "properties": { - "InstanceCount": { - "type": "number" - }, - "InstanceType": { - "type": "string" - }, - "VolumeKmsKeyId": { - "type": "string" - }, - "VolumeSizeInGB": { - "type": "number" - } - }, - "required": [ - "InstanceCount", - "InstanceType", - "VolumeSizeInGB" - ], - "type": "object" - }, - "AWS::SageMaker::ModelBiasJobDefinition.ConstraintsResource": { - "additionalProperties": false, - "properties": { - "S3Uri": { - "type": "string" - } - }, - "type": "object" - }, - "AWS::SageMaker::ModelBiasJobDefinition.Csv": { - "additionalProperties": false, - "properties": { - "Header": { - "type": "boolean" - } - }, - "type": "object" - }, - "AWS::SageMaker::ModelBiasJobDefinition.DatasetFormat": { - "additionalProperties": false, - "properties": { - "Csv": { - "$ref": "#/definitions/AWS::SageMaker::ModelBiasJobDefinition.Csv" - }, - "Json": { - "$ref": "#/definitions/AWS::SageMaker::ModelBiasJobDefinition.Json" - }, - "Parquet": { - "type": "boolean" - } - }, - "type": "object" - }, - "AWS::SageMaker::ModelBiasJobDefinition.EndpointInput": { + "AWS::SageMaker::Model.ContainerDefinition": { "additionalProperties": false, "properties": { - "EndTimeOffset": { - "type": "string" - }, - "EndpointName": { + "ContainerHostname": { "type": "string" }, - "FeaturesAttribute": { - "type": "string" + "Environment": { + "type": "object" }, - "InferenceAttribute": { + "Image": { "type": "string" }, - "LocalPath": { - "type": "string" + "ImageConfig": { + "$ref": "#/definitions/AWS::SageMaker::Model.ImageConfig" }, - "ProbabilityAttribute": { + "InferenceSpecificationName": { "type": "string" }, - "ProbabilityThresholdAttribute": { - "type": "number" - }, - "S3DataDistributionType": { + "Mode": { "type": "string" }, - "S3InputMode": { + "ModelDataUrl": { "type": "string" }, - "StartTimeOffset": { - "type": "string" - } - }, - "required": [ - "EndpointName", - "LocalPath" - ], - "type": "object" - }, - "AWS::SageMaker::ModelBiasJobDefinition.Json": { - "additionalProperties": false, - "properties": { - "Line": { - "type": "boolean" - } - }, - "type": "object" - }, - "AWS::SageMaker::ModelBiasJobDefinition.ModelBiasAppSpecification": { - "additionalProperties": false, - "properties": { - "ConfigUri": { + "ModelPackageName": { "type": "string" }, - "Environment": { - "additionalProperties": true, - "patternProperties": { - "^[a-zA-Z0-9]+$": { - "type": "string" - } - }, - "type": "object" - }, - "ImageUri": { - "type": "string" + "MultiModelConfig": { + "$ref": "#/definitions/AWS::SageMaker::Model.MultiModelConfig" } }, - "required": [ - "ConfigUri", - "ImageUri" - ], "type": "object" }, - "AWS::SageMaker::ModelBiasJobDefinition.ModelBiasBaselineConfig": { + "AWS::SageMaker::Model.ImageConfig": { "additionalProperties": false, "properties": { - "BaseliningJobName": { + "RepositoryAccessMode": { "type": "string" }, - "ConstraintsResource": { - "$ref": "#/definitions/AWS::SageMaker::ModelBiasJobDefinition.ConstraintsResource" - } - }, - "type": "object" - }, - "AWS::SageMaker::ModelBiasJobDefinition.ModelBiasJobInput": { - "additionalProperties": false, - "properties": { - "BatchTransformInput": { - "$ref": "#/definitions/AWS::SageMaker::ModelBiasJobDefinition.BatchTransformInput" - }, - "EndpointInput": { - "$ref": "#/definitions/AWS::SageMaker::ModelBiasJobDefinition.EndpointInput" - }, - "GroundTruthS3Input": { - "$ref": "#/definitions/AWS::SageMaker::ModelBiasJobDefinition.MonitoringGroundTruthS3Input" + "RepositoryAuthConfig": { + "$ref": "#/definitions/AWS::SageMaker::Model.RepositoryAuthConfig" } }, "required": [ - "GroundTruthS3Input" + "RepositoryAccessMode" ], "type": "object" }, - "AWS::SageMaker::ModelBiasJobDefinition.MonitoringGroundTruthS3Input": { + "AWS::SageMaker::Model.InferenceExecutionConfig": { "additionalProperties": false, "properties": { - "S3Uri": { + "Mode": { "type": "string" } }, "required": [ - "S3Uri" - ], - "type": "object" - }, - "AWS::SageMaker::ModelBiasJobDefinition.MonitoringOutput": { - "additionalProperties": false, - "properties": { - "S3Output": { - "$ref": "#/definitions/AWS::SageMaker::ModelBiasJobDefinition.S3Output" - } - }, - "required": [ - "S3Output" + "Mode" ], "type": "object" }, - "AWS::SageMaker::ModelBiasJobDefinition.MonitoringOutputConfig": { + "AWS::SageMaker::Model.MultiModelConfig": { "additionalProperties": false, "properties": { - "KmsKeyId": { + "ModelCacheSetting": { "type": "string" - }, - "MonitoringOutputs": { - "items": { - "$ref": "#/definitions/AWS::SageMaker::ModelBiasJobDefinition.MonitoringOutput" - }, - "type": "array" - } - }, - "required": [ - "MonitoringOutputs" - ], - "type": "object" - }, - "AWS::SageMaker::ModelBiasJobDefinition.MonitoringResources": { - "additionalProperties": false, - "properties": { - "ClusterConfig": { - "$ref": "#/definitions/AWS::SageMaker::ModelBiasJobDefinition.ClusterConfig" - } - }, - "required": [ - "ClusterConfig" - ], - "type": "object" - }, - "AWS::SageMaker::ModelBiasJobDefinition.NetworkConfig": { - "additionalProperties": false, - "properties": { - "EnableInterContainerTrafficEncryption": { - "type": "boolean" - }, - "EnableNetworkIsolation": { - "type": "boolean" - }, - "VpcConfig": { - "$ref": "#/definitions/AWS::SageMaker::ModelBiasJobDefinition.VpcConfig" } }, "type": "object" }, - "AWS::SageMaker::ModelBiasJobDefinition.S3Output": { + "AWS::SageMaker::Model.RepositoryAuthConfig": { "additionalProperties": false, "properties": { - "LocalPath": { - "type": "string" - }, - "S3UploadMode": { - "type": "string" - }, - "S3Uri": { + "RepositoryCredentialsProviderArn": { "type": "string" } }, "required": [ - "LocalPath", - "S3Uri" - ], - "type": "object" - }, - "AWS::SageMaker::ModelBiasJobDefinition.StoppingCondition": { - "additionalProperties": false, - "properties": { - "MaxRuntimeInSeconds": { - "type": "number" - } - }, - "required": [ - "MaxRuntimeInSeconds" + "RepositoryCredentialsProviderArn" ], "type": "object" }, - "AWS::SageMaker::ModelBiasJobDefinition.VpcConfig": { + "AWS::SageMaker::Model.VpcConfig": { "additionalProperties": false, "properties": { "SecurityGroupIds": { @@ -142600,7 +142761,435 @@ ], "type": "object" }, - "AWS::SageMaker::ModelCard": { + "AWS::SageMaker::ModelBiasJobDefinition": { + "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": { + "EndpointName": { + "type": "string" + }, + "JobDefinitionName": { + "type": "string" + }, + "JobResources": { + "$ref": "#/definitions/AWS::SageMaker::ModelBiasJobDefinition.MonitoringResources" + }, + "ModelBiasAppSpecification": { + "$ref": "#/definitions/AWS::SageMaker::ModelBiasJobDefinition.ModelBiasAppSpecification" + }, + "ModelBiasBaselineConfig": { + "$ref": "#/definitions/AWS::SageMaker::ModelBiasJobDefinition.ModelBiasBaselineConfig" + }, + "ModelBiasJobInput": { + "$ref": "#/definitions/AWS::SageMaker::ModelBiasJobDefinition.ModelBiasJobInput" + }, + "ModelBiasJobOutputConfig": { + "$ref": "#/definitions/AWS::SageMaker::ModelBiasJobDefinition.MonitoringOutputConfig" + }, + "NetworkConfig": { + "$ref": "#/definitions/AWS::SageMaker::ModelBiasJobDefinition.NetworkConfig" + }, + "RoleArn": { + "type": "string" + }, + "StoppingCondition": { + "$ref": "#/definitions/AWS::SageMaker::ModelBiasJobDefinition.StoppingCondition" + }, + "Tags": { + "items": { + "$ref": "#/definitions/Tag" + }, + "type": "array" + } + }, + "required": [ + "JobResources", + "ModelBiasAppSpecification", + "ModelBiasJobInput", + "ModelBiasJobOutputConfig", + "RoleArn" + ], + "type": "object" + }, + "Type": { + "enum": [ + "AWS::SageMaker::ModelBiasJobDefinition" + ], + "type": "string" + }, + "UpdateReplacePolicy": { + "enum": [ + "Delete", + "Retain", + "Snapshot" + ], + "type": "string" + } + }, + "required": [ + "Type", + "Properties" + ], + "type": "object" + }, + "AWS::SageMaker::ModelBiasJobDefinition.BatchTransformInput": { + "additionalProperties": false, + "properties": { + "DataCapturedDestinationS3Uri": { + "type": "string" + }, + "DatasetFormat": { + "$ref": "#/definitions/AWS::SageMaker::ModelBiasJobDefinition.DatasetFormat" + }, + "EndTimeOffset": { + "type": "string" + }, + "FeaturesAttribute": { + "type": "string" + }, + "InferenceAttribute": { + "type": "string" + }, + "LocalPath": { + "type": "string" + }, + "ProbabilityAttribute": { + "type": "string" + }, + "ProbabilityThresholdAttribute": { + "type": "number" + }, + "S3DataDistributionType": { + "type": "string" + }, + "S3InputMode": { + "type": "string" + }, + "StartTimeOffset": { + "type": "string" + } + }, + "required": [ + "DataCapturedDestinationS3Uri", + "DatasetFormat", + "LocalPath" + ], + "type": "object" + }, + "AWS::SageMaker::ModelBiasJobDefinition.ClusterConfig": { + "additionalProperties": false, + "properties": { + "InstanceCount": { + "type": "number" + }, + "InstanceType": { + "type": "string" + }, + "VolumeKmsKeyId": { + "type": "string" + }, + "VolumeSizeInGB": { + "type": "number" + } + }, + "required": [ + "InstanceCount", + "InstanceType", + "VolumeSizeInGB" + ], + "type": "object" + }, + "AWS::SageMaker::ModelBiasJobDefinition.ConstraintsResource": { + "additionalProperties": false, + "properties": { + "S3Uri": { + "type": "string" + } + }, + "type": "object" + }, + "AWS::SageMaker::ModelBiasJobDefinition.Csv": { + "additionalProperties": false, + "properties": { + "Header": { + "type": "boolean" + } + }, + "type": "object" + }, + "AWS::SageMaker::ModelBiasJobDefinition.DatasetFormat": { + "additionalProperties": false, + "properties": { + "Csv": { + "$ref": "#/definitions/AWS::SageMaker::ModelBiasJobDefinition.Csv" + }, + "Json": { + "$ref": "#/definitions/AWS::SageMaker::ModelBiasJobDefinition.Json" + }, + "Parquet": { + "type": "boolean" + } + }, + "type": "object" + }, + "AWS::SageMaker::ModelBiasJobDefinition.EndpointInput": { + "additionalProperties": false, + "properties": { + "EndTimeOffset": { + "type": "string" + }, + "EndpointName": { + "type": "string" + }, + "FeaturesAttribute": { + "type": "string" + }, + "InferenceAttribute": { + "type": "string" + }, + "LocalPath": { + "type": "string" + }, + "ProbabilityAttribute": { + "type": "string" + }, + "ProbabilityThresholdAttribute": { + "type": "number" + }, + "S3DataDistributionType": { + "type": "string" + }, + "S3InputMode": { + "type": "string" + }, + "StartTimeOffset": { + "type": "string" + } + }, + "required": [ + "EndpointName", + "LocalPath" + ], + "type": "object" + }, + "AWS::SageMaker::ModelBiasJobDefinition.Json": { + "additionalProperties": false, + "properties": { + "Line": { + "type": "boolean" + } + }, + "type": "object" + }, + "AWS::SageMaker::ModelBiasJobDefinition.ModelBiasAppSpecification": { + "additionalProperties": false, + "properties": { + "ConfigUri": { + "type": "string" + }, + "Environment": { + "additionalProperties": true, + "patternProperties": { + "^[a-zA-Z0-9]+$": { + "type": "string" + } + }, + "type": "object" + }, + "ImageUri": { + "type": "string" + } + }, + "required": [ + "ConfigUri", + "ImageUri" + ], + "type": "object" + }, + "AWS::SageMaker::ModelBiasJobDefinition.ModelBiasBaselineConfig": { + "additionalProperties": false, + "properties": { + "BaseliningJobName": { + "type": "string" + }, + "ConstraintsResource": { + "$ref": "#/definitions/AWS::SageMaker::ModelBiasJobDefinition.ConstraintsResource" + } + }, + "type": "object" + }, + "AWS::SageMaker::ModelBiasJobDefinition.ModelBiasJobInput": { + "additionalProperties": false, + "properties": { + "BatchTransformInput": { + "$ref": "#/definitions/AWS::SageMaker::ModelBiasJobDefinition.BatchTransformInput" + }, + "EndpointInput": { + "$ref": "#/definitions/AWS::SageMaker::ModelBiasJobDefinition.EndpointInput" + }, + "GroundTruthS3Input": { + "$ref": "#/definitions/AWS::SageMaker::ModelBiasJobDefinition.MonitoringGroundTruthS3Input" + } + }, + "required": [ + "GroundTruthS3Input" + ], + "type": "object" + }, + "AWS::SageMaker::ModelBiasJobDefinition.MonitoringGroundTruthS3Input": { + "additionalProperties": false, + "properties": { + "S3Uri": { + "type": "string" + } + }, + "required": [ + "S3Uri" + ], + "type": "object" + }, + "AWS::SageMaker::ModelBiasJobDefinition.MonitoringOutput": { + "additionalProperties": false, + "properties": { + "S3Output": { + "$ref": "#/definitions/AWS::SageMaker::ModelBiasJobDefinition.S3Output" + } + }, + "required": [ + "S3Output" + ], + "type": "object" + }, + "AWS::SageMaker::ModelBiasJobDefinition.MonitoringOutputConfig": { + "additionalProperties": false, + "properties": { + "KmsKeyId": { + "type": "string" + }, + "MonitoringOutputs": { + "items": { + "$ref": "#/definitions/AWS::SageMaker::ModelBiasJobDefinition.MonitoringOutput" + }, + "type": "array" + } + }, + "required": [ + "MonitoringOutputs" + ], + "type": "object" + }, + "AWS::SageMaker::ModelBiasJobDefinition.MonitoringResources": { + "additionalProperties": false, + "properties": { + "ClusterConfig": { + "$ref": "#/definitions/AWS::SageMaker::ModelBiasJobDefinition.ClusterConfig" + } + }, + "required": [ + "ClusterConfig" + ], + "type": "object" + }, + "AWS::SageMaker::ModelBiasJobDefinition.NetworkConfig": { + "additionalProperties": false, + "properties": { + "EnableInterContainerTrafficEncryption": { + "type": "boolean" + }, + "EnableNetworkIsolation": { + "type": "boolean" + }, + "VpcConfig": { + "$ref": "#/definitions/AWS::SageMaker::ModelBiasJobDefinition.VpcConfig" + } + }, + "type": "object" + }, + "AWS::SageMaker::ModelBiasJobDefinition.S3Output": { + "additionalProperties": false, + "properties": { + "LocalPath": { + "type": "string" + }, + "S3UploadMode": { + "type": "string" + }, + "S3Uri": { + "type": "string" + } + }, + "required": [ + "LocalPath", + "S3Uri" + ], + "type": "object" + }, + "AWS::SageMaker::ModelBiasJobDefinition.StoppingCondition": { + "additionalProperties": false, + "properties": { + "MaxRuntimeInSeconds": { + "type": "number" + } + }, + "required": [ + "MaxRuntimeInSeconds" + ], + "type": "object" + }, + "AWS::SageMaker::ModelBiasJobDefinition.VpcConfig": { + "additionalProperties": false, + "properties": { + "SecurityGroupIds": { + "items": { + "type": "string" + }, + "type": "array" + }, + "Subnets": { + "items": { + "type": "string" + }, + "type": "array" + } + }, + "required": [ + "SecurityGroupIds", + "Subnets" + ], + "type": "object" + }, + "AWS::SageMaker::ModelCard": { "additionalProperties": false, "properties": { "Condition": { @@ -154488,36 +155077,1262 @@ "Properties": { "additionalProperties": false, "properties": { - "Description": { + "Description": { + "type": "string" + }, + "OnExceptionSteps": { + "items": { + "$ref": "#/definitions/AWS::Transfer::Workflow.WorkflowStep" + }, + "type": "array" + }, + "Steps": { + "items": { + "$ref": "#/definitions/AWS::Transfer::Workflow.WorkflowStep" + }, + "type": "array" + }, + "Tags": { + "items": { + "$ref": "#/definitions/Tag" + }, + "type": "array" + } + }, + "required": [ + "Steps" + ], + "type": "object" + }, + "Type": { + "enum": [ + "AWS::Transfer::Workflow" + ], + "type": "string" + }, + "UpdateReplacePolicy": { + "enum": [ + "Delete", + "Retain", + "Snapshot" + ], + "type": "string" + } + }, + "required": [ + "Type", + "Properties" + ], + "type": "object" + }, + "AWS::Transfer::Workflow.CopyStepDetails": { + "additionalProperties": false, + "properties": { + "DestinationFileLocation": { + "$ref": "#/definitions/AWS::Transfer::Workflow.S3FileLocation" + }, + "Name": { + "type": "string" + }, + "OverwriteExisting": { + "type": "string" + }, + "SourceFileLocation": { + "type": "string" + } + }, + "type": "object" + }, + "AWS::Transfer::Workflow.CustomStepDetails": { + "additionalProperties": false, + "properties": { + "Name": { + "type": "string" + }, + "SourceFileLocation": { + "type": "string" + }, + "Target": { + "type": "string" + }, + "TimeoutSeconds": { + "type": "number" + } + }, + "type": "object" + }, + "AWS::Transfer::Workflow.DecryptStepDetails": { + "additionalProperties": false, + "properties": { + "DestinationFileLocation": { + "$ref": "#/definitions/AWS::Transfer::Workflow.InputFileLocation" + }, + "Name": { + "type": "string" + }, + "OverwriteExisting": { + "type": "string" + }, + "SourceFileLocation": { + "type": "string" + }, + "Type": { + "type": "string" + } + }, + "type": "object" + }, + "AWS::Transfer::Workflow.DeleteStepDetails": { + "additionalProperties": false, + "properties": { + "Name": { + "type": "string" + }, + "SourceFileLocation": { + "type": "string" + } + }, + "type": "object" + }, + "AWS::Transfer::Workflow.EfsInputFileLocation": { + "additionalProperties": false, + "properties": { + "FileSystemId": { + "type": "string" + }, + "Path": { + "type": "string" + } + }, + "type": "object" + }, + "AWS::Transfer::Workflow.InputFileLocation": { + "additionalProperties": false, + "properties": { + "EfsFileLocation": { + "$ref": "#/definitions/AWS::Transfer::Workflow.EfsInputFileLocation" + }, + "S3FileLocation": { + "$ref": "#/definitions/AWS::Transfer::Workflow.S3InputFileLocation" + } + }, + "type": "object" + }, + "AWS::Transfer::Workflow.S3FileLocation": { + "additionalProperties": false, + "properties": { + "S3FileLocation": { + "$ref": "#/definitions/AWS::Transfer::Workflow.S3InputFileLocation" + } + }, + "type": "object" + }, + "AWS::Transfer::Workflow.S3InputFileLocation": { + "additionalProperties": false, + "properties": { + "Bucket": { + "type": "string" + }, + "Key": { + "type": "string" + } + }, + "type": "object" + }, + "AWS::Transfer::Workflow.S3Tag": { + "additionalProperties": false, + "properties": { + "Key": { + "type": "string" + }, + "Value": { + "type": "string" + } + }, + "required": [ + "Key", + "Value" + ], + "type": "object" + }, + "AWS::Transfer::Workflow.TagStepDetails": { + "additionalProperties": false, + "properties": { + "Name": { + "type": "string" + }, + "SourceFileLocation": { + "type": "string" + }, + "Tags": { + "items": { + "$ref": "#/definitions/AWS::Transfer::Workflow.S3Tag" + }, + "type": "array" + } + }, + "type": "object" + }, + "AWS::Transfer::Workflow.WorkflowStep": { + "additionalProperties": false, + "properties": { + "CopyStepDetails": { + "$ref": "#/definitions/AWS::Transfer::Workflow.CopyStepDetails" + }, + "CustomStepDetails": { + "$ref": "#/definitions/AWS::Transfer::Workflow.CustomStepDetails" + }, + "DecryptStepDetails": { + "$ref": "#/definitions/AWS::Transfer::Workflow.DecryptStepDetails" + }, + "DeleteStepDetails": { + "$ref": "#/definitions/AWS::Transfer::Workflow.DeleteStepDetails" + }, + "TagStepDetails": { + "$ref": "#/definitions/AWS::Transfer::Workflow.TagStepDetails" + }, + "Type": { + "type": "string" + } + }, + "type": "object" + }, + "AWS::VoiceID::Domain": { + "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": { + "Description": { + "type": "string" + }, + "Name": { + "type": "string" + }, + "ServerSideEncryptionConfiguration": { + "$ref": "#/definitions/AWS::VoiceID::Domain.ServerSideEncryptionConfiguration" + }, + "Tags": { + "items": { + "$ref": "#/definitions/Tag" + }, + "type": "array" + } + }, + "required": [ + "Name", + "ServerSideEncryptionConfiguration" + ], + "type": "object" + }, + "Type": { + "enum": [ + "AWS::VoiceID::Domain" + ], + "type": "string" + }, + "UpdateReplacePolicy": { + "enum": [ + "Delete", + "Retain", + "Snapshot" + ], + "type": "string" + } + }, + "required": [ + "Type", + "Properties" + ], + "type": "object" + }, + "AWS::VoiceID::Domain.ServerSideEncryptionConfiguration": { + "additionalProperties": false, + "properties": { + "KmsKeyId": { + "type": "string" + } + }, + "required": [ + "KmsKeyId" + ], + "type": "object" + }, + "AWS::VpcLattice::AccessLogSubscription": { + "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": { + "DestinationArn": { + "type": "string" + }, + "ResourceIdentifier": { + "type": "string" + }, + "Tags": { + "items": { + "$ref": "#/definitions/Tag" + }, + "type": "array" + } + }, + "required": [ + "DestinationArn" + ], + "type": "object" + }, + "Type": { + "enum": [ + "AWS::VpcLattice::AccessLogSubscription" + ], + "type": "string" + }, + "UpdateReplacePolicy": { + "enum": [ + "Delete", + "Retain", + "Snapshot" + ], + "type": "string" + } + }, + "required": [ + "Type", + "Properties" + ], + "type": "object" + }, + "AWS::VpcLattice::AuthPolicy": { + "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": { + "Policy": { + "type": "object" + }, + "ResourceIdentifier": { + "type": "string" + } + }, + "required": [ + "Policy", + "ResourceIdentifier" + ], + "type": "object" + }, + "Type": { + "enum": [ + "AWS::VpcLattice::AuthPolicy" + ], + "type": "string" + }, + "UpdateReplacePolicy": { + "enum": [ + "Delete", + "Retain", + "Snapshot" + ], + "type": "string" + } + }, + "required": [ + "Type", + "Properties" + ], + "type": "object" + }, + "AWS::VpcLattice::Listener": { + "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": { + "DefaultAction": { + "$ref": "#/definitions/AWS::VpcLattice::Listener.DefaultAction" + }, + "Name": { + "type": "string" + }, + "Port": { + "type": "number" + }, + "Protocol": { + "type": "string" + }, + "ServiceIdentifier": { + "type": "string" + }, + "Tags": { + "items": { + "$ref": "#/definitions/Tag" + }, + "type": "array" + } + }, + "required": [ + "DefaultAction", + "Protocol" + ], + "type": "object" + }, + "Type": { + "enum": [ + "AWS::VpcLattice::Listener" + ], + "type": "string" + }, + "UpdateReplacePolicy": { + "enum": [ + "Delete", + "Retain", + "Snapshot" + ], + "type": "string" + } + }, + "required": [ + "Type", + "Properties" + ], + "type": "object" + }, + "AWS::VpcLattice::Listener.DefaultAction": { + "additionalProperties": false, + "properties": { + "Forward": { + "$ref": "#/definitions/AWS::VpcLattice::Listener.Forward" + } + }, + "required": [ + "Forward" + ], + "type": "object" + }, + "AWS::VpcLattice::Listener.Forward": { + "additionalProperties": false, + "properties": { + "TargetGroups": { + "items": { + "$ref": "#/definitions/AWS::VpcLattice::Listener.WeightedTargetGroup" + }, + "type": "array" + } + }, + "required": [ + "TargetGroups" + ], + "type": "object" + }, + "AWS::VpcLattice::Listener.WeightedTargetGroup": { + "additionalProperties": false, + "properties": { + "TargetGroupIdentifier": { + "type": "string" + }, + "Weight": { + "type": "number" + } + }, + "required": [ + "TargetGroupIdentifier" + ], + "type": "object" + }, + "AWS::VpcLattice::ResourcePolicy": { + "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": { + "Policy": { + "type": "object" + }, + "ResourceArn": { + "type": "string" + } + }, + "required": [ + "Policy", + "ResourceArn" + ], + "type": "object" + }, + "Type": { + "enum": [ + "AWS::VpcLattice::ResourcePolicy" + ], + "type": "string" + }, + "UpdateReplacePolicy": { + "enum": [ + "Delete", + "Retain", + "Snapshot" + ], + "type": "string" + } + }, + "required": [ + "Type", + "Properties" + ], + "type": "object" + }, + "AWS::VpcLattice::Rule": { + "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": { + "Action": { + "$ref": "#/definitions/AWS::VpcLattice::Rule.Action" + }, + "ListenerIdentifier": { + "type": "string" + }, + "Match": { + "$ref": "#/definitions/AWS::VpcLattice::Rule.Match" + }, + "Name": { + "type": "string" + }, + "Priority": { + "type": "number" + }, + "ServiceIdentifier": { + "type": "string" + }, + "Tags": { + "items": { + "$ref": "#/definitions/Tag" + }, + "type": "array" + } + }, + "required": [ + "Action", + "Match", + "Priority" + ], + "type": "object" + }, + "Type": { + "enum": [ + "AWS::VpcLattice::Rule" + ], + "type": "string" + }, + "UpdateReplacePolicy": { + "enum": [ + "Delete", + "Retain", + "Snapshot" + ], + "type": "string" + } + }, + "required": [ + "Type", + "Properties" + ], + "type": "object" + }, + "AWS::VpcLattice::Rule.Action": { + "additionalProperties": false, + "properties": { + "Forward": { + "$ref": "#/definitions/AWS::VpcLattice::Rule.Forward" + } + }, + "required": [ + "Forward" + ], + "type": "object" + }, + "AWS::VpcLattice::Rule.Forward": { + "additionalProperties": false, + "properties": { + "TargetGroups": { + "items": { + "$ref": "#/definitions/AWS::VpcLattice::Rule.WeightedTargetGroup" + }, + "type": "array" + } + }, + "required": [ + "TargetGroups" + ], + "type": "object" + }, + "AWS::VpcLattice::Rule.HeaderMatch": { + "additionalProperties": false, + "properties": { + "CaseSensitive": { + "type": "boolean" + }, + "Match": { + "$ref": "#/definitions/AWS::VpcLattice::Rule.HeaderMatchType" + }, + "Name": { + "type": "string" + } + }, + "required": [ + "Match", + "Name" + ], + "type": "object" + }, + "AWS::VpcLattice::Rule.HeaderMatchType": { + "additionalProperties": false, + "properties": { + "Contains": { + "type": "string" + }, + "Exact": { + "type": "string" + }, + "Prefix": { + "type": "string" + } + }, + "type": "object" + }, + "AWS::VpcLattice::Rule.HttpMatch": { + "additionalProperties": false, + "properties": { + "HeaderMatches": { + "items": { + "$ref": "#/definitions/AWS::VpcLattice::Rule.HeaderMatch" + }, + "type": "array" + }, + "Method": { + "type": "string" + }, + "PathMatch": { + "$ref": "#/definitions/AWS::VpcLattice::Rule.PathMatch" + } + }, + "type": "object" + }, + "AWS::VpcLattice::Rule.Match": { + "additionalProperties": false, + "properties": { + "HttpMatch": { + "$ref": "#/definitions/AWS::VpcLattice::Rule.HttpMatch" + } + }, + "required": [ + "HttpMatch" + ], + "type": "object" + }, + "AWS::VpcLattice::Rule.PathMatch": { + "additionalProperties": false, + "properties": { + "CaseSensitive": { + "type": "boolean" + }, + "Match": { + "$ref": "#/definitions/AWS::VpcLattice::Rule.PathMatchType" + } + }, + "required": [ + "Match" + ], + "type": "object" + }, + "AWS::VpcLattice::Rule.PathMatchType": { + "additionalProperties": false, + "properties": { + "Exact": { + "type": "string" + }, + "Prefix": { + "type": "string" + } + }, + "type": "object" + }, + "AWS::VpcLattice::Rule.WeightedTargetGroup": { + "additionalProperties": false, + "properties": { + "TargetGroupIdentifier": { + "type": "string" + }, + "Weight": { + "type": "number" + } + }, + "required": [ + "TargetGroupIdentifier" + ], + "type": "object" + }, + "AWS::VpcLattice::Service": { + "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": { + "AuthType": { + "type": "string" + }, + "CertificateArn": { + "type": "string" + }, + "CustomDomainName": { + "type": "string" + }, + "DnsEntry": { + "$ref": "#/definitions/AWS::VpcLattice::Service.DnsEntry" + }, + "Name": { + "type": "string" + }, + "Tags": { + "items": { + "$ref": "#/definitions/Tag" + }, + "type": "array" + } + }, + "type": "object" + }, + "Type": { + "enum": [ + "AWS::VpcLattice::Service" + ], + "type": "string" + }, + "UpdateReplacePolicy": { + "enum": [ + "Delete", + "Retain", + "Snapshot" + ], + "type": "string" + } + }, + "required": [ + "Type" + ], + "type": "object" + }, + "AWS::VpcLattice::Service.DnsEntry": { + "additionalProperties": false, + "properties": { + "DomainName": { + "type": "string" + }, + "HostedZoneId": { + "type": "string" + } + }, + "type": "object" + }, + "AWS::VpcLattice::ServiceNetwork": { + "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": { + "AuthType": { + "type": "string" + }, + "Name": { + "type": "string" + }, + "Tags": { + "items": { + "$ref": "#/definitions/Tag" + }, + "type": "array" + } + }, + "type": "object" + }, + "Type": { + "enum": [ + "AWS::VpcLattice::ServiceNetwork" + ], + "type": "string" + }, + "UpdateReplacePolicy": { + "enum": [ + "Delete", + "Retain", + "Snapshot" + ], + "type": "string" + } + }, + "required": [ + "Type" + ], + "type": "object" + }, + "AWS::VpcLattice::ServiceNetworkServiceAssociation": { + "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": { + "DnsEntry": { + "$ref": "#/definitions/AWS::VpcLattice::ServiceNetworkServiceAssociation.DnsEntry" + }, + "ServiceIdentifier": { + "type": "string" + }, + "ServiceNetworkIdentifier": { + "type": "string" + }, + "Tags": { + "items": { + "$ref": "#/definitions/Tag" + }, + "type": "array" + } + }, + "type": "object" + }, + "Type": { + "enum": [ + "AWS::VpcLattice::ServiceNetworkServiceAssociation" + ], + "type": "string" + }, + "UpdateReplacePolicy": { + "enum": [ + "Delete", + "Retain", + "Snapshot" + ], + "type": "string" + } + }, + "required": [ + "Type" + ], + "type": "object" + }, + "AWS::VpcLattice::ServiceNetworkServiceAssociation.DnsEntry": { + "additionalProperties": false, + "properties": { + "DomainName": { + "type": "string" + }, + "HostedZoneId": { + "type": "string" + } + }, + "type": "object" + }, + "AWS::VpcLattice::ServiceNetworkVpcAssociation": { + "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": { + "SecurityGroupIds": { + "items": { + "type": "string" + }, + "type": "array" + }, + "ServiceNetworkIdentifier": { + "type": "string" + }, + "Tags": { + "items": { + "$ref": "#/definitions/Tag" + }, + "type": "array" + }, + "VpcIdentifier": { + "type": "string" + } + }, + "type": "object" + }, + "Type": { + "enum": [ + "AWS::VpcLattice::ServiceNetworkVpcAssociation" + ], + "type": "string" + }, + "UpdateReplacePolicy": { + "enum": [ + "Delete", + "Retain", + "Snapshot" + ], + "type": "string" + } + }, + "required": [ + "Type" + ], + "type": "object" + }, + "AWS::VpcLattice::TargetGroup": { + "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": { + "Config": { + "$ref": "#/definitions/AWS::VpcLattice::TargetGroup.TargetGroupConfig" + }, + "Name": { "type": "string" }, - "OnExceptionSteps": { + "Tags": { "items": { - "$ref": "#/definitions/AWS::Transfer::Workflow.WorkflowStep" + "$ref": "#/definitions/Tag" }, "type": "array" }, - "Steps": { + "Targets": { "items": { - "$ref": "#/definitions/AWS::Transfer::Workflow.WorkflowStep" + "$ref": "#/definitions/AWS::VpcLattice::TargetGroup.Target" }, "type": "array" }, - "Tags": { - "items": { - "$ref": "#/definitions/Tag" - }, - "type": "array" + "Type": { + "type": "string" } }, "required": [ - "Steps" + "Type" ], "type": "object" }, "Type": { "enum": [ - "AWS::Transfer::Workflow" + "AWS::VpcLattice::TargetGroup" ], "type": "string" }, @@ -154536,265 +156351,89 @@ ], "type": "object" }, - "AWS::Transfer::Workflow.CopyStepDetails": { + "AWS::VpcLattice::TargetGroup.HealthCheckConfig": { "additionalProperties": false, "properties": { - "DestinationFileLocation": { - "$ref": "#/definitions/AWS::Transfer::Workflow.S3FileLocation" - }, - "Name": { - "type": "string" - }, - "OverwriteExisting": { - "type": "string" - }, - "SourceFileLocation": { - "type": "string" - } - }, - "type": "object" - }, - "AWS::Transfer::Workflow.CustomStepDetails": { - "additionalProperties": false, - "properties": { - "Name": { - "type": "string" - }, - "SourceFileLocation": { - "type": "string" - }, - "Target": { - "type": "string" + "Enabled": { + "type": "boolean" }, - "TimeoutSeconds": { + "HealthCheckIntervalSeconds": { "type": "number" - } - }, - "type": "object" - }, - "AWS::Transfer::Workflow.DecryptStepDetails": { - "additionalProperties": false, - "properties": { - "DestinationFileLocation": { - "$ref": "#/definitions/AWS::Transfer::Workflow.InputFileLocation" - }, - "Name": { - "type": "string" }, - "OverwriteExisting": { - "type": "string" - }, - "SourceFileLocation": { - "type": "string" + "HealthCheckTimeoutSeconds": { + "type": "number" }, - "Type": { - "type": "string" - } - }, - "type": "object" - }, - "AWS::Transfer::Workflow.DeleteStepDetails": { - "additionalProperties": false, - "properties": { - "Name": { - "type": "string" + "HealthyThresholdCount": { + "type": "number" }, - "SourceFileLocation": { - "type": "string" - } - }, - "type": "object" - }, - "AWS::Transfer::Workflow.EfsInputFileLocation": { - "additionalProperties": false, - "properties": { - "FileSystemId": { - "type": "string" + "Matcher": { + "$ref": "#/definitions/AWS::VpcLattice::TargetGroup.Matcher" }, "Path": { "type": "string" - } - }, - "type": "object" - }, - "AWS::Transfer::Workflow.InputFileLocation": { - "additionalProperties": false, - "properties": { - "EfsFileLocation": { - "$ref": "#/definitions/AWS::Transfer::Workflow.EfsInputFileLocation" }, - "S3FileLocation": { - "$ref": "#/definitions/AWS::Transfer::Workflow.S3InputFileLocation" - } - }, - "type": "object" - }, - "AWS::Transfer::Workflow.S3FileLocation": { - "additionalProperties": false, - "properties": { - "S3FileLocation": { - "$ref": "#/definitions/AWS::Transfer::Workflow.S3InputFileLocation" - } - }, - "type": "object" - }, - "AWS::Transfer::Workflow.S3InputFileLocation": { - "additionalProperties": false, - "properties": { - "Bucket": { - "type": "string" + "Port": { + "type": "number" }, - "Key": { + "Protocol": { "type": "string" + }, + "UnhealthyThresholdCount": { + "type": "number" } }, "type": "object" }, - "AWS::Transfer::Workflow.S3Tag": { + "AWS::VpcLattice::TargetGroup.Matcher": { "additionalProperties": false, "properties": { - "Key": { - "type": "string" - }, - "Value": { + "HttpCode": { "type": "string" } }, "required": [ - "Key", - "Value" + "HttpCode" ], "type": "object" }, - "AWS::Transfer::Workflow.TagStepDetails": { + "AWS::VpcLattice::TargetGroup.Target": { "additionalProperties": false, "properties": { - "Name": { - "type": "string" - }, - "SourceFileLocation": { + "Id": { "type": "string" }, - "Tags": { - "items": { - "$ref": "#/definitions/AWS::Transfer::Workflow.S3Tag" - }, - "type": "array" + "Port": { + "type": "number" } }, + "required": [ + "Id" + ], "type": "object" }, - "AWS::Transfer::Workflow.WorkflowStep": { + "AWS::VpcLattice::TargetGroup.TargetGroupConfig": { "additionalProperties": false, "properties": { - "CopyStepDetails": { - "$ref": "#/definitions/AWS::Transfer::Workflow.CopyStepDetails" - }, - "CustomStepDetails": { - "$ref": "#/definitions/AWS::Transfer::Workflow.CustomStepDetails" - }, - "DecryptStepDetails": { - "$ref": "#/definitions/AWS::Transfer::Workflow.DecryptStepDetails" - }, - "DeleteStepDetails": { - "$ref": "#/definitions/AWS::Transfer::Workflow.DeleteStepDetails" - }, - "TagStepDetails": { - "$ref": "#/definitions/AWS::Transfer::Workflow.TagStepDetails" + "HealthCheck": { + "$ref": "#/definitions/AWS::VpcLattice::TargetGroup.HealthCheckConfig" }, - "Type": { - "type": "string" - } - }, - "type": "object" - }, - "AWS::VoiceID::Domain": { - "additionalProperties": false, - "properties": { - "Condition": { - "type": "string" + "Port": { + "type": "number" }, - "DeletionPolicy": { - "enum": [ - "Delete", - "Retain", - "Snapshot" - ], + "Protocol": { "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": { - "Description": { - "type": "string" - }, - "Name": { - "type": "string" - }, - "ServerSideEncryptionConfiguration": { - "$ref": "#/definitions/AWS::VoiceID::Domain.ServerSideEncryptionConfiguration" - }, - "Tags": { - "items": { - "$ref": "#/definitions/Tag" - }, - "type": "array" - } - }, - "required": [ - "Name", - "ServerSideEncryptionConfiguration" - ], - "type": "object" - }, - "Type": { - "enum": [ - "AWS::VoiceID::Domain" - ], + "ProtocolVersion": { "type": "string" }, - "UpdateReplacePolicy": { - "enum": [ - "Delete", - "Retain", - "Snapshot" - ], - "type": "string" - } - }, - "required": [ - "Type", - "Properties" - ], - "type": "object" - }, - "AWS::VoiceID::Domain.ServerSideEncryptionConfiguration": { - "additionalProperties": false, - "properties": { - "KmsKeyId": { + "VpcIdentifier": { "type": "string" } }, "required": [ - "KmsKeyId" + "Port", + "Protocol", + "VpcIdentifier" ], "type": "object" }, @@ -161037,6 +162676,9 @@ { "$ref": "#/definitions/AWS::CertificateManager::Certificate" }, + { + "$ref": "#/definitions/AWS::Chatbot::MicrosoftTeamsChannelConfiguration" + }, { "$ref": "#/definitions/AWS::Chatbot::SlackChannelConfiguration" }, @@ -161247,6 +162889,9 @@ { "$ref": "#/definitions/AWS::Cognito::UserPoolUserToGroupAttachment" }, + { + "$ref": "#/definitions/AWS::Comprehend::Flywheel" + }, { "$ref": "#/definitions/AWS::Config::AggregationAuthorization" }, @@ -163419,6 +165064,9 @@ { "$ref": "#/definitions/AWS::SageMaker::ImageVersion" }, + { + "$ref": "#/definitions/AWS::SageMaker::InferenceExperiment" + }, { "$ref": "#/definitions/AWS::SageMaker::Model" }, @@ -163647,6 +165295,36 @@ { "$ref": "#/definitions/AWS::VoiceID::Domain" }, + { + "$ref": "#/definitions/AWS::VpcLattice::AccessLogSubscription" + }, + { + "$ref": "#/definitions/AWS::VpcLattice::AuthPolicy" + }, + { + "$ref": "#/definitions/AWS::VpcLattice::Listener" + }, + { + "$ref": "#/definitions/AWS::VpcLattice::ResourcePolicy" + }, + { + "$ref": "#/definitions/AWS::VpcLattice::Rule" + }, + { + "$ref": "#/definitions/AWS::VpcLattice::Service" + }, + { + "$ref": "#/definitions/AWS::VpcLattice::ServiceNetwork" + }, + { + "$ref": "#/definitions/AWS::VpcLattice::ServiceNetworkServiceAssociation" + }, + { + "$ref": "#/definitions/AWS::VpcLattice::ServiceNetworkVpcAssociation" + }, + { + "$ref": "#/definitions/AWS::VpcLattice::TargetGroup" + }, { "$ref": "#/definitions/AWS::WAF::ByteMatchSet" },