diff --git a/cloudformation/acmpca/aws-acmpca-certificateauthority_crlconfiguration.go b/cloudformation/acmpca/aws-acmpca-certificateauthority_crlconfiguration.go index ce70abc0d9..aefac0a8a9 100644 --- a/cloudformation/acmpca/aws-acmpca-certificateauthority_crlconfiguration.go +++ b/cloudformation/acmpca/aws-acmpca-certificateauthority_crlconfiguration.go @@ -21,9 +21,9 @@ type CertificateAuthority_CrlConfiguration struct { CustomCname *string `json:"CustomCname,omitempty"` // Enabled AWS CloudFormation Property - // Required: false + // Required: true // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-acmpca-certificateauthority-crlconfiguration.html#cfn-acmpca-certificateauthority-crlconfiguration-enabled - Enabled *bool `json:"Enabled,omitempty"` + Enabled bool `json:"Enabled"` // ExpirationInDays AWS CloudFormation Property // Required: false diff --git a/cloudformation/acmpca/aws-acmpca-certificateauthority_edipartyname.go b/cloudformation/acmpca/aws-acmpca-certificateauthority_edipartyname.go index f9c190e760..071f16c3d6 100644 --- a/cloudformation/acmpca/aws-acmpca-certificateauthority_edipartyname.go +++ b/cloudformation/acmpca/aws-acmpca-certificateauthority_edipartyname.go @@ -11,9 +11,9 @@ import ( type CertificateAuthority_EdiPartyName struct { // NameAssigner AWS CloudFormation Property - // Required: true + // Required: false // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-acmpca-certificateauthority-edipartyname.html#cfn-acmpca-certificateauthority-edipartyname-nameassigner - NameAssigner string `json:"NameAssigner"` + NameAssigner *string `json:"NameAssigner,omitempty"` // PartyName AWS CloudFormation Property // Required: true diff --git a/cloudformation/acmpca/aws-acmpca-certificateauthority_ocspconfiguration.go b/cloudformation/acmpca/aws-acmpca-certificateauthority_ocspconfiguration.go index d9b46b19e5..277f2972d6 100644 --- a/cloudformation/acmpca/aws-acmpca-certificateauthority_ocspconfiguration.go +++ b/cloudformation/acmpca/aws-acmpca-certificateauthority_ocspconfiguration.go @@ -11,9 +11,9 @@ import ( type CertificateAuthority_OcspConfiguration struct { // Enabled AWS CloudFormation Property - // Required: false + // Required: true // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-acmpca-certificateauthority-ocspconfiguration.html#cfn-acmpca-certificateauthority-ocspconfiguration-enabled - Enabled *bool `json:"Enabled,omitempty"` + Enabled bool `json:"Enabled"` // OcspCustomCname AWS CloudFormation Property // Required: false diff --git a/cloudformation/all.go b/cloudformation/all.go index 06a5be61a2..e15b6ce8d8 100644 --- a/cloudformation/all.go +++ b/cloudformation/all.go @@ -185,6 +185,7 @@ import ( "github.com/awslabs/goformation/v7/cloudformation/pinpointemail" "github.com/awslabs/goformation/v7/cloudformation/pipes" "github.com/awslabs/goformation/v7/cloudformation/proton" + "github.com/awslabs/goformation/v7/cloudformation/qbusiness" "github.com/awslabs/goformation/v7/cloudformation/qldb" "github.com/awslabs/goformation/v7/cloudformation/quicksight" "github.com/awslabs/goformation/v7/cloudformation/ram" @@ -388,6 +389,7 @@ func AllResources() map[string]Resource { "AWS::Bedrock::AgentAlias": &bedrock.AgentAlias{}, "AWS::Bedrock::DataSource": &bedrock.DataSource{}, "AWS::Bedrock::Guardrail": &bedrock.Guardrail{}, + "AWS::Bedrock::GuardrailVersion": &bedrock.GuardrailVersion{}, "AWS::Bedrock::KnowledgeBase": &bedrock.KnowledgeBase{}, "AWS::BillingConductor::BillingGroup": &billingconductor.BillingGroup{}, "AWS::BillingConductor::CustomLineItem": &billingconductor.CustomLineItem{}, @@ -574,8 +576,11 @@ func AllResources() map[string]Resource { "AWS::DataZone::Environment": &datazone.Environment{}, "AWS::DataZone::EnvironmentBlueprintConfiguration": &datazone.EnvironmentBlueprintConfiguration{}, "AWS::DataZone::EnvironmentProfile": &datazone.EnvironmentProfile{}, + "AWS::DataZone::GroupProfile": &datazone.GroupProfile{}, "AWS::DataZone::Project": &datazone.Project{}, + "AWS::DataZone::ProjectMembership": &datazone.ProjectMembership{}, "AWS::DataZone::SubscriptionTarget": &datazone.SubscriptionTarget{}, + "AWS::DataZone::UserProfile": &datazone.UserProfile{}, "AWS::Deadline::Farm": &deadline.Farm{}, "AWS::Deadline::Fleet": &deadline.Fleet{}, "AWS::Deadline::LicenseEndpoint": &deadline.LicenseEndpoint{}, @@ -1107,6 +1112,7 @@ func AllResources() map[string]Resource { "AWS::Neptune::DBInstance": &neptune.DBInstance{}, "AWS::Neptune::DBParameterGroup": &neptune.DBParameterGroup{}, "AWS::Neptune::DBSubnetGroup": &neptune.DBSubnetGroup{}, + "AWS::Neptune::EventSubscription": &neptune.EventSubscription{}, "AWS::NeptuneGraph::Graph": &neptunegraph.Graph{}, "AWS::NeptuneGraph::PrivateGraphEndpoint": &neptunegraph.PrivateGraphEndpoint{}, "AWS::NetworkFirewall::Firewall": &networkfirewall.Firewall{}, @@ -1202,6 +1208,12 @@ func AllResources() map[string]Resource { "AWS::Proton::EnvironmentAccountConnection": &proton.EnvironmentAccountConnection{}, "AWS::Proton::EnvironmentTemplate": &proton.EnvironmentTemplate{}, "AWS::Proton::ServiceTemplate": &proton.ServiceTemplate{}, + "AWS::QBusiness::Application": &qbusiness.Application{}, + "AWS::QBusiness::DataSource": &qbusiness.DataSource{}, + "AWS::QBusiness::Index": &qbusiness.Index{}, + "AWS::QBusiness::Plugin": &qbusiness.Plugin{}, + "AWS::QBusiness::Retriever": &qbusiness.Retriever{}, + "AWS::QBusiness::WebExperience": &qbusiness.WebExperience{}, "AWS::QLDB::Ledger": &qldb.Ledger{}, "AWS::QLDB::Stream": &qldb.Stream{}, "AWS::QuickSight::Analysis": &quicksight.Analysis{}, @@ -1344,7 +1356,10 @@ func AllResources() map[string]Resource { "AWS::SSMContacts::Rotation": &ssmcontacts.Rotation{}, "AWS::SSMIncidents::ReplicationSet": &ssmincidents.ReplicationSet{}, "AWS::SSMIncidents::ResponsePlan": &ssmincidents.ResponsePlan{}, + "AWS::SSO::Application": &sso.Application{}, + "AWS::SSO::ApplicationAssignment": &sso.ApplicationAssignment{}, "AWS::SSO::Assignment": &sso.Assignment{}, + "AWS::SSO::Instance": &sso.Instance{}, "AWS::SSO::InstanceAccessControlAttributeConfiguration": &sso.InstanceAccessControlAttributeConfiguration{}, "AWS::SSO::PermissionSet": &sso.PermissionSet{}, "AWS::SageMaker::App": &sagemaker.App{}, @@ -1383,14 +1398,20 @@ func AllResources() map[string]Resource { "AWS::SecretsManager::Secret": &secretsmanager.Secret{}, "AWS::SecretsManager::SecretTargetAttachment": &secretsmanager.SecretTargetAttachment{}, "AWS::SecurityHub::AutomationRule": &securityhub.AutomationRule{}, + "AWS::SecurityHub::ConfigurationPolicy": &securityhub.ConfigurationPolicy{}, "AWS::SecurityHub::DelegatedAdmin": &securityhub.DelegatedAdmin{}, + "AWS::SecurityHub::FindingAggregator": &securityhub.FindingAggregator{}, "AWS::SecurityHub::Hub": &securityhub.Hub{}, "AWS::SecurityHub::Insight": &securityhub.Insight{}, + "AWS::SecurityHub::OrganizationConfiguration": &securityhub.OrganizationConfiguration{}, + "AWS::SecurityHub::PolicyAssociation": &securityhub.PolicyAssociation{}, "AWS::SecurityHub::ProductSubscription": &securityhub.ProductSubscription{}, + "AWS::SecurityHub::SecurityControl": &securityhub.SecurityControl{}, "AWS::SecurityHub::Standard": &securityhub.Standard{}, "AWS::SecurityLake::AwsLogSource": &securitylake.AwsLogSource{}, "AWS::SecurityLake::DataLake": &securitylake.DataLake{}, "AWS::SecurityLake::Subscriber": &securitylake.Subscriber{}, + "AWS::SecurityLake::SubscriberNotification": &securitylake.SubscriberNotification{}, "AWS::Serverless::Api": &serverless.Api{}, "AWS::Serverless::Application": &serverless.Application{}, "AWS::Serverless::Function": &serverless.Function{}, @@ -4779,6 +4800,30 @@ func (t *Template) GetBedrockGuardrailWithName(name string) (*bedrock.Guardrail, return nil, fmt.Errorf("resource %q of type bedrock.Guardrail not found", name) } +// GetAllBedrockGuardrailVersionResources retrieves all bedrock.GuardrailVersion items from an AWS CloudFormation template +func (t *Template) GetAllBedrockGuardrailVersionResources() map[string]*bedrock.GuardrailVersion { + results := map[string]*bedrock.GuardrailVersion{} + for name, untyped := range t.Resources { + switch resource := untyped.(type) { + case *bedrock.GuardrailVersion: + results[name] = resource + } + } + return results +} + +// GetBedrockGuardrailVersionWithName retrieves all bedrock.GuardrailVersion items from an AWS CloudFormation template +// whose logical ID matches the provided name. Returns an error if not found. +func (t *Template) GetBedrockGuardrailVersionWithName(name string) (*bedrock.GuardrailVersion, error) { + if untyped, ok := t.Resources[name]; ok { + switch resource := untyped.(type) { + case *bedrock.GuardrailVersion: + return resource, nil + } + } + return nil, fmt.Errorf("resource %q of type bedrock.GuardrailVersion not found", name) +} + // GetAllBedrockKnowledgeBaseResources retrieves all bedrock.KnowledgeBase items from an AWS CloudFormation template func (t *Template) GetAllBedrockKnowledgeBaseResources() map[string]*bedrock.KnowledgeBase { results := map[string]*bedrock.KnowledgeBase{} @@ -9243,6 +9288,30 @@ func (t *Template) GetDataZoneEnvironmentProfileWithName(name string) (*datazone return nil, fmt.Errorf("resource %q of type datazone.EnvironmentProfile not found", name) } +// GetAllDataZoneGroupProfileResources retrieves all datazone.GroupProfile items from an AWS CloudFormation template +func (t *Template) GetAllDataZoneGroupProfileResources() map[string]*datazone.GroupProfile { + results := map[string]*datazone.GroupProfile{} + for name, untyped := range t.Resources { + switch resource := untyped.(type) { + case *datazone.GroupProfile: + results[name] = resource + } + } + return results +} + +// GetDataZoneGroupProfileWithName retrieves all datazone.GroupProfile items from an AWS CloudFormation template +// whose logical ID matches the provided name. Returns an error if not found. +func (t *Template) GetDataZoneGroupProfileWithName(name string) (*datazone.GroupProfile, error) { + if untyped, ok := t.Resources[name]; ok { + switch resource := untyped.(type) { + case *datazone.GroupProfile: + return resource, nil + } + } + return nil, fmt.Errorf("resource %q of type datazone.GroupProfile not found", name) +} + // GetAllDataZoneProjectResources retrieves all datazone.Project items from an AWS CloudFormation template func (t *Template) GetAllDataZoneProjectResources() map[string]*datazone.Project { results := map[string]*datazone.Project{} @@ -9267,6 +9336,30 @@ func (t *Template) GetDataZoneProjectWithName(name string) (*datazone.Project, e return nil, fmt.Errorf("resource %q of type datazone.Project not found", name) } +// GetAllDataZoneProjectMembershipResources retrieves all datazone.ProjectMembership items from an AWS CloudFormation template +func (t *Template) GetAllDataZoneProjectMembershipResources() map[string]*datazone.ProjectMembership { + results := map[string]*datazone.ProjectMembership{} + for name, untyped := range t.Resources { + switch resource := untyped.(type) { + case *datazone.ProjectMembership: + results[name] = resource + } + } + return results +} + +// GetDataZoneProjectMembershipWithName retrieves all datazone.ProjectMembership items from an AWS CloudFormation template +// whose logical ID matches the provided name. Returns an error if not found. +func (t *Template) GetDataZoneProjectMembershipWithName(name string) (*datazone.ProjectMembership, error) { + if untyped, ok := t.Resources[name]; ok { + switch resource := untyped.(type) { + case *datazone.ProjectMembership: + return resource, nil + } + } + return nil, fmt.Errorf("resource %q of type datazone.ProjectMembership not found", name) +} + // GetAllDataZoneSubscriptionTargetResources retrieves all datazone.SubscriptionTarget items from an AWS CloudFormation template func (t *Template) GetAllDataZoneSubscriptionTargetResources() map[string]*datazone.SubscriptionTarget { results := map[string]*datazone.SubscriptionTarget{} @@ -9291,6 +9384,30 @@ func (t *Template) GetDataZoneSubscriptionTargetWithName(name string) (*datazone return nil, fmt.Errorf("resource %q of type datazone.SubscriptionTarget not found", name) } +// GetAllDataZoneUserProfileResources retrieves all datazone.UserProfile items from an AWS CloudFormation template +func (t *Template) GetAllDataZoneUserProfileResources() map[string]*datazone.UserProfile { + results := map[string]*datazone.UserProfile{} + for name, untyped := range t.Resources { + switch resource := untyped.(type) { + case *datazone.UserProfile: + results[name] = resource + } + } + return results +} + +// GetDataZoneUserProfileWithName retrieves all datazone.UserProfile items from an AWS CloudFormation template +// whose logical ID matches the provided name. Returns an error if not found. +func (t *Template) GetDataZoneUserProfileWithName(name string) (*datazone.UserProfile, error) { + if untyped, ok := t.Resources[name]; ok { + switch resource := untyped.(type) { + case *datazone.UserProfile: + return resource, nil + } + } + return nil, fmt.Errorf("resource %q of type datazone.UserProfile not found", name) +} + // GetAllDeadlineFarmResources retrieves all deadline.Farm items from an AWS CloudFormation template func (t *Template) GetAllDeadlineFarmResources() map[string]*deadline.Farm { results := map[string]*deadline.Farm{} @@ -22035,6 +22152,30 @@ func (t *Template) GetNeptuneDBSubnetGroupWithName(name string) (*neptune.DBSubn return nil, fmt.Errorf("resource %q of type neptune.DBSubnetGroup not found", name) } +// GetAllNeptuneEventSubscriptionResources retrieves all neptune.EventSubscription items from an AWS CloudFormation template +func (t *Template) GetAllNeptuneEventSubscriptionResources() map[string]*neptune.EventSubscription { + results := map[string]*neptune.EventSubscription{} + for name, untyped := range t.Resources { + switch resource := untyped.(type) { + case *neptune.EventSubscription: + results[name] = resource + } + } + return results +} + +// GetNeptuneEventSubscriptionWithName retrieves all neptune.EventSubscription items from an AWS CloudFormation template +// whose logical ID matches the provided name. Returns an error if not found. +func (t *Template) GetNeptuneEventSubscriptionWithName(name string) (*neptune.EventSubscription, error) { + if untyped, ok := t.Resources[name]; ok { + switch resource := untyped.(type) { + case *neptune.EventSubscription: + return resource, nil + } + } + return nil, fmt.Errorf("resource %q of type neptune.EventSubscription not found", name) +} + // GetAllNeptuneGraphGraphResources retrieves all neptunegraph.Graph items from an AWS CloudFormation template func (t *Template) GetAllNeptuneGraphGraphResources() map[string]*neptunegraph.Graph { results := map[string]*neptunegraph.Graph{} @@ -24315,6 +24456,150 @@ func (t *Template) GetProtonServiceTemplateWithName(name string) (*proton.Servic return nil, fmt.Errorf("resource %q of type proton.ServiceTemplate not found", name) } +// GetAllQBusinessApplicationResources retrieves all qbusiness.Application items from an AWS CloudFormation template +func (t *Template) GetAllQBusinessApplicationResources() map[string]*qbusiness.Application { + results := map[string]*qbusiness.Application{} + for name, untyped := range t.Resources { + switch resource := untyped.(type) { + case *qbusiness.Application: + results[name] = resource + } + } + return results +} + +// GetQBusinessApplicationWithName retrieves all qbusiness.Application items from an AWS CloudFormation template +// whose logical ID matches the provided name. Returns an error if not found. +func (t *Template) GetQBusinessApplicationWithName(name string) (*qbusiness.Application, error) { + if untyped, ok := t.Resources[name]; ok { + switch resource := untyped.(type) { + case *qbusiness.Application: + return resource, nil + } + } + return nil, fmt.Errorf("resource %q of type qbusiness.Application not found", name) +} + +// GetAllQBusinessDataSourceResources retrieves all qbusiness.DataSource items from an AWS CloudFormation template +func (t *Template) GetAllQBusinessDataSourceResources() map[string]*qbusiness.DataSource { + results := map[string]*qbusiness.DataSource{} + for name, untyped := range t.Resources { + switch resource := untyped.(type) { + case *qbusiness.DataSource: + results[name] = resource + } + } + return results +} + +// GetQBusinessDataSourceWithName retrieves all qbusiness.DataSource items from an AWS CloudFormation template +// whose logical ID matches the provided name. Returns an error if not found. +func (t *Template) GetQBusinessDataSourceWithName(name string) (*qbusiness.DataSource, error) { + if untyped, ok := t.Resources[name]; ok { + switch resource := untyped.(type) { + case *qbusiness.DataSource: + return resource, nil + } + } + return nil, fmt.Errorf("resource %q of type qbusiness.DataSource not found", name) +} + +// GetAllQBusinessIndexResources retrieves all qbusiness.Index items from an AWS CloudFormation template +func (t *Template) GetAllQBusinessIndexResources() map[string]*qbusiness.Index { + results := map[string]*qbusiness.Index{} + for name, untyped := range t.Resources { + switch resource := untyped.(type) { + case *qbusiness.Index: + results[name] = resource + } + } + return results +} + +// GetQBusinessIndexWithName retrieves all qbusiness.Index items from an AWS CloudFormation template +// whose logical ID matches the provided name. Returns an error if not found. +func (t *Template) GetQBusinessIndexWithName(name string) (*qbusiness.Index, error) { + if untyped, ok := t.Resources[name]; ok { + switch resource := untyped.(type) { + case *qbusiness.Index: + return resource, nil + } + } + return nil, fmt.Errorf("resource %q of type qbusiness.Index not found", name) +} + +// GetAllQBusinessPluginResources retrieves all qbusiness.Plugin items from an AWS CloudFormation template +func (t *Template) GetAllQBusinessPluginResources() map[string]*qbusiness.Plugin { + results := map[string]*qbusiness.Plugin{} + for name, untyped := range t.Resources { + switch resource := untyped.(type) { + case *qbusiness.Plugin: + results[name] = resource + } + } + return results +} + +// GetQBusinessPluginWithName retrieves all qbusiness.Plugin items from an AWS CloudFormation template +// whose logical ID matches the provided name. Returns an error if not found. +func (t *Template) GetQBusinessPluginWithName(name string) (*qbusiness.Plugin, error) { + if untyped, ok := t.Resources[name]; ok { + switch resource := untyped.(type) { + case *qbusiness.Plugin: + return resource, nil + } + } + return nil, fmt.Errorf("resource %q of type qbusiness.Plugin not found", name) +} + +// GetAllQBusinessRetrieverResources retrieves all qbusiness.Retriever items from an AWS CloudFormation template +func (t *Template) GetAllQBusinessRetrieverResources() map[string]*qbusiness.Retriever { + results := map[string]*qbusiness.Retriever{} + for name, untyped := range t.Resources { + switch resource := untyped.(type) { + case *qbusiness.Retriever: + results[name] = resource + } + } + return results +} + +// GetQBusinessRetrieverWithName retrieves all qbusiness.Retriever items from an AWS CloudFormation template +// whose logical ID matches the provided name. Returns an error if not found. +func (t *Template) GetQBusinessRetrieverWithName(name string) (*qbusiness.Retriever, error) { + if untyped, ok := t.Resources[name]; ok { + switch resource := untyped.(type) { + case *qbusiness.Retriever: + return resource, nil + } + } + return nil, fmt.Errorf("resource %q of type qbusiness.Retriever not found", name) +} + +// GetAllQBusinessWebExperienceResources retrieves all qbusiness.WebExperience items from an AWS CloudFormation template +func (t *Template) GetAllQBusinessWebExperienceResources() map[string]*qbusiness.WebExperience { + results := map[string]*qbusiness.WebExperience{} + for name, untyped := range t.Resources { + switch resource := untyped.(type) { + case *qbusiness.WebExperience: + results[name] = resource + } + } + return results +} + +// GetQBusinessWebExperienceWithName retrieves all qbusiness.WebExperience items from an AWS CloudFormation template +// whose logical ID matches the provided name. Returns an error if not found. +func (t *Template) GetQBusinessWebExperienceWithName(name string) (*qbusiness.WebExperience, error) { + if untyped, ok := t.Resources[name]; ok { + switch resource := untyped.(type) { + case *qbusiness.WebExperience: + return resource, nil + } + } + return nil, fmt.Errorf("resource %q of type qbusiness.WebExperience not found", name) +} + // GetAllQLDBLedgerResources retrieves all qldb.Ledger items from an AWS CloudFormation template func (t *Template) GetAllQLDBLedgerResources() map[string]*qldb.Ledger { results := map[string]*qldb.Ledger{} @@ -27723,6 +28008,54 @@ func (t *Template) GetSSMIncidentsResponsePlanWithName(name string) (*ssminciden return nil, fmt.Errorf("resource %q of type ssmincidents.ResponsePlan not found", name) } +// GetAllSSOApplicationResources retrieves all sso.Application items from an AWS CloudFormation template +func (t *Template) GetAllSSOApplicationResources() map[string]*sso.Application { + results := map[string]*sso.Application{} + for name, untyped := range t.Resources { + switch resource := untyped.(type) { + case *sso.Application: + results[name] = resource + } + } + return results +} + +// GetSSOApplicationWithName retrieves all sso.Application items from an AWS CloudFormation template +// whose logical ID matches the provided name. Returns an error if not found. +func (t *Template) GetSSOApplicationWithName(name string) (*sso.Application, error) { + if untyped, ok := t.Resources[name]; ok { + switch resource := untyped.(type) { + case *sso.Application: + return resource, nil + } + } + return nil, fmt.Errorf("resource %q of type sso.Application not found", name) +} + +// GetAllSSOApplicationAssignmentResources retrieves all sso.ApplicationAssignment items from an AWS CloudFormation template +func (t *Template) GetAllSSOApplicationAssignmentResources() map[string]*sso.ApplicationAssignment { + results := map[string]*sso.ApplicationAssignment{} + for name, untyped := range t.Resources { + switch resource := untyped.(type) { + case *sso.ApplicationAssignment: + results[name] = resource + } + } + return results +} + +// GetSSOApplicationAssignmentWithName retrieves all sso.ApplicationAssignment items from an AWS CloudFormation template +// whose logical ID matches the provided name. Returns an error if not found. +func (t *Template) GetSSOApplicationAssignmentWithName(name string) (*sso.ApplicationAssignment, error) { + if untyped, ok := t.Resources[name]; ok { + switch resource := untyped.(type) { + case *sso.ApplicationAssignment: + return resource, nil + } + } + return nil, fmt.Errorf("resource %q of type sso.ApplicationAssignment not found", name) +} + // GetAllSSOAssignmentResources retrieves all sso.Assignment items from an AWS CloudFormation template func (t *Template) GetAllSSOAssignmentResources() map[string]*sso.Assignment { results := map[string]*sso.Assignment{} @@ -27747,6 +28080,30 @@ func (t *Template) GetSSOAssignmentWithName(name string) (*sso.Assignment, error return nil, fmt.Errorf("resource %q of type sso.Assignment not found", name) } +// GetAllSSOInstanceResources retrieves all sso.Instance items from an AWS CloudFormation template +func (t *Template) GetAllSSOInstanceResources() map[string]*sso.Instance { + results := map[string]*sso.Instance{} + for name, untyped := range t.Resources { + switch resource := untyped.(type) { + case *sso.Instance: + results[name] = resource + } + } + return results +} + +// GetSSOInstanceWithName retrieves all sso.Instance items from an AWS CloudFormation template +// whose logical ID matches the provided name. Returns an error if not found. +func (t *Template) GetSSOInstanceWithName(name string) (*sso.Instance, error) { + if untyped, ok := t.Resources[name]; ok { + switch resource := untyped.(type) { + case *sso.Instance: + return resource, nil + } + } + return nil, fmt.Errorf("resource %q of type sso.Instance not found", name) +} + // GetAllSSOInstanceAccessControlAttributeConfigurationResources retrieves all sso.InstanceAccessControlAttributeConfiguration items from an AWS CloudFormation template func (t *Template) GetAllSSOInstanceAccessControlAttributeConfigurationResources() map[string]*sso.InstanceAccessControlAttributeConfiguration { results := map[string]*sso.InstanceAccessControlAttributeConfiguration{} @@ -28659,6 +29016,30 @@ func (t *Template) GetSecurityHubAutomationRuleWithName(name string) (*securityh return nil, fmt.Errorf("resource %q of type securityhub.AutomationRule not found", name) } +// GetAllSecurityHubConfigurationPolicyResources retrieves all securityhub.ConfigurationPolicy items from an AWS CloudFormation template +func (t *Template) GetAllSecurityHubConfigurationPolicyResources() map[string]*securityhub.ConfigurationPolicy { + results := map[string]*securityhub.ConfigurationPolicy{} + for name, untyped := range t.Resources { + switch resource := untyped.(type) { + case *securityhub.ConfigurationPolicy: + results[name] = resource + } + } + return results +} + +// GetSecurityHubConfigurationPolicyWithName retrieves all securityhub.ConfigurationPolicy items from an AWS CloudFormation template +// whose logical ID matches the provided name. Returns an error if not found. +func (t *Template) GetSecurityHubConfigurationPolicyWithName(name string) (*securityhub.ConfigurationPolicy, error) { + if untyped, ok := t.Resources[name]; ok { + switch resource := untyped.(type) { + case *securityhub.ConfigurationPolicy: + return resource, nil + } + } + return nil, fmt.Errorf("resource %q of type securityhub.ConfigurationPolicy not found", name) +} + // GetAllSecurityHubDelegatedAdminResources retrieves all securityhub.DelegatedAdmin items from an AWS CloudFormation template func (t *Template) GetAllSecurityHubDelegatedAdminResources() map[string]*securityhub.DelegatedAdmin { results := map[string]*securityhub.DelegatedAdmin{} @@ -28683,6 +29064,30 @@ func (t *Template) GetSecurityHubDelegatedAdminWithName(name string) (*securityh return nil, fmt.Errorf("resource %q of type securityhub.DelegatedAdmin not found", name) } +// GetAllSecurityHubFindingAggregatorResources retrieves all securityhub.FindingAggregator items from an AWS CloudFormation template +func (t *Template) GetAllSecurityHubFindingAggregatorResources() map[string]*securityhub.FindingAggregator { + results := map[string]*securityhub.FindingAggregator{} + for name, untyped := range t.Resources { + switch resource := untyped.(type) { + case *securityhub.FindingAggregator: + results[name] = resource + } + } + return results +} + +// GetSecurityHubFindingAggregatorWithName retrieves all securityhub.FindingAggregator items from an AWS CloudFormation template +// whose logical ID matches the provided name. Returns an error if not found. +func (t *Template) GetSecurityHubFindingAggregatorWithName(name string) (*securityhub.FindingAggregator, error) { + if untyped, ok := t.Resources[name]; ok { + switch resource := untyped.(type) { + case *securityhub.FindingAggregator: + return resource, nil + } + } + return nil, fmt.Errorf("resource %q of type securityhub.FindingAggregator not found", name) +} + // GetAllSecurityHubHubResources retrieves all securityhub.Hub items from an AWS CloudFormation template func (t *Template) GetAllSecurityHubHubResources() map[string]*securityhub.Hub { results := map[string]*securityhub.Hub{} @@ -28731,6 +29136,54 @@ func (t *Template) GetSecurityHubInsightWithName(name string) (*securityhub.Insi return nil, fmt.Errorf("resource %q of type securityhub.Insight not found", name) } +// GetAllSecurityHubOrganizationConfigurationResources retrieves all securityhub.OrganizationConfiguration items from an AWS CloudFormation template +func (t *Template) GetAllSecurityHubOrganizationConfigurationResources() map[string]*securityhub.OrganizationConfiguration { + results := map[string]*securityhub.OrganizationConfiguration{} + for name, untyped := range t.Resources { + switch resource := untyped.(type) { + case *securityhub.OrganizationConfiguration: + results[name] = resource + } + } + return results +} + +// GetSecurityHubOrganizationConfigurationWithName retrieves all securityhub.OrganizationConfiguration items from an AWS CloudFormation template +// whose logical ID matches the provided name. Returns an error if not found. +func (t *Template) GetSecurityHubOrganizationConfigurationWithName(name string) (*securityhub.OrganizationConfiguration, error) { + if untyped, ok := t.Resources[name]; ok { + switch resource := untyped.(type) { + case *securityhub.OrganizationConfiguration: + return resource, nil + } + } + return nil, fmt.Errorf("resource %q of type securityhub.OrganizationConfiguration not found", name) +} + +// GetAllSecurityHubPolicyAssociationResources retrieves all securityhub.PolicyAssociation items from an AWS CloudFormation template +func (t *Template) GetAllSecurityHubPolicyAssociationResources() map[string]*securityhub.PolicyAssociation { + results := map[string]*securityhub.PolicyAssociation{} + for name, untyped := range t.Resources { + switch resource := untyped.(type) { + case *securityhub.PolicyAssociation: + results[name] = resource + } + } + return results +} + +// GetSecurityHubPolicyAssociationWithName retrieves all securityhub.PolicyAssociation items from an AWS CloudFormation template +// whose logical ID matches the provided name. Returns an error if not found. +func (t *Template) GetSecurityHubPolicyAssociationWithName(name string) (*securityhub.PolicyAssociation, error) { + if untyped, ok := t.Resources[name]; ok { + switch resource := untyped.(type) { + case *securityhub.PolicyAssociation: + return resource, nil + } + } + return nil, fmt.Errorf("resource %q of type securityhub.PolicyAssociation not found", name) +} + // GetAllSecurityHubProductSubscriptionResources retrieves all securityhub.ProductSubscription items from an AWS CloudFormation template func (t *Template) GetAllSecurityHubProductSubscriptionResources() map[string]*securityhub.ProductSubscription { results := map[string]*securityhub.ProductSubscription{} @@ -28755,6 +29208,30 @@ func (t *Template) GetSecurityHubProductSubscriptionWithName(name string) (*secu return nil, fmt.Errorf("resource %q of type securityhub.ProductSubscription not found", name) } +// GetAllSecurityHubSecurityControlResources retrieves all securityhub.SecurityControl items from an AWS CloudFormation template +func (t *Template) GetAllSecurityHubSecurityControlResources() map[string]*securityhub.SecurityControl { + results := map[string]*securityhub.SecurityControl{} + for name, untyped := range t.Resources { + switch resource := untyped.(type) { + case *securityhub.SecurityControl: + results[name] = resource + } + } + return results +} + +// GetSecurityHubSecurityControlWithName retrieves all securityhub.SecurityControl items from an AWS CloudFormation template +// whose logical ID matches the provided name. Returns an error if not found. +func (t *Template) GetSecurityHubSecurityControlWithName(name string) (*securityhub.SecurityControl, error) { + if untyped, ok := t.Resources[name]; ok { + switch resource := untyped.(type) { + case *securityhub.SecurityControl: + return resource, nil + } + } + return nil, fmt.Errorf("resource %q of type securityhub.SecurityControl not found", name) +} + // GetAllSecurityHubStandardResources retrieves all securityhub.Standard items from an AWS CloudFormation template func (t *Template) GetAllSecurityHubStandardResources() map[string]*securityhub.Standard { results := map[string]*securityhub.Standard{} @@ -28851,6 +29328,30 @@ func (t *Template) GetSecurityLakeSubscriberWithName(name string) (*securitylake return nil, fmt.Errorf("resource %q of type securitylake.Subscriber not found", name) } +// GetAllSecurityLakeSubscriberNotificationResources retrieves all securitylake.SubscriberNotification items from an AWS CloudFormation template +func (t *Template) GetAllSecurityLakeSubscriberNotificationResources() map[string]*securitylake.SubscriberNotification { + results := map[string]*securitylake.SubscriberNotification{} + for name, untyped := range t.Resources { + switch resource := untyped.(type) { + case *securitylake.SubscriberNotification: + results[name] = resource + } + } + return results +} + +// GetSecurityLakeSubscriberNotificationWithName retrieves all securitylake.SubscriberNotification items from an AWS CloudFormation template +// whose logical ID matches the provided name. Returns an error if not found. +func (t *Template) GetSecurityLakeSubscriberNotificationWithName(name string) (*securitylake.SubscriberNotification, error) { + if untyped, ok := t.Resources[name]; ok { + switch resource := untyped.(type) { + case *securitylake.SubscriberNotification: + return resource, nil + } + } + return nil, fmt.Errorf("resource %q of type securitylake.SubscriberNotification not found", name) +} + // GetAllServerlessApiResources retrieves all serverless.Api items from an AWS CloudFormation template func (t *Template) GetAllServerlessApiResources() map[string]*serverless.Api { results := map[string]*serverless.Api{} diff --git a/cloudformation/autoscaling/aws-autoscaling-scalingpolicy_customizedmetricspecification.go b/cloudformation/autoscaling/aws-autoscaling-scalingpolicy_customizedmetricspecification.go index f78c682ccf..142f10e3ca 100644 --- a/cloudformation/autoscaling/aws-autoscaling-scalingpolicy_customizedmetricspecification.go +++ b/cloudformation/autoscaling/aws-autoscaling-scalingpolicy_customizedmetricspecification.go @@ -16,19 +16,24 @@ type ScalingPolicy_CustomizedMetricSpecification struct { Dimensions []ScalingPolicy_MetricDimension `json:"Dimensions,omitempty"` // MetricName AWS CloudFormation Property - // Required: true + // Required: false // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-autoscaling-scalingpolicy-customizedmetricspecification.html#cfn-autoscaling-scalingpolicy-customizedmetricspecification-metricname - MetricName string `json:"MetricName"` + MetricName *string `json:"MetricName,omitempty"` + + // Metrics AWS CloudFormation Property + // Required: false + // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-autoscaling-scalingpolicy-customizedmetricspecification.html#cfn-autoscaling-scalingpolicy-customizedmetricspecification-metrics + Metrics []ScalingPolicy_TargetTrackingMetricDataQuery `json:"Metrics,omitempty"` // Namespace AWS CloudFormation Property - // Required: true + // Required: false // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-autoscaling-scalingpolicy-customizedmetricspecification.html#cfn-autoscaling-scalingpolicy-customizedmetricspecification-namespace - Namespace string `json:"Namespace"` + Namespace *string `json:"Namespace,omitempty"` // Statistic AWS CloudFormation Property - // Required: true + // Required: false // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-autoscaling-scalingpolicy-customizedmetricspecification.html#cfn-autoscaling-scalingpolicy-customizedmetricspecification-statistic - Statistic string `json:"Statistic"` + Statistic *string `json:"Statistic,omitempty"` // Unit AWS CloudFormation Property // Required: false diff --git a/cloudformation/autoscaling/aws-autoscaling-scalingpolicy_targettrackingmetricdataquery.go b/cloudformation/autoscaling/aws-autoscaling-scalingpolicy_targettrackingmetricdataquery.go new file mode 100644 index 0000000000..525a86cb8a --- /dev/null +++ b/cloudformation/autoscaling/aws-autoscaling-scalingpolicy_targettrackingmetricdataquery.go @@ -0,0 +1,57 @@ +// Code generated by "go generate". Please don't change this file directly. + +package autoscaling + +import ( + "github.com/awslabs/goformation/v7/cloudformation/policies" +) + +// ScalingPolicy_TargetTrackingMetricDataQuery AWS CloudFormation Resource (AWS::AutoScaling::ScalingPolicy.TargetTrackingMetricDataQuery) +// See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-autoscaling-scalingpolicy-targettrackingmetricdataquery.html +type ScalingPolicy_TargetTrackingMetricDataQuery struct { + + // Expression AWS CloudFormation Property + // Required: false + // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-autoscaling-scalingpolicy-targettrackingmetricdataquery.html#cfn-autoscaling-scalingpolicy-targettrackingmetricdataquery-expression + Expression *string `json:"Expression,omitempty"` + + // Id AWS CloudFormation Property + // Required: true + // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-autoscaling-scalingpolicy-targettrackingmetricdataquery.html#cfn-autoscaling-scalingpolicy-targettrackingmetricdataquery-id + Id string `json:"Id"` + + // Label AWS CloudFormation Property + // Required: false + // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-autoscaling-scalingpolicy-targettrackingmetricdataquery.html#cfn-autoscaling-scalingpolicy-targettrackingmetricdataquery-label + Label *string `json:"Label,omitempty"` + + // MetricStat AWS CloudFormation Property + // Required: false + // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-autoscaling-scalingpolicy-targettrackingmetricdataquery.html#cfn-autoscaling-scalingpolicy-targettrackingmetricdataquery-metricstat + MetricStat *ScalingPolicy_TargetTrackingMetricStat `json:"MetricStat,omitempty"` + + // ReturnData AWS CloudFormation Property + // Required: false + // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-autoscaling-scalingpolicy-targettrackingmetricdataquery.html#cfn-autoscaling-scalingpolicy-targettrackingmetricdataquery-returndata + ReturnData *bool `json:"ReturnData,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 *ScalingPolicy_TargetTrackingMetricDataQuery) AWSCloudFormationType() string { + return "AWS::AutoScaling::ScalingPolicy.TargetTrackingMetricDataQuery" +} diff --git a/cloudformation/autoscaling/aws-autoscaling-scalingpolicy_targettrackingmetricstat.go b/cloudformation/autoscaling/aws-autoscaling-scalingpolicy_targettrackingmetricstat.go new file mode 100644 index 0000000000..decf17cc12 --- /dev/null +++ b/cloudformation/autoscaling/aws-autoscaling-scalingpolicy_targettrackingmetricstat.go @@ -0,0 +1,47 @@ +// Code generated by "go generate". Please don't change this file directly. + +package autoscaling + +import ( + "github.com/awslabs/goformation/v7/cloudformation/policies" +) + +// ScalingPolicy_TargetTrackingMetricStat AWS CloudFormation Resource (AWS::AutoScaling::ScalingPolicy.TargetTrackingMetricStat) +// See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-autoscaling-scalingpolicy-targettrackingmetricstat.html +type ScalingPolicy_TargetTrackingMetricStat struct { + + // Metric AWS CloudFormation Property + // Required: true + // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-autoscaling-scalingpolicy-targettrackingmetricstat.html#cfn-autoscaling-scalingpolicy-targettrackingmetricstat-metric + Metric *ScalingPolicy_Metric `json:"Metric"` + + // Stat AWS CloudFormation Property + // Required: true + // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-autoscaling-scalingpolicy-targettrackingmetricstat.html#cfn-autoscaling-scalingpolicy-targettrackingmetricstat-stat + Stat string `json:"Stat"` + + // Unit AWS CloudFormation Property + // Required: false + // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-autoscaling-scalingpolicy-targettrackingmetricstat.html#cfn-autoscaling-scalingpolicy-targettrackingmetricstat-unit + Unit *string `json:"Unit,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 *ScalingPolicy_TargetTrackingMetricStat) AWSCloudFormationType() string { + return "AWS::AutoScaling::ScalingPolicy.TargetTrackingMetricStat" +} diff --git a/cloudformation/batch/aws-batch-jobdefinition_noderangeproperty.go b/cloudformation/batch/aws-batch-jobdefinition_noderangeproperty.go index 050993449c..cc0b312c00 100644 --- a/cloudformation/batch/aws-batch-jobdefinition_noderangeproperty.go +++ b/cloudformation/batch/aws-batch-jobdefinition_noderangeproperty.go @@ -20,6 +20,11 @@ type JobDefinition_NodeRangeProperty struct { // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-batch-jobdefinition-noderangeproperty.html#cfn-batch-jobdefinition-noderangeproperty-ecsproperties EcsProperties *JobDefinition_EcsProperties `json:"EcsProperties,omitempty"` + // EksProperties AWS CloudFormation Property + // Required: false + // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-batch-jobdefinition-noderangeproperty.html#cfn-batch-jobdefinition-noderangeproperty-eksproperties + EksProperties *JobDefinition_EksProperties `json:"EksProperties,omitempty"` + // InstanceTypes AWS CloudFormation Property // Required: false // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-batch-jobdefinition-noderangeproperty.html#cfn-batch-jobdefinition-noderangeproperty-instancetypes diff --git a/cloudformation/bedrock/aws-bedrock-agent_actiongroupexecutor.go b/cloudformation/bedrock/aws-bedrock-agent_actiongroupexecutor.go index aaa108b44a..b766c2d33d 100644 --- a/cloudformation/bedrock/aws-bedrock-agent_actiongroupexecutor.go +++ b/cloudformation/bedrock/aws-bedrock-agent_actiongroupexecutor.go @@ -10,10 +10,15 @@ import ( // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-bedrock-agent-actiongroupexecutor.html type Agent_ActionGroupExecutor struct { + // CustomControl AWS CloudFormation Property + // Required: false + // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-bedrock-agent-actiongroupexecutor.html#cfn-bedrock-agent-actiongroupexecutor-customcontrol + CustomControl *string `json:"CustomControl,omitempty"` + // Lambda AWS CloudFormation Property - // Required: true + // Required: false // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-bedrock-agent-actiongroupexecutor.html#cfn-bedrock-agent-actiongroupexecutor-lambda - Lambda string `json:"Lambda"` + Lambda *string `json:"Lambda,omitempty"` // AWSCloudFormationDeletionPolicy represents a CloudFormation DeletionPolicy AWSCloudFormationDeletionPolicy policies.DeletionPolicy `json:"-"` diff --git a/cloudformation/bedrock/aws-bedrock-agent_agentactiongroup.go b/cloudformation/bedrock/aws-bedrock-agent_agentactiongroup.go index 5383beb8f2..59c0c9ee95 100644 --- a/cloudformation/bedrock/aws-bedrock-agent_agentactiongroup.go +++ b/cloudformation/bedrock/aws-bedrock-agent_agentactiongroup.go @@ -35,6 +35,11 @@ type Agent_AgentActionGroup struct { // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-bedrock-agent-agentactiongroup.html#cfn-bedrock-agent-agentactiongroup-description Description *string `json:"Description,omitempty"` + // FunctionSchema AWS CloudFormation Property + // Required: false + // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-bedrock-agent-agentactiongroup.html#cfn-bedrock-agent-agentactiongroup-functionschema + FunctionSchema *Agent_FunctionSchema `json:"FunctionSchema,omitempty"` + // ParentActionGroupSignature AWS CloudFormation Property // Required: false // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-bedrock-agent-agentactiongroup.html#cfn-bedrock-agent-agentactiongroup-parentactiongroupsignature diff --git a/cloudformation/bedrock/aws-bedrock-agent_function.go b/cloudformation/bedrock/aws-bedrock-agent_function.go new file mode 100644 index 0000000000..d605b18189 --- /dev/null +++ b/cloudformation/bedrock/aws-bedrock-agent_function.go @@ -0,0 +1,47 @@ +// Code generated by "go generate". Please don't change this file directly. + +package bedrock + +import ( + "github.com/awslabs/goformation/v7/cloudformation/policies" +) + +// Agent_Function AWS CloudFormation Resource (AWS::Bedrock::Agent.Function) +// See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-bedrock-agent-function.html +type Agent_Function struct { + + // Description AWS CloudFormation Property + // Required: false + // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-bedrock-agent-function.html#cfn-bedrock-agent-function-description + Description *string `json:"Description,omitempty"` + + // Name AWS CloudFormation Property + // Required: true + // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-bedrock-agent-function.html#cfn-bedrock-agent-function-name + Name string `json:"Name"` + + // Parameters AWS CloudFormation Property + // Required: false + // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-bedrock-agent-function.html#cfn-bedrock-agent-function-parameters + Parameters map[string]Agent_ParameterDetail `json:"Parameters,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 *Agent_Function) AWSCloudFormationType() string { + return "AWS::Bedrock::Agent.Function" +} diff --git a/cloudformation/bedrock/aws-bedrock-agent_functionschema.go b/cloudformation/bedrock/aws-bedrock-agent_functionschema.go new file mode 100644 index 0000000000..3ebc9f9efa --- /dev/null +++ b/cloudformation/bedrock/aws-bedrock-agent_functionschema.go @@ -0,0 +1,37 @@ +// Code generated by "go generate". Please don't change this file directly. + +package bedrock + +import ( + "github.com/awslabs/goformation/v7/cloudformation/policies" +) + +// Agent_FunctionSchema AWS CloudFormation Resource (AWS::Bedrock::Agent.FunctionSchema) +// See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-bedrock-agent-functionschema.html +type Agent_FunctionSchema struct { + + // Functions AWS CloudFormation Property + // Required: true + // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-bedrock-agent-functionschema.html#cfn-bedrock-agent-functionschema-functions + Functions []Agent_Function `json:"Functions"` + + // 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 *Agent_FunctionSchema) AWSCloudFormationType() string { + return "AWS::Bedrock::Agent.FunctionSchema" +} diff --git a/cloudformation/bedrock/aws-bedrock-agent_parameterdetail.go b/cloudformation/bedrock/aws-bedrock-agent_parameterdetail.go new file mode 100644 index 0000000000..18e1438475 --- /dev/null +++ b/cloudformation/bedrock/aws-bedrock-agent_parameterdetail.go @@ -0,0 +1,47 @@ +// Code generated by "go generate". Please don't change this file directly. + +package bedrock + +import ( + "github.com/awslabs/goformation/v7/cloudformation/policies" +) + +// Agent_ParameterDetail AWS CloudFormation Resource (AWS::Bedrock::Agent.ParameterDetail) +// See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-bedrock-agent-parameterdetail.html +type Agent_ParameterDetail struct { + + // Description AWS CloudFormation Property + // Required: false + // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-bedrock-agent-parameterdetail.html#cfn-bedrock-agent-parameterdetail-description + Description *string `json:"Description,omitempty"` + + // Required AWS CloudFormation Property + // Required: false + // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-bedrock-agent-parameterdetail.html#cfn-bedrock-agent-parameterdetail-required + Required *bool `json:"Required,omitempty"` + + // Type AWS CloudFormation Property + // Required: true + // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-bedrock-agent-parameterdetail.html#cfn-bedrock-agent-parameterdetail-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 *Agent_ParameterDetail) AWSCloudFormationType() string { + return "AWS::Bedrock::Agent.ParameterDetail" +} diff --git a/cloudformation/bedrock/aws-bedrock-datasource.go b/cloudformation/bedrock/aws-bedrock-datasource.go index b3a89e98f0..73b4740b3d 100644 --- a/cloudformation/bedrock/aws-bedrock-datasource.go +++ b/cloudformation/bedrock/aws-bedrock-datasource.go @@ -13,6 +13,11 @@ import ( // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-bedrock-datasource.html type DataSource struct { + // DataDeletionPolicy AWS CloudFormation Property + // Required: false + // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-bedrock-datasource.html#cfn-bedrock-datasource-datadeletionpolicy + DataDeletionPolicy *string `json:"DataDeletionPolicy,omitempty"` + // DataSourceConfiguration AWS CloudFormation Property // Required: true // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-bedrock-datasource.html#cfn-bedrock-datasource-datasourceconfiguration diff --git a/cloudformation/bedrock/aws-bedrock-datasource_s3datasourceconfiguration.go b/cloudformation/bedrock/aws-bedrock-datasource_s3datasourceconfiguration.go index 3778747e8d..ff834b94b9 100644 --- a/cloudformation/bedrock/aws-bedrock-datasource_s3datasourceconfiguration.go +++ b/cloudformation/bedrock/aws-bedrock-datasource_s3datasourceconfiguration.go @@ -15,6 +15,11 @@ type DataSource_S3DataSourceConfiguration struct { // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-bedrock-datasource-s3datasourceconfiguration.html#cfn-bedrock-datasource-s3datasourceconfiguration-bucketarn BucketArn string `json:"BucketArn"` + // BucketOwnerAccountId AWS CloudFormation Property + // Required: false + // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-bedrock-datasource-s3datasourceconfiguration.html#cfn-bedrock-datasource-s3datasourceconfiguration-bucketowneraccountid + BucketOwnerAccountId *string `json:"BucketOwnerAccountId,omitempty"` + // InclusionPrefixes AWS CloudFormation Property // Required: false // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-bedrock-datasource-s3datasourceconfiguration.html#cfn-bedrock-datasource-s3datasourceconfiguration-inclusionprefixes diff --git a/cloudformation/bedrock/aws-bedrock-guardrailversion.go b/cloudformation/bedrock/aws-bedrock-guardrailversion.go new file mode 100644 index 0000000000..60eccfcb7b --- /dev/null +++ b/cloudformation/bedrock/aws-bedrock-guardrailversion.go @@ -0,0 +1,122 @@ +// Code generated by "go generate". Please don't change this file directly. + +package bedrock + +import ( + "bytes" + "encoding/json" + + "github.com/awslabs/goformation/v7/cloudformation/policies" +) + +// GuardrailVersion AWS CloudFormation Resource (AWS::Bedrock::GuardrailVersion) +// See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-bedrock-guardrailversion.html +type GuardrailVersion struct { + + // Description AWS CloudFormation Property + // Required: false + // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-bedrock-guardrailversion.html#cfn-bedrock-guardrailversion-description + Description *string `json:"Description,omitempty"` + + // GuardrailIdentifier AWS CloudFormation Property + // Required: true + // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-bedrock-guardrailversion.html#cfn-bedrock-guardrailversion-guardrailidentifier + GuardrailIdentifier string `json:"GuardrailIdentifier"` + + // 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 *GuardrailVersion) AWSCloudFormationType() string { + return "AWS::Bedrock::GuardrailVersion" +} + +// MarshalJSON is a custom JSON marshalling hook that embeds this object into +// an AWS CloudFormation JSON resource's 'Properties' field and adds a 'Type'. +func (r GuardrailVersion) MarshalJSON() ([]byte, error) { + type Properties GuardrailVersion + 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 *GuardrailVersion) UnmarshalJSON(b []byte) error { + type Properties GuardrailVersion + 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 = GuardrailVersion(*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/budgets/aws-budgets-budget.go b/cloudformation/budgets/aws-budgets-budget.go index eeedd73198..a690d1f9ae 100644 --- a/cloudformation/budgets/aws-budgets-budget.go +++ b/cloudformation/budgets/aws-budgets-budget.go @@ -23,6 +23,11 @@ type Budget struct { // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-budgets-budget.html#cfn-budgets-budget-notificationswithsubscribers NotificationsWithSubscribers []Budget_NotificationWithSubscribers `json:"NotificationsWithSubscribers,omitempty"` + // ResourceTags AWS CloudFormation Property + // Required: false + // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-budgets-budget.html#cfn-budgets-budget-resourcetags + ResourceTags []Budget_ResourceTag `json:"ResourceTags,omitempty"` + // AWSCloudFormationDeletionPolicy represents a CloudFormation DeletionPolicy AWSCloudFormationDeletionPolicy policies.DeletionPolicy `json:"-"` diff --git a/cloudformation/budgets/aws-budgets-budget_resourcetag.go b/cloudformation/budgets/aws-budgets-budget_resourcetag.go new file mode 100644 index 0000000000..8ccfc5d399 --- /dev/null +++ b/cloudformation/budgets/aws-budgets-budget_resourcetag.go @@ -0,0 +1,42 @@ +// Code generated by "go generate". Please don't change this file directly. + +package budgets + +import ( + "github.com/awslabs/goformation/v7/cloudformation/policies" +) + +// Budget_ResourceTag AWS CloudFormation Resource (AWS::Budgets::Budget.ResourceTag) +// See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-budgets-budget-resourcetag.html +type Budget_ResourceTag struct { + + // Key AWS CloudFormation Property + // Required: true + // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-budgets-budget-resourcetag.html#cfn-budgets-budget-resourcetag-key + Key string `json:"Key"` + + // Value AWS CloudFormation Property + // Required: false + // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-budgets-budget-resourcetag.html#cfn-budgets-budget-resourcetag-value + Value *string `json:"Value,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 *Budget_ResourceTag) AWSCloudFormationType() string { + return "AWS::Budgets::Budget.ResourceTag" +} diff --git a/cloudformation/budgets/aws-budgets-budgetsaction.go b/cloudformation/budgets/aws-budgets-budgetsaction.go index 8ad1b45ce9..d5ff8dd33b 100644 --- a/cloudformation/budgets/aws-budgets-budgetsaction.go +++ b/cloudformation/budgets/aws-budgets-budgetsaction.go @@ -48,6 +48,11 @@ type BudgetsAction struct { // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-budgets-budgetsaction.html#cfn-budgets-budgetsaction-notificationtype NotificationType string `json:"NotificationType"` + // ResourceTags AWS CloudFormation Property + // Required: false + // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-budgets-budgetsaction.html#cfn-budgets-budgetsaction-resourcetags + ResourceTags []BudgetsAction_ResourceTag `json:"ResourceTags,omitempty"` + // Subscribers AWS CloudFormation Property // Required: true // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-budgets-budgetsaction.html#cfn-budgets-budgetsaction-subscribers diff --git a/cloudformation/budgets/aws-budgets-budgetsaction_resourcetag.go b/cloudformation/budgets/aws-budgets-budgetsaction_resourcetag.go new file mode 100644 index 0000000000..827828a644 --- /dev/null +++ b/cloudformation/budgets/aws-budgets-budgetsaction_resourcetag.go @@ -0,0 +1,42 @@ +// Code generated by "go generate". Please don't change this file directly. + +package budgets + +import ( + "github.com/awslabs/goformation/v7/cloudformation/policies" +) + +// BudgetsAction_ResourceTag AWS CloudFormation Resource (AWS::Budgets::BudgetsAction.ResourceTag) +// See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-budgets-budgetsaction-resourcetag.html +type BudgetsAction_ResourceTag struct { + + // Key AWS CloudFormation Property + // Required: true + // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-budgets-budgetsaction-resourcetag.html#cfn-budgets-budgetsaction-resourcetag-key + Key string `json:"Key"` + + // Value AWS CloudFormation Property + // Required: true + // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-budgets-budgetsaction-resourcetag.html#cfn-budgets-budgetsaction-resourcetag-value + Value string `json:"Value"` + + // 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 *BudgetsAction_ResourceTag) AWSCloudFormationType() string { + return "AWS::Budgets::BudgetsAction.ResourceTag" +} diff --git a/cloudformation/chatbot/aws-chatbot-microsoftteamschannelconfiguration.go b/cloudformation/chatbot/aws-chatbot-microsoftteamschannelconfiguration.go index 3e95c13f6e..75ec742ab8 100644 --- a/cloudformation/chatbot/aws-chatbot-microsoftteamschannelconfiguration.go +++ b/cloudformation/chatbot/aws-chatbot-microsoftteamschannelconfiguration.go @@ -7,6 +7,7 @@ import ( "encoding/json" "github.com/awslabs/goformation/v7/cloudformation/policies" + "github.com/awslabs/goformation/v7/cloudformation/tags" ) // MicrosoftTeamsChannelConfiguration AWS CloudFormation Resource (AWS::Chatbot::MicrosoftTeamsChannelConfiguration) @@ -38,6 +39,11 @@ type MicrosoftTeamsChannelConfiguration struct { // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-chatbot-microsoftteamschannelconfiguration.html#cfn-chatbot-microsoftteamschannelconfiguration-snstopicarns SnsTopicArns []string `json:"SnsTopicArns,omitempty"` + // Tags AWS CloudFormation Property + // Required: false + // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-chatbot-microsoftteamschannelconfiguration.html#cfn-chatbot-microsoftteamschannelconfiguration-tags + Tags []tags.Tag `json:"Tags,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 diff --git a/cloudformation/chatbot/aws-chatbot-slackchannelconfiguration.go b/cloudformation/chatbot/aws-chatbot-slackchannelconfiguration.go index 94e6b00eee..fbe3b225c9 100644 --- a/cloudformation/chatbot/aws-chatbot-slackchannelconfiguration.go +++ b/cloudformation/chatbot/aws-chatbot-slackchannelconfiguration.go @@ -7,6 +7,7 @@ import ( "encoding/json" "github.com/awslabs/goformation/v7/cloudformation/policies" + "github.com/awslabs/goformation/v7/cloudformation/tags" ) // SlackChannelConfiguration AWS CloudFormation Resource (AWS::Chatbot::SlackChannelConfiguration) @@ -48,6 +49,11 @@ type SlackChannelConfiguration struct { // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-chatbot-slackchannelconfiguration.html#cfn-chatbot-slackchannelconfiguration-snstopicarns SnsTopicArns []string `json:"SnsTopicArns,omitempty"` + // Tags AWS CloudFormation Property + // Required: false + // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-chatbot-slackchannelconfiguration.html#cfn-chatbot-slackchannelconfiguration-tags + Tags []tags.Tag `json:"Tags,omitempty"` + // UserRoleRequired AWS CloudFormation Property // Required: false // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-chatbot-slackchannelconfiguration.html#cfn-chatbot-slackchannelconfiguration-userrolerequired diff --git a/cloudformation/codebuild/aws-codebuild-fleet.go b/cloudformation/codebuild/aws-codebuild-fleet.go index 1d9270daa6..613e5bcc0e 100644 --- a/cloudformation/codebuild/aws-codebuild-fleet.go +++ b/cloudformation/codebuild/aws-codebuild-fleet.go @@ -29,11 +29,26 @@ type Fleet struct { // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-codebuild-fleet.html#cfn-codebuild-fleet-environmenttype EnvironmentType *string `json:"EnvironmentType,omitempty"` + // FleetServiceRole AWS CloudFormation Property + // Required: false + // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-codebuild-fleet.html#cfn-codebuild-fleet-fleetservicerole + FleetServiceRole *string `json:"FleetServiceRole,omitempty"` + + // FleetVpcConfig AWS CloudFormation Property + // Required: false + // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-codebuild-fleet.html#cfn-codebuild-fleet-fleetvpcconfig + FleetVpcConfig *Fleet_VpcConfig `json:"FleetVpcConfig,omitempty"` + // Name AWS CloudFormation Property // Required: false // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-codebuild-fleet.html#cfn-codebuild-fleet-name Name *string `json:"Name,omitempty"` + // OverflowBehavior AWS CloudFormation Property + // Required: false + // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-codebuild-fleet.html#cfn-codebuild-fleet-overflowbehavior + OverflowBehavior *string `json:"OverflowBehavior,omitempty"` + // Tags AWS CloudFormation Property // Required: false // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-codebuild-fleet.html#cfn-codebuild-fleet-tags diff --git a/cloudformation/codebuild/aws-codebuild-fleet_vpcconfig.go b/cloudformation/codebuild/aws-codebuild-fleet_vpcconfig.go new file mode 100644 index 0000000000..6f1ab5d2ad --- /dev/null +++ b/cloudformation/codebuild/aws-codebuild-fleet_vpcconfig.go @@ -0,0 +1,47 @@ +// Code generated by "go generate". Please don't change this file directly. + +package codebuild + +import ( + "github.com/awslabs/goformation/v7/cloudformation/policies" +) + +// Fleet_VpcConfig AWS CloudFormation Resource (AWS::CodeBuild::Fleet.VpcConfig) +// See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-codebuild-fleet-vpcconfig.html +type Fleet_VpcConfig struct { + + // SecurityGroupIds AWS CloudFormation Property + // Required: false + // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-codebuild-fleet-vpcconfig.html#cfn-codebuild-fleet-vpcconfig-securitygroupids + SecurityGroupIds []string `json:"SecurityGroupIds,omitempty"` + + // Subnets AWS CloudFormation Property + // Required: false + // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-codebuild-fleet-vpcconfig.html#cfn-codebuild-fleet-vpcconfig-subnets + Subnets []string `json:"Subnets,omitempty"` + + // VpcId AWS CloudFormation Property + // Required: false + // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-codebuild-fleet-vpcconfig.html#cfn-codebuild-fleet-vpcconfig-vpcid + VpcId *string `json:"VpcId,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 *Fleet_VpcConfig) AWSCloudFormationType() string { + return "AWS::CodeBuild::Fleet.VpcConfig" +} diff --git a/cloudformation/codepipeline/aws-codepipeline-pipeline_failureconditions.go b/cloudformation/codepipeline/aws-codepipeline-pipeline_failureconditions.go new file mode 100644 index 0000000000..15ec7a709b --- /dev/null +++ b/cloudformation/codepipeline/aws-codepipeline-pipeline_failureconditions.go @@ -0,0 +1,37 @@ +// Code generated by "go generate". Please don't change this file directly. + +package codepipeline + +import ( + "github.com/awslabs/goformation/v7/cloudformation/policies" +) + +// Pipeline_FailureConditions AWS CloudFormation Resource (AWS::CodePipeline::Pipeline.FailureConditions) +// See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-codepipeline-pipeline-stages-failure-conditions.html +type Pipeline_FailureConditions struct { + + // Result AWS CloudFormation Property + // Required: true + // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-codepipeline-pipeline-stages-failure-conditions.html#cfn-codepipeline-pipeline-stages-failure-conditions-result + Result string `json:"Result"` + + // 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 *Pipeline_FailureConditions) AWSCloudFormationType() string { + return "AWS::CodePipeline::Pipeline.FailureConditions" +} diff --git a/cloudformation/codepipeline/aws-codepipeline-pipeline_stagedeclaration.go b/cloudformation/codepipeline/aws-codepipeline-pipeline_stagedeclaration.go index 7f7d76b8fb..1acff114e9 100644 --- a/cloudformation/codepipeline/aws-codepipeline-pipeline_stagedeclaration.go +++ b/cloudformation/codepipeline/aws-codepipeline-pipeline_stagedeclaration.go @@ -25,6 +25,11 @@ type Pipeline_StageDeclaration struct { // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-codepipeline-pipeline-stages.html#cfn-codepipeline-pipeline-stages-name Name string `json:"Name"` + // OnFailure AWS CloudFormation Property + // Required: false + // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-codepipeline-pipeline-stages.html#cfn-codepipeline-pipeline-stages-failure-conditions + OnFailure *Pipeline_FailureConditions `json:"OnFailure,omitempty"` + // AWSCloudFormationDeletionPolicy represents a CloudFormation DeletionPolicy AWSCloudFormationDeletionPolicy policies.DeletionPolicy `json:"-"` diff --git a/cloudformation/connect/aws-connect-rule_actions.go b/cloudformation/connect/aws-connect-rule_actions.go index 107aebc359..69bd1ff3b5 100644 --- a/cloudformation/connect/aws-connect-rule_actions.go +++ b/cloudformation/connect/aws-connect-rule_actions.go @@ -35,6 +35,11 @@ type Rule_Actions struct { // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-connect-rule-actions.html#cfn-connect-rule-actions-sendnotificationactions SendNotificationActions []Rule_SendNotificationAction `json:"SendNotificationActions,omitempty"` + // SubmitAutoEvaluationActions AWS CloudFormation Property + // Required: false + // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-connect-rule-actions.html#cfn-connect-rule-actions-submitautoevaluationactions + SubmitAutoEvaluationActions []Rule_SubmitAutoEvaluationAction `json:"SubmitAutoEvaluationActions,omitempty"` + // TaskActions AWS CloudFormation Property // Required: false // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-connect-rule-actions.html#cfn-connect-rule-actions-taskactions diff --git a/cloudformation/connect/aws-connect-rule_submitautoevaluationaction.go b/cloudformation/connect/aws-connect-rule_submitautoevaluationaction.go new file mode 100644 index 0000000000..fbf54fa40b --- /dev/null +++ b/cloudformation/connect/aws-connect-rule_submitautoevaluationaction.go @@ -0,0 +1,37 @@ +// Code generated by "go generate". Please don't change this file directly. + +package connect + +import ( + "github.com/awslabs/goformation/v7/cloudformation/policies" +) + +// Rule_SubmitAutoEvaluationAction AWS CloudFormation Resource (AWS::Connect::Rule.SubmitAutoEvaluationAction) +// See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-connect-rule-submitautoevaluationaction.html +type Rule_SubmitAutoEvaluationAction struct { + + // EvaluationFormArn AWS CloudFormation Property + // Required: true + // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-connect-rule-submitautoevaluationaction.html#cfn-connect-rule-submitautoevaluationaction-evaluationformarn + EvaluationFormArn string `json:"EvaluationFormArn"` + + // 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_SubmitAutoEvaluationAction) AWSCloudFormationType() string { + return "AWS::Connect::Rule.SubmitAutoEvaluationAction" +} diff --git a/cloudformation/datazone/aws-datazone-groupprofile.go b/cloudformation/datazone/aws-datazone-groupprofile.go new file mode 100644 index 0000000000..2b75aaf14e --- /dev/null +++ b/cloudformation/datazone/aws-datazone-groupprofile.go @@ -0,0 +1,127 @@ +// Code generated by "go generate". Please don't change this file directly. + +package datazone + +import ( + "bytes" + "encoding/json" + + "github.com/awslabs/goformation/v7/cloudformation/policies" +) + +// GroupProfile AWS CloudFormation Resource (AWS::DataZone::GroupProfile) +// See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-datazone-groupprofile.html +type GroupProfile struct { + + // DomainIdentifier AWS CloudFormation Property + // Required: true + // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-datazone-groupprofile.html#cfn-datazone-groupprofile-domainidentifier + DomainIdentifier string `json:"DomainIdentifier"` + + // GroupIdentifier AWS CloudFormation Property + // Required: true + // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-datazone-groupprofile.html#cfn-datazone-groupprofile-groupidentifier + GroupIdentifier string `json:"GroupIdentifier"` + + // Status AWS CloudFormation Property + // Required: false + // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-datazone-groupprofile.html#cfn-datazone-groupprofile-status + Status *string `json:"Status,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 *GroupProfile) AWSCloudFormationType() string { + return "AWS::DataZone::GroupProfile" +} + +// MarshalJSON is a custom JSON marshalling hook that embeds this object into +// an AWS CloudFormation JSON resource's 'Properties' field and adds a 'Type'. +func (r GroupProfile) MarshalJSON() ([]byte, error) { + type Properties GroupProfile + 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 *GroupProfile) UnmarshalJSON(b []byte) error { + type Properties GroupProfile + 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 = GroupProfile(*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/datazone/aws-datazone-projectmembership.go b/cloudformation/datazone/aws-datazone-projectmembership.go new file mode 100644 index 0000000000..e2cb22e8a8 --- /dev/null +++ b/cloudformation/datazone/aws-datazone-projectmembership.go @@ -0,0 +1,132 @@ +// Code generated by "go generate". Please don't change this file directly. + +package datazone + +import ( + "bytes" + "encoding/json" + + "github.com/awslabs/goformation/v7/cloudformation/policies" +) + +// ProjectMembership AWS CloudFormation Resource (AWS::DataZone::ProjectMembership) +// See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-datazone-projectmembership.html +type ProjectMembership struct { + + // Designation AWS CloudFormation Property + // Required: true + // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-datazone-projectmembership.html#cfn-datazone-projectmembership-designation + Designation string `json:"Designation"` + + // DomainIdentifier AWS CloudFormation Property + // Required: true + // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-datazone-projectmembership.html#cfn-datazone-projectmembership-domainidentifier + DomainIdentifier string `json:"DomainIdentifier"` + + // Member AWS CloudFormation Property + // Required: true + // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-datazone-projectmembership.html#cfn-datazone-projectmembership-member + Member *ProjectMembership_Member `json:"Member"` + + // ProjectIdentifier AWS CloudFormation Property + // Required: true + // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-datazone-projectmembership.html#cfn-datazone-projectmembership-projectidentifier + ProjectIdentifier string `json:"ProjectIdentifier"` + + // 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 *ProjectMembership) AWSCloudFormationType() string { + return "AWS::DataZone::ProjectMembership" +} + +// MarshalJSON is a custom JSON marshalling hook that embeds this object into +// an AWS CloudFormation JSON resource's 'Properties' field and adds a 'Type'. +func (r ProjectMembership) MarshalJSON() ([]byte, error) { + type Properties ProjectMembership + 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 *ProjectMembership) UnmarshalJSON(b []byte) error { + type Properties ProjectMembership + 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 = ProjectMembership(*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/datazone/aws-datazone-projectmembership_member.go b/cloudformation/datazone/aws-datazone-projectmembership_member.go new file mode 100644 index 0000000000..e42c747fcd --- /dev/null +++ b/cloudformation/datazone/aws-datazone-projectmembership_member.go @@ -0,0 +1,42 @@ +// Code generated by "go generate". Please don't change this file directly. + +package datazone + +import ( + "github.com/awslabs/goformation/v7/cloudformation/policies" +) + +// ProjectMembership_Member AWS CloudFormation Resource (AWS::DataZone::ProjectMembership.Member) +// See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-datazone-projectmembership-member.html +type ProjectMembership_Member struct { + + // GroupIdentifier AWS CloudFormation Property + // Required: false + // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-datazone-projectmembership-member.html#cfn-datazone-projectmembership-member-groupidentifier + GroupIdentifier *string `json:"GroupIdentifier,omitempty"` + + // UserIdentifier AWS CloudFormation Property + // Required: false + // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-datazone-projectmembership-member.html#cfn-datazone-projectmembership-member-useridentifier + UserIdentifier *string `json:"UserIdentifier,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 *ProjectMembership_Member) AWSCloudFormationType() string { + return "AWS::DataZone::ProjectMembership.Member" +} diff --git a/cloudformation/datazone/aws-datazone-userprofile.go b/cloudformation/datazone/aws-datazone-userprofile.go new file mode 100644 index 0000000000..b6cf817c64 --- /dev/null +++ b/cloudformation/datazone/aws-datazone-userprofile.go @@ -0,0 +1,132 @@ +// Code generated by "go generate". Please don't change this file directly. + +package datazone + +import ( + "bytes" + "encoding/json" + + "github.com/awslabs/goformation/v7/cloudformation/policies" +) + +// UserProfile AWS CloudFormation Resource (AWS::DataZone::UserProfile) +// See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-datazone-userprofile.html +type UserProfile struct { + + // DomainIdentifier AWS CloudFormation Property + // Required: true + // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-datazone-userprofile.html#cfn-datazone-userprofile-domainidentifier + DomainIdentifier string `json:"DomainIdentifier"` + + // Status AWS CloudFormation Property + // Required: false + // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-datazone-userprofile.html#cfn-datazone-userprofile-status + Status *string `json:"Status,omitempty"` + + // UserIdentifier AWS CloudFormation Property + // Required: true + // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-datazone-userprofile.html#cfn-datazone-userprofile-useridentifier + UserIdentifier string `json:"UserIdentifier"` + + // UserType AWS CloudFormation Property + // Required: false + // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-datazone-userprofile.html#cfn-datazone-userprofile-usertype + UserType *string `json:"UserType,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 *UserProfile) AWSCloudFormationType() string { + return "AWS::DataZone::UserProfile" +} + +// MarshalJSON is a custom JSON marshalling hook that embeds this object into +// an AWS CloudFormation JSON resource's 'Properties' field and adds a 'Type'. +func (r UserProfile) MarshalJSON() ([]byte, error) { + type Properties UserProfile + 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 *UserProfile) UnmarshalJSON(b []byte) error { + type Properties UserProfile + 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 = UserProfile(*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/datazone/aws-datazone-userprofile_iamuserprofiledetails.go b/cloudformation/datazone/aws-datazone-userprofile_iamuserprofiledetails.go new file mode 100644 index 0000000000..c19e37e682 --- /dev/null +++ b/cloudformation/datazone/aws-datazone-userprofile_iamuserprofiledetails.go @@ -0,0 +1,37 @@ +// Code generated by "go generate". Please don't change this file directly. + +package datazone + +import ( + "github.com/awslabs/goformation/v7/cloudformation/policies" +) + +// UserProfile_IamUserProfileDetails AWS CloudFormation Resource (AWS::DataZone::UserProfile.IamUserProfileDetails) +// See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-datazone-userprofile-iamuserprofiledetails.html +type UserProfile_IamUserProfileDetails struct { + + // Arn AWS CloudFormation Property + // Required: false + // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-datazone-userprofile-iamuserprofiledetails.html#cfn-datazone-userprofile-iamuserprofiledetails-arn + Arn *string `json:"Arn,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 *UserProfile_IamUserProfileDetails) AWSCloudFormationType() string { + return "AWS::DataZone::UserProfile.IamUserProfileDetails" +} diff --git a/cloudformation/datazone/aws-datazone-userprofile_ssouserprofiledetails.go b/cloudformation/datazone/aws-datazone-userprofile_ssouserprofiledetails.go new file mode 100644 index 0000000000..8b1244a4b1 --- /dev/null +++ b/cloudformation/datazone/aws-datazone-userprofile_ssouserprofiledetails.go @@ -0,0 +1,47 @@ +// Code generated by "go generate". Please don't change this file directly. + +package datazone + +import ( + "github.com/awslabs/goformation/v7/cloudformation/policies" +) + +// UserProfile_SsoUserProfileDetails AWS CloudFormation Resource (AWS::DataZone::UserProfile.SsoUserProfileDetails) +// See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-datazone-userprofile-ssouserprofiledetails.html +type UserProfile_SsoUserProfileDetails struct { + + // FirstName AWS CloudFormation Property + // Required: false + // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-datazone-userprofile-ssouserprofiledetails.html#cfn-datazone-userprofile-ssouserprofiledetails-firstname + FirstName *string `json:"FirstName,omitempty"` + + // LastName AWS CloudFormation Property + // Required: false + // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-datazone-userprofile-ssouserprofiledetails.html#cfn-datazone-userprofile-ssouserprofiledetails-lastname + LastName *string `json:"LastName,omitempty"` + + // Username AWS CloudFormation Property + // Required: false + // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-datazone-userprofile-ssouserprofiledetails.html#cfn-datazone-userprofile-ssouserprofiledetails-username + Username *string `json:"Username,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 *UserProfile_SsoUserProfileDetails) AWSCloudFormationType() string { + return "AWS::DataZone::UserProfile.SsoUserProfileDetails" +} diff --git a/cloudformation/datazone/aws-datazone-userprofile_userprofiledetails.go b/cloudformation/datazone/aws-datazone-userprofile_userprofiledetails.go new file mode 100644 index 0000000000..49dcf2d71f --- /dev/null +++ b/cloudformation/datazone/aws-datazone-userprofile_userprofiledetails.go @@ -0,0 +1,42 @@ +// Code generated by "go generate". Please don't change this file directly. + +package datazone + +import ( + "github.com/awslabs/goformation/v7/cloudformation/policies" +) + +// UserProfile_UserProfileDetails AWS CloudFormation Resource (AWS::DataZone::UserProfile.UserProfileDetails) +// See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-datazone-userprofile-userprofiledetails.html +type UserProfile_UserProfileDetails struct { + + // Iam AWS CloudFormation Property + // Required: false + // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-datazone-userprofile-userprofiledetails.html#cfn-datazone-userprofile-userprofiledetails-iam + Iam *UserProfile_IamUserProfileDetails `json:"Iam,omitempty"` + + // Sso AWS CloudFormation Property + // Required: false + // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-datazone-userprofile-userprofiledetails.html#cfn-datazone-userprofile-userprofiledetails-sso + Sso *UserProfile_SsoUserProfileDetails `json:"Sso,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 *UserProfile_UserProfileDetails) AWSCloudFormationType() string { + return "AWS::DataZone::UserProfile.UserProfileDetails" +} diff --git a/cloudformation/dynamodb/aws-dynamodb-globaltable.go b/cloudformation/dynamodb/aws-dynamodb-globaltable.go index da24cd1dc5..e83f3e2e4f 100644 --- a/cloudformation/dynamodb/aws-dynamodb-globaltable.go +++ b/cloudformation/dynamodb/aws-dynamodb-globaltable.go @@ -63,6 +63,11 @@ type GlobalTable struct { // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-dynamodb-globaltable.html#cfn-dynamodb-globaltable-timetolivespecification TimeToLiveSpecification *GlobalTable_TimeToLiveSpecification `json:"TimeToLiveSpecification,omitempty"` + // WriteOnDemandThroughputSettings AWS CloudFormation Property + // Required: false + // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-dynamodb-globaltable.html#cfn-dynamodb-globaltable-writeondemandthroughputsettings + WriteOnDemandThroughputSettings *GlobalTable_WriteOnDemandThroughputSettings `json:"WriteOnDemandThroughputSettings,omitempty"` + // WriteProvisionedThroughputSettings AWS CloudFormation Property // Required: false // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-dynamodb-globaltable.html#cfn-dynamodb-globaltable-writeprovisionedthroughputsettings diff --git a/cloudformation/dynamodb/aws-dynamodb-globaltable_globalsecondaryindex.go b/cloudformation/dynamodb/aws-dynamodb-globaltable_globalsecondaryindex.go index 5222fc6cfd..b835cfbad3 100644 --- a/cloudformation/dynamodb/aws-dynamodb-globaltable_globalsecondaryindex.go +++ b/cloudformation/dynamodb/aws-dynamodb-globaltable_globalsecondaryindex.go @@ -25,6 +25,11 @@ type GlobalTable_GlobalSecondaryIndex struct { // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-dynamodb-globaltable-globalsecondaryindex.html#cfn-dynamodb-globaltable-globalsecondaryindex-projection Projection *GlobalTable_Projection `json:"Projection"` + // WriteOnDemandThroughputSettings AWS CloudFormation Property + // Required: false + // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-dynamodb-globaltable-globalsecondaryindex.html#cfn-dynamodb-globaltable-globalsecondaryindex-writeondemandthroughputsettings + WriteOnDemandThroughputSettings *GlobalTable_WriteOnDemandThroughputSettings `json:"WriteOnDemandThroughputSettings,omitempty"` + // WriteProvisionedThroughputSettings AWS CloudFormation Property // Required: false // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-dynamodb-globaltable-globalsecondaryindex.html#cfn-dynamodb-globaltable-globalsecondaryindex-writeprovisionedthroughputsettings diff --git a/cloudformation/dynamodb/aws-dynamodb-globaltable_readondemandthroughputsettings.go b/cloudformation/dynamodb/aws-dynamodb-globaltable_readondemandthroughputsettings.go new file mode 100644 index 0000000000..026f9b9eae --- /dev/null +++ b/cloudformation/dynamodb/aws-dynamodb-globaltable_readondemandthroughputsettings.go @@ -0,0 +1,37 @@ +// Code generated by "go generate". Please don't change this file directly. + +package dynamodb + +import ( + "github.com/awslabs/goformation/v7/cloudformation/policies" +) + +// GlobalTable_ReadOnDemandThroughputSettings AWS CloudFormation Resource (AWS::DynamoDB::GlobalTable.ReadOnDemandThroughputSettings) +// See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-dynamodb-globaltable-readondemandthroughputsettings.html +type GlobalTable_ReadOnDemandThroughputSettings struct { + + // MaxReadRequestUnits AWS CloudFormation Property + // Required: false + // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-dynamodb-globaltable-readondemandthroughputsettings.html#cfn-dynamodb-globaltable-readondemandthroughputsettings-maxreadrequestunits + MaxReadRequestUnits *int `json:"MaxReadRequestUnits,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 *GlobalTable_ReadOnDemandThroughputSettings) AWSCloudFormationType() string { + return "AWS::DynamoDB::GlobalTable.ReadOnDemandThroughputSettings" +} diff --git a/cloudformation/dynamodb/aws-dynamodb-globaltable_replicaglobalsecondaryindexspecification.go b/cloudformation/dynamodb/aws-dynamodb-globaltable_replicaglobalsecondaryindexspecification.go index f282431d8f..96b31bd20d 100644 --- a/cloudformation/dynamodb/aws-dynamodb-globaltable_replicaglobalsecondaryindexspecification.go +++ b/cloudformation/dynamodb/aws-dynamodb-globaltable_replicaglobalsecondaryindexspecification.go @@ -20,6 +20,11 @@ type GlobalTable_ReplicaGlobalSecondaryIndexSpecification struct { // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-dynamodb-globaltable-replicaglobalsecondaryindexspecification.html#cfn-dynamodb-globaltable-replicaglobalsecondaryindexspecification-indexname IndexName string `json:"IndexName"` + // ReadOnDemandThroughputSettings AWS CloudFormation Property + // Required: false + // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-dynamodb-globaltable-replicaglobalsecondaryindexspecification.html#cfn-dynamodb-globaltable-replicaglobalsecondaryindexspecification-readondemandthroughputsettings + ReadOnDemandThroughputSettings *GlobalTable_ReadOnDemandThroughputSettings `json:"ReadOnDemandThroughputSettings,omitempty"` + // ReadProvisionedThroughputSettings AWS CloudFormation Property // Required: false // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-dynamodb-globaltable-replicaglobalsecondaryindexspecification.html#cfn-dynamodb-globaltable-replicaglobalsecondaryindexspecification-readprovisionedthroughputsettings diff --git a/cloudformation/dynamodb/aws-dynamodb-globaltable_replicaspecification.go b/cloudformation/dynamodb/aws-dynamodb-globaltable_replicaspecification.go index a5b88856bb..16d80129c3 100644 --- a/cloudformation/dynamodb/aws-dynamodb-globaltable_replicaspecification.go +++ b/cloudformation/dynamodb/aws-dynamodb-globaltable_replicaspecification.go @@ -36,6 +36,11 @@ type GlobalTable_ReplicaSpecification struct { // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-dynamodb-globaltable-replicaspecification.html#cfn-dynamodb-globaltable-replicaspecification-pointintimerecoveryspecification PointInTimeRecoverySpecification *GlobalTable_PointInTimeRecoverySpecification `json:"PointInTimeRecoverySpecification,omitempty"` + // ReadOnDemandThroughputSettings AWS CloudFormation Property + // Required: false + // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-dynamodb-globaltable-replicaspecification.html#cfn-dynamodb-globaltable-replicaspecification-readondemandthroughputsettings + ReadOnDemandThroughputSettings *GlobalTable_ReadOnDemandThroughputSettings `json:"ReadOnDemandThroughputSettings,omitempty"` + // ReadProvisionedThroughputSettings AWS CloudFormation Property // Required: false // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-dynamodb-globaltable-replicaspecification.html#cfn-dynamodb-globaltable-replicaspecification-readprovisionedthroughputsettings diff --git a/cloudformation/dynamodb/aws-dynamodb-globaltable_writeondemandthroughputsettings.go b/cloudformation/dynamodb/aws-dynamodb-globaltable_writeondemandthroughputsettings.go new file mode 100644 index 0000000000..6818d1573f --- /dev/null +++ b/cloudformation/dynamodb/aws-dynamodb-globaltable_writeondemandthroughputsettings.go @@ -0,0 +1,37 @@ +// Code generated by "go generate". Please don't change this file directly. + +package dynamodb + +import ( + "github.com/awslabs/goformation/v7/cloudformation/policies" +) + +// GlobalTable_WriteOnDemandThroughputSettings AWS CloudFormation Resource (AWS::DynamoDB::GlobalTable.WriteOnDemandThroughputSettings) +// See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-dynamodb-globaltable-writeondemandthroughputsettings.html +type GlobalTable_WriteOnDemandThroughputSettings struct { + + // MaxWriteRequestUnits AWS CloudFormation Property + // Required: false + // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-dynamodb-globaltable-writeondemandthroughputsettings.html#cfn-dynamodb-globaltable-writeondemandthroughputsettings-maxwriterequestunits + MaxWriteRequestUnits *int `json:"MaxWriteRequestUnits,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 *GlobalTable_WriteOnDemandThroughputSettings) AWSCloudFormationType() string { + return "AWS::DynamoDB::GlobalTable.WriteOnDemandThroughputSettings" +} diff --git a/cloudformation/dynamodb/aws-dynamodb-table.go b/cloudformation/dynamodb/aws-dynamodb-table.go index f5c15eaf29..852d1642f3 100644 --- a/cloudformation/dynamodb/aws-dynamodb-table.go +++ b/cloudformation/dynamodb/aws-dynamodb-table.go @@ -59,6 +59,11 @@ type Table struct { // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-dynamodb-table.html#cfn-dynamodb-table-localsecondaryindexes LocalSecondaryIndexes []Table_LocalSecondaryIndex `json:"LocalSecondaryIndexes,omitempty"` + // OnDemandThroughput AWS CloudFormation Property + // Required: false + // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-dynamodb-table.html#cfn-dynamodb-table-ondemandthroughput + OnDemandThroughput *Table_OnDemandThroughput `json:"OnDemandThroughput,omitempty"` + // PointInTimeRecoverySpecification AWS CloudFormation Property // Required: false // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-dynamodb-table.html#cfn-dynamodb-table-pointintimerecoveryspecification diff --git a/cloudformation/dynamodb/aws-dynamodb-table_globalsecondaryindex.go b/cloudformation/dynamodb/aws-dynamodb-table_globalsecondaryindex.go index cf913d3f45..5f63751468 100644 --- a/cloudformation/dynamodb/aws-dynamodb-table_globalsecondaryindex.go +++ b/cloudformation/dynamodb/aws-dynamodb-table_globalsecondaryindex.go @@ -25,6 +25,11 @@ type Table_GlobalSecondaryIndex struct { // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-dynamodb-table-globalsecondaryindex.html#cfn-dynamodb-table-globalsecondaryindex-keyschema KeySchema []Table_KeySchema `json:"KeySchema"` + // OnDemandThroughput AWS CloudFormation Property + // Required: false + // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-dynamodb-table-globalsecondaryindex.html#cfn-dynamodb-table-globalsecondaryindex-ondemandthroughput + OnDemandThroughput *Table_OnDemandThroughput `json:"OnDemandThroughput,omitempty"` + // Projection AWS CloudFormation Property // Required: true // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-dynamodb-table-globalsecondaryindex.html#cfn-dynamodb-table-globalsecondaryindex-projection diff --git a/cloudformation/dynamodb/aws-dynamodb-table_ondemandthroughput.go b/cloudformation/dynamodb/aws-dynamodb-table_ondemandthroughput.go new file mode 100644 index 0000000000..4cd00151cc --- /dev/null +++ b/cloudformation/dynamodb/aws-dynamodb-table_ondemandthroughput.go @@ -0,0 +1,42 @@ +// Code generated by "go generate". Please don't change this file directly. + +package dynamodb + +import ( + "github.com/awslabs/goformation/v7/cloudformation/policies" +) + +// Table_OnDemandThroughput AWS CloudFormation Resource (AWS::DynamoDB::Table.OnDemandThroughput) +// See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-dynamodb-table-ondemandthroughput.html +type Table_OnDemandThroughput struct { + + // MaxReadRequestUnits AWS CloudFormation Property + // Required: false + // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-dynamodb-table-ondemandthroughput.html#cfn-dynamodb-table-ondemandthroughput-maxreadrequestunits + MaxReadRequestUnits *int `json:"MaxReadRequestUnits,omitempty"` + + // MaxWriteRequestUnits AWS CloudFormation Property + // Required: false + // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-dynamodb-table-ondemandthroughput.html#cfn-dynamodb-table-ondemandthroughput-maxwriterequestunits + MaxWriteRequestUnits *int `json:"MaxWriteRequestUnits,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 *Table_OnDemandThroughput) AWSCloudFormationType() string { + return "AWS::DynamoDB::Table.OnDemandThroughput" +} diff --git a/cloudformation/ec2/aws-ec2-customergateway.go b/cloudformation/ec2/aws-ec2-customergateway.go index ed4196b282..4209cf01fa 100644 --- a/cloudformation/ec2/aws-ec2-customergateway.go +++ b/cloudformation/ec2/aws-ec2-customergateway.go @@ -19,6 +19,11 @@ type CustomerGateway struct { // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-ec2-customergateway.html#cfn-ec2-customergateway-bgpasn BgpAsn *int `json:"BgpAsn,omitempty"` + // BgpAsnExtended AWS CloudFormation Property + // Required: false + // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-ec2-customergateway.html#cfn-ec2-customergateway-bgpasnextended + BgpAsnExtended *float64 `json:"BgpAsnExtended,omitempty"` + // CertificateArn AWS CloudFormation Property // Required: false // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-ec2-customergateway.html#cfn-ec2-customergateway-certificatearn diff --git a/cloudformation/ec2/aws-ec2-instance_state.go b/cloudformation/ec2/aws-ec2-instance_state.go new file mode 100644 index 0000000000..ca8d55e5f0 --- /dev/null +++ b/cloudformation/ec2/aws-ec2-instance_state.go @@ -0,0 +1,42 @@ +// Code generated by "go generate". Please don't change this file directly. + +package ec2 + +import ( + "github.com/awslabs/goformation/v7/cloudformation/policies" +) + +// Instance_State AWS CloudFormation Resource (AWS::EC2::Instance.State) +// See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ec2-instance-state.html +type Instance_State struct { + + // Code AWS CloudFormation Property + // Required: false + // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ec2-instance-state.html#cfn-ec2-instance-state-code + Code *string `json:"Code,omitempty"` + + // Name AWS CloudFormation Property + // Required: false + // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ec2-instance-state.html#cfn-ec2-instance-state-name + Name *string `json:"Name,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 *Instance_State) AWSCloudFormationType() string { + return "AWS::EC2::Instance.State" +} diff --git a/cloudformation/ec2/aws-ec2-transitgatewayroute.go b/cloudformation/ec2/aws-ec2-transitgatewayroute.go index e8c10d640b..782f7b79aa 100644 --- a/cloudformation/ec2/aws-ec2-transitgatewayroute.go +++ b/cloudformation/ec2/aws-ec2-transitgatewayroute.go @@ -19,9 +19,9 @@ type TransitGatewayRoute struct { Blackhole *bool `json:"Blackhole,omitempty"` // DestinationCidrBlock AWS CloudFormation Property - // Required: false + // Required: true // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-ec2-transitgatewayroute.html#cfn-ec2-transitgatewayroute-destinationcidrblock - DestinationCidrBlock *string `json:"DestinationCidrBlock,omitempty"` + DestinationCidrBlock string `json:"DestinationCidrBlock"` // TransitGatewayAttachmentId AWS CloudFormation Property // Required: false diff --git a/cloudformation/ecs/aws-ecs-cluster_clusterconfiguration.go b/cloudformation/ecs/aws-ecs-cluster_clusterconfiguration.go index 45fe3f27c3..8400d3db38 100644 --- a/cloudformation/ecs/aws-ecs-cluster_clusterconfiguration.go +++ b/cloudformation/ecs/aws-ecs-cluster_clusterconfiguration.go @@ -15,6 +15,11 @@ type Cluster_ClusterConfiguration struct { // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ecs-cluster-clusterconfiguration.html#cfn-ecs-cluster-clusterconfiguration-executecommandconfiguration ExecuteCommandConfiguration *Cluster_ExecuteCommandConfiguration `json:"ExecuteCommandConfiguration,omitempty"` + // ManagedStorageConfiguration AWS CloudFormation Property + // Required: false + // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ecs-cluster-clusterconfiguration.html#cfn-ecs-cluster-clusterconfiguration-managedstorageconfiguration + ManagedStorageConfiguration *Cluster_ManagedStorageConfiguration `json:"ManagedStorageConfiguration,omitempty"` + // AWSCloudFormationDeletionPolicy represents a CloudFormation DeletionPolicy AWSCloudFormationDeletionPolicy policies.DeletionPolicy `json:"-"` diff --git a/cloudformation/ecs/aws-ecs-cluster_managedstorageconfiguration.go b/cloudformation/ecs/aws-ecs-cluster_managedstorageconfiguration.go new file mode 100644 index 0000000000..f7d7757f64 --- /dev/null +++ b/cloudformation/ecs/aws-ecs-cluster_managedstorageconfiguration.go @@ -0,0 +1,42 @@ +// Code generated by "go generate". Please don't change this file directly. + +package ecs + +import ( + "github.com/awslabs/goformation/v7/cloudformation/policies" +) + +// Cluster_ManagedStorageConfiguration AWS CloudFormation Resource (AWS::ECS::Cluster.ManagedStorageConfiguration) +// See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ecs-cluster-managedstorageconfiguration.html +type Cluster_ManagedStorageConfiguration struct { + + // FargateEphemeralStorageKmsKeyId AWS CloudFormation Property + // Required: false + // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ecs-cluster-managedstorageconfiguration.html#cfn-ecs-cluster-managedstorageconfiguration-fargateephemeralstoragekmskeyid + FargateEphemeralStorageKmsKeyId *string `json:"FargateEphemeralStorageKmsKeyId,omitempty"` + + // KmsKeyId AWS CloudFormation Property + // Required: false + // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ecs-cluster-managedstorageconfiguration.html#cfn-ecs-cluster-managedstorageconfiguration-kmskeyid + KmsKeyId *string `json:"KmsKeyId,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 *Cluster_ManagedStorageConfiguration) AWSCloudFormationType() string { + return "AWS::ECS::Cluster.ManagedStorageConfiguration" +} diff --git a/cloudformation/eks/aws-eks-addon.go b/cloudformation/eks/aws-eks-addon.go index dab0f84759..2681eff2e6 100644 --- a/cloudformation/eks/aws-eks-addon.go +++ b/cloudformation/eks/aws-eks-addon.go @@ -34,6 +34,11 @@ type Addon struct { // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-eks-addon.html#cfn-eks-addon-configurationvalues ConfigurationValues *string `json:"ConfigurationValues,omitempty"` + // PodIdentityAssociations AWS CloudFormation Property + // Required: false + // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-eks-addon.html#cfn-eks-addon-podidentityassociations + PodIdentityAssociations []Addon_PodIdentityAssociation `json:"PodIdentityAssociations,omitempty"` + // PreserveOnDelete AWS CloudFormation Property // Required: false // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-eks-addon.html#cfn-eks-addon-preserveondelete diff --git a/cloudformation/eks/aws-eks-addon_podidentityassociation.go b/cloudformation/eks/aws-eks-addon_podidentityassociation.go new file mode 100644 index 0000000000..0695a10e34 --- /dev/null +++ b/cloudformation/eks/aws-eks-addon_podidentityassociation.go @@ -0,0 +1,42 @@ +// Code generated by "go generate". Please don't change this file directly. + +package eks + +import ( + "github.com/awslabs/goformation/v7/cloudformation/policies" +) + +// Addon_PodIdentityAssociation AWS CloudFormation Resource (AWS::EKS::Addon.PodIdentityAssociation) +// See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-eks-addon-podidentityassociation.html +type Addon_PodIdentityAssociation struct { + + // RoleArn AWS CloudFormation Property + // Required: true + // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-eks-addon-podidentityassociation.html#cfn-eks-addon-podidentityassociation-rolearn + RoleArn string `json:"RoleArn"` + + // ServiceAccount AWS CloudFormation Property + // Required: true + // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-eks-addon-podidentityassociation.html#cfn-eks-addon-podidentityassociation-serviceaccount + ServiceAccount string `json:"ServiceAccount"` + + // 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 *Addon_PodIdentityAssociation) AWSCloudFormationType() string { + return "AWS::EKS::Addon.PodIdentityAssociation" +} diff --git a/cloudformation/elasticache/aws-elasticache-parametergroup.go b/cloudformation/elasticache/aws-elasticache-parametergroup.go index fe2b5a4eac..fcd9e59a4f 100644 --- a/cloudformation/elasticache/aws-elasticache-parametergroup.go +++ b/cloudformation/elasticache/aws-elasticache-parametergroup.go @@ -11,27 +11,27 @@ import ( ) // ParameterGroup AWS CloudFormation Resource (AWS::ElastiCache::ParameterGroup) -// See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-elasticache-parameter-group.html +// See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-elasticache-parametergroup.html type ParameterGroup struct { // CacheParameterGroupFamily AWS CloudFormation Property // Required: true - // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-elasticache-parameter-group.html#cfn-elasticache-parametergroup-cacheparametergroupfamily + // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-elasticache-parametergroup.html#cfn-elasticache-parametergroup-cacheparametergroupfamily CacheParameterGroupFamily string `json:"CacheParameterGroupFamily"` // Description AWS CloudFormation Property // Required: true - // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-elasticache-parameter-group.html#cfn-elasticache-parametergroup-description + // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-elasticache-parametergroup.html#cfn-elasticache-parametergroup-description Description string `json:"Description"` // Properties AWS CloudFormation Property // Required: false - // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-elasticache-parameter-group.html#cfn-elasticache-parametergroup-properties + // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-elasticache-parametergroup.html#cfn-elasticache-parametergroup-properties Properties map[string]string `json:"Properties,omitempty"` // Tags AWS CloudFormation Property // Required: false - // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-elasticache-parameter-group.html#cfn-elasticache-parametergroup-tags + // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-elasticache-parametergroup.html#cfn-elasticache-parametergroup-tags Tags []tags.Tag `json:"Tags,omitempty"` // AWSCloudFormationDeletionPolicy represents a CloudFormation DeletionPolicy diff --git a/cloudformation/events/aws-events-eventbus.go b/cloudformation/events/aws-events-eventbus.go index 54d0a98a15..3c81a3962f 100644 --- a/cloudformation/events/aws-events-eventbus.go +++ b/cloudformation/events/aws-events-eventbus.go @@ -14,11 +14,26 @@ import ( // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-events-eventbus.html type EventBus struct { + // DeadLetterConfig AWS CloudFormation Property + // Required: false + // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-events-eventbus.html#cfn-events-eventbus-deadletterconfig + DeadLetterConfig *EventBus_DeadLetterConfig `json:"DeadLetterConfig,omitempty"` + + // Description AWS CloudFormation Property + // Required: false + // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-events-eventbus.html#cfn-events-eventbus-description + Description *string `json:"Description,omitempty"` + // EventSourceName AWS CloudFormation Property // Required: false // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-events-eventbus.html#cfn-events-eventbus-eventsourcename EventSourceName *string `json:"EventSourceName,omitempty"` + // KmsKeyIdentifier AWS CloudFormation Property + // Required: false + // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-events-eventbus.html#cfn-events-eventbus-kmskeyidentifier + KmsKeyIdentifier *string `json:"KmsKeyIdentifier,omitempty"` + // Name AWS CloudFormation Property // Required: true // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-events-eventbus.html#cfn-events-eventbus-name diff --git a/cloudformation/events/aws-events-eventbus_deadletterconfig.go b/cloudformation/events/aws-events-eventbus_deadletterconfig.go new file mode 100644 index 0000000000..0fb3d8dc03 --- /dev/null +++ b/cloudformation/events/aws-events-eventbus_deadletterconfig.go @@ -0,0 +1,37 @@ +// Code generated by "go generate". Please don't change this file directly. + +package events + +import ( + "github.com/awslabs/goformation/v7/cloudformation/policies" +) + +// EventBus_DeadLetterConfig AWS CloudFormation Resource (AWS::Events::EventBus.DeadLetterConfig) +// See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-events-eventbus-deadletterconfig.html +type EventBus_DeadLetterConfig struct { + + // Arn AWS CloudFormation Property + // Required: false + // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-events-eventbus-deadletterconfig.html#cfn-events-eventbus-deadletterconfig-arn + Arn *string `json:"Arn,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 *EventBus_DeadLetterConfig) AWSCloudFormationType() string { + return "AWS::Events::EventBus.DeadLetterConfig" +} diff --git a/cloudformation/fms/aws-fms-policy_icmptypecode.go b/cloudformation/fms/aws-fms-policy_icmptypecode.go new file mode 100644 index 0000000000..0e9defe3ba --- /dev/null +++ b/cloudformation/fms/aws-fms-policy_icmptypecode.go @@ -0,0 +1,42 @@ +// Code generated by "go generate". Please don't change this file directly. + +package fms + +import ( + "github.com/awslabs/goformation/v7/cloudformation/policies" +) + +// Policy_IcmpTypeCode AWS CloudFormation Resource (AWS::FMS::Policy.IcmpTypeCode) +// See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-fms-policy-icmptypecode.html +type Policy_IcmpTypeCode struct { + + // Code AWS CloudFormation Property + // Required: true + // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-fms-policy-icmptypecode.html#cfn-fms-policy-icmptypecode-code + Code int `json:"Code"` + + // Type AWS CloudFormation Property + // Required: true + // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-fms-policy-icmptypecode.html#cfn-fms-policy-icmptypecode-type + Type int `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 *Policy_IcmpTypeCode) AWSCloudFormationType() string { + return "AWS::FMS::Policy.IcmpTypeCode" +} diff --git a/cloudformation/fms/aws-fms-policy_networkaclcommonpolicy.go b/cloudformation/fms/aws-fms-policy_networkaclcommonpolicy.go new file mode 100644 index 0000000000..f098029a63 --- /dev/null +++ b/cloudformation/fms/aws-fms-policy_networkaclcommonpolicy.go @@ -0,0 +1,37 @@ +// Code generated by "go generate". Please don't change this file directly. + +package fms + +import ( + "github.com/awslabs/goformation/v7/cloudformation/policies" +) + +// Policy_NetworkAclCommonPolicy AWS CloudFormation Resource (AWS::FMS::Policy.NetworkAclCommonPolicy) +// See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-fms-policy-networkaclcommonpolicy.html +type Policy_NetworkAclCommonPolicy struct { + + // NetworkAclEntrySet AWS CloudFormation Property + // Required: true + // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-fms-policy-networkaclcommonpolicy.html#cfn-fms-policy-networkaclcommonpolicy-networkaclentryset + NetworkAclEntrySet *Policy_NetworkAclEntrySet `json:"NetworkAclEntrySet"` + + // 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 *Policy_NetworkAclCommonPolicy) AWSCloudFormationType() string { + return "AWS::FMS::Policy.NetworkAclCommonPolicy" +} diff --git a/cloudformation/fms/aws-fms-policy_networkaclentry.go b/cloudformation/fms/aws-fms-policy_networkaclentry.go new file mode 100644 index 0000000000..2de9d9386d --- /dev/null +++ b/cloudformation/fms/aws-fms-policy_networkaclentry.go @@ -0,0 +1,67 @@ +// Code generated by "go generate". Please don't change this file directly. + +package fms + +import ( + "github.com/awslabs/goformation/v7/cloudformation/policies" +) + +// Policy_NetworkAclEntry AWS CloudFormation Resource (AWS::FMS::Policy.NetworkAclEntry) +// See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-fms-policy-networkaclentry.html +type Policy_NetworkAclEntry struct { + + // CidrBlock AWS CloudFormation Property + // Required: false + // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-fms-policy-networkaclentry.html#cfn-fms-policy-networkaclentry-cidrblock + CidrBlock *string `json:"CidrBlock,omitempty"` + + // Egress AWS CloudFormation Property + // Required: true + // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-fms-policy-networkaclentry.html#cfn-fms-policy-networkaclentry-egress + Egress bool `json:"Egress"` + + // IcmpTypeCode AWS CloudFormation Property + // Required: false + // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-fms-policy-networkaclentry.html#cfn-fms-policy-networkaclentry-icmptypecode + IcmpTypeCode *Policy_IcmpTypeCode `json:"IcmpTypeCode,omitempty"` + + // Ipv6CidrBlock AWS CloudFormation Property + // Required: false + // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-fms-policy-networkaclentry.html#cfn-fms-policy-networkaclentry-ipv6cidrblock + Ipv6CidrBlock *string `json:"Ipv6CidrBlock,omitempty"` + + // PortRange AWS CloudFormation Property + // Required: false + // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-fms-policy-networkaclentry.html#cfn-fms-policy-networkaclentry-portrange + PortRange *Policy_PortRange `json:"PortRange,omitempty"` + + // Protocol AWS CloudFormation Property + // Required: true + // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-fms-policy-networkaclentry.html#cfn-fms-policy-networkaclentry-protocol + Protocol string `json:"Protocol"` + + // RuleAction AWS CloudFormation Property + // Required: true + // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-fms-policy-networkaclentry.html#cfn-fms-policy-networkaclentry-ruleaction + RuleAction string `json:"RuleAction"` + + // 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 *Policy_NetworkAclEntry) AWSCloudFormationType() string { + return "AWS::FMS::Policy.NetworkAclEntry" +} diff --git a/cloudformation/fms/aws-fms-policy_networkaclentryset.go b/cloudformation/fms/aws-fms-policy_networkaclentryset.go new file mode 100644 index 0000000000..636dceb8c6 --- /dev/null +++ b/cloudformation/fms/aws-fms-policy_networkaclentryset.go @@ -0,0 +1,52 @@ +// Code generated by "go generate". Please don't change this file directly. + +package fms + +import ( + "github.com/awslabs/goformation/v7/cloudformation/policies" +) + +// Policy_NetworkAclEntrySet AWS CloudFormation Resource (AWS::FMS::Policy.NetworkAclEntrySet) +// See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-fms-policy-networkaclentryset.html +type Policy_NetworkAclEntrySet struct { + + // FirstEntries AWS CloudFormation Property + // Required: false + // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-fms-policy-networkaclentryset.html#cfn-fms-policy-networkaclentryset-firstentries + FirstEntries []Policy_NetworkAclEntry `json:"FirstEntries,omitempty"` + + // ForceRemediateForFirstEntries AWS CloudFormation Property + // Required: true + // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-fms-policy-networkaclentryset.html#cfn-fms-policy-networkaclentryset-forceremediateforfirstentries + ForceRemediateForFirstEntries bool `json:"ForceRemediateForFirstEntries"` + + // ForceRemediateForLastEntries AWS CloudFormation Property + // Required: true + // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-fms-policy-networkaclentryset.html#cfn-fms-policy-networkaclentryset-forceremediateforlastentries + ForceRemediateForLastEntries bool `json:"ForceRemediateForLastEntries"` + + // LastEntries AWS CloudFormation Property + // Required: false + // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-fms-policy-networkaclentryset.html#cfn-fms-policy-networkaclentryset-lastentries + LastEntries []Policy_NetworkAclEntry `json:"LastEntries,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 *Policy_NetworkAclEntrySet) AWSCloudFormationType() string { + return "AWS::FMS::Policy.NetworkAclEntrySet" +} diff --git a/cloudformation/fms/aws-fms-policy_policyoption.go b/cloudformation/fms/aws-fms-policy_policyoption.go index 80b817d963..88c9ef8125 100644 --- a/cloudformation/fms/aws-fms-policy_policyoption.go +++ b/cloudformation/fms/aws-fms-policy_policyoption.go @@ -10,6 +10,11 @@ import ( // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-fms-policy-policyoption.html type Policy_PolicyOption struct { + // NetworkAclCommonPolicy AWS CloudFormation Property + // Required: false + // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-fms-policy-policyoption.html#cfn-fms-policy-policyoption-networkaclcommonpolicy + NetworkAclCommonPolicy *Policy_NetworkAclCommonPolicy `json:"NetworkAclCommonPolicy,omitempty"` + // NetworkFirewallPolicy AWS CloudFormation Property // Required: false // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-fms-policy-policyoption.html#cfn-fms-policy-policyoption-networkfirewallpolicy diff --git a/cloudformation/fms/aws-fms-policy_portrange.go b/cloudformation/fms/aws-fms-policy_portrange.go new file mode 100644 index 0000000000..2b6e907e77 --- /dev/null +++ b/cloudformation/fms/aws-fms-policy_portrange.go @@ -0,0 +1,42 @@ +// Code generated by "go generate". Please don't change this file directly. + +package fms + +import ( + "github.com/awslabs/goformation/v7/cloudformation/policies" +) + +// Policy_PortRange AWS CloudFormation Resource (AWS::FMS::Policy.PortRange) +// See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-fms-policy-portrange.html +type Policy_PortRange struct { + + // From AWS CloudFormation Property + // Required: true + // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-fms-policy-portrange.html#cfn-fms-policy-portrange-from + From int `json:"From"` + + // To AWS CloudFormation Property + // Required: true + // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-fms-policy-portrange.html#cfn-fms-policy-portrange-to + To int `json:"To"` + + // 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 *Policy_PortRange) AWSCloudFormationType() string { + return "AWS::FMS::Policy.PortRange" +} diff --git a/cloudformation/fsx/aws-fsx-filesystem_lustreconfiguration.go b/cloudformation/fsx/aws-fsx-filesystem_lustreconfiguration.go index 61ca35967c..21cd57d216 100644 --- a/cloudformation/fsx/aws-fsx-filesystem_lustreconfiguration.go +++ b/cloudformation/fsx/aws-fsx-filesystem_lustreconfiguration.go @@ -60,6 +60,11 @@ type FileSystem_LustreConfiguration struct { // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-fsx-filesystem-lustreconfiguration.html#cfn-fsx-filesystem-lustreconfiguration-importedfilechunksize ImportedFileChunkSize *int `json:"ImportedFileChunkSize,omitempty"` + // MetadataConfiguration AWS CloudFormation Property + // Required: false + // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-fsx-filesystem-lustreconfiguration.html#cfn-fsx-filesystem-lustreconfiguration-metadataconfiguration + MetadataConfiguration *FileSystem_MetadataConfiguration `json:"MetadataConfiguration,omitempty"` + // PerUnitStorageThroughput AWS CloudFormation Property // Required: false // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-fsx-filesystem-lustreconfiguration.html#cfn-fsx-filesystem-lustreconfiguration-perunitstoragethroughput diff --git a/cloudformation/fsx/aws-fsx-filesystem_metadataconfiguration.go b/cloudformation/fsx/aws-fsx-filesystem_metadataconfiguration.go new file mode 100644 index 0000000000..43ab06a877 --- /dev/null +++ b/cloudformation/fsx/aws-fsx-filesystem_metadataconfiguration.go @@ -0,0 +1,42 @@ +// Code generated by "go generate". Please don't change this file directly. + +package fsx + +import ( + "github.com/awslabs/goformation/v7/cloudformation/policies" +) + +// FileSystem_MetadataConfiguration AWS CloudFormation Resource (AWS::FSx::FileSystem.MetadataConfiguration) +// See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-fsx-filesystem-lustreconfiguration-metadataconfiguration.html +type FileSystem_MetadataConfiguration struct { + + // Iops AWS CloudFormation Property + // Required: false + // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-fsx-filesystem-lustreconfiguration-metadataconfiguration.html#cfn-fsx-filesystem-lustreconfiguration-metadataconfiguration-iops + Iops *int `json:"Iops,omitempty"` + + // Mode AWS CloudFormation Property + // Required: false + // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-fsx-filesystem-lustreconfiguration-metadataconfiguration.html#cfn-fsx-filesystem-lustreconfiguration-metadataconfiguration-mode + Mode *string `json:"Mode,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 *FileSystem_MetadataConfiguration) AWSCloudFormationType() string { + return "AWS::FSx::FileSystem.MetadataConfiguration" +} diff --git a/cloudformation/glue/aws-glue-crawler_jdbctarget.go b/cloudformation/glue/aws-glue-crawler_jdbctarget.go index 61f8f7e025..64259b3247 100644 --- a/cloudformation/glue/aws-glue-crawler_jdbctarget.go +++ b/cloudformation/glue/aws-glue-crawler_jdbctarget.go @@ -15,6 +15,11 @@ type Crawler_JdbcTarget struct { // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-glue-crawler-jdbctarget.html#cfn-glue-crawler-jdbctarget-connectionname ConnectionName *string `json:"ConnectionName,omitempty"` + // EnableAdditionalMetadata AWS CloudFormation Property + // Required: false + // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-glue-crawler-jdbctarget.html#cfn-glue-crawler-jdbctarget-enableadditionalmetadata + EnableAdditionalMetadata []string `json:"EnableAdditionalMetadata,omitempty"` + // Exclusions AWS CloudFormation Property // Required: false // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-glue-crawler-jdbctarget.html#cfn-glue-crawler-jdbctarget-exclusions diff --git a/cloudformation/glue/aws-glue-job.go b/cloudformation/glue/aws-glue-job.go index bc993dd862..75fbc9a8cd 100644 --- a/cloudformation/glue/aws-glue-job.go +++ b/cloudformation/glue/aws-glue-job.go @@ -58,6 +58,11 @@ type Job struct { // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-glue-job.html#cfn-glue-job-loguri LogUri *string `json:"LogUri,omitempty"` + // MaintenanceWindow AWS CloudFormation Property + // Required: false + // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-glue-job.html#cfn-glue-job-maintenancewindow + MaintenanceWindow *string `json:"MaintenanceWindow,omitempty"` + // MaxCapacity AWS CloudFormation Property // Required: false // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-glue-job.html#cfn-glue-job-maxcapacity diff --git a/cloudformation/lambda/aws-lambda-version.go b/cloudformation/lambda/aws-lambda-version.go index 7e1bea57ae..134ed3020b 100644 --- a/cloudformation/lambda/aws-lambda-version.go +++ b/cloudformation/lambda/aws-lambda-version.go @@ -28,6 +28,11 @@ type Version struct { // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-lambda-version.html#cfn-lambda-version-functionname FunctionName string `json:"FunctionName"` + // Policy AWS CloudFormation Property + // Required: false + // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-lambda-version.html#cfn-lambda-version-policy + Policy interface{} `json:"Policy,omitempty"` + // ProvisionedConcurrencyConfig AWS CloudFormation Property // Required: false // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-lambda-version.html#cfn-lambda-version-provisionedconcurrencyconfig diff --git a/cloudformation/mediaconnect/aws-mediaconnect-flow.go b/cloudformation/mediaconnect/aws-mediaconnect-flow.go index 2f43572b35..6c58af481d 100644 --- a/cloudformation/mediaconnect/aws-mediaconnect-flow.go +++ b/cloudformation/mediaconnect/aws-mediaconnect-flow.go @@ -18,6 +18,16 @@ type Flow struct { // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-mediaconnect-flow.html#cfn-mediaconnect-flow-availabilityzone AvailabilityZone *string `json:"AvailabilityZone,omitempty"` + // Maintenance AWS CloudFormation Property + // Required: false + // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-mediaconnect-flow.html#cfn-mediaconnect-flow-maintenance + Maintenance *Flow_Maintenance `json:"Maintenance,omitempty"` + + // MediaStreams AWS CloudFormation Property + // Required: false + // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-mediaconnect-flow.html#cfn-mediaconnect-flow-mediastreams + MediaStreams []Flow_MediaStream `json:"MediaStreams,omitempty"` + // Name AWS CloudFormation Property // Required: true // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-mediaconnect-flow.html#cfn-mediaconnect-flow-name @@ -33,6 +43,11 @@ type Flow struct { // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-mediaconnect-flow.html#cfn-mediaconnect-flow-sourcefailoverconfig SourceFailoverConfig *Flow_FailoverConfig `json:"SourceFailoverConfig,omitempty"` + // VpcInterfaces AWS CloudFormation Property + // Required: false + // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-mediaconnect-flow.html#cfn-mediaconnect-flow-vpcinterfaces + VpcInterfaces []Flow_VpcInterface `json:"VpcInterfaces,omitempty"` + // AWSCloudFormationDeletionPolicy represents a CloudFormation DeletionPolicy AWSCloudFormationDeletionPolicy policies.DeletionPolicy `json:"-"` diff --git a/cloudformation/mediaconnect/aws-mediaconnect-flow_fmtp.go b/cloudformation/mediaconnect/aws-mediaconnect-flow_fmtp.go new file mode 100644 index 0000000000..44a77f7609 --- /dev/null +++ b/cloudformation/mediaconnect/aws-mediaconnect-flow_fmtp.go @@ -0,0 +1,67 @@ +// Code generated by "go generate". Please don't change this file directly. + +package mediaconnect + +import ( + "github.com/awslabs/goformation/v7/cloudformation/policies" +) + +// Flow_Fmtp AWS CloudFormation Resource (AWS::MediaConnect::Flow.Fmtp) +// See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-mediaconnect-flow-fmtp.html +type Flow_Fmtp struct { + + // ChannelOrder AWS CloudFormation Property + // Required: false + // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-mediaconnect-flow-fmtp.html#cfn-mediaconnect-flow-fmtp-channelorder + ChannelOrder *string `json:"ChannelOrder,omitempty"` + + // Colorimetry AWS CloudFormation Property + // Required: false + // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-mediaconnect-flow-fmtp.html#cfn-mediaconnect-flow-fmtp-colorimetry + Colorimetry *string `json:"Colorimetry,omitempty"` + + // ExactFramerate AWS CloudFormation Property + // Required: false + // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-mediaconnect-flow-fmtp.html#cfn-mediaconnect-flow-fmtp-exactframerate + ExactFramerate *string `json:"ExactFramerate,omitempty"` + + // Par AWS CloudFormation Property + // Required: false + // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-mediaconnect-flow-fmtp.html#cfn-mediaconnect-flow-fmtp-par + Par *string `json:"Par,omitempty"` + + // Range AWS CloudFormation Property + // Required: false + // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-mediaconnect-flow-fmtp.html#cfn-mediaconnect-flow-fmtp-range + Range *string `json:"Range,omitempty"` + + // ScanMode AWS CloudFormation Property + // Required: false + // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-mediaconnect-flow-fmtp.html#cfn-mediaconnect-flow-fmtp-scanmode + ScanMode *string `json:"ScanMode,omitempty"` + + // Tcs AWS CloudFormation Property + // Required: false + // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-mediaconnect-flow-fmtp.html#cfn-mediaconnect-flow-fmtp-tcs + Tcs *string `json:"Tcs,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 *Flow_Fmtp) AWSCloudFormationType() string { + return "AWS::MediaConnect::Flow.Fmtp" +} diff --git a/cloudformation/mediaconnect/aws-mediaconnect-flow_inputconfiguration.go b/cloudformation/mediaconnect/aws-mediaconnect-flow_inputconfiguration.go new file mode 100644 index 0000000000..77c0353205 --- /dev/null +++ b/cloudformation/mediaconnect/aws-mediaconnect-flow_inputconfiguration.go @@ -0,0 +1,42 @@ +// Code generated by "go generate". Please don't change this file directly. + +package mediaconnect + +import ( + "github.com/awslabs/goformation/v7/cloudformation/policies" +) + +// Flow_InputConfiguration AWS CloudFormation Resource (AWS::MediaConnect::Flow.InputConfiguration) +// See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-mediaconnect-flow-inputconfiguration.html +type Flow_InputConfiguration struct { + + // InputPort AWS CloudFormation Property + // Required: true + // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-mediaconnect-flow-inputconfiguration.html#cfn-mediaconnect-flow-inputconfiguration-inputport + InputPort int `json:"InputPort"` + + // Interface AWS CloudFormation Property + // Required: true + // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-mediaconnect-flow-inputconfiguration.html#cfn-mediaconnect-flow-inputconfiguration-interface + Interface *Flow_Interface `json:"Interface"` + + // 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 *Flow_InputConfiguration) AWSCloudFormationType() string { + return "AWS::MediaConnect::Flow.InputConfiguration" +} diff --git a/cloudformation/mediaconnect/aws-mediaconnect-flow_interface.go b/cloudformation/mediaconnect/aws-mediaconnect-flow_interface.go new file mode 100644 index 0000000000..35807f7b6d --- /dev/null +++ b/cloudformation/mediaconnect/aws-mediaconnect-flow_interface.go @@ -0,0 +1,37 @@ +// Code generated by "go generate". Please don't change this file directly. + +package mediaconnect + +import ( + "github.com/awslabs/goformation/v7/cloudformation/policies" +) + +// Flow_Interface AWS CloudFormation Resource (AWS::MediaConnect::Flow.Interface) +// See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-mediaconnect-flow-interface.html +type Flow_Interface struct { + + // Name AWS CloudFormation Property + // Required: true + // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-mediaconnect-flow-interface.html#cfn-mediaconnect-flow-interface-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 *Flow_Interface) AWSCloudFormationType() string { + return "AWS::MediaConnect::Flow.Interface" +} diff --git a/cloudformation/mediaconnect/aws-mediaconnect-flow_maintenance.go b/cloudformation/mediaconnect/aws-mediaconnect-flow_maintenance.go new file mode 100644 index 0000000000..ca65e73952 --- /dev/null +++ b/cloudformation/mediaconnect/aws-mediaconnect-flow_maintenance.go @@ -0,0 +1,42 @@ +// Code generated by "go generate". Please don't change this file directly. + +package mediaconnect + +import ( + "github.com/awslabs/goformation/v7/cloudformation/policies" +) + +// Flow_Maintenance AWS CloudFormation Resource (AWS::MediaConnect::Flow.Maintenance) +// See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-mediaconnect-flow-maintenance.html +type Flow_Maintenance struct { + + // MaintenanceDay AWS CloudFormation Property + // Required: true + // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-mediaconnect-flow-maintenance.html#cfn-mediaconnect-flow-maintenance-maintenanceday + MaintenanceDay string `json:"MaintenanceDay"` + + // MaintenanceStartHour AWS CloudFormation Property + // Required: true + // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-mediaconnect-flow-maintenance.html#cfn-mediaconnect-flow-maintenance-maintenancestarthour + MaintenanceStartHour string `json:"MaintenanceStartHour"` + + // 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 *Flow_Maintenance) AWSCloudFormationType() string { + return "AWS::MediaConnect::Flow.Maintenance" +} diff --git a/cloudformation/mediaconnect/aws-mediaconnect-flow_mediastream.go b/cloudformation/mediaconnect/aws-mediaconnect-flow_mediastream.go new file mode 100644 index 0000000000..87d62b82db --- /dev/null +++ b/cloudformation/mediaconnect/aws-mediaconnect-flow_mediastream.go @@ -0,0 +1,72 @@ +// Code generated by "go generate". Please don't change this file directly. + +package mediaconnect + +import ( + "github.com/awslabs/goformation/v7/cloudformation/policies" +) + +// Flow_MediaStream AWS CloudFormation Resource (AWS::MediaConnect::Flow.MediaStream) +// See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-mediaconnect-flow-mediastream.html +type Flow_MediaStream struct { + + // Attributes AWS CloudFormation Property + // Required: false + // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-mediaconnect-flow-mediastream.html#cfn-mediaconnect-flow-mediastream-attributes + Attributes *Flow_MediaStreamAttributes `json:"Attributes,omitempty"` + + // ClockRate AWS CloudFormation Property + // Required: false + // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-mediaconnect-flow-mediastream.html#cfn-mediaconnect-flow-mediastream-clockrate + ClockRate *int `json:"ClockRate,omitempty"` + + // Description AWS CloudFormation Property + // Required: false + // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-mediaconnect-flow-mediastream.html#cfn-mediaconnect-flow-mediastream-description + Description *string `json:"Description,omitempty"` + + // Fmt AWS CloudFormation Property + // Required: false + // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-mediaconnect-flow-mediastream.html#cfn-mediaconnect-flow-mediastream-fmt + Fmt *int `json:"Fmt,omitempty"` + + // MediaStreamId AWS CloudFormation Property + // Required: true + // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-mediaconnect-flow-mediastream.html#cfn-mediaconnect-flow-mediastream-mediastreamid + MediaStreamId int `json:"MediaStreamId"` + + // MediaStreamName AWS CloudFormation Property + // Required: true + // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-mediaconnect-flow-mediastream.html#cfn-mediaconnect-flow-mediastream-mediastreamname + MediaStreamName string `json:"MediaStreamName"` + + // MediaStreamType AWS CloudFormation Property + // Required: true + // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-mediaconnect-flow-mediastream.html#cfn-mediaconnect-flow-mediastream-mediastreamtype + MediaStreamType string `json:"MediaStreamType"` + + // VideoFormat AWS CloudFormation Property + // Required: false + // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-mediaconnect-flow-mediastream.html#cfn-mediaconnect-flow-mediastream-videoformat + VideoFormat *string `json:"VideoFormat,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 *Flow_MediaStream) AWSCloudFormationType() string { + return "AWS::MediaConnect::Flow.MediaStream" +} diff --git a/cloudformation/mediaconnect/aws-mediaconnect-flow_mediastreamattributes.go b/cloudformation/mediaconnect/aws-mediaconnect-flow_mediastreamattributes.go new file mode 100644 index 0000000000..2b24ce1a74 --- /dev/null +++ b/cloudformation/mediaconnect/aws-mediaconnect-flow_mediastreamattributes.go @@ -0,0 +1,42 @@ +// Code generated by "go generate". Please don't change this file directly. + +package mediaconnect + +import ( + "github.com/awslabs/goformation/v7/cloudformation/policies" +) + +// Flow_MediaStreamAttributes AWS CloudFormation Resource (AWS::MediaConnect::Flow.MediaStreamAttributes) +// See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-mediaconnect-flow-mediastreamattributes.html +type Flow_MediaStreamAttributes struct { + + // Fmtp AWS CloudFormation Property + // Required: false + // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-mediaconnect-flow-mediastreamattributes.html#cfn-mediaconnect-flow-mediastreamattributes-fmtp + Fmtp *Flow_Fmtp `json:"Fmtp,omitempty"` + + // Lang AWS CloudFormation Property + // Required: false + // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-mediaconnect-flow-mediastreamattributes.html#cfn-mediaconnect-flow-mediastreamattributes-lang + Lang *string `json:"Lang,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 *Flow_MediaStreamAttributes) AWSCloudFormationType() string { + return "AWS::MediaConnect::Flow.MediaStreamAttributes" +} diff --git a/cloudformation/mediaconnect/aws-mediaconnect-flow_mediastreamsourceconfiguration.go b/cloudformation/mediaconnect/aws-mediaconnect-flow_mediastreamsourceconfiguration.go new file mode 100644 index 0000000000..330c10d665 --- /dev/null +++ b/cloudformation/mediaconnect/aws-mediaconnect-flow_mediastreamsourceconfiguration.go @@ -0,0 +1,47 @@ +// Code generated by "go generate". Please don't change this file directly. + +package mediaconnect + +import ( + "github.com/awslabs/goformation/v7/cloudformation/policies" +) + +// Flow_MediaStreamSourceConfiguration AWS CloudFormation Resource (AWS::MediaConnect::Flow.MediaStreamSourceConfiguration) +// See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-mediaconnect-flow-mediastreamsourceconfiguration.html +type Flow_MediaStreamSourceConfiguration struct { + + // EncodingName AWS CloudFormation Property + // Required: true + // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-mediaconnect-flow-mediastreamsourceconfiguration.html#cfn-mediaconnect-flow-mediastreamsourceconfiguration-encodingname + EncodingName string `json:"EncodingName"` + + // InputConfigurations AWS CloudFormation Property + // Required: false + // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-mediaconnect-flow-mediastreamsourceconfiguration.html#cfn-mediaconnect-flow-mediastreamsourceconfiguration-inputconfigurations + InputConfigurations []Flow_InputConfiguration `json:"InputConfigurations,omitempty"` + + // MediaStreamName AWS CloudFormation Property + // Required: true + // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-mediaconnect-flow-mediastreamsourceconfiguration.html#cfn-mediaconnect-flow-mediastreamsourceconfiguration-mediastreamname + MediaStreamName string `json:"MediaStreamName"` + + // 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 *Flow_MediaStreamSourceConfiguration) AWSCloudFormationType() string { + return "AWS::MediaConnect::Flow.MediaStreamSourceConfiguration" +} diff --git a/cloudformation/mediaconnect/aws-mediaconnect-flow_source.go b/cloudformation/mediaconnect/aws-mediaconnect-flow_source.go index 8d83e4037e..66dd4ddfc4 100644 --- a/cloudformation/mediaconnect/aws-mediaconnect-flow_source.go +++ b/cloudformation/mediaconnect/aws-mediaconnect-flow_source.go @@ -50,6 +50,16 @@ type Flow_Source struct { // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-mediaconnect-flow-source.html#cfn-mediaconnect-flow-source-maxlatency MaxLatency *int `json:"MaxLatency,omitempty"` + // MaxSyncBuffer AWS CloudFormation Property + // Required: false + // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-mediaconnect-flow-source.html#cfn-mediaconnect-flow-source-maxsyncbuffer + MaxSyncBuffer *int `json:"MaxSyncBuffer,omitempty"` + + // MediaStreamSourceConfigurations AWS CloudFormation Property + // Required: false + // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-mediaconnect-flow-source.html#cfn-mediaconnect-flow-source-mediastreamsourceconfigurations + MediaStreamSourceConfigurations []Flow_MediaStreamSourceConfiguration `json:"MediaStreamSourceConfigurations,omitempty"` + // MinLatency AWS CloudFormation Property // Required: false // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-mediaconnect-flow-source.html#cfn-mediaconnect-flow-source-minlatency diff --git a/cloudformation/mediaconnect/aws-mediaconnect-flow_vpcinterface.go b/cloudformation/mediaconnect/aws-mediaconnect-flow_vpcinterface.go new file mode 100644 index 0000000000..0f881dca7f --- /dev/null +++ b/cloudformation/mediaconnect/aws-mediaconnect-flow_vpcinterface.go @@ -0,0 +1,62 @@ +// Code generated by "go generate". Please don't change this file directly. + +package mediaconnect + +import ( + "github.com/awslabs/goformation/v7/cloudformation/policies" +) + +// Flow_VpcInterface AWS CloudFormation Resource (AWS::MediaConnect::Flow.VpcInterface) +// See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-mediaconnect-flow-vpcinterface.html +type Flow_VpcInterface struct { + + // Name AWS CloudFormation Property + // Required: true + // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-mediaconnect-flow-vpcinterface.html#cfn-mediaconnect-flow-vpcinterface-name + Name string `json:"Name"` + + // NetworkInterfaceIds AWS CloudFormation Property + // Required: false + // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-mediaconnect-flow-vpcinterface.html#cfn-mediaconnect-flow-vpcinterface-networkinterfaceids + NetworkInterfaceIds []string `json:"NetworkInterfaceIds,omitempty"` + + // NetworkInterfaceType AWS CloudFormation Property + // Required: false + // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-mediaconnect-flow-vpcinterface.html#cfn-mediaconnect-flow-vpcinterface-networkinterfacetype + NetworkInterfaceType *string `json:"NetworkInterfaceType,omitempty"` + + // RoleArn AWS CloudFormation Property + // Required: true + // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-mediaconnect-flow-vpcinterface.html#cfn-mediaconnect-flow-vpcinterface-rolearn + RoleArn string `json:"RoleArn"` + + // SecurityGroupIds AWS CloudFormation Property + // Required: true + // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-mediaconnect-flow-vpcinterface.html#cfn-mediaconnect-flow-vpcinterface-securitygroupids + SecurityGroupIds []string `json:"SecurityGroupIds"` + + // SubnetId AWS CloudFormation Property + // Required: true + // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-mediaconnect-flow-vpcinterface.html#cfn-mediaconnect-flow-vpcinterface-subnetid + SubnetId string `json:"SubnetId"` + + // 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 *Flow_VpcInterface) AWSCloudFormationType() string { + return "AWS::MediaConnect::Flow.VpcInterface" +} diff --git a/cloudformation/mediaconnect/aws-mediaconnect-flowoutput.go b/cloudformation/mediaconnect/aws-mediaconnect-flowoutput.go index c2326c762c..9656fa9364 100644 --- a/cloudformation/mediaconnect/aws-mediaconnect-flowoutput.go +++ b/cloudformation/mediaconnect/aws-mediaconnect-flowoutput.go @@ -43,6 +43,11 @@ type FlowOutput struct { // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-mediaconnect-flowoutput.html#cfn-mediaconnect-flowoutput-maxlatency MaxLatency *int `json:"MaxLatency,omitempty"` + // MediaStreamOutputConfigurations AWS CloudFormation Property + // Required: false + // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-mediaconnect-flowoutput.html#cfn-mediaconnect-flowoutput-mediastreamoutputconfigurations + MediaStreamOutputConfigurations []FlowOutput_MediaStreamOutputConfiguration `json:"MediaStreamOutputConfigurations,omitempty"` + // MinLatency AWS CloudFormation Property // Required: false // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-mediaconnect-flowoutput.html#cfn-mediaconnect-flowoutput-minlatency diff --git a/cloudformation/mediaconnect/aws-mediaconnect-flowoutput_destinationconfiguration.go b/cloudformation/mediaconnect/aws-mediaconnect-flowoutput_destinationconfiguration.go new file mode 100644 index 0000000000..6c612e809b --- /dev/null +++ b/cloudformation/mediaconnect/aws-mediaconnect-flowoutput_destinationconfiguration.go @@ -0,0 +1,47 @@ +// Code generated by "go generate". Please don't change this file directly. + +package mediaconnect + +import ( + "github.com/awslabs/goformation/v7/cloudformation/policies" +) + +// FlowOutput_DestinationConfiguration AWS CloudFormation Resource (AWS::MediaConnect::FlowOutput.DestinationConfiguration) +// See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-mediaconnect-flowoutput-destinationconfiguration.html +type FlowOutput_DestinationConfiguration struct { + + // DestinationIp AWS CloudFormation Property + // Required: true + // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-mediaconnect-flowoutput-destinationconfiguration.html#cfn-mediaconnect-flowoutput-destinationconfiguration-destinationip + DestinationIp string `json:"DestinationIp"` + + // DestinationPort AWS CloudFormation Property + // Required: true + // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-mediaconnect-flowoutput-destinationconfiguration.html#cfn-mediaconnect-flowoutput-destinationconfiguration-destinationport + DestinationPort int `json:"DestinationPort"` + + // Interface AWS CloudFormation Property + // Required: true + // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-mediaconnect-flowoutput-destinationconfiguration.html#cfn-mediaconnect-flowoutput-destinationconfiguration-interface + Interface *FlowOutput_Interface `json:"Interface"` + + // 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 *FlowOutput_DestinationConfiguration) AWSCloudFormationType() string { + return "AWS::MediaConnect::FlowOutput.DestinationConfiguration" +} diff --git a/cloudformation/mediaconnect/aws-mediaconnect-flowoutput_encodingparameters.go b/cloudformation/mediaconnect/aws-mediaconnect-flowoutput_encodingparameters.go new file mode 100644 index 0000000000..34f0638afe --- /dev/null +++ b/cloudformation/mediaconnect/aws-mediaconnect-flowoutput_encodingparameters.go @@ -0,0 +1,42 @@ +// Code generated by "go generate". Please don't change this file directly. + +package mediaconnect + +import ( + "github.com/awslabs/goformation/v7/cloudformation/policies" +) + +// FlowOutput_EncodingParameters AWS CloudFormation Resource (AWS::MediaConnect::FlowOutput.EncodingParameters) +// See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-mediaconnect-flowoutput-encodingparameters.html +type FlowOutput_EncodingParameters struct { + + // CompressionFactor AWS CloudFormation Property + // Required: true + // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-mediaconnect-flowoutput-encodingparameters.html#cfn-mediaconnect-flowoutput-encodingparameters-compressionfactor + CompressionFactor float64 `json:"CompressionFactor"` + + // EncoderProfile AWS CloudFormation Property + // Required: false + // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-mediaconnect-flowoutput-encodingparameters.html#cfn-mediaconnect-flowoutput-encodingparameters-encoderprofile + EncoderProfile *string `json:"EncoderProfile,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 *FlowOutput_EncodingParameters) AWSCloudFormationType() string { + return "AWS::MediaConnect::FlowOutput.EncodingParameters" +} diff --git a/cloudformation/mediaconnect/aws-mediaconnect-flowoutput_interface.go b/cloudformation/mediaconnect/aws-mediaconnect-flowoutput_interface.go new file mode 100644 index 0000000000..1231779677 --- /dev/null +++ b/cloudformation/mediaconnect/aws-mediaconnect-flowoutput_interface.go @@ -0,0 +1,37 @@ +// Code generated by "go generate". Please don't change this file directly. + +package mediaconnect + +import ( + "github.com/awslabs/goformation/v7/cloudformation/policies" +) + +// FlowOutput_Interface AWS CloudFormation Resource (AWS::MediaConnect::FlowOutput.Interface) +// See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-mediaconnect-flowoutput-interface.html +type FlowOutput_Interface struct { + + // Name AWS CloudFormation Property + // Required: true + // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-mediaconnect-flowoutput-interface.html#cfn-mediaconnect-flowoutput-interface-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 *FlowOutput_Interface) AWSCloudFormationType() string { + return "AWS::MediaConnect::FlowOutput.Interface" +} diff --git a/cloudformation/mediaconnect/aws-mediaconnect-flowoutput_mediastreamoutputconfiguration.go b/cloudformation/mediaconnect/aws-mediaconnect-flowoutput_mediastreamoutputconfiguration.go new file mode 100644 index 0000000000..1ed623f331 --- /dev/null +++ b/cloudformation/mediaconnect/aws-mediaconnect-flowoutput_mediastreamoutputconfiguration.go @@ -0,0 +1,52 @@ +// Code generated by "go generate". Please don't change this file directly. + +package mediaconnect + +import ( + "github.com/awslabs/goformation/v7/cloudformation/policies" +) + +// FlowOutput_MediaStreamOutputConfiguration AWS CloudFormation Resource (AWS::MediaConnect::FlowOutput.MediaStreamOutputConfiguration) +// See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-mediaconnect-flowoutput-mediastreamoutputconfiguration.html +type FlowOutput_MediaStreamOutputConfiguration struct { + + // DestinationConfigurations AWS CloudFormation Property + // Required: false + // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-mediaconnect-flowoutput-mediastreamoutputconfiguration.html#cfn-mediaconnect-flowoutput-mediastreamoutputconfiguration-destinationconfigurations + DestinationConfigurations []FlowOutput_DestinationConfiguration `json:"DestinationConfigurations,omitempty"` + + // EncodingName AWS CloudFormation Property + // Required: true + // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-mediaconnect-flowoutput-mediastreamoutputconfiguration.html#cfn-mediaconnect-flowoutput-mediastreamoutputconfiguration-encodingname + EncodingName string `json:"EncodingName"` + + // EncodingParameters AWS CloudFormation Property + // Required: false + // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-mediaconnect-flowoutput-mediastreamoutputconfiguration.html#cfn-mediaconnect-flowoutput-mediastreamoutputconfiguration-encodingparameters + EncodingParameters *FlowOutput_EncodingParameters `json:"EncodingParameters,omitempty"` + + // MediaStreamName AWS CloudFormation Property + // Required: true + // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-mediaconnect-flowoutput-mediastreamoutputconfiguration.html#cfn-mediaconnect-flowoutput-mediastreamoutputconfiguration-mediastreamname + MediaStreamName string `json:"MediaStreamName"` + + // 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 *FlowOutput_MediaStreamOutputConfiguration) AWSCloudFormationType() string { + return "AWS::MediaConnect::FlowOutput.MediaStreamOutputConfiguration" +} diff --git a/cloudformation/medialive/aws-medialive-channel_availconfiguration.go b/cloudformation/medialive/aws-medialive-channel_availconfiguration.go index eedc8b43f2..591050d774 100644 --- a/cloudformation/medialive/aws-medialive-channel_availconfiguration.go +++ b/cloudformation/medialive/aws-medialive-channel_availconfiguration.go @@ -15,6 +15,11 @@ type Channel_AvailConfiguration struct { // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-medialive-channel-availconfiguration.html#cfn-medialive-channel-availconfiguration-availsettings AvailSettings *Channel_AvailSettings `json:"AvailSettings,omitempty"` + // Scte35SegmentationScope AWS CloudFormation Property + // Required: false + // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-medialive-channel-availconfiguration.html#cfn-medialive-channel-availconfiguration-scte35segmentationscope + Scte35SegmentationScope *string `json:"Scte35SegmentationScope,omitempty"` + // AWSCloudFormationDeletionPolicy represents a CloudFormation DeletionPolicy AWSCloudFormationDeletionPolicy policies.DeletionPolicy `json:"-"` diff --git a/cloudformation/mediapackagev2/aws-mediapackagev2-originendpoint.go b/cloudformation/mediapackagev2/aws-mediapackagev2-originendpoint.go index 2f9a26c61a..428d009b89 100644 --- a/cloudformation/mediapackagev2/aws-mediapackagev2-originendpoint.go +++ b/cloudformation/mediapackagev2/aws-mediapackagev2-originendpoint.go @@ -29,6 +29,11 @@ type OriginEndpoint struct { // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-mediapackagev2-originendpoint.html#cfn-mediapackagev2-originendpoint-containertype ContainerType *string `json:"ContainerType,omitempty"` + // DashManifests AWS CloudFormation Property + // Required: false + // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-mediapackagev2-originendpoint.html#cfn-mediapackagev2-originendpoint-dashmanifests + DashManifests []OriginEndpoint_DashManifestConfiguration `json:"DashManifests,omitempty"` + // Description AWS CloudFormation Property // Required: false // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-mediapackagev2-originendpoint.html#cfn-mediapackagev2-originendpoint-description diff --git a/cloudformation/mediapackagev2/aws-mediapackagev2-originendpoint_dashmanifestconfiguration.go b/cloudformation/mediapackagev2/aws-mediapackagev2-originendpoint_dashmanifestconfiguration.go new file mode 100644 index 0000000000..e0af23f952 --- /dev/null +++ b/cloudformation/mediapackagev2/aws-mediapackagev2-originendpoint_dashmanifestconfiguration.go @@ -0,0 +1,87 @@ +// Code generated by "go generate". Please don't change this file directly. + +package mediapackagev2 + +import ( + "github.com/awslabs/goformation/v7/cloudformation/policies" +) + +// OriginEndpoint_DashManifestConfiguration AWS CloudFormation Resource (AWS::MediaPackageV2::OriginEndpoint.DashManifestConfiguration) +// See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-mediapackagev2-originendpoint-dashmanifestconfiguration.html +type OriginEndpoint_DashManifestConfiguration struct { + + // DrmSignaling AWS CloudFormation Property + // Required: false + // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-mediapackagev2-originendpoint-dashmanifestconfiguration.html#cfn-mediapackagev2-originendpoint-dashmanifestconfiguration-drmsignaling + DrmSignaling *string `json:"DrmSignaling,omitempty"` + + // FilterConfiguration AWS CloudFormation Property + // Required: false + // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-mediapackagev2-originendpoint-dashmanifestconfiguration.html#cfn-mediapackagev2-originendpoint-dashmanifestconfiguration-filterconfiguration + FilterConfiguration *OriginEndpoint_FilterConfiguration `json:"FilterConfiguration,omitempty"` + + // ManifestName AWS CloudFormation Property + // Required: true + // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-mediapackagev2-originendpoint-dashmanifestconfiguration.html#cfn-mediapackagev2-originendpoint-dashmanifestconfiguration-manifestname + ManifestName string `json:"ManifestName"` + + // ManifestWindowSeconds AWS CloudFormation Property + // Required: false + // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-mediapackagev2-originendpoint-dashmanifestconfiguration.html#cfn-mediapackagev2-originendpoint-dashmanifestconfiguration-manifestwindowseconds + ManifestWindowSeconds *int `json:"ManifestWindowSeconds,omitempty"` + + // MinBufferTimeSeconds AWS CloudFormation Property + // Required: false + // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-mediapackagev2-originendpoint-dashmanifestconfiguration.html#cfn-mediapackagev2-originendpoint-dashmanifestconfiguration-minbuffertimeseconds + MinBufferTimeSeconds *int `json:"MinBufferTimeSeconds,omitempty"` + + // MinUpdatePeriodSeconds AWS CloudFormation Property + // Required: false + // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-mediapackagev2-originendpoint-dashmanifestconfiguration.html#cfn-mediapackagev2-originendpoint-dashmanifestconfiguration-minupdateperiodseconds + MinUpdatePeriodSeconds *int `json:"MinUpdatePeriodSeconds,omitempty"` + + // PeriodTriggers AWS CloudFormation Property + // Required: false + // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-mediapackagev2-originendpoint-dashmanifestconfiguration.html#cfn-mediapackagev2-originendpoint-dashmanifestconfiguration-periodtriggers + PeriodTriggers []string `json:"PeriodTriggers,omitempty"` + + // ScteDash AWS CloudFormation Property + // Required: false + // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-mediapackagev2-originendpoint-dashmanifestconfiguration.html#cfn-mediapackagev2-originendpoint-dashmanifestconfiguration-sctedash + ScteDash *OriginEndpoint_ScteDash `json:"ScteDash,omitempty"` + + // SegmentTemplateFormat AWS CloudFormation Property + // Required: false + // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-mediapackagev2-originendpoint-dashmanifestconfiguration.html#cfn-mediapackagev2-originendpoint-dashmanifestconfiguration-segmenttemplateformat + SegmentTemplateFormat *string `json:"SegmentTemplateFormat,omitempty"` + + // SuggestedPresentationDelaySeconds AWS CloudFormation Property + // Required: false + // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-mediapackagev2-originendpoint-dashmanifestconfiguration.html#cfn-mediapackagev2-originendpoint-dashmanifestconfiguration-suggestedpresentationdelayseconds + SuggestedPresentationDelaySeconds *int `json:"SuggestedPresentationDelaySeconds,omitempty"` + + // UtcTiming AWS CloudFormation Property + // Required: false + // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-mediapackagev2-originendpoint-dashmanifestconfiguration.html#cfn-mediapackagev2-originendpoint-dashmanifestconfiguration-utctiming + UtcTiming *OriginEndpoint_DashUtcTiming `json:"UtcTiming,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 *OriginEndpoint_DashManifestConfiguration) AWSCloudFormationType() string { + return "AWS::MediaPackageV2::OriginEndpoint.DashManifestConfiguration" +} diff --git a/cloudformation/mediapackagev2/aws-mediapackagev2-originendpoint_dashutctiming.go b/cloudformation/mediapackagev2/aws-mediapackagev2-originendpoint_dashutctiming.go new file mode 100644 index 0000000000..ea0d939c93 --- /dev/null +++ b/cloudformation/mediapackagev2/aws-mediapackagev2-originendpoint_dashutctiming.go @@ -0,0 +1,42 @@ +// Code generated by "go generate". Please don't change this file directly. + +package mediapackagev2 + +import ( + "github.com/awslabs/goformation/v7/cloudformation/policies" +) + +// OriginEndpoint_DashUtcTiming AWS CloudFormation Resource (AWS::MediaPackageV2::OriginEndpoint.DashUtcTiming) +// See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-mediapackagev2-originendpoint-dashutctiming.html +type OriginEndpoint_DashUtcTiming struct { + + // TimingMode AWS CloudFormation Property + // Required: false + // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-mediapackagev2-originendpoint-dashutctiming.html#cfn-mediapackagev2-originendpoint-dashutctiming-timingmode + TimingMode *string `json:"TimingMode,omitempty"` + + // TimingSource AWS CloudFormation Property + // Required: false + // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-mediapackagev2-originendpoint-dashutctiming.html#cfn-mediapackagev2-originendpoint-dashutctiming-timingsource + TimingSource *string `json:"TimingSource,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 *OriginEndpoint_DashUtcTiming) AWSCloudFormationType() string { + return "AWS::MediaPackageV2::OriginEndpoint.DashUtcTiming" +} diff --git a/cloudformation/mediapackagev2/aws-mediapackagev2-originendpoint_sctedash.go b/cloudformation/mediapackagev2/aws-mediapackagev2-originendpoint_sctedash.go new file mode 100644 index 0000000000..ee354d6129 --- /dev/null +++ b/cloudformation/mediapackagev2/aws-mediapackagev2-originendpoint_sctedash.go @@ -0,0 +1,37 @@ +// Code generated by "go generate". Please don't change this file directly. + +package mediapackagev2 + +import ( + "github.com/awslabs/goformation/v7/cloudformation/policies" +) + +// OriginEndpoint_ScteDash AWS CloudFormation Resource (AWS::MediaPackageV2::OriginEndpoint.ScteDash) +// See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-mediapackagev2-originendpoint-sctedash.html +type OriginEndpoint_ScteDash struct { + + // AdMarkerDash AWS CloudFormation Property + // Required: false + // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-mediapackagev2-originendpoint-sctedash.html#cfn-mediapackagev2-originendpoint-sctedash-admarkerdash + AdMarkerDash *string `json:"AdMarkerDash,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 *OriginEndpoint_ScteDash) AWSCloudFormationType() string { + return "AWS::MediaPackageV2::OriginEndpoint.ScteDash" +} diff --git a/cloudformation/mediatailor/aws-mediatailor-playbackconfiguration_availsuppression.go b/cloudformation/mediatailor/aws-mediatailor-playbackconfiguration_availsuppression.go index 08406c636e..993ad224a3 100644 --- a/cloudformation/mediatailor/aws-mediatailor-playbackconfiguration_availsuppression.go +++ b/cloudformation/mediatailor/aws-mediatailor-playbackconfiguration_availsuppression.go @@ -10,6 +10,11 @@ import ( // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-mediatailor-playbackconfiguration-availsuppression.html type PlaybackConfiguration_AvailSuppression struct { + // FillPolicy AWS CloudFormation Property + // Required: false + // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-mediatailor-playbackconfiguration-availsuppression.html#cfn-mediatailor-playbackconfiguration-availsuppression-fillpolicy + FillPolicy *string `json:"FillPolicy,omitempty"` + // Mode AWS CloudFormation Property // Required: false // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-mediatailor-playbackconfiguration-availsuppression.html#cfn-mediatailor-playbackconfiguration-availsuppression-mode diff --git a/cloudformation/mwaa/aws-mwaa-environment.go b/cloudformation/mwaa/aws-mwaa-environment.go index 402eb5567e..9ba8827dee 100644 --- a/cloudformation/mwaa/aws-mwaa-environment.go +++ b/cloudformation/mwaa/aws-mwaa-environment.go @@ -53,11 +53,21 @@ type Environment struct { // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-mwaa-environment.html#cfn-mwaa-environment-loggingconfiguration LoggingConfiguration *Environment_LoggingConfiguration `json:"LoggingConfiguration,omitempty"` + // MaxWebservers AWS CloudFormation Property + // Required: false + // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-mwaa-environment.html#cfn-mwaa-environment-maxwebservers + MaxWebservers *int `json:"MaxWebservers,omitempty"` + // MaxWorkers AWS CloudFormation Property // Required: false // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-mwaa-environment.html#cfn-mwaa-environment-maxworkers MaxWorkers *int `json:"MaxWorkers,omitempty"` + // MinWebservers AWS CloudFormation Property + // Required: false + // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-mwaa-environment.html#cfn-mwaa-environment-minwebservers + MinWebservers *int `json:"MinWebservers,omitempty"` + // MinWorkers AWS CloudFormation Property // Required: false // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-mwaa-environment.html#cfn-mwaa-environment-minworkers diff --git a/cloudformation/neptune/aws-neptune-eventsubscription.go b/cloudformation/neptune/aws-neptune-eventsubscription.go new file mode 100644 index 0000000000..0416faf2f5 --- /dev/null +++ b/cloudformation/neptune/aws-neptune-eventsubscription.go @@ -0,0 +1,137 @@ +// Code generated by "go generate". Please don't change this file directly. + +package neptune + +import ( + "bytes" + "encoding/json" + + "github.com/awslabs/goformation/v7/cloudformation/policies" +) + +// EventSubscription AWS CloudFormation Resource (AWS::Neptune::EventSubscription) +// See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-neptune-eventsubscription.html +type EventSubscription struct { + + // Enabled AWS CloudFormation Property + // Required: false + // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-neptune-eventsubscription.html#cfn-neptune-eventsubscription-enabled + Enabled *bool `json:"Enabled,omitempty"` + + // EventCategories AWS CloudFormation Property + // Required: false + // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-neptune-eventsubscription.html#cfn-neptune-eventsubscription-eventcategories + EventCategories []string `json:"EventCategories,omitempty"` + + // SnsTopicArn AWS CloudFormation Property + // Required: false + // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-neptune-eventsubscription.html#cfn-neptune-eventsubscription-snstopicarn + SnsTopicArn *string `json:"SnsTopicArn,omitempty"` + + // SourceIds AWS CloudFormation Property + // Required: false + // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-neptune-eventsubscription.html#cfn-neptune-eventsubscription-sourceids + SourceIds []string `json:"SourceIds,omitempty"` + + // SourceType AWS CloudFormation Property + // Required: false + // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-neptune-eventsubscription.html#cfn-neptune-eventsubscription-sourcetype + SourceType *string `json:"SourceType,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 *EventSubscription) AWSCloudFormationType() string { + return "AWS::Neptune::EventSubscription" +} + +// MarshalJSON is a custom JSON marshalling hook that embeds this object into +// an AWS CloudFormation JSON resource's 'Properties' field and adds a 'Type'. +func (r EventSubscription) MarshalJSON() ([]byte, error) { + type Properties EventSubscription + 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 *EventSubscription) UnmarshalJSON(b []byte) error { + type Properties EventSubscription + 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 = EventSubscription(*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/pipes/aws-pipes-pipe_dimensionmapping.go b/cloudformation/pipes/aws-pipes-pipe_dimensionmapping.go new file mode 100644 index 0000000000..07ff617723 --- /dev/null +++ b/cloudformation/pipes/aws-pipes-pipe_dimensionmapping.go @@ -0,0 +1,47 @@ +// Code generated by "go generate". Please don't change this file directly. + +package pipes + +import ( + "github.com/awslabs/goformation/v7/cloudformation/policies" +) + +// Pipe_DimensionMapping AWS CloudFormation Resource (AWS::Pipes::Pipe.DimensionMapping) +// See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-pipes-pipe-dimensionmapping.html +type Pipe_DimensionMapping struct { + + // DimensionName AWS CloudFormation Property + // Required: true + // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-pipes-pipe-dimensionmapping.html#cfn-pipes-pipe-dimensionmapping-dimensionname + DimensionName string `json:"DimensionName"` + + // DimensionValue AWS CloudFormation Property + // Required: true + // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-pipes-pipe-dimensionmapping.html#cfn-pipes-pipe-dimensionmapping-dimensionvalue + DimensionValue string `json:"DimensionValue"` + + // DimensionValueType AWS CloudFormation Property + // Required: true + // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-pipes-pipe-dimensionmapping.html#cfn-pipes-pipe-dimensionmapping-dimensionvaluetype + DimensionValueType string `json:"DimensionValueType"` + + // 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 *Pipe_DimensionMapping) AWSCloudFormationType() string { + return "AWS::Pipes::Pipe.DimensionMapping" +} diff --git a/cloudformation/pipes/aws-pipes-pipe_multimeasureattributemapping.go b/cloudformation/pipes/aws-pipes-pipe_multimeasureattributemapping.go new file mode 100644 index 0000000000..c45c2e1c04 --- /dev/null +++ b/cloudformation/pipes/aws-pipes-pipe_multimeasureattributemapping.go @@ -0,0 +1,47 @@ +// Code generated by "go generate". Please don't change this file directly. + +package pipes + +import ( + "github.com/awslabs/goformation/v7/cloudformation/policies" +) + +// Pipe_MultiMeasureAttributeMapping AWS CloudFormation Resource (AWS::Pipes::Pipe.MultiMeasureAttributeMapping) +// See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-pipes-pipe-multimeasureattributemapping.html +type Pipe_MultiMeasureAttributeMapping struct { + + // MeasureValue AWS CloudFormation Property + // Required: true + // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-pipes-pipe-multimeasureattributemapping.html#cfn-pipes-pipe-multimeasureattributemapping-measurevalue + MeasureValue string `json:"MeasureValue"` + + // MeasureValueType AWS CloudFormation Property + // Required: true + // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-pipes-pipe-multimeasureattributemapping.html#cfn-pipes-pipe-multimeasureattributemapping-measurevaluetype + MeasureValueType string `json:"MeasureValueType"` + + // MultiMeasureAttributeName AWS CloudFormation Property + // Required: true + // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-pipes-pipe-multimeasureattributemapping.html#cfn-pipes-pipe-multimeasureattributemapping-multimeasureattributename + MultiMeasureAttributeName string `json:"MultiMeasureAttributeName"` + + // 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 *Pipe_MultiMeasureAttributeMapping) AWSCloudFormationType() string { + return "AWS::Pipes::Pipe.MultiMeasureAttributeMapping" +} diff --git a/cloudformation/pipes/aws-pipes-pipe_multimeasuremapping.go b/cloudformation/pipes/aws-pipes-pipe_multimeasuremapping.go new file mode 100644 index 0000000000..dd9c4bc902 --- /dev/null +++ b/cloudformation/pipes/aws-pipes-pipe_multimeasuremapping.go @@ -0,0 +1,42 @@ +// Code generated by "go generate". Please don't change this file directly. + +package pipes + +import ( + "github.com/awslabs/goformation/v7/cloudformation/policies" +) + +// Pipe_MultiMeasureMapping AWS CloudFormation Resource (AWS::Pipes::Pipe.MultiMeasureMapping) +// See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-pipes-pipe-multimeasuremapping.html +type Pipe_MultiMeasureMapping struct { + + // MultiMeasureAttributeMappings AWS CloudFormation Property + // Required: true + // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-pipes-pipe-multimeasuremapping.html#cfn-pipes-pipe-multimeasuremapping-multimeasureattributemappings + MultiMeasureAttributeMappings []Pipe_MultiMeasureAttributeMapping `json:"MultiMeasureAttributeMappings"` + + // MultiMeasureName AWS CloudFormation Property + // Required: true + // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-pipes-pipe-multimeasuremapping.html#cfn-pipes-pipe-multimeasuremapping-multimeasurename + MultiMeasureName string `json:"MultiMeasureName"` + + // 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 *Pipe_MultiMeasureMapping) AWSCloudFormationType() string { + return "AWS::Pipes::Pipe.MultiMeasureMapping" +} diff --git a/cloudformation/pipes/aws-pipes-pipe_pipetargetparameters.go b/cloudformation/pipes/aws-pipes-pipe_pipetargetparameters.go index f83861a84d..1d21e319dd 100644 --- a/cloudformation/pipes/aws-pipes-pipe_pipetargetparameters.go +++ b/cloudformation/pipes/aws-pipes-pipe_pipetargetparameters.go @@ -70,6 +70,11 @@ type Pipe_PipeTargetParameters struct { // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-pipes-pipe-pipetargetparameters.html#cfn-pipes-pipe-pipetargetparameters-stepfunctionstatemachineparameters StepFunctionStateMachineParameters *Pipe_PipeTargetStateMachineParameters `json:"StepFunctionStateMachineParameters,omitempty"` + // TimestreamParameters AWS CloudFormation Property + // Required: false + // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-pipes-pipe-pipetargetparameters.html#cfn-pipes-pipe-pipetargetparameters-timestreamparameters + TimestreamParameters *Pipe_PipeTargetTimestreamParameters `json:"TimestreamParameters,omitempty"` + // AWSCloudFormationDeletionPolicy represents a CloudFormation DeletionPolicy AWSCloudFormationDeletionPolicy policies.DeletionPolicy `json:"-"` diff --git a/cloudformation/pipes/aws-pipes-pipe_pipetargettimestreamparameters.go b/cloudformation/pipes/aws-pipes-pipe_pipetargettimestreamparameters.go new file mode 100644 index 0000000000..4dd6ae773b --- /dev/null +++ b/cloudformation/pipes/aws-pipes-pipe_pipetargettimestreamparameters.go @@ -0,0 +1,72 @@ +// Code generated by "go generate". Please don't change this file directly. + +package pipes + +import ( + "github.com/awslabs/goformation/v7/cloudformation/policies" +) + +// Pipe_PipeTargetTimestreamParameters AWS CloudFormation Resource (AWS::Pipes::Pipe.PipeTargetTimestreamParameters) +// See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-pipes-pipe-pipetargettimestreamparameters.html +type Pipe_PipeTargetTimestreamParameters struct { + + // DimensionMappings AWS CloudFormation Property + // Required: true + // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-pipes-pipe-pipetargettimestreamparameters.html#cfn-pipes-pipe-pipetargettimestreamparameters-dimensionmappings + DimensionMappings []Pipe_DimensionMapping `json:"DimensionMappings"` + + // EpochTimeUnit AWS CloudFormation Property + // Required: false + // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-pipes-pipe-pipetargettimestreamparameters.html#cfn-pipes-pipe-pipetargettimestreamparameters-epochtimeunit + EpochTimeUnit *string `json:"EpochTimeUnit,omitempty"` + + // MultiMeasureMappings AWS CloudFormation Property + // Required: false + // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-pipes-pipe-pipetargettimestreamparameters.html#cfn-pipes-pipe-pipetargettimestreamparameters-multimeasuremappings + MultiMeasureMappings []Pipe_MultiMeasureMapping `json:"MultiMeasureMappings,omitempty"` + + // SingleMeasureMappings AWS CloudFormation Property + // Required: false + // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-pipes-pipe-pipetargettimestreamparameters.html#cfn-pipes-pipe-pipetargettimestreamparameters-singlemeasuremappings + SingleMeasureMappings []Pipe_SingleMeasureMapping `json:"SingleMeasureMappings,omitempty"` + + // TimeFieldType AWS CloudFormation Property + // Required: false + // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-pipes-pipe-pipetargettimestreamparameters.html#cfn-pipes-pipe-pipetargettimestreamparameters-timefieldtype + TimeFieldType *string `json:"TimeFieldType,omitempty"` + + // TimeValue AWS CloudFormation Property + // Required: true + // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-pipes-pipe-pipetargettimestreamparameters.html#cfn-pipes-pipe-pipetargettimestreamparameters-timevalue + TimeValue string `json:"TimeValue"` + + // TimestampFormat AWS CloudFormation Property + // Required: false + // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-pipes-pipe-pipetargettimestreamparameters.html#cfn-pipes-pipe-pipetargettimestreamparameters-timestampformat + TimestampFormat *string `json:"TimestampFormat,omitempty"` + + // VersionValue AWS CloudFormation Property + // Required: true + // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-pipes-pipe-pipetargettimestreamparameters.html#cfn-pipes-pipe-pipetargettimestreamparameters-versionvalue + VersionValue string `json:"VersionValue"` + + // 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 *Pipe_PipeTargetTimestreamParameters) AWSCloudFormationType() string { + return "AWS::Pipes::Pipe.PipeTargetTimestreamParameters" +} diff --git a/cloudformation/pipes/aws-pipes-pipe_singlemeasuremapping.go b/cloudformation/pipes/aws-pipes-pipe_singlemeasuremapping.go new file mode 100644 index 0000000000..bfc1575a89 --- /dev/null +++ b/cloudformation/pipes/aws-pipes-pipe_singlemeasuremapping.go @@ -0,0 +1,47 @@ +// Code generated by "go generate". Please don't change this file directly. + +package pipes + +import ( + "github.com/awslabs/goformation/v7/cloudformation/policies" +) + +// Pipe_SingleMeasureMapping AWS CloudFormation Resource (AWS::Pipes::Pipe.SingleMeasureMapping) +// See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-pipes-pipe-singlemeasuremapping.html +type Pipe_SingleMeasureMapping struct { + + // MeasureName AWS CloudFormation Property + // Required: true + // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-pipes-pipe-singlemeasuremapping.html#cfn-pipes-pipe-singlemeasuremapping-measurename + MeasureName string `json:"MeasureName"` + + // MeasureValue AWS CloudFormation Property + // Required: true + // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-pipes-pipe-singlemeasuremapping.html#cfn-pipes-pipe-singlemeasuremapping-measurevalue + MeasureValue string `json:"MeasureValue"` + + // MeasureValueType AWS CloudFormation Property + // Required: true + // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-pipes-pipe-singlemeasuremapping.html#cfn-pipes-pipe-singlemeasuremapping-measurevaluetype + MeasureValueType string `json:"MeasureValueType"` + + // 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 *Pipe_SingleMeasureMapping) AWSCloudFormationType() string { + return "AWS::Pipes::Pipe.SingleMeasureMapping" +} diff --git a/cloudformation/qbusiness/aws-qbusiness-application.go b/cloudformation/qbusiness/aws-qbusiness-application.go new file mode 100644 index 0000000000..2be73030fe --- /dev/null +++ b/cloudformation/qbusiness/aws-qbusiness-application.go @@ -0,0 +1,148 @@ +// Code generated by "go generate". Please don't change this file directly. + +package qbusiness + +import ( + "bytes" + "encoding/json" + + "github.com/awslabs/goformation/v7/cloudformation/policies" + "github.com/awslabs/goformation/v7/cloudformation/tags" +) + +// Application AWS CloudFormation Resource (AWS::QBusiness::Application) +// See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-qbusiness-application.html +type Application struct { + + // AttachmentsConfiguration AWS CloudFormation Property + // Required: false + // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-qbusiness-application.html#cfn-qbusiness-application-attachmentsconfiguration + AttachmentsConfiguration *Application_AttachmentsConfiguration `json:"AttachmentsConfiguration,omitempty"` + + // Description AWS CloudFormation Property + // Required: false + // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-qbusiness-application.html#cfn-qbusiness-application-description + Description *string `json:"Description,omitempty"` + + // DisplayName AWS CloudFormation Property + // Required: true + // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-qbusiness-application.html#cfn-qbusiness-application-displayname + DisplayName string `json:"DisplayName"` + + // EncryptionConfiguration AWS CloudFormation Property + // Required: false + // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-qbusiness-application.html#cfn-qbusiness-application-encryptionconfiguration + EncryptionConfiguration *Application_EncryptionConfiguration `json:"EncryptionConfiguration,omitempty"` + + // IdentityCenterInstanceArn AWS CloudFormation Property + // Required: false + // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-qbusiness-application.html#cfn-qbusiness-application-identitycenterinstancearn + IdentityCenterInstanceArn *string `json:"IdentityCenterInstanceArn,omitempty"` + + // RoleArn AWS CloudFormation Property + // Required: false + // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-qbusiness-application.html#cfn-qbusiness-application-rolearn + RoleArn *string `json:"RoleArn,omitempty"` + + // Tags AWS CloudFormation Property + // Required: false + // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-qbusiness-application.html#cfn-qbusiness-application-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 *Application) AWSCloudFormationType() string { + return "AWS::QBusiness::Application" +} + +// MarshalJSON is a custom JSON marshalling hook that embeds this object into +// an AWS CloudFormation JSON resource's 'Properties' field and adds a 'Type'. +func (r Application) MarshalJSON() ([]byte, error) { + type Properties Application + 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 *Application) UnmarshalJSON(b []byte) error { + type Properties Application + 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 = Application(*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/qbusiness/aws-qbusiness-application_attachmentsconfiguration.go b/cloudformation/qbusiness/aws-qbusiness-application_attachmentsconfiguration.go new file mode 100644 index 0000000000..729e032922 --- /dev/null +++ b/cloudformation/qbusiness/aws-qbusiness-application_attachmentsconfiguration.go @@ -0,0 +1,37 @@ +// Code generated by "go generate". Please don't change this file directly. + +package qbusiness + +import ( + "github.com/awslabs/goformation/v7/cloudformation/policies" +) + +// Application_AttachmentsConfiguration AWS CloudFormation Resource (AWS::QBusiness::Application.AttachmentsConfiguration) +// See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-qbusiness-application-attachmentsconfiguration.html +type Application_AttachmentsConfiguration struct { + + // AttachmentsControlMode AWS CloudFormation Property + // Required: true + // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-qbusiness-application-attachmentsconfiguration.html#cfn-qbusiness-application-attachmentsconfiguration-attachmentscontrolmode + AttachmentsControlMode string `json:"AttachmentsControlMode"` + + // 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 *Application_AttachmentsConfiguration) AWSCloudFormationType() string { + return "AWS::QBusiness::Application.AttachmentsConfiguration" +} diff --git a/cloudformation/qbusiness/aws-qbusiness-application_encryptionconfiguration.go b/cloudformation/qbusiness/aws-qbusiness-application_encryptionconfiguration.go new file mode 100644 index 0000000000..15ebcc40e2 --- /dev/null +++ b/cloudformation/qbusiness/aws-qbusiness-application_encryptionconfiguration.go @@ -0,0 +1,37 @@ +// Code generated by "go generate". Please don't change this file directly. + +package qbusiness + +import ( + "github.com/awslabs/goformation/v7/cloudformation/policies" +) + +// Application_EncryptionConfiguration AWS CloudFormation Resource (AWS::QBusiness::Application.EncryptionConfiguration) +// See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-qbusiness-application-encryptionconfiguration.html +type Application_EncryptionConfiguration struct { + + // KmsKeyId AWS CloudFormation Property + // Required: false + // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-qbusiness-application-encryptionconfiguration.html#cfn-qbusiness-application-encryptionconfiguration-kmskeyid + KmsKeyId *string `json:"KmsKeyId,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 *Application_EncryptionConfiguration) AWSCloudFormationType() string { + return "AWS::QBusiness::Application.EncryptionConfiguration" +} diff --git a/cloudformation/qbusiness/aws-qbusiness-datasource.go b/cloudformation/qbusiness/aws-qbusiness-datasource.go new file mode 100644 index 0000000000..5376b3827d --- /dev/null +++ b/cloudformation/qbusiness/aws-qbusiness-datasource.go @@ -0,0 +1,163 @@ +// Code generated by "go generate". Please don't change this file directly. + +package qbusiness + +import ( + "bytes" + "encoding/json" + + "github.com/awslabs/goformation/v7/cloudformation/policies" + "github.com/awslabs/goformation/v7/cloudformation/tags" +) + +// DataSource AWS CloudFormation Resource (AWS::QBusiness::DataSource) +// See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-qbusiness-datasource.html +type DataSource struct { + + // ApplicationId AWS CloudFormation Property + // Required: true + // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-qbusiness-datasource.html#cfn-qbusiness-datasource-applicationid + ApplicationId string `json:"ApplicationId"` + + // Configuration AWS CloudFormation Property + // Required: true + // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-qbusiness-datasource.html#cfn-qbusiness-datasource-configuration + Configuration interface{} `json:"Configuration"` + + // Description AWS CloudFormation Property + // Required: false + // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-qbusiness-datasource.html#cfn-qbusiness-datasource-description + Description *string `json:"Description,omitempty"` + + // DisplayName AWS CloudFormation Property + // Required: true + // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-qbusiness-datasource.html#cfn-qbusiness-datasource-displayname + DisplayName string `json:"DisplayName"` + + // DocumentEnrichmentConfiguration AWS CloudFormation Property + // Required: false + // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-qbusiness-datasource.html#cfn-qbusiness-datasource-documentenrichmentconfiguration + DocumentEnrichmentConfiguration *DataSource_DocumentEnrichmentConfiguration `json:"DocumentEnrichmentConfiguration,omitempty"` + + // IndexId AWS CloudFormation Property + // Required: true + // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-qbusiness-datasource.html#cfn-qbusiness-datasource-indexid + IndexId string `json:"IndexId"` + + // RoleArn AWS CloudFormation Property + // Required: false + // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-qbusiness-datasource.html#cfn-qbusiness-datasource-rolearn + RoleArn *string `json:"RoleArn,omitempty"` + + // SyncSchedule AWS CloudFormation Property + // Required: false + // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-qbusiness-datasource.html#cfn-qbusiness-datasource-syncschedule + SyncSchedule *string `json:"SyncSchedule,omitempty"` + + // Tags AWS CloudFormation Property + // Required: false + // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-qbusiness-datasource.html#cfn-qbusiness-datasource-tags + Tags []tags.Tag `json:"Tags,omitempty"` + + // VpcConfiguration AWS CloudFormation Property + // Required: false + // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-qbusiness-datasource.html#cfn-qbusiness-datasource-vpcconfiguration + VpcConfiguration *DataSource_DataSourceVpcConfiguration `json:"VpcConfiguration,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 *DataSource) AWSCloudFormationType() string { + return "AWS::QBusiness::DataSource" +} + +// MarshalJSON is a custom JSON marshalling hook that embeds this object into +// an AWS CloudFormation JSON resource's 'Properties' field and adds a 'Type'. +func (r DataSource) MarshalJSON() ([]byte, error) { + type Properties DataSource + 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 *DataSource) UnmarshalJSON(b []byte) error { + type Properties DataSource + 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 = DataSource(*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/qbusiness/aws-qbusiness-datasource_datasourcevpcconfiguration.go b/cloudformation/qbusiness/aws-qbusiness-datasource_datasourcevpcconfiguration.go new file mode 100644 index 0000000000..b66ff2a4a6 --- /dev/null +++ b/cloudformation/qbusiness/aws-qbusiness-datasource_datasourcevpcconfiguration.go @@ -0,0 +1,42 @@ +// Code generated by "go generate". Please don't change this file directly. + +package qbusiness + +import ( + "github.com/awslabs/goformation/v7/cloudformation/policies" +) + +// DataSource_DataSourceVpcConfiguration AWS CloudFormation Resource (AWS::QBusiness::DataSource.DataSourceVpcConfiguration) +// See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-qbusiness-datasource-datasourcevpcconfiguration.html +type DataSource_DataSourceVpcConfiguration struct { + + // SecurityGroupIds AWS CloudFormation Property + // Required: true + // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-qbusiness-datasource-datasourcevpcconfiguration.html#cfn-qbusiness-datasource-datasourcevpcconfiguration-securitygroupids + SecurityGroupIds []string `json:"SecurityGroupIds"` + + // SubnetIds AWS CloudFormation Property + // Required: true + // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-qbusiness-datasource-datasourcevpcconfiguration.html#cfn-qbusiness-datasource-datasourcevpcconfiguration-subnetids + SubnetIds []string `json:"SubnetIds"` + + // 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 *DataSource_DataSourceVpcConfiguration) AWSCloudFormationType() string { + return "AWS::QBusiness::DataSource.DataSourceVpcConfiguration" +} diff --git a/cloudformation/qbusiness/aws-qbusiness-datasource_documentattributecondition.go b/cloudformation/qbusiness/aws-qbusiness-datasource_documentattributecondition.go new file mode 100644 index 0000000000..acbfb9064b --- /dev/null +++ b/cloudformation/qbusiness/aws-qbusiness-datasource_documentattributecondition.go @@ -0,0 +1,47 @@ +// Code generated by "go generate". Please don't change this file directly. + +package qbusiness + +import ( + "github.com/awslabs/goformation/v7/cloudformation/policies" +) + +// DataSource_DocumentAttributeCondition AWS CloudFormation Resource (AWS::QBusiness::DataSource.DocumentAttributeCondition) +// See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-qbusiness-datasource-documentattributecondition.html +type DataSource_DocumentAttributeCondition struct { + + // Key AWS CloudFormation Property + // Required: true + // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-qbusiness-datasource-documentattributecondition.html#cfn-qbusiness-datasource-documentattributecondition-key + Key string `json:"Key"` + + // Operator AWS CloudFormation Property + // Required: true + // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-qbusiness-datasource-documentattributecondition.html#cfn-qbusiness-datasource-documentattributecondition-operator + Operator string `json:"Operator"` + + // Value AWS CloudFormation Property + // Required: false + // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-qbusiness-datasource-documentattributecondition.html#cfn-qbusiness-datasource-documentattributecondition-value + Value *DataSource_DocumentAttributeValue `json:"Value,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 *DataSource_DocumentAttributeCondition) AWSCloudFormationType() string { + return "AWS::QBusiness::DataSource.DocumentAttributeCondition" +} diff --git a/cloudformation/qbusiness/aws-qbusiness-datasource_documentattributetarget.go b/cloudformation/qbusiness/aws-qbusiness-datasource_documentattributetarget.go new file mode 100644 index 0000000000..51ec4ad528 --- /dev/null +++ b/cloudformation/qbusiness/aws-qbusiness-datasource_documentattributetarget.go @@ -0,0 +1,47 @@ +// Code generated by "go generate". Please don't change this file directly. + +package qbusiness + +import ( + "github.com/awslabs/goformation/v7/cloudformation/policies" +) + +// DataSource_DocumentAttributeTarget AWS CloudFormation Resource (AWS::QBusiness::DataSource.DocumentAttributeTarget) +// See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-qbusiness-datasource-documentattributetarget.html +type DataSource_DocumentAttributeTarget struct { + + // AttributeValueOperator AWS CloudFormation Property + // Required: false + // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-qbusiness-datasource-documentattributetarget.html#cfn-qbusiness-datasource-documentattributetarget-attributevalueoperator + AttributeValueOperator *string `json:"AttributeValueOperator,omitempty"` + + // Key AWS CloudFormation Property + // Required: true + // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-qbusiness-datasource-documentattributetarget.html#cfn-qbusiness-datasource-documentattributetarget-key + Key string `json:"Key"` + + // Value AWS CloudFormation Property + // Required: false + // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-qbusiness-datasource-documentattributetarget.html#cfn-qbusiness-datasource-documentattributetarget-value + Value *DataSource_DocumentAttributeValue `json:"Value,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 *DataSource_DocumentAttributeTarget) AWSCloudFormationType() string { + return "AWS::QBusiness::DataSource.DocumentAttributeTarget" +} diff --git a/cloudformation/qbusiness/aws-qbusiness-datasource_documentattributevalue.go b/cloudformation/qbusiness/aws-qbusiness-datasource_documentattributevalue.go new file mode 100644 index 0000000000..21cb1135e7 --- /dev/null +++ b/cloudformation/qbusiness/aws-qbusiness-datasource_documentattributevalue.go @@ -0,0 +1,52 @@ +// Code generated by "go generate". Please don't change this file directly. + +package qbusiness + +import ( + "github.com/awslabs/goformation/v7/cloudformation/policies" +) + +// DataSource_DocumentAttributeValue AWS CloudFormation Resource (AWS::QBusiness::DataSource.DocumentAttributeValue) +// See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-qbusiness-datasource-documentattributevalue.html +type DataSource_DocumentAttributeValue struct { + + // DateValue AWS CloudFormation Property + // Required: false + // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-qbusiness-datasource-documentattributevalue.html#cfn-qbusiness-datasource-documentattributevalue-datevalue + DateValue *string `json:"DateValue,omitempty"` + + // LongValue AWS CloudFormation Property + // Required: false + // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-qbusiness-datasource-documentattributevalue.html#cfn-qbusiness-datasource-documentattributevalue-longvalue + LongValue *float64 `json:"LongValue,omitempty"` + + // StringListValue AWS CloudFormation Property + // Required: false + // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-qbusiness-datasource-documentattributevalue.html#cfn-qbusiness-datasource-documentattributevalue-stringlistvalue + StringListValue []string `json:"StringListValue,omitempty"` + + // StringValue AWS CloudFormation Property + // Required: false + // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-qbusiness-datasource-documentattributevalue.html#cfn-qbusiness-datasource-documentattributevalue-stringvalue + StringValue *string `json:"StringValue,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 *DataSource_DocumentAttributeValue) AWSCloudFormationType() string { + return "AWS::QBusiness::DataSource.DocumentAttributeValue" +} diff --git a/cloudformation/qbusiness/aws-qbusiness-datasource_documentenrichmentconfiguration.go b/cloudformation/qbusiness/aws-qbusiness-datasource_documentenrichmentconfiguration.go new file mode 100644 index 0000000000..a9af721cfb --- /dev/null +++ b/cloudformation/qbusiness/aws-qbusiness-datasource_documentenrichmentconfiguration.go @@ -0,0 +1,47 @@ +// Code generated by "go generate". Please don't change this file directly. + +package qbusiness + +import ( + "github.com/awslabs/goformation/v7/cloudformation/policies" +) + +// DataSource_DocumentEnrichmentConfiguration AWS CloudFormation Resource (AWS::QBusiness::DataSource.DocumentEnrichmentConfiguration) +// See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-qbusiness-datasource-documentenrichmentconfiguration.html +type DataSource_DocumentEnrichmentConfiguration struct { + + // InlineConfigurations AWS CloudFormation Property + // Required: false + // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-qbusiness-datasource-documentenrichmentconfiguration.html#cfn-qbusiness-datasource-documentenrichmentconfiguration-inlineconfigurations + InlineConfigurations []DataSource_InlineDocumentEnrichmentConfiguration `json:"InlineConfigurations,omitempty"` + + // PostExtractionHookConfiguration AWS CloudFormation Property + // Required: false + // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-qbusiness-datasource-documentenrichmentconfiguration.html#cfn-qbusiness-datasource-documentenrichmentconfiguration-postextractionhookconfiguration + PostExtractionHookConfiguration *DataSource_HookConfiguration `json:"PostExtractionHookConfiguration,omitempty"` + + // PreExtractionHookConfiguration AWS CloudFormation Property + // Required: false + // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-qbusiness-datasource-documentenrichmentconfiguration.html#cfn-qbusiness-datasource-documentenrichmentconfiguration-preextractionhookconfiguration + PreExtractionHookConfiguration *DataSource_HookConfiguration `json:"PreExtractionHookConfiguration,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 *DataSource_DocumentEnrichmentConfiguration) AWSCloudFormationType() string { + return "AWS::QBusiness::DataSource.DocumentEnrichmentConfiguration" +} diff --git a/cloudformation/qbusiness/aws-qbusiness-datasource_hookconfiguration.go b/cloudformation/qbusiness/aws-qbusiness-datasource_hookconfiguration.go new file mode 100644 index 0000000000..7285454696 --- /dev/null +++ b/cloudformation/qbusiness/aws-qbusiness-datasource_hookconfiguration.go @@ -0,0 +1,52 @@ +// Code generated by "go generate". Please don't change this file directly. + +package qbusiness + +import ( + "github.com/awslabs/goformation/v7/cloudformation/policies" +) + +// DataSource_HookConfiguration AWS CloudFormation Resource (AWS::QBusiness::DataSource.HookConfiguration) +// See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-qbusiness-datasource-hookconfiguration.html +type DataSource_HookConfiguration struct { + + // InvocationCondition AWS CloudFormation Property + // Required: false + // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-qbusiness-datasource-hookconfiguration.html#cfn-qbusiness-datasource-hookconfiguration-invocationcondition + InvocationCondition *DataSource_DocumentAttributeCondition `json:"InvocationCondition,omitempty"` + + // LambdaArn AWS CloudFormation Property + // Required: false + // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-qbusiness-datasource-hookconfiguration.html#cfn-qbusiness-datasource-hookconfiguration-lambdaarn + LambdaArn *string `json:"LambdaArn,omitempty"` + + // RoleArn AWS CloudFormation Property + // Required: false + // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-qbusiness-datasource-hookconfiguration.html#cfn-qbusiness-datasource-hookconfiguration-rolearn + RoleArn *string `json:"RoleArn,omitempty"` + + // S3BucketName AWS CloudFormation Property + // Required: false + // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-qbusiness-datasource-hookconfiguration.html#cfn-qbusiness-datasource-hookconfiguration-s3bucketname + S3BucketName *string `json:"S3BucketName,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 *DataSource_HookConfiguration) AWSCloudFormationType() string { + return "AWS::QBusiness::DataSource.HookConfiguration" +} diff --git a/cloudformation/qbusiness/aws-qbusiness-datasource_inlinedocumentenrichmentconfiguration.go b/cloudformation/qbusiness/aws-qbusiness-datasource_inlinedocumentenrichmentconfiguration.go new file mode 100644 index 0000000000..92f2cea564 --- /dev/null +++ b/cloudformation/qbusiness/aws-qbusiness-datasource_inlinedocumentenrichmentconfiguration.go @@ -0,0 +1,47 @@ +// Code generated by "go generate". Please don't change this file directly. + +package qbusiness + +import ( + "github.com/awslabs/goformation/v7/cloudformation/policies" +) + +// DataSource_InlineDocumentEnrichmentConfiguration AWS CloudFormation Resource (AWS::QBusiness::DataSource.InlineDocumentEnrichmentConfiguration) +// See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-qbusiness-datasource-inlinedocumentenrichmentconfiguration.html +type DataSource_InlineDocumentEnrichmentConfiguration struct { + + // Condition AWS CloudFormation Property + // Required: false + // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-qbusiness-datasource-inlinedocumentenrichmentconfiguration.html#cfn-qbusiness-datasource-inlinedocumentenrichmentconfiguration-condition + Condition *DataSource_DocumentAttributeCondition `json:"Condition,omitempty"` + + // DocumentContentOperator AWS CloudFormation Property + // Required: false + // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-qbusiness-datasource-inlinedocumentenrichmentconfiguration.html#cfn-qbusiness-datasource-inlinedocumentenrichmentconfiguration-documentcontentoperator + DocumentContentOperator *string `json:"DocumentContentOperator,omitempty"` + + // Target AWS CloudFormation Property + // Required: false + // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-qbusiness-datasource-inlinedocumentenrichmentconfiguration.html#cfn-qbusiness-datasource-inlinedocumentenrichmentconfiguration-target + Target *DataSource_DocumentAttributeTarget `json:"Target,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 *DataSource_InlineDocumentEnrichmentConfiguration) AWSCloudFormationType() string { + return "AWS::QBusiness::DataSource.InlineDocumentEnrichmentConfiguration" +} diff --git a/cloudformation/qbusiness/aws-qbusiness-index.go b/cloudformation/qbusiness/aws-qbusiness-index.go new file mode 100644 index 0000000000..5e9bc7e812 --- /dev/null +++ b/cloudformation/qbusiness/aws-qbusiness-index.go @@ -0,0 +1,148 @@ +// Code generated by "go generate". Please don't change this file directly. + +package qbusiness + +import ( + "bytes" + "encoding/json" + + "github.com/awslabs/goformation/v7/cloudformation/policies" + "github.com/awslabs/goformation/v7/cloudformation/tags" +) + +// Index AWS CloudFormation Resource (AWS::QBusiness::Index) +// See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-qbusiness-index.html +type Index struct { + + // ApplicationId AWS CloudFormation Property + // Required: true + // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-qbusiness-index.html#cfn-qbusiness-index-applicationid + ApplicationId string `json:"ApplicationId"` + + // CapacityConfiguration AWS CloudFormation Property + // Required: false + // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-qbusiness-index.html#cfn-qbusiness-index-capacityconfiguration + CapacityConfiguration *Index_IndexCapacityConfiguration `json:"CapacityConfiguration,omitempty"` + + // Description AWS CloudFormation Property + // Required: false + // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-qbusiness-index.html#cfn-qbusiness-index-description + Description *string `json:"Description,omitempty"` + + // DisplayName AWS CloudFormation Property + // Required: true + // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-qbusiness-index.html#cfn-qbusiness-index-displayname + DisplayName string `json:"DisplayName"` + + // DocumentAttributeConfigurations AWS CloudFormation Property + // Required: false + // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-qbusiness-index.html#cfn-qbusiness-index-documentattributeconfigurations + DocumentAttributeConfigurations []Index_DocumentAttributeConfiguration `json:"DocumentAttributeConfigurations,omitempty"` + + // Tags AWS CloudFormation Property + // Required: false + // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-qbusiness-index.html#cfn-qbusiness-index-tags + Tags []tags.Tag `json:"Tags,omitempty"` + + // Type AWS CloudFormation Property + // Required: false + // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-qbusiness-index.html#cfn-qbusiness-index-type + Type *string `json:"Type,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 *Index) AWSCloudFormationType() string { + return "AWS::QBusiness::Index" +} + +// MarshalJSON is a custom JSON marshalling hook that embeds this object into +// an AWS CloudFormation JSON resource's 'Properties' field and adds a 'Type'. +func (r Index) MarshalJSON() ([]byte, error) { + type Properties Index + 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 *Index) UnmarshalJSON(b []byte) error { + type Properties Index + 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 = Index(*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/qbusiness/aws-qbusiness-index_documentattributeconfiguration.go b/cloudformation/qbusiness/aws-qbusiness-index_documentattributeconfiguration.go new file mode 100644 index 0000000000..5937d3ec70 --- /dev/null +++ b/cloudformation/qbusiness/aws-qbusiness-index_documentattributeconfiguration.go @@ -0,0 +1,47 @@ +// Code generated by "go generate". Please don't change this file directly. + +package qbusiness + +import ( + "github.com/awslabs/goformation/v7/cloudformation/policies" +) + +// Index_DocumentAttributeConfiguration AWS CloudFormation Resource (AWS::QBusiness::Index.DocumentAttributeConfiguration) +// See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-qbusiness-index-documentattributeconfiguration.html +type Index_DocumentAttributeConfiguration struct { + + // Name AWS CloudFormation Property + // Required: false + // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-qbusiness-index-documentattributeconfiguration.html#cfn-qbusiness-index-documentattributeconfiguration-name + Name *string `json:"Name,omitempty"` + + // Search AWS CloudFormation Property + // Required: false + // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-qbusiness-index-documentattributeconfiguration.html#cfn-qbusiness-index-documentattributeconfiguration-search + Search *string `json:"Search,omitempty"` + + // Type AWS CloudFormation Property + // Required: false + // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-qbusiness-index-documentattributeconfiguration.html#cfn-qbusiness-index-documentattributeconfiguration-type + Type *string `json:"Type,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 *Index_DocumentAttributeConfiguration) AWSCloudFormationType() string { + return "AWS::QBusiness::Index.DocumentAttributeConfiguration" +} diff --git a/cloudformation/qbusiness/aws-qbusiness-index_indexcapacityconfiguration.go b/cloudformation/qbusiness/aws-qbusiness-index_indexcapacityconfiguration.go new file mode 100644 index 0000000000..6b3e5806c5 --- /dev/null +++ b/cloudformation/qbusiness/aws-qbusiness-index_indexcapacityconfiguration.go @@ -0,0 +1,37 @@ +// Code generated by "go generate". Please don't change this file directly. + +package qbusiness + +import ( + "github.com/awslabs/goformation/v7/cloudformation/policies" +) + +// Index_IndexCapacityConfiguration AWS CloudFormation Resource (AWS::QBusiness::Index.IndexCapacityConfiguration) +// See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-qbusiness-index-indexcapacityconfiguration.html +type Index_IndexCapacityConfiguration struct { + + // Units AWS CloudFormation Property + // Required: false + // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-qbusiness-index-indexcapacityconfiguration.html#cfn-qbusiness-index-indexcapacityconfiguration-units + Units *float64 `json:"Units,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 *Index_IndexCapacityConfiguration) AWSCloudFormationType() string { + return "AWS::QBusiness::Index.IndexCapacityConfiguration" +} diff --git a/cloudformation/qbusiness/aws-qbusiness-index_indexstatistics.go b/cloudformation/qbusiness/aws-qbusiness-index_indexstatistics.go new file mode 100644 index 0000000000..4fb1f51313 --- /dev/null +++ b/cloudformation/qbusiness/aws-qbusiness-index_indexstatistics.go @@ -0,0 +1,37 @@ +// Code generated by "go generate". Please don't change this file directly. + +package qbusiness + +import ( + "github.com/awslabs/goformation/v7/cloudformation/policies" +) + +// Index_IndexStatistics AWS CloudFormation Resource (AWS::QBusiness::Index.IndexStatistics) +// See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-qbusiness-index-indexstatistics.html +type Index_IndexStatistics struct { + + // TextDocumentStatistics AWS CloudFormation Property + // Required: false + // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-qbusiness-index-indexstatistics.html#cfn-qbusiness-index-indexstatistics-textdocumentstatistics + TextDocumentStatistics *Index_TextDocumentStatistics `json:"TextDocumentStatistics,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 *Index_IndexStatistics) AWSCloudFormationType() string { + return "AWS::QBusiness::Index.IndexStatistics" +} diff --git a/cloudformation/qbusiness/aws-qbusiness-index_textdocumentstatistics.go b/cloudformation/qbusiness/aws-qbusiness-index_textdocumentstatistics.go new file mode 100644 index 0000000000..9524babc55 --- /dev/null +++ b/cloudformation/qbusiness/aws-qbusiness-index_textdocumentstatistics.go @@ -0,0 +1,42 @@ +// Code generated by "go generate". Please don't change this file directly. + +package qbusiness + +import ( + "github.com/awslabs/goformation/v7/cloudformation/policies" +) + +// Index_TextDocumentStatistics AWS CloudFormation Resource (AWS::QBusiness::Index.TextDocumentStatistics) +// See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-qbusiness-index-textdocumentstatistics.html +type Index_TextDocumentStatistics struct { + + // IndexedTextBytes AWS CloudFormation Property + // Required: false + // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-qbusiness-index-textdocumentstatistics.html#cfn-qbusiness-index-textdocumentstatistics-indexedtextbytes + IndexedTextBytes *float64 `json:"IndexedTextBytes,omitempty"` + + // IndexedTextDocumentCount AWS CloudFormation Property + // Required: false + // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-qbusiness-index-textdocumentstatistics.html#cfn-qbusiness-index-textdocumentstatistics-indexedtextdocumentcount + IndexedTextDocumentCount *float64 `json:"IndexedTextDocumentCount,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 *Index_TextDocumentStatistics) AWSCloudFormationType() string { + return "AWS::QBusiness::Index.TextDocumentStatistics" +} diff --git a/cloudformation/qbusiness/aws-qbusiness-plugin.go b/cloudformation/qbusiness/aws-qbusiness-plugin.go new file mode 100644 index 0000000000..0d8d8020fa --- /dev/null +++ b/cloudformation/qbusiness/aws-qbusiness-plugin.go @@ -0,0 +1,153 @@ +// Code generated by "go generate". Please don't change this file directly. + +package qbusiness + +import ( + "bytes" + "encoding/json" + + "github.com/awslabs/goformation/v7/cloudformation/policies" + "github.com/awslabs/goformation/v7/cloudformation/tags" +) + +// Plugin AWS CloudFormation Resource (AWS::QBusiness::Plugin) +// See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-qbusiness-plugin.html +type Plugin struct { + + // ApplicationId AWS CloudFormation Property + // Required: true + // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-qbusiness-plugin.html#cfn-qbusiness-plugin-applicationid + ApplicationId string `json:"ApplicationId"` + + // AuthConfiguration AWS CloudFormation Property + // Required: true + // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-qbusiness-plugin.html#cfn-qbusiness-plugin-authconfiguration + AuthConfiguration *Plugin_PluginAuthConfiguration `json:"AuthConfiguration"` + + // CustomPluginConfiguration AWS CloudFormation Property + // Required: false + // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-qbusiness-plugin.html#cfn-qbusiness-plugin-custompluginconfiguration + CustomPluginConfiguration *Plugin_CustomPluginConfiguration `json:"CustomPluginConfiguration,omitempty"` + + // DisplayName AWS CloudFormation Property + // Required: true + // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-qbusiness-plugin.html#cfn-qbusiness-plugin-displayname + DisplayName string `json:"DisplayName"` + + // ServerUrl AWS CloudFormation Property + // Required: false + // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-qbusiness-plugin.html#cfn-qbusiness-plugin-serverurl + ServerUrl *string `json:"ServerUrl,omitempty"` + + // State AWS CloudFormation Property + // Required: false + // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-qbusiness-plugin.html#cfn-qbusiness-plugin-state + State *string `json:"State,omitempty"` + + // Tags AWS CloudFormation Property + // Required: false + // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-qbusiness-plugin.html#cfn-qbusiness-plugin-tags + Tags []tags.Tag `json:"Tags,omitempty"` + + // Type AWS CloudFormation Property + // Required: true + // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-qbusiness-plugin.html#cfn-qbusiness-plugin-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 *Plugin) AWSCloudFormationType() string { + return "AWS::QBusiness::Plugin" +} + +// MarshalJSON is a custom JSON marshalling hook that embeds this object into +// an AWS CloudFormation JSON resource's 'Properties' field and adds a 'Type'. +func (r Plugin) MarshalJSON() ([]byte, error) { + type Properties Plugin + 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 *Plugin) UnmarshalJSON(b []byte) error { + type Properties Plugin + 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 = Plugin(*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/qbusiness/aws-qbusiness-plugin_apischema.go b/cloudformation/qbusiness/aws-qbusiness-plugin_apischema.go new file mode 100644 index 0000000000..f6ef3f5473 --- /dev/null +++ b/cloudformation/qbusiness/aws-qbusiness-plugin_apischema.go @@ -0,0 +1,42 @@ +// Code generated by "go generate". Please don't change this file directly. + +package qbusiness + +import ( + "github.com/awslabs/goformation/v7/cloudformation/policies" +) + +// Plugin_APISchema AWS CloudFormation Resource (AWS::QBusiness::Plugin.APISchema) +// See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-qbusiness-plugin-apischema.html +type Plugin_APISchema struct { + + // Payload AWS CloudFormation Property + // Required: false + // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-qbusiness-plugin-apischema.html#cfn-qbusiness-plugin-apischema-payload + Payload *string `json:"Payload,omitempty"` + + // S3 AWS CloudFormation Property + // Required: false + // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-qbusiness-plugin-apischema.html#cfn-qbusiness-plugin-apischema-s3 + S3 *Plugin_S3 `json:"S3,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 *Plugin_APISchema) AWSCloudFormationType() string { + return "AWS::QBusiness::Plugin.APISchema" +} diff --git a/cloudformation/qbusiness/aws-qbusiness-plugin_basicauthconfiguration.go b/cloudformation/qbusiness/aws-qbusiness-plugin_basicauthconfiguration.go new file mode 100644 index 0000000000..cea4e89205 --- /dev/null +++ b/cloudformation/qbusiness/aws-qbusiness-plugin_basicauthconfiguration.go @@ -0,0 +1,42 @@ +// Code generated by "go generate". Please don't change this file directly. + +package qbusiness + +import ( + "github.com/awslabs/goformation/v7/cloudformation/policies" +) + +// Plugin_BasicAuthConfiguration AWS CloudFormation Resource (AWS::QBusiness::Plugin.BasicAuthConfiguration) +// See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-qbusiness-plugin-basicauthconfiguration.html +type Plugin_BasicAuthConfiguration struct { + + // RoleArn AWS CloudFormation Property + // Required: true + // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-qbusiness-plugin-basicauthconfiguration.html#cfn-qbusiness-plugin-basicauthconfiguration-rolearn + RoleArn string `json:"RoleArn"` + + // SecretArn AWS CloudFormation Property + // Required: true + // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-qbusiness-plugin-basicauthconfiguration.html#cfn-qbusiness-plugin-basicauthconfiguration-secretarn + SecretArn string `json:"SecretArn"` + + // 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 *Plugin_BasicAuthConfiguration) AWSCloudFormationType() string { + return "AWS::QBusiness::Plugin.BasicAuthConfiguration" +} diff --git a/cloudformation/qbusiness/aws-qbusiness-plugin_custompluginconfiguration.go b/cloudformation/qbusiness/aws-qbusiness-plugin_custompluginconfiguration.go new file mode 100644 index 0000000000..c0dd0db8e5 --- /dev/null +++ b/cloudformation/qbusiness/aws-qbusiness-plugin_custompluginconfiguration.go @@ -0,0 +1,47 @@ +// Code generated by "go generate". Please don't change this file directly. + +package qbusiness + +import ( + "github.com/awslabs/goformation/v7/cloudformation/policies" +) + +// Plugin_CustomPluginConfiguration AWS CloudFormation Resource (AWS::QBusiness::Plugin.CustomPluginConfiguration) +// See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-qbusiness-plugin-custompluginconfiguration.html +type Plugin_CustomPluginConfiguration struct { + + // ApiSchema AWS CloudFormation Property + // Required: true + // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-qbusiness-plugin-custompluginconfiguration.html#cfn-qbusiness-plugin-custompluginconfiguration-apischema + ApiSchema *Plugin_APISchema `json:"ApiSchema"` + + // ApiSchemaType AWS CloudFormation Property + // Required: true + // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-qbusiness-plugin-custompluginconfiguration.html#cfn-qbusiness-plugin-custompluginconfiguration-apischematype + ApiSchemaType string `json:"ApiSchemaType"` + + // Description AWS CloudFormation Property + // Required: true + // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-qbusiness-plugin-custompluginconfiguration.html#cfn-qbusiness-plugin-custompluginconfiguration-description + Description string `json:"Description"` + + // 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 *Plugin_CustomPluginConfiguration) AWSCloudFormationType() string { + return "AWS::QBusiness::Plugin.CustomPluginConfiguration" +} diff --git a/cloudformation/qbusiness/aws-qbusiness-plugin_oauth2clientcredentialconfiguration.go b/cloudformation/qbusiness/aws-qbusiness-plugin_oauth2clientcredentialconfiguration.go new file mode 100644 index 0000000000..e57432fea2 --- /dev/null +++ b/cloudformation/qbusiness/aws-qbusiness-plugin_oauth2clientcredentialconfiguration.go @@ -0,0 +1,42 @@ +// Code generated by "go generate". Please don't change this file directly. + +package qbusiness + +import ( + "github.com/awslabs/goformation/v7/cloudformation/policies" +) + +// Plugin_OAuth2ClientCredentialConfiguration AWS CloudFormation Resource (AWS::QBusiness::Plugin.OAuth2ClientCredentialConfiguration) +// See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-qbusiness-plugin-oauth2clientcredentialconfiguration.html +type Plugin_OAuth2ClientCredentialConfiguration struct { + + // RoleArn AWS CloudFormation Property + // Required: true + // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-qbusiness-plugin-oauth2clientcredentialconfiguration.html#cfn-qbusiness-plugin-oauth2clientcredentialconfiguration-rolearn + RoleArn string `json:"RoleArn"` + + // SecretArn AWS CloudFormation Property + // Required: true + // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-qbusiness-plugin-oauth2clientcredentialconfiguration.html#cfn-qbusiness-plugin-oauth2clientcredentialconfiguration-secretarn + SecretArn string `json:"SecretArn"` + + // 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 *Plugin_OAuth2ClientCredentialConfiguration) AWSCloudFormationType() string { + return "AWS::QBusiness::Plugin.OAuth2ClientCredentialConfiguration" +} diff --git a/cloudformation/qbusiness/aws-qbusiness-plugin_pluginauthconfiguration.go b/cloudformation/qbusiness/aws-qbusiness-plugin_pluginauthconfiguration.go new file mode 100644 index 0000000000..88e60290d7 --- /dev/null +++ b/cloudformation/qbusiness/aws-qbusiness-plugin_pluginauthconfiguration.go @@ -0,0 +1,47 @@ +// Code generated by "go generate". Please don't change this file directly. + +package qbusiness + +import ( + "github.com/awslabs/goformation/v7/cloudformation/policies" +) + +// Plugin_PluginAuthConfiguration AWS CloudFormation Resource (AWS::QBusiness::Plugin.PluginAuthConfiguration) +// See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-qbusiness-plugin-pluginauthconfiguration.html +type Plugin_PluginAuthConfiguration struct { + + // BasicAuthConfiguration AWS CloudFormation Property + // Required: false + // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-qbusiness-plugin-pluginauthconfiguration.html#cfn-qbusiness-plugin-pluginauthconfiguration-basicauthconfiguration + BasicAuthConfiguration *Plugin_BasicAuthConfiguration `json:"BasicAuthConfiguration,omitempty"` + + // NoAuthConfiguration AWS CloudFormation Property + // Required: false + // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-qbusiness-plugin-pluginauthconfiguration.html#cfn-qbusiness-plugin-pluginauthconfiguration-noauthconfiguration + NoAuthConfiguration interface{} `json:"NoAuthConfiguration,omitempty"` + + // OAuth2ClientCredentialConfiguration AWS CloudFormation Property + // Required: false + // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-qbusiness-plugin-pluginauthconfiguration.html#cfn-qbusiness-plugin-pluginauthconfiguration-oauth2clientcredentialconfiguration + OAuth2ClientCredentialConfiguration *Plugin_OAuth2ClientCredentialConfiguration `json:"OAuth2ClientCredentialConfiguration,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 *Plugin_PluginAuthConfiguration) AWSCloudFormationType() string { + return "AWS::QBusiness::Plugin.PluginAuthConfiguration" +} diff --git a/cloudformation/qbusiness/aws-qbusiness-plugin_s3.go b/cloudformation/qbusiness/aws-qbusiness-plugin_s3.go new file mode 100644 index 0000000000..7a3e5d5c77 --- /dev/null +++ b/cloudformation/qbusiness/aws-qbusiness-plugin_s3.go @@ -0,0 +1,42 @@ +// Code generated by "go generate". Please don't change this file directly. + +package qbusiness + +import ( + "github.com/awslabs/goformation/v7/cloudformation/policies" +) + +// Plugin_S3 AWS CloudFormation Resource (AWS::QBusiness::Plugin.S3) +// See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-qbusiness-plugin-s3.html +type Plugin_S3 struct { + + // Bucket AWS CloudFormation Property + // Required: true + // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-qbusiness-plugin-s3.html#cfn-qbusiness-plugin-s3-bucket + Bucket string `json:"Bucket"` + + // Key AWS CloudFormation Property + // Required: true + // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-qbusiness-plugin-s3.html#cfn-qbusiness-plugin-s3-key + Key string `json:"Key"` + + // 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 *Plugin_S3) AWSCloudFormationType() string { + return "AWS::QBusiness::Plugin.S3" +} diff --git a/cloudformation/qbusiness/aws-qbusiness-retriever.go b/cloudformation/qbusiness/aws-qbusiness-retriever.go new file mode 100644 index 0000000000..76b646b1f7 --- /dev/null +++ b/cloudformation/qbusiness/aws-qbusiness-retriever.go @@ -0,0 +1,143 @@ +// Code generated by "go generate". Please don't change this file directly. + +package qbusiness + +import ( + "bytes" + "encoding/json" + + "github.com/awslabs/goformation/v7/cloudformation/policies" + "github.com/awslabs/goformation/v7/cloudformation/tags" +) + +// Retriever AWS CloudFormation Resource (AWS::QBusiness::Retriever) +// See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-qbusiness-retriever.html +type Retriever struct { + + // ApplicationId AWS CloudFormation Property + // Required: true + // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-qbusiness-retriever.html#cfn-qbusiness-retriever-applicationid + ApplicationId string `json:"ApplicationId"` + + // Configuration AWS CloudFormation Property + // Required: true + // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-qbusiness-retriever.html#cfn-qbusiness-retriever-configuration + Configuration *Retriever_RetrieverConfiguration `json:"Configuration"` + + // DisplayName AWS CloudFormation Property + // Required: true + // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-qbusiness-retriever.html#cfn-qbusiness-retriever-displayname + DisplayName string `json:"DisplayName"` + + // RoleArn AWS CloudFormation Property + // Required: false + // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-qbusiness-retriever.html#cfn-qbusiness-retriever-rolearn + RoleArn *string `json:"RoleArn,omitempty"` + + // Tags AWS CloudFormation Property + // Required: false + // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-qbusiness-retriever.html#cfn-qbusiness-retriever-tags + Tags []tags.Tag `json:"Tags,omitempty"` + + // Type AWS CloudFormation Property + // Required: true + // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-qbusiness-retriever.html#cfn-qbusiness-retriever-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 *Retriever) AWSCloudFormationType() string { + return "AWS::QBusiness::Retriever" +} + +// MarshalJSON is a custom JSON marshalling hook that embeds this object into +// an AWS CloudFormation JSON resource's 'Properties' field and adds a 'Type'. +func (r Retriever) MarshalJSON() ([]byte, error) { + type Properties Retriever + 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 *Retriever) UnmarshalJSON(b []byte) error { + type Properties Retriever + 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 = Retriever(*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/qbusiness/aws-qbusiness-retriever_kendraindexconfiguration.go b/cloudformation/qbusiness/aws-qbusiness-retriever_kendraindexconfiguration.go new file mode 100644 index 0000000000..0a2b2c811a --- /dev/null +++ b/cloudformation/qbusiness/aws-qbusiness-retriever_kendraindexconfiguration.go @@ -0,0 +1,37 @@ +// Code generated by "go generate". Please don't change this file directly. + +package qbusiness + +import ( + "github.com/awslabs/goformation/v7/cloudformation/policies" +) + +// Retriever_KendraIndexConfiguration AWS CloudFormation Resource (AWS::QBusiness::Retriever.KendraIndexConfiguration) +// See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-qbusiness-retriever-kendraindexconfiguration.html +type Retriever_KendraIndexConfiguration struct { + + // IndexId AWS CloudFormation Property + // Required: true + // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-qbusiness-retriever-kendraindexconfiguration.html#cfn-qbusiness-retriever-kendraindexconfiguration-indexid + IndexId string `json:"IndexId"` + + // 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 *Retriever_KendraIndexConfiguration) AWSCloudFormationType() string { + return "AWS::QBusiness::Retriever.KendraIndexConfiguration" +} diff --git a/cloudformation/qbusiness/aws-qbusiness-retriever_nativeindexconfiguration.go b/cloudformation/qbusiness/aws-qbusiness-retriever_nativeindexconfiguration.go new file mode 100644 index 0000000000..9de76423b6 --- /dev/null +++ b/cloudformation/qbusiness/aws-qbusiness-retriever_nativeindexconfiguration.go @@ -0,0 +1,37 @@ +// Code generated by "go generate". Please don't change this file directly. + +package qbusiness + +import ( + "github.com/awslabs/goformation/v7/cloudformation/policies" +) + +// Retriever_NativeIndexConfiguration AWS CloudFormation Resource (AWS::QBusiness::Retriever.NativeIndexConfiguration) +// See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-qbusiness-retriever-nativeindexconfiguration.html +type Retriever_NativeIndexConfiguration struct { + + // IndexId AWS CloudFormation Property + // Required: true + // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-qbusiness-retriever-nativeindexconfiguration.html#cfn-qbusiness-retriever-nativeindexconfiguration-indexid + IndexId string `json:"IndexId"` + + // 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 *Retriever_NativeIndexConfiguration) AWSCloudFormationType() string { + return "AWS::QBusiness::Retriever.NativeIndexConfiguration" +} diff --git a/cloudformation/qbusiness/aws-qbusiness-retriever_retrieverconfiguration.go b/cloudformation/qbusiness/aws-qbusiness-retriever_retrieverconfiguration.go new file mode 100644 index 0000000000..59004535b0 --- /dev/null +++ b/cloudformation/qbusiness/aws-qbusiness-retriever_retrieverconfiguration.go @@ -0,0 +1,42 @@ +// Code generated by "go generate". Please don't change this file directly. + +package qbusiness + +import ( + "github.com/awslabs/goformation/v7/cloudformation/policies" +) + +// Retriever_RetrieverConfiguration AWS CloudFormation Resource (AWS::QBusiness::Retriever.RetrieverConfiguration) +// See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-qbusiness-retriever-retrieverconfiguration.html +type Retriever_RetrieverConfiguration struct { + + // KendraIndexConfiguration AWS CloudFormation Property + // Required: false + // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-qbusiness-retriever-retrieverconfiguration.html#cfn-qbusiness-retriever-retrieverconfiguration-kendraindexconfiguration + KendraIndexConfiguration *Retriever_KendraIndexConfiguration `json:"KendraIndexConfiguration,omitempty"` + + // NativeIndexConfiguration AWS CloudFormation Property + // Required: false + // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-qbusiness-retriever-retrieverconfiguration.html#cfn-qbusiness-retriever-retrieverconfiguration-nativeindexconfiguration + NativeIndexConfiguration *Retriever_NativeIndexConfiguration `json:"NativeIndexConfiguration,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 *Retriever_RetrieverConfiguration) AWSCloudFormationType() string { + return "AWS::QBusiness::Retriever.RetrieverConfiguration" +} diff --git a/cloudformation/qbusiness/aws-qbusiness-webexperience.go b/cloudformation/qbusiness/aws-qbusiness-webexperience.go new file mode 100644 index 0000000000..c30c87420a --- /dev/null +++ b/cloudformation/qbusiness/aws-qbusiness-webexperience.go @@ -0,0 +1,148 @@ +// Code generated by "go generate". Please don't change this file directly. + +package qbusiness + +import ( + "bytes" + "encoding/json" + + "github.com/awslabs/goformation/v7/cloudformation/policies" + "github.com/awslabs/goformation/v7/cloudformation/tags" +) + +// WebExperience AWS CloudFormation Resource (AWS::QBusiness::WebExperience) +// See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-qbusiness-webexperience.html +type WebExperience struct { + + // ApplicationId AWS CloudFormation Property + // Required: true + // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-qbusiness-webexperience.html#cfn-qbusiness-webexperience-applicationid + ApplicationId string `json:"ApplicationId"` + + // RoleArn AWS CloudFormation Property + // Required: false + // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-qbusiness-webexperience.html#cfn-qbusiness-webexperience-rolearn + RoleArn *string `json:"RoleArn,omitempty"` + + // SamplePromptsControlMode AWS CloudFormation Property + // Required: false + // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-qbusiness-webexperience.html#cfn-qbusiness-webexperience-samplepromptscontrolmode + SamplePromptsControlMode *string `json:"SamplePromptsControlMode,omitempty"` + + // Subtitle AWS CloudFormation Property + // Required: false + // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-qbusiness-webexperience.html#cfn-qbusiness-webexperience-subtitle + Subtitle *string `json:"Subtitle,omitempty"` + + // Tags AWS CloudFormation Property + // Required: false + // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-qbusiness-webexperience.html#cfn-qbusiness-webexperience-tags + Tags []tags.Tag `json:"Tags,omitempty"` + + // Title AWS CloudFormation Property + // Required: false + // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-qbusiness-webexperience.html#cfn-qbusiness-webexperience-title + Title *string `json:"Title,omitempty"` + + // WelcomeMessage AWS CloudFormation Property + // Required: false + // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-qbusiness-webexperience.html#cfn-qbusiness-webexperience-welcomemessage + WelcomeMessage *string `json:"WelcomeMessage,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 *WebExperience) AWSCloudFormationType() string { + return "AWS::QBusiness::WebExperience" +} + +// MarshalJSON is a custom JSON marshalling hook that embeds this object into +// an AWS CloudFormation JSON resource's 'Properties' field and adds a 'Type'. +func (r WebExperience) MarshalJSON() ([]byte, error) { + type Properties WebExperience + 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 *WebExperience) UnmarshalJSON(b []byte) error { + type Properties WebExperience + 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 = WebExperience(*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/quicksight/aws-quicksight-analysis_waterfallchartcolorconfiguration.go b/cloudformation/quicksight/aws-quicksight-analysis_waterfallchartcolorconfiguration.go new file mode 100644 index 0000000000..84f971c271 --- /dev/null +++ b/cloudformation/quicksight/aws-quicksight-analysis_waterfallchartcolorconfiguration.go @@ -0,0 +1,37 @@ +// Code generated by "go generate". Please don't change this file directly. + +package quicksight + +import ( + "github.com/awslabs/goformation/v7/cloudformation/policies" +) + +// Analysis_WaterfallChartColorConfiguration AWS CloudFormation Resource (AWS::QuickSight::Analysis.WaterfallChartColorConfiguration) +// See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-quicksight-analysis-waterfallchartcolorconfiguration.html +type Analysis_WaterfallChartColorConfiguration struct { + + // GroupColorConfiguration AWS CloudFormation Property + // Required: false + // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-quicksight-analysis-waterfallchartcolorconfiguration.html#cfn-quicksight-analysis-waterfallchartcolorconfiguration-groupcolorconfiguration + GroupColorConfiguration *Analysis_WaterfallChartGroupColorConfiguration `json:"GroupColorConfiguration,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 *Analysis_WaterfallChartColorConfiguration) AWSCloudFormationType() string { + return "AWS::QuickSight::Analysis.WaterfallChartColorConfiguration" +} diff --git a/cloudformation/quicksight/aws-quicksight-analysis_waterfallchartconfiguration.go b/cloudformation/quicksight/aws-quicksight-analysis_waterfallchartconfiguration.go index 01b40d314e..d06a694b00 100644 --- a/cloudformation/quicksight/aws-quicksight-analysis_waterfallchartconfiguration.go +++ b/cloudformation/quicksight/aws-quicksight-analysis_waterfallchartconfiguration.go @@ -20,6 +20,11 @@ type Analysis_WaterfallChartConfiguration struct { // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-quicksight-analysis-waterfallchartconfiguration.html#cfn-quicksight-analysis-waterfallchartconfiguration-categoryaxislabeloptions CategoryAxisLabelOptions *Analysis_ChartAxisLabelOptions `json:"CategoryAxisLabelOptions,omitempty"` + // ColorConfiguration AWS CloudFormation Property + // Required: false + // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-quicksight-analysis-waterfallchartconfiguration.html#cfn-quicksight-analysis-waterfallchartconfiguration-colorconfiguration + ColorConfiguration *Analysis_WaterfallChartColorConfiguration `json:"ColorConfiguration,omitempty"` + // DataLabels AWS CloudFormation Property // Required: false // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-quicksight-analysis-waterfallchartconfiguration.html#cfn-quicksight-analysis-waterfallchartconfiguration-datalabels diff --git a/cloudformation/quicksight/aws-quicksight-analysis_waterfallchartgroupcolorconfiguration.go b/cloudformation/quicksight/aws-quicksight-analysis_waterfallchartgroupcolorconfiguration.go new file mode 100644 index 0000000000..7539753c88 --- /dev/null +++ b/cloudformation/quicksight/aws-quicksight-analysis_waterfallchartgroupcolorconfiguration.go @@ -0,0 +1,47 @@ +// Code generated by "go generate". Please don't change this file directly. + +package quicksight + +import ( + "github.com/awslabs/goformation/v7/cloudformation/policies" +) + +// Analysis_WaterfallChartGroupColorConfiguration AWS CloudFormation Resource (AWS::QuickSight::Analysis.WaterfallChartGroupColorConfiguration) +// See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-quicksight-analysis-waterfallchartgroupcolorconfiguration.html +type Analysis_WaterfallChartGroupColorConfiguration struct { + + // NegativeBarColor AWS CloudFormation Property + // Required: false + // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-quicksight-analysis-waterfallchartgroupcolorconfiguration.html#cfn-quicksight-analysis-waterfallchartgroupcolorconfiguration-negativebarcolor + NegativeBarColor *string `json:"NegativeBarColor,omitempty"` + + // PositiveBarColor AWS CloudFormation Property + // Required: false + // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-quicksight-analysis-waterfallchartgroupcolorconfiguration.html#cfn-quicksight-analysis-waterfallchartgroupcolorconfiguration-positivebarcolor + PositiveBarColor *string `json:"PositiveBarColor,omitempty"` + + // TotalBarColor AWS CloudFormation Property + // Required: false + // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-quicksight-analysis-waterfallchartgroupcolorconfiguration.html#cfn-quicksight-analysis-waterfallchartgroupcolorconfiguration-totalbarcolor + TotalBarColor *string `json:"TotalBarColor,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 *Analysis_WaterfallChartGroupColorConfiguration) AWSCloudFormationType() string { + return "AWS::QuickSight::Analysis.WaterfallChartGroupColorConfiguration" +} diff --git a/cloudformation/quicksight/aws-quicksight-dashboard_waterfallchartcolorconfiguration.go b/cloudformation/quicksight/aws-quicksight-dashboard_waterfallchartcolorconfiguration.go new file mode 100644 index 0000000000..f5d0e1e2aa --- /dev/null +++ b/cloudformation/quicksight/aws-quicksight-dashboard_waterfallchartcolorconfiguration.go @@ -0,0 +1,37 @@ +// Code generated by "go generate". Please don't change this file directly. + +package quicksight + +import ( + "github.com/awslabs/goformation/v7/cloudformation/policies" +) + +// Dashboard_WaterfallChartColorConfiguration AWS CloudFormation Resource (AWS::QuickSight::Dashboard.WaterfallChartColorConfiguration) +// See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-quicksight-dashboard-waterfallchartcolorconfiguration.html +type Dashboard_WaterfallChartColorConfiguration struct { + + // GroupColorConfiguration AWS CloudFormation Property + // Required: false + // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-quicksight-dashboard-waterfallchartcolorconfiguration.html#cfn-quicksight-dashboard-waterfallchartcolorconfiguration-groupcolorconfiguration + GroupColorConfiguration *Dashboard_WaterfallChartGroupColorConfiguration `json:"GroupColorConfiguration,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 *Dashboard_WaterfallChartColorConfiguration) AWSCloudFormationType() string { + return "AWS::QuickSight::Dashboard.WaterfallChartColorConfiguration" +} diff --git a/cloudformation/quicksight/aws-quicksight-dashboard_waterfallchartconfiguration.go b/cloudformation/quicksight/aws-quicksight-dashboard_waterfallchartconfiguration.go index 1055f9d97b..60ba049455 100644 --- a/cloudformation/quicksight/aws-quicksight-dashboard_waterfallchartconfiguration.go +++ b/cloudformation/quicksight/aws-quicksight-dashboard_waterfallchartconfiguration.go @@ -20,6 +20,11 @@ type Dashboard_WaterfallChartConfiguration struct { // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-quicksight-dashboard-waterfallchartconfiguration.html#cfn-quicksight-dashboard-waterfallchartconfiguration-categoryaxislabeloptions CategoryAxisLabelOptions *Dashboard_ChartAxisLabelOptions `json:"CategoryAxisLabelOptions,omitempty"` + // ColorConfiguration AWS CloudFormation Property + // Required: false + // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-quicksight-dashboard-waterfallchartconfiguration.html#cfn-quicksight-dashboard-waterfallchartconfiguration-colorconfiguration + ColorConfiguration *Dashboard_WaterfallChartColorConfiguration `json:"ColorConfiguration,omitempty"` + // DataLabels AWS CloudFormation Property // Required: false // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-quicksight-dashboard-waterfallchartconfiguration.html#cfn-quicksight-dashboard-waterfallchartconfiguration-datalabels diff --git a/cloudformation/quicksight/aws-quicksight-dashboard_waterfallchartgroupcolorconfiguration.go b/cloudformation/quicksight/aws-quicksight-dashboard_waterfallchartgroupcolorconfiguration.go new file mode 100644 index 0000000000..70f37f14c9 --- /dev/null +++ b/cloudformation/quicksight/aws-quicksight-dashboard_waterfallchartgroupcolorconfiguration.go @@ -0,0 +1,47 @@ +// Code generated by "go generate". Please don't change this file directly. + +package quicksight + +import ( + "github.com/awslabs/goformation/v7/cloudformation/policies" +) + +// Dashboard_WaterfallChartGroupColorConfiguration AWS CloudFormation Resource (AWS::QuickSight::Dashboard.WaterfallChartGroupColorConfiguration) +// See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-quicksight-dashboard-waterfallchartgroupcolorconfiguration.html +type Dashboard_WaterfallChartGroupColorConfiguration struct { + + // NegativeBarColor AWS CloudFormation Property + // Required: false + // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-quicksight-dashboard-waterfallchartgroupcolorconfiguration.html#cfn-quicksight-dashboard-waterfallchartgroupcolorconfiguration-negativebarcolor + NegativeBarColor *string `json:"NegativeBarColor,omitempty"` + + // PositiveBarColor AWS CloudFormation Property + // Required: false + // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-quicksight-dashboard-waterfallchartgroupcolorconfiguration.html#cfn-quicksight-dashboard-waterfallchartgroupcolorconfiguration-positivebarcolor + PositiveBarColor *string `json:"PositiveBarColor,omitempty"` + + // TotalBarColor AWS CloudFormation Property + // Required: false + // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-quicksight-dashboard-waterfallchartgroupcolorconfiguration.html#cfn-quicksight-dashboard-waterfallchartgroupcolorconfiguration-totalbarcolor + TotalBarColor *string `json:"TotalBarColor,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 *Dashboard_WaterfallChartGroupColorConfiguration) AWSCloudFormationType() string { + return "AWS::QuickSight::Dashboard.WaterfallChartGroupColorConfiguration" +} diff --git a/cloudformation/quicksight/aws-quicksight-dataset_datasetrefreshproperties.go b/cloudformation/quicksight/aws-quicksight-dataset_datasetrefreshproperties.go index 5a33752dae..f51131a59b 100644 --- a/cloudformation/quicksight/aws-quicksight-dataset_datasetrefreshproperties.go +++ b/cloudformation/quicksight/aws-quicksight-dataset_datasetrefreshproperties.go @@ -11,9 +11,9 @@ import ( type DataSet_DataSetRefreshProperties struct { // RefreshConfiguration AWS CloudFormation Property - // Required: false + // Required: true // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-quicksight-dataset-datasetrefreshproperties.html#cfn-quicksight-dataset-datasetrefreshproperties-refreshconfiguration - RefreshConfiguration *DataSet_RefreshConfiguration `json:"RefreshConfiguration,omitempty"` + RefreshConfiguration *DataSet_RefreshConfiguration `json:"RefreshConfiguration"` // AWSCloudFormationDeletionPolicy represents a CloudFormation DeletionPolicy AWSCloudFormationDeletionPolicy policies.DeletionPolicy `json:"-"` diff --git a/cloudformation/quicksight/aws-quicksight-dataset_incrementalrefresh.go b/cloudformation/quicksight/aws-quicksight-dataset_incrementalrefresh.go index e5c6f49e5f..acc16f8ef7 100644 --- a/cloudformation/quicksight/aws-quicksight-dataset_incrementalrefresh.go +++ b/cloudformation/quicksight/aws-quicksight-dataset_incrementalrefresh.go @@ -11,9 +11,9 @@ import ( type DataSet_IncrementalRefresh struct { // LookbackWindow AWS CloudFormation Property - // Required: false + // Required: true // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-quicksight-dataset-incrementalrefresh.html#cfn-quicksight-dataset-incrementalrefresh-lookbackwindow - LookbackWindow *DataSet_LookbackWindow `json:"LookbackWindow,omitempty"` + LookbackWindow *DataSet_LookbackWindow `json:"LookbackWindow"` // AWSCloudFormationDeletionPolicy represents a CloudFormation DeletionPolicy AWSCloudFormationDeletionPolicy policies.DeletionPolicy `json:"-"` diff --git a/cloudformation/quicksight/aws-quicksight-dataset_lookbackwindow.go b/cloudformation/quicksight/aws-quicksight-dataset_lookbackwindow.go index d038705085..79dc33085f 100644 --- a/cloudformation/quicksight/aws-quicksight-dataset_lookbackwindow.go +++ b/cloudformation/quicksight/aws-quicksight-dataset_lookbackwindow.go @@ -11,19 +11,19 @@ import ( type DataSet_LookbackWindow struct { // ColumnName AWS CloudFormation Property - // Required: false + // Required: true // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-quicksight-dataset-lookbackwindow.html#cfn-quicksight-dataset-lookbackwindow-columnname - ColumnName *string `json:"ColumnName,omitempty"` + ColumnName string `json:"ColumnName"` // Size AWS CloudFormation Property - // Required: false + // Required: true // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-quicksight-dataset-lookbackwindow.html#cfn-quicksight-dataset-lookbackwindow-size - Size *float64 `json:"Size,omitempty"` + Size float64 `json:"Size"` // SizeUnit AWS CloudFormation Property - // Required: false + // Required: true // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-quicksight-dataset-lookbackwindow.html#cfn-quicksight-dataset-lookbackwindow-sizeunit - SizeUnit *string `json:"SizeUnit,omitempty"` + SizeUnit string `json:"SizeUnit"` // AWSCloudFormationDeletionPolicy represents a CloudFormation DeletionPolicy AWSCloudFormationDeletionPolicy policies.DeletionPolicy `json:"-"` diff --git a/cloudformation/quicksight/aws-quicksight-dataset_refreshconfiguration.go b/cloudformation/quicksight/aws-quicksight-dataset_refreshconfiguration.go index 7cf00d6e81..71bfda0195 100644 --- a/cloudformation/quicksight/aws-quicksight-dataset_refreshconfiguration.go +++ b/cloudformation/quicksight/aws-quicksight-dataset_refreshconfiguration.go @@ -11,9 +11,9 @@ import ( type DataSet_RefreshConfiguration struct { // IncrementalRefresh AWS CloudFormation Property - // Required: false + // Required: true // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-quicksight-dataset-refreshconfiguration.html#cfn-quicksight-dataset-refreshconfiguration-incrementalrefresh - IncrementalRefresh *DataSet_IncrementalRefresh `json:"IncrementalRefresh,omitempty"` + IncrementalRefresh *DataSet_IncrementalRefresh `json:"IncrementalRefresh"` // AWSCloudFormationDeletionPolicy represents a CloudFormation DeletionPolicy AWSCloudFormationDeletionPolicy policies.DeletionPolicy `json:"-"` diff --git a/cloudformation/quicksight/aws-quicksight-dataset_transformoperation.go b/cloudformation/quicksight/aws-quicksight-dataset_transformoperation.go index 588d756157..2e55399af8 100644 --- a/cloudformation/quicksight/aws-quicksight-dataset_transformoperation.go +++ b/cloudformation/quicksight/aws-quicksight-dataset_transformoperation.go @@ -45,6 +45,11 @@ type DataSet_TransformOperation struct { // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-quicksight-dataset-transformoperation.html#cfn-quicksight-dataset-transformoperation-tagcolumnoperation TagColumnOperation *DataSet_TagColumnOperation `json:"TagColumnOperation,omitempty"` + // UntagColumnOperation AWS CloudFormation Property + // Required: false + // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-quicksight-dataset-transformoperation.html#cfn-quicksight-dataset-transformoperation-untagcolumnoperation + UntagColumnOperation *DataSet_UntagColumnOperation `json:"UntagColumnOperation,omitempty"` + // AWSCloudFormationDeletionPolicy represents a CloudFormation DeletionPolicy AWSCloudFormationDeletionPolicy policies.DeletionPolicy `json:"-"` diff --git a/cloudformation/quicksight/aws-quicksight-dataset_untagcolumnoperation.go b/cloudformation/quicksight/aws-quicksight-dataset_untagcolumnoperation.go new file mode 100644 index 0000000000..52507a03a3 --- /dev/null +++ b/cloudformation/quicksight/aws-quicksight-dataset_untagcolumnoperation.go @@ -0,0 +1,42 @@ +// Code generated by "go generate". Please don't change this file directly. + +package quicksight + +import ( + "github.com/awslabs/goformation/v7/cloudformation/policies" +) + +// DataSet_UntagColumnOperation AWS CloudFormation Resource (AWS::QuickSight::DataSet.UntagColumnOperation) +// See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-quicksight-dataset-untagcolumnoperation.html +type DataSet_UntagColumnOperation struct { + + // ColumnName AWS CloudFormation Property + // Required: true + // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-quicksight-dataset-untagcolumnoperation.html#cfn-quicksight-dataset-untagcolumnoperation-columnname + ColumnName string `json:"ColumnName"` + + // TagNames AWS CloudFormation Property + // Required: true + // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-quicksight-dataset-untagcolumnoperation.html#cfn-quicksight-dataset-untagcolumnoperation-tagnames + TagNames []string `json:"TagNames"` + + // 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 *DataSet_UntagColumnOperation) AWSCloudFormationType() string { + return "AWS::QuickSight::DataSet.UntagColumnOperation" +} diff --git a/cloudformation/quicksight/aws-quicksight-datasource.go b/cloudformation/quicksight/aws-quicksight-datasource.go index e1b1dbfbe3..336e614697 100644 --- a/cloudformation/quicksight/aws-quicksight-datasource.go +++ b/cloudformation/quicksight/aws-quicksight-datasource.go @@ -45,9 +45,9 @@ type DataSource struct { ErrorInfo *DataSource_DataSourceErrorInfo `json:"ErrorInfo,omitempty"` // Name AWS CloudFormation Property - // Required: false + // Required: true // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-quicksight-datasource.html#cfn-quicksight-datasource-name - Name *string `json:"Name,omitempty"` + Name string `json:"Name"` // Permissions AWS CloudFormation Property // Required: false @@ -65,9 +65,9 @@ type DataSource struct { Tags []tags.Tag `json:"Tags,omitempty"` // Type AWS CloudFormation Property - // Required: false + // Required: true // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-quicksight-datasource.html#cfn-quicksight-datasource-type - Type *string `json:"Type,omitempty"` + Type string `json:"Type"` // VpcConnectionProperties AWS CloudFormation Property // Required: false diff --git a/cloudformation/quicksight/aws-quicksight-datasource_identitycenterconfiguration.go b/cloudformation/quicksight/aws-quicksight-datasource_identitycenterconfiguration.go new file mode 100644 index 0000000000..b9fd1e1f9f --- /dev/null +++ b/cloudformation/quicksight/aws-quicksight-datasource_identitycenterconfiguration.go @@ -0,0 +1,37 @@ +// Code generated by "go generate". Please don't change this file directly. + +package quicksight + +import ( + "github.com/awslabs/goformation/v7/cloudformation/policies" +) + +// DataSource_IdentityCenterConfiguration AWS CloudFormation Resource (AWS::QuickSight::DataSource.IdentityCenterConfiguration) +// See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-quicksight-datasource-identitycenterconfiguration.html +type DataSource_IdentityCenterConfiguration struct { + + // EnableIdentityPropagation AWS CloudFormation Property + // Required: false + // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-quicksight-datasource-identitycenterconfiguration.html#cfn-quicksight-datasource-identitycenterconfiguration-enableidentitypropagation + EnableIdentityPropagation *bool `json:"EnableIdentityPropagation,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 *DataSource_IdentityCenterConfiguration) AWSCloudFormationType() string { + return "AWS::QuickSight::DataSource.IdentityCenterConfiguration" +} diff --git a/cloudformation/quicksight/aws-quicksight-datasource_redshiftiamparameters.go b/cloudformation/quicksight/aws-quicksight-datasource_redshiftiamparameters.go new file mode 100644 index 0000000000..8f4793a1d1 --- /dev/null +++ b/cloudformation/quicksight/aws-quicksight-datasource_redshiftiamparameters.go @@ -0,0 +1,52 @@ +// Code generated by "go generate". Please don't change this file directly. + +package quicksight + +import ( + "github.com/awslabs/goformation/v7/cloudformation/policies" +) + +// DataSource_RedshiftIAMParameters AWS CloudFormation Resource (AWS::QuickSight::DataSource.RedshiftIAMParameters) +// See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-quicksight-datasource-redshiftiamparameters.html +type DataSource_RedshiftIAMParameters struct { + + // AutoCreateDatabaseUser AWS CloudFormation Property + // Required: false + // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-quicksight-datasource-redshiftiamparameters.html#cfn-quicksight-datasource-redshiftiamparameters-autocreatedatabaseuser + AutoCreateDatabaseUser *bool `json:"AutoCreateDatabaseUser,omitempty"` + + // DatabaseGroups AWS CloudFormation Property + // Required: false + // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-quicksight-datasource-redshiftiamparameters.html#cfn-quicksight-datasource-redshiftiamparameters-databasegroups + DatabaseGroups []string `json:"DatabaseGroups,omitempty"` + + // DatabaseUser AWS CloudFormation Property + // Required: false + // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-quicksight-datasource-redshiftiamparameters.html#cfn-quicksight-datasource-redshiftiamparameters-databaseuser + DatabaseUser *string `json:"DatabaseUser,omitempty"` + + // RoleArn AWS CloudFormation Property + // Required: true + // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-quicksight-datasource-redshiftiamparameters.html#cfn-quicksight-datasource-redshiftiamparameters-rolearn + RoleArn string `json:"RoleArn"` + + // 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 *DataSource_RedshiftIAMParameters) AWSCloudFormationType() string { + return "AWS::QuickSight::DataSource.RedshiftIAMParameters" +} diff --git a/cloudformation/quicksight/aws-quicksight-datasource_redshiftparameters.go b/cloudformation/quicksight/aws-quicksight-datasource_redshiftparameters.go index 15ebd6b0d5..f860d5d5b3 100644 --- a/cloudformation/quicksight/aws-quicksight-datasource_redshiftparameters.go +++ b/cloudformation/quicksight/aws-quicksight-datasource_redshiftparameters.go @@ -25,6 +25,16 @@ type DataSource_RedshiftParameters struct { // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-quicksight-datasource-redshiftparameters.html#cfn-quicksight-datasource-redshiftparameters-host Host *string `json:"Host,omitempty"` + // IAMParameters AWS CloudFormation Property + // Required: false + // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-quicksight-datasource-redshiftparameters.html#cfn-quicksight-datasource-redshiftparameters-iamparameters + IAMParameters *DataSource_RedshiftIAMParameters `json:"IAMParameters,omitempty"` + + // IdentityCenterConfiguration AWS CloudFormation Property + // Required: false + // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-quicksight-datasource-redshiftparameters.html#cfn-quicksight-datasource-redshiftparameters-identitycenterconfiguration + IdentityCenterConfiguration *DataSource_IdentityCenterConfiguration `json:"IdentityCenterConfiguration,omitempty"` + // Port AWS CloudFormation Property // Required: false // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-quicksight-datasource-redshiftparameters.html#cfn-quicksight-datasource-redshiftparameters-port diff --git a/cloudformation/quicksight/aws-quicksight-datasource_resourcepermission.go b/cloudformation/quicksight/aws-quicksight-datasource_resourcepermission.go index b4af5f116b..5b09278dd8 100644 --- a/cloudformation/quicksight/aws-quicksight-datasource_resourcepermission.go +++ b/cloudformation/quicksight/aws-quicksight-datasource_resourcepermission.go @@ -20,6 +20,11 @@ type DataSource_ResourcePermission struct { // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-quicksight-datasource-resourcepermission.html#cfn-quicksight-datasource-resourcepermission-principal Principal string `json:"Principal"` + // Resource AWS CloudFormation Property + // Required: false + // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-quicksight-datasource-resourcepermission.html#cfn-quicksight-datasource-resourcepermission-resource + Resource *string `json:"Resource,omitempty"` + // AWSCloudFormationDeletionPolicy represents a CloudFormation DeletionPolicy AWSCloudFormationDeletionPolicy policies.DeletionPolicy `json:"-"` diff --git a/cloudformation/quicksight/aws-quicksight-template_waterfallchartcolorconfiguration.go b/cloudformation/quicksight/aws-quicksight-template_waterfallchartcolorconfiguration.go new file mode 100644 index 0000000000..39d68064af --- /dev/null +++ b/cloudformation/quicksight/aws-quicksight-template_waterfallchartcolorconfiguration.go @@ -0,0 +1,37 @@ +// Code generated by "go generate". Please don't change this file directly. + +package quicksight + +import ( + "github.com/awslabs/goformation/v7/cloudformation/policies" +) + +// Template_WaterfallChartColorConfiguration AWS CloudFormation Resource (AWS::QuickSight::Template.WaterfallChartColorConfiguration) +// See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-quicksight-template-waterfallchartcolorconfiguration.html +type Template_WaterfallChartColorConfiguration struct { + + // GroupColorConfiguration AWS CloudFormation Property + // Required: false + // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-quicksight-template-waterfallchartcolorconfiguration.html#cfn-quicksight-template-waterfallchartcolorconfiguration-groupcolorconfiguration + GroupColorConfiguration *Template_WaterfallChartGroupColorConfiguration `json:"GroupColorConfiguration,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 *Template_WaterfallChartColorConfiguration) AWSCloudFormationType() string { + return "AWS::QuickSight::Template.WaterfallChartColorConfiguration" +} diff --git a/cloudformation/quicksight/aws-quicksight-template_waterfallchartconfiguration.go b/cloudformation/quicksight/aws-quicksight-template_waterfallchartconfiguration.go index 1b60bace49..7a18a4500a 100644 --- a/cloudformation/quicksight/aws-quicksight-template_waterfallchartconfiguration.go +++ b/cloudformation/quicksight/aws-quicksight-template_waterfallchartconfiguration.go @@ -20,6 +20,11 @@ type Template_WaterfallChartConfiguration struct { // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-quicksight-template-waterfallchartconfiguration.html#cfn-quicksight-template-waterfallchartconfiguration-categoryaxislabeloptions CategoryAxisLabelOptions *Template_ChartAxisLabelOptions `json:"CategoryAxisLabelOptions,omitempty"` + // ColorConfiguration AWS CloudFormation Property + // Required: false + // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-quicksight-template-waterfallchartconfiguration.html#cfn-quicksight-template-waterfallchartconfiguration-colorconfiguration + ColorConfiguration *Template_WaterfallChartColorConfiguration `json:"ColorConfiguration,omitempty"` + // DataLabels AWS CloudFormation Property // Required: false // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-quicksight-template-waterfallchartconfiguration.html#cfn-quicksight-template-waterfallchartconfiguration-datalabels diff --git a/cloudformation/quicksight/aws-quicksight-template_waterfallchartgroupcolorconfiguration.go b/cloudformation/quicksight/aws-quicksight-template_waterfallchartgroupcolorconfiguration.go new file mode 100644 index 0000000000..6d2b886d5b --- /dev/null +++ b/cloudformation/quicksight/aws-quicksight-template_waterfallchartgroupcolorconfiguration.go @@ -0,0 +1,47 @@ +// Code generated by "go generate". Please don't change this file directly. + +package quicksight + +import ( + "github.com/awslabs/goformation/v7/cloudformation/policies" +) + +// Template_WaterfallChartGroupColorConfiguration AWS CloudFormation Resource (AWS::QuickSight::Template.WaterfallChartGroupColorConfiguration) +// See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-quicksight-template-waterfallchartgroupcolorconfiguration.html +type Template_WaterfallChartGroupColorConfiguration struct { + + // NegativeBarColor AWS CloudFormation Property + // Required: false + // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-quicksight-template-waterfallchartgroupcolorconfiguration.html#cfn-quicksight-template-waterfallchartgroupcolorconfiguration-negativebarcolor + NegativeBarColor *string `json:"NegativeBarColor,omitempty"` + + // PositiveBarColor AWS CloudFormation Property + // Required: false + // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-quicksight-template-waterfallchartgroupcolorconfiguration.html#cfn-quicksight-template-waterfallchartgroupcolorconfiguration-positivebarcolor + PositiveBarColor *string `json:"PositiveBarColor,omitempty"` + + // TotalBarColor AWS CloudFormation Property + // Required: false + // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-quicksight-template-waterfallchartgroupcolorconfiguration.html#cfn-quicksight-template-waterfallchartgroupcolorconfiguration-totalbarcolor + TotalBarColor *string `json:"TotalBarColor,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 *Template_WaterfallChartGroupColorConfiguration) AWSCloudFormationType() string { + return "AWS::QuickSight::Template.WaterfallChartGroupColorConfiguration" +} diff --git a/cloudformation/quicksight/aws-quicksight-topic_topiccalculatedfield.go b/cloudformation/quicksight/aws-quicksight-topic_topiccalculatedfield.go index bc6607aa25..8928890b8f 100644 --- a/cloudformation/quicksight/aws-quicksight-topic_topiccalculatedfield.go +++ b/cloudformation/quicksight/aws-quicksight-topic_topiccalculatedfield.go @@ -55,6 +55,11 @@ type Topic_TopicCalculatedField struct { // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-quicksight-topic-topiccalculatedfield.html#cfn-quicksight-topic-topiccalculatedfield-defaultformatting DefaultFormatting *Topic_DefaultFormatting `json:"DefaultFormatting,omitempty"` + // DisableIndexing AWS CloudFormation Property + // Required: false + // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-quicksight-topic-topiccalculatedfield.html#cfn-quicksight-topic-topiccalculatedfield-disableindexing + DisableIndexing *bool `json:"DisableIndexing,omitempty"` + // Expression AWS CloudFormation Property // Required: true // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-quicksight-topic-topiccalculatedfield.html#cfn-quicksight-topic-topiccalculatedfield-expression diff --git a/cloudformation/quicksight/aws-quicksight-topic_topiccolumn.go b/cloudformation/quicksight/aws-quicksight-topic_topiccolumn.go index bbd6d50ac1..cecbbbda20 100644 --- a/cloudformation/quicksight/aws-quicksight-topic_topiccolumn.go +++ b/cloudformation/quicksight/aws-quicksight-topic_topiccolumn.go @@ -60,6 +60,11 @@ type Topic_TopicColumn struct { // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-quicksight-topic-topiccolumn.html#cfn-quicksight-topic-topiccolumn-defaultformatting DefaultFormatting *Topic_DefaultFormatting `json:"DefaultFormatting,omitempty"` + // DisableIndexing AWS CloudFormation Property + // Required: false + // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-quicksight-topic-topiccolumn.html#cfn-quicksight-topic-topiccolumn-disableindexing + DisableIndexing *bool `json:"DisableIndexing,omitempty"` + // IsIncludedInTopic AWS CloudFormation Property // Required: false // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-quicksight-topic-topiccolumn.html#cfn-quicksight-topic-topiccolumn-isincludedintopic diff --git a/cloudformation/rolesanywhere/aws-rolesanywhere-profile.go b/cloudformation/rolesanywhere/aws-rolesanywhere-profile.go index 84f234a1ec..425a1930e6 100644 --- a/cloudformation/rolesanywhere/aws-rolesanywhere-profile.go +++ b/cloudformation/rolesanywhere/aws-rolesanywhere-profile.go @@ -14,6 +14,11 @@ import ( // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-rolesanywhere-profile.html type Profile struct { + // AttributeMappings AWS CloudFormation Property + // Required: false + // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-rolesanywhere-profile.html#cfn-rolesanywhere-profile-attributemappings + AttributeMappings []Profile_AttributeMapping `json:"AttributeMappings,omitempty"` + // DurationSeconds AWS CloudFormation Property // Required: false // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-rolesanywhere-profile.html#cfn-rolesanywhere-profile-durationseconds diff --git a/cloudformation/rolesanywhere/aws-rolesanywhere-profile_attributemapping.go b/cloudformation/rolesanywhere/aws-rolesanywhere-profile_attributemapping.go new file mode 100644 index 0000000000..e305196f8e --- /dev/null +++ b/cloudformation/rolesanywhere/aws-rolesanywhere-profile_attributemapping.go @@ -0,0 +1,42 @@ +// Code generated by "go generate". Please don't change this file directly. + +package rolesanywhere + +import ( + "github.com/awslabs/goformation/v7/cloudformation/policies" +) + +// Profile_AttributeMapping AWS CloudFormation Resource (AWS::RolesAnywhere::Profile.AttributeMapping) +// See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-rolesanywhere-profile-attributemapping.html +type Profile_AttributeMapping struct { + + // CertificateField AWS CloudFormation Property + // Required: true + // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-rolesanywhere-profile-attributemapping.html#cfn-rolesanywhere-profile-attributemapping-certificatefield + CertificateField string `json:"CertificateField"` + + // MappingRules AWS CloudFormation Property + // Required: true + // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-rolesanywhere-profile-attributemapping.html#cfn-rolesanywhere-profile-attributemapping-mappingrules + MappingRules []Profile_MappingRule `json:"MappingRules"` + + // 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 *Profile_AttributeMapping) AWSCloudFormationType() string { + return "AWS::RolesAnywhere::Profile.AttributeMapping" +} diff --git a/cloudformation/rolesanywhere/aws-rolesanywhere-profile_mappingrule.go b/cloudformation/rolesanywhere/aws-rolesanywhere-profile_mappingrule.go new file mode 100644 index 0000000000..9336df4fd6 --- /dev/null +++ b/cloudformation/rolesanywhere/aws-rolesanywhere-profile_mappingrule.go @@ -0,0 +1,37 @@ +// Code generated by "go generate". Please don't change this file directly. + +package rolesanywhere + +import ( + "github.com/awslabs/goformation/v7/cloudformation/policies" +) + +// Profile_MappingRule AWS CloudFormation Resource (AWS::RolesAnywhere::Profile.MappingRule) +// See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-rolesanywhere-profile-mappingrule.html +type Profile_MappingRule struct { + + // Specifier AWS CloudFormation Property + // Required: true + // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-rolesanywhere-profile-mappingrule.html#cfn-rolesanywhere-profile-mappingrule-specifier + Specifier string `json:"Specifier"` + + // 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 *Profile_MappingRule) AWSCloudFormationType() string { + return "AWS::RolesAnywhere::Profile.MappingRule" +} diff --git a/cloudformation/route53resolver/aws-route53resolver-firewallrulegroup_firewallrule.go b/cloudformation/route53resolver/aws-route53resolver-firewallrulegroup_firewallrule.go index 82c80a42c0..cc561270a4 100644 --- a/cloudformation/route53resolver/aws-route53resolver-firewallrulegroup_firewallrule.go +++ b/cloudformation/route53resolver/aws-route53resolver-firewallrulegroup_firewallrule.go @@ -40,6 +40,11 @@ type FirewallRuleGroup_FirewallRule struct { // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-route53resolver-firewallrulegroup-firewallrule.html#cfn-route53resolver-firewallrulegroup-firewallrule-firewalldomainlistid FirewallDomainListId string `json:"FirewallDomainListId"` + // FirewallDomainRedirectionAction AWS CloudFormation Property + // Required: false + // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-route53resolver-firewallrulegroup-firewallrule.html#cfn-route53resolver-firewallrulegroup-firewallrule-firewalldomainredirectionaction + FirewallDomainRedirectionAction *string `json:"FirewallDomainRedirectionAction,omitempty"` + // Priority AWS CloudFormation Property // Required: true // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-route53resolver-firewallrulegroup-firewallrule.html#cfn-route53resolver-firewallrulegroup-firewallrule-priority diff --git a/cloudformation/sagemaker/aws-sagemaker-domain_defaultspacesettings.go b/cloudformation/sagemaker/aws-sagemaker-domain_defaultspacesettings.go index 65a339075e..ff448ab03d 100644 --- a/cloudformation/sagemaker/aws-sagemaker-domain_defaultspacesettings.go +++ b/cloudformation/sagemaker/aws-sagemaker-domain_defaultspacesettings.go @@ -10,11 +10,26 @@ import ( // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-sagemaker-domain-defaultspacesettings.html type Domain_DefaultSpaceSettings struct { + // CustomFileSystemConfigs AWS CloudFormation Property + // Required: false + // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-sagemaker-domain-defaultspacesettings.html#cfn-sagemaker-domain-defaultspacesettings-customfilesystemconfigs + CustomFileSystemConfigs []Domain_CustomFileSystemConfig `json:"CustomFileSystemConfigs,omitempty"` + + // CustomPosixUserConfig AWS CloudFormation Property + // Required: false + // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-sagemaker-domain-defaultspacesettings.html#cfn-sagemaker-domain-defaultspacesettings-customposixuserconfig + CustomPosixUserConfig *Domain_CustomPosixUserConfig `json:"CustomPosixUserConfig,omitempty"` + // ExecutionRole AWS CloudFormation Property // Required: true // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-sagemaker-domain-defaultspacesettings.html#cfn-sagemaker-domain-defaultspacesettings-executionrole ExecutionRole string `json:"ExecutionRole"` + // JupyterLabAppSettings AWS CloudFormation Property + // Required: false + // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-sagemaker-domain-defaultspacesettings.html#cfn-sagemaker-domain-defaultspacesettings-jupyterlabappsettings + JupyterLabAppSettings *Domain_JupyterLabAppSettings `json:"JupyterLabAppSettings,omitempty"` + // JupyterServerAppSettings AWS CloudFormation Property // Required: false // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-sagemaker-domain-defaultspacesettings.html#cfn-sagemaker-domain-defaultspacesettings-jupyterserverappsettings @@ -30,6 +45,11 @@ type Domain_DefaultSpaceSettings struct { // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-sagemaker-domain-defaultspacesettings.html#cfn-sagemaker-domain-defaultspacesettings-securitygroups SecurityGroups []string `json:"SecurityGroups,omitempty"` + // SpaceStorageSettings AWS CloudFormation Property + // Required: false + // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-sagemaker-domain-defaultspacesettings.html#cfn-sagemaker-domain-defaultspacesettings-spacestoragesettings + SpaceStorageSettings *Domain_DefaultSpaceStorageSettings `json:"SpaceStorageSettings,omitempty"` + // AWSCloudFormationDeletionPolicy represents a CloudFormation DeletionPolicy AWSCloudFormationDeletionPolicy policies.DeletionPolicy `json:"-"` diff --git a/cloudformation/securityhub/aws-securityhub-configurationpolicy.go b/cloudformation/securityhub/aws-securityhub-configurationpolicy.go new file mode 100644 index 0000000000..855ea8e76a --- /dev/null +++ b/cloudformation/securityhub/aws-securityhub-configurationpolicy.go @@ -0,0 +1,132 @@ +// Code generated by "go generate". Please don't change this file directly. + +package securityhub + +import ( + "bytes" + "encoding/json" + + "github.com/awslabs/goformation/v7/cloudformation/policies" +) + +// ConfigurationPolicy AWS CloudFormation Resource (AWS::SecurityHub::ConfigurationPolicy) +// See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-securityhub-configurationpolicy.html +type ConfigurationPolicy struct { + + // ConfigurationPolicy AWS CloudFormation Property + // Required: true + // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-securityhub-configurationpolicy.html#cfn-securityhub-configurationpolicy-configurationpolicy + ConfigurationPolicy *ConfigurationPolicy_Policy `json:"ConfigurationPolicy"` + + // Description AWS CloudFormation Property + // Required: false + // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-securityhub-configurationpolicy.html#cfn-securityhub-configurationpolicy-description + Description *string `json:"Description,omitempty"` + + // Name AWS CloudFormation Property + // Required: true + // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-securityhub-configurationpolicy.html#cfn-securityhub-configurationpolicy-name + Name string `json:"Name"` + + // Tags AWS CloudFormation Property + // Required: false + // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-securityhub-configurationpolicy.html#cfn-securityhub-configurationpolicy-tags + Tags map[string]string `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 *ConfigurationPolicy) AWSCloudFormationType() string { + return "AWS::SecurityHub::ConfigurationPolicy" +} + +// MarshalJSON is a custom JSON marshalling hook that embeds this object into +// an AWS CloudFormation JSON resource's 'Properties' field and adds a 'Type'. +func (r ConfigurationPolicy) MarshalJSON() ([]byte, error) { + type Properties ConfigurationPolicy + 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 *ConfigurationPolicy) UnmarshalJSON(b []byte) error { + type Properties ConfigurationPolicy + 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 = ConfigurationPolicy(*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/securityhub/aws-securityhub-configurationpolicy_parameterconfiguration.go b/cloudformation/securityhub/aws-securityhub-configurationpolicy_parameterconfiguration.go new file mode 100644 index 0000000000..f3092347bd --- /dev/null +++ b/cloudformation/securityhub/aws-securityhub-configurationpolicy_parameterconfiguration.go @@ -0,0 +1,42 @@ +// Code generated by "go generate". Please don't change this file directly. + +package securityhub + +import ( + "github.com/awslabs/goformation/v7/cloudformation/policies" +) + +// ConfigurationPolicy_ParameterConfiguration AWS CloudFormation Resource (AWS::SecurityHub::ConfigurationPolicy.ParameterConfiguration) +// See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-securityhub-configurationpolicy-parameterconfiguration.html +type ConfigurationPolicy_ParameterConfiguration struct { + + // Value AWS CloudFormation Property + // Required: false + // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-securityhub-configurationpolicy-parameterconfiguration.html#cfn-securityhub-configurationpolicy-parameterconfiguration-value + Value *ConfigurationPolicy_ParameterValue `json:"Value,omitempty"` + + // ValueType AWS CloudFormation Property + // Required: true + // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-securityhub-configurationpolicy-parameterconfiguration.html#cfn-securityhub-configurationpolicy-parameterconfiguration-valuetype + ValueType string `json:"ValueType"` + + // 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 *ConfigurationPolicy_ParameterConfiguration) AWSCloudFormationType() string { + return "AWS::SecurityHub::ConfigurationPolicy.ParameterConfiguration" +} diff --git a/cloudformation/securityhub/aws-securityhub-configurationpolicy_parametervalue.go b/cloudformation/securityhub/aws-securityhub-configurationpolicy_parametervalue.go new file mode 100644 index 0000000000..c5d7fd8bdc --- /dev/null +++ b/cloudformation/securityhub/aws-securityhub-configurationpolicy_parametervalue.go @@ -0,0 +1,72 @@ +// Code generated by "go generate". Please don't change this file directly. + +package securityhub + +import ( + "github.com/awslabs/goformation/v7/cloudformation/policies" +) + +// ConfigurationPolicy_ParameterValue AWS CloudFormation Resource (AWS::SecurityHub::ConfigurationPolicy.ParameterValue) +// See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-securityhub-configurationpolicy-parametervalue.html +type ConfigurationPolicy_ParameterValue struct { + + // Boolean AWS CloudFormation Property + // Required: false + // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-securityhub-configurationpolicy-parametervalue.html#cfn-securityhub-configurationpolicy-parametervalue-boolean + Boolean *bool `json:"Boolean,omitempty"` + + // Double AWS CloudFormation Property + // Required: false + // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-securityhub-configurationpolicy-parametervalue.html#cfn-securityhub-configurationpolicy-parametervalue-double + Double *float64 `json:"Double,omitempty"` + + // Enum AWS CloudFormation Property + // Required: false + // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-securityhub-configurationpolicy-parametervalue.html#cfn-securityhub-configurationpolicy-parametervalue-enum + Enum *string `json:"Enum,omitempty"` + + // EnumList AWS CloudFormation Property + // Required: false + // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-securityhub-configurationpolicy-parametervalue.html#cfn-securityhub-configurationpolicy-parametervalue-enumlist + EnumList []string `json:"EnumList,omitempty"` + + // Integer AWS CloudFormation Property + // Required: false + // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-securityhub-configurationpolicy-parametervalue.html#cfn-securityhub-configurationpolicy-parametervalue-integer + Integer *int `json:"Integer,omitempty"` + + // IntegerList AWS CloudFormation Property + // Required: false + // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-securityhub-configurationpolicy-parametervalue.html#cfn-securityhub-configurationpolicy-parametervalue-integerlist + IntegerList []int `json:"IntegerList,omitempty"` + + // String AWS CloudFormation Property + // Required: false + // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-securityhub-configurationpolicy-parametervalue.html#cfn-securityhub-configurationpolicy-parametervalue-string + String *string `json:"String,omitempty"` + + // StringList AWS CloudFormation Property + // Required: false + // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-securityhub-configurationpolicy-parametervalue.html#cfn-securityhub-configurationpolicy-parametervalue-stringlist + StringList []string `json:"StringList,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 *ConfigurationPolicy_ParameterValue) AWSCloudFormationType() string { + return "AWS::SecurityHub::ConfigurationPolicy.ParameterValue" +} diff --git a/cloudformation/securityhub/aws-securityhub-configurationpolicy_policy.go b/cloudformation/securityhub/aws-securityhub-configurationpolicy_policy.go new file mode 100644 index 0000000000..ba413582df --- /dev/null +++ b/cloudformation/securityhub/aws-securityhub-configurationpolicy_policy.go @@ -0,0 +1,37 @@ +// Code generated by "go generate". Please don't change this file directly. + +package securityhub + +import ( + "github.com/awslabs/goformation/v7/cloudformation/policies" +) + +// ConfigurationPolicy_Policy AWS CloudFormation Resource (AWS::SecurityHub::ConfigurationPolicy.Policy) +// See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-securityhub-configurationpolicy-policy.html +type ConfigurationPolicy_Policy struct { + + // SecurityHub AWS CloudFormation Property + // Required: false + // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-securityhub-configurationpolicy-policy.html#cfn-securityhub-configurationpolicy-policy-securityhub + SecurityHub *ConfigurationPolicy_SecurityHubPolicy `json:"SecurityHub,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 *ConfigurationPolicy_Policy) AWSCloudFormationType() string { + return "AWS::SecurityHub::ConfigurationPolicy.Policy" +} diff --git a/cloudformation/securityhub/aws-securityhub-configurationpolicy_securitycontrolcustomparameter.go b/cloudformation/securityhub/aws-securityhub-configurationpolicy_securitycontrolcustomparameter.go new file mode 100644 index 0000000000..4e019083e1 --- /dev/null +++ b/cloudformation/securityhub/aws-securityhub-configurationpolicy_securitycontrolcustomparameter.go @@ -0,0 +1,42 @@ +// Code generated by "go generate". Please don't change this file directly. + +package securityhub + +import ( + "github.com/awslabs/goformation/v7/cloudformation/policies" +) + +// ConfigurationPolicy_SecurityControlCustomParameter AWS CloudFormation Resource (AWS::SecurityHub::ConfigurationPolicy.SecurityControlCustomParameter) +// See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-securityhub-configurationpolicy-securitycontrolcustomparameter.html +type ConfigurationPolicy_SecurityControlCustomParameter struct { + + // Parameters AWS CloudFormation Property + // Required: false + // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-securityhub-configurationpolicy-securitycontrolcustomparameter.html#cfn-securityhub-configurationpolicy-securitycontrolcustomparameter-parameters + Parameters map[string]ConfigurationPolicy_ParameterConfiguration `json:"Parameters,omitempty"` + + // SecurityControlId AWS CloudFormation Property + // Required: false + // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-securityhub-configurationpolicy-securitycontrolcustomparameter.html#cfn-securityhub-configurationpolicy-securitycontrolcustomparameter-securitycontrolid + SecurityControlId *string `json:"SecurityControlId,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 *ConfigurationPolicy_SecurityControlCustomParameter) AWSCloudFormationType() string { + return "AWS::SecurityHub::ConfigurationPolicy.SecurityControlCustomParameter" +} diff --git a/cloudformation/securityhub/aws-securityhub-configurationpolicy_securitycontrolsconfiguration.go b/cloudformation/securityhub/aws-securityhub-configurationpolicy_securitycontrolsconfiguration.go new file mode 100644 index 0000000000..afe45bd8b7 --- /dev/null +++ b/cloudformation/securityhub/aws-securityhub-configurationpolicy_securitycontrolsconfiguration.go @@ -0,0 +1,47 @@ +// Code generated by "go generate". Please don't change this file directly. + +package securityhub + +import ( + "github.com/awslabs/goformation/v7/cloudformation/policies" +) + +// ConfigurationPolicy_SecurityControlsConfiguration AWS CloudFormation Resource (AWS::SecurityHub::ConfigurationPolicy.SecurityControlsConfiguration) +// See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-securityhub-configurationpolicy-securitycontrolsconfiguration.html +type ConfigurationPolicy_SecurityControlsConfiguration struct { + + // DisabledSecurityControlIdentifiers AWS CloudFormation Property + // Required: false + // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-securityhub-configurationpolicy-securitycontrolsconfiguration.html#cfn-securityhub-configurationpolicy-securitycontrolsconfiguration-disabledsecuritycontrolidentifiers + DisabledSecurityControlIdentifiers []string `json:"DisabledSecurityControlIdentifiers,omitempty"` + + // EnabledSecurityControlIdentifiers AWS CloudFormation Property + // Required: false + // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-securityhub-configurationpolicy-securitycontrolsconfiguration.html#cfn-securityhub-configurationpolicy-securitycontrolsconfiguration-enabledsecuritycontrolidentifiers + EnabledSecurityControlIdentifiers []string `json:"EnabledSecurityControlIdentifiers,omitempty"` + + // SecurityControlCustomParameters AWS CloudFormation Property + // Required: false + // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-securityhub-configurationpolicy-securitycontrolsconfiguration.html#cfn-securityhub-configurationpolicy-securitycontrolsconfiguration-securitycontrolcustomparameters + SecurityControlCustomParameters []ConfigurationPolicy_SecurityControlCustomParameter `json:"SecurityControlCustomParameters,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 *ConfigurationPolicy_SecurityControlsConfiguration) AWSCloudFormationType() string { + return "AWS::SecurityHub::ConfigurationPolicy.SecurityControlsConfiguration" +} diff --git a/cloudformation/securityhub/aws-securityhub-configurationpolicy_securityhubpolicy.go b/cloudformation/securityhub/aws-securityhub-configurationpolicy_securityhubpolicy.go new file mode 100644 index 0000000000..cc961f0566 --- /dev/null +++ b/cloudformation/securityhub/aws-securityhub-configurationpolicy_securityhubpolicy.go @@ -0,0 +1,47 @@ +// Code generated by "go generate". Please don't change this file directly. + +package securityhub + +import ( + "github.com/awslabs/goformation/v7/cloudformation/policies" +) + +// ConfigurationPolicy_SecurityHubPolicy AWS CloudFormation Resource (AWS::SecurityHub::ConfigurationPolicy.SecurityHubPolicy) +// See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-securityhub-configurationpolicy-securityhubpolicy.html +type ConfigurationPolicy_SecurityHubPolicy struct { + + // EnabledStandardIdentifiers AWS CloudFormation Property + // Required: false + // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-securityhub-configurationpolicy-securityhubpolicy.html#cfn-securityhub-configurationpolicy-securityhubpolicy-enabledstandardidentifiers + EnabledStandardIdentifiers []string `json:"EnabledStandardIdentifiers,omitempty"` + + // SecurityControlsConfiguration AWS CloudFormation Property + // Required: false + // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-securityhub-configurationpolicy-securityhubpolicy.html#cfn-securityhub-configurationpolicy-securityhubpolicy-securitycontrolsconfiguration + SecurityControlsConfiguration *ConfigurationPolicy_SecurityControlsConfiguration `json:"SecurityControlsConfiguration,omitempty"` + + // ServiceEnabled AWS CloudFormation Property + // Required: false + // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-securityhub-configurationpolicy-securityhubpolicy.html#cfn-securityhub-configurationpolicy-securityhubpolicy-serviceenabled + ServiceEnabled *bool `json:"ServiceEnabled,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 *ConfigurationPolicy_SecurityHubPolicy) AWSCloudFormationType() string { + return "AWS::SecurityHub::ConfigurationPolicy.SecurityHubPolicy" +} diff --git a/cloudformation/securityhub/aws-securityhub-findingaggregator.go b/cloudformation/securityhub/aws-securityhub-findingaggregator.go new file mode 100644 index 0000000000..e7e2e9d8a0 --- /dev/null +++ b/cloudformation/securityhub/aws-securityhub-findingaggregator.go @@ -0,0 +1,122 @@ +// Code generated by "go generate". Please don't change this file directly. + +package securityhub + +import ( + "bytes" + "encoding/json" + + "github.com/awslabs/goformation/v7/cloudformation/policies" +) + +// FindingAggregator AWS CloudFormation Resource (AWS::SecurityHub::FindingAggregator) +// See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-securityhub-findingaggregator.html +type FindingAggregator struct { + + // RegionLinkingMode AWS CloudFormation Property + // Required: true + // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-securityhub-findingaggregator.html#cfn-securityhub-findingaggregator-regionlinkingmode + RegionLinkingMode string `json:"RegionLinkingMode"` + + // Regions AWS CloudFormation Property + // Required: false + // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-securityhub-findingaggregator.html#cfn-securityhub-findingaggregator-regions + Regions []string `json:"Regions,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 *FindingAggregator) AWSCloudFormationType() string { + return "AWS::SecurityHub::FindingAggregator" +} + +// MarshalJSON is a custom JSON marshalling hook that embeds this object into +// an AWS CloudFormation JSON resource's 'Properties' field and adds a 'Type'. +func (r FindingAggregator) MarshalJSON() ([]byte, error) { + type Properties FindingAggregator + 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 *FindingAggregator) UnmarshalJSON(b []byte) error { + type Properties FindingAggregator + 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 = FindingAggregator(*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/securityhub/aws-securityhub-organizationconfiguration.go b/cloudformation/securityhub/aws-securityhub-organizationconfiguration.go new file mode 100644 index 0000000000..959a5c08b5 --- /dev/null +++ b/cloudformation/securityhub/aws-securityhub-organizationconfiguration.go @@ -0,0 +1,127 @@ +// Code generated by "go generate". Please don't change this file directly. + +package securityhub + +import ( + "bytes" + "encoding/json" + + "github.com/awslabs/goformation/v7/cloudformation/policies" +) + +// OrganizationConfiguration AWS CloudFormation Resource (AWS::SecurityHub::OrganizationConfiguration) +// See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-securityhub-organizationconfiguration.html +type OrganizationConfiguration struct { + + // AutoEnable AWS CloudFormation Property + // Required: true + // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-securityhub-organizationconfiguration.html#cfn-securityhub-organizationconfiguration-autoenable + AutoEnable bool `json:"AutoEnable"` + + // AutoEnableStandards AWS CloudFormation Property + // Required: false + // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-securityhub-organizationconfiguration.html#cfn-securityhub-organizationconfiguration-autoenablestandards + AutoEnableStandards *string `json:"AutoEnableStandards,omitempty"` + + // ConfigurationType AWS CloudFormation Property + // Required: false + // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-securityhub-organizationconfiguration.html#cfn-securityhub-organizationconfiguration-configurationtype + ConfigurationType *string `json:"ConfigurationType,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 *OrganizationConfiguration) AWSCloudFormationType() string { + return "AWS::SecurityHub::OrganizationConfiguration" +} + +// MarshalJSON is a custom JSON marshalling hook that embeds this object into +// an AWS CloudFormation JSON resource's 'Properties' field and adds a 'Type'. +func (r OrganizationConfiguration) MarshalJSON() ([]byte, error) { + type Properties OrganizationConfiguration + 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 *OrganizationConfiguration) UnmarshalJSON(b []byte) error { + type Properties OrganizationConfiguration + 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 = OrganizationConfiguration(*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/securityhub/aws-securityhub-policyassociation.go b/cloudformation/securityhub/aws-securityhub-policyassociation.go new file mode 100644 index 0000000000..a22386a1e7 --- /dev/null +++ b/cloudformation/securityhub/aws-securityhub-policyassociation.go @@ -0,0 +1,127 @@ +// Code generated by "go generate". Please don't change this file directly. + +package securityhub + +import ( + "bytes" + "encoding/json" + + "github.com/awslabs/goformation/v7/cloudformation/policies" +) + +// PolicyAssociation AWS CloudFormation Resource (AWS::SecurityHub::PolicyAssociation) +// See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-securityhub-policyassociation.html +type PolicyAssociation struct { + + // ConfigurationPolicyId AWS CloudFormation Property + // Required: true + // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-securityhub-policyassociation.html#cfn-securityhub-policyassociation-configurationpolicyid + ConfigurationPolicyId string `json:"ConfigurationPolicyId"` + + // TargetId AWS CloudFormation Property + // Required: true + // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-securityhub-policyassociation.html#cfn-securityhub-policyassociation-targetid + TargetId string `json:"TargetId"` + + // TargetType AWS CloudFormation Property + // Required: true + // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-securityhub-policyassociation.html#cfn-securityhub-policyassociation-targettype + TargetType string `json:"TargetType"` + + // 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 *PolicyAssociation) AWSCloudFormationType() string { + return "AWS::SecurityHub::PolicyAssociation" +} + +// MarshalJSON is a custom JSON marshalling hook that embeds this object into +// an AWS CloudFormation JSON resource's 'Properties' field and adds a 'Type'. +func (r PolicyAssociation) MarshalJSON() ([]byte, error) { + type Properties PolicyAssociation + 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 *PolicyAssociation) UnmarshalJSON(b []byte) error { + type Properties PolicyAssociation + 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 = PolicyAssociation(*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/securityhub/aws-securityhub-securitycontrol.go b/cloudformation/securityhub/aws-securityhub-securitycontrol.go new file mode 100644 index 0000000000..2b6d58be91 --- /dev/null +++ b/cloudformation/securityhub/aws-securityhub-securitycontrol.go @@ -0,0 +1,132 @@ +// Code generated by "go generate". Please don't change this file directly. + +package securityhub + +import ( + "bytes" + "encoding/json" + + "github.com/awslabs/goformation/v7/cloudformation/policies" +) + +// SecurityControl AWS CloudFormation Resource (AWS::SecurityHub::SecurityControl) +// See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-securityhub-securitycontrol.html +type SecurityControl struct { + + // LastUpdateReason AWS CloudFormation Property + // Required: false + // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-securityhub-securitycontrol.html#cfn-securityhub-securitycontrol-lastupdatereason + LastUpdateReason *string `json:"LastUpdateReason,omitempty"` + + // Parameters AWS CloudFormation Property + // Required: true + // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-securityhub-securitycontrol.html#cfn-securityhub-securitycontrol-parameters + Parameters map[string]SecurityControl_ParameterConfiguration `json:"Parameters"` + + // SecurityControlArn AWS CloudFormation Property + // Required: false + // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-securityhub-securitycontrol.html#cfn-securityhub-securitycontrol-securitycontrolarn + SecurityControlArn *string `json:"SecurityControlArn,omitempty"` + + // SecurityControlId AWS CloudFormation Property + // Required: false + // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-securityhub-securitycontrol.html#cfn-securityhub-securitycontrol-securitycontrolid + SecurityControlId *string `json:"SecurityControlId,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 *SecurityControl) AWSCloudFormationType() string { + return "AWS::SecurityHub::SecurityControl" +} + +// MarshalJSON is a custom JSON marshalling hook that embeds this object into +// an AWS CloudFormation JSON resource's 'Properties' field and adds a 'Type'. +func (r SecurityControl) MarshalJSON() ([]byte, error) { + type Properties SecurityControl + 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 *SecurityControl) UnmarshalJSON(b []byte) error { + type Properties SecurityControl + 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 = SecurityControl(*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/securityhub/aws-securityhub-securitycontrol_parameterconfiguration.go b/cloudformation/securityhub/aws-securityhub-securitycontrol_parameterconfiguration.go new file mode 100644 index 0000000000..2eb778c864 --- /dev/null +++ b/cloudformation/securityhub/aws-securityhub-securitycontrol_parameterconfiguration.go @@ -0,0 +1,42 @@ +// Code generated by "go generate". Please don't change this file directly. + +package securityhub + +import ( + "github.com/awslabs/goformation/v7/cloudformation/policies" +) + +// SecurityControl_ParameterConfiguration AWS CloudFormation Resource (AWS::SecurityHub::SecurityControl.ParameterConfiguration) +// See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-securityhub-securitycontrol-parameterconfiguration.html +type SecurityControl_ParameterConfiguration struct { + + // Value AWS CloudFormation Property + // Required: false + // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-securityhub-securitycontrol-parameterconfiguration.html#cfn-securityhub-securitycontrol-parameterconfiguration-value + Value *SecurityControl_ParameterValue `json:"Value,omitempty"` + + // ValueType AWS CloudFormation Property + // Required: true + // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-securityhub-securitycontrol-parameterconfiguration.html#cfn-securityhub-securitycontrol-parameterconfiguration-valuetype + ValueType string `json:"ValueType"` + + // 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 *SecurityControl_ParameterConfiguration) AWSCloudFormationType() string { + return "AWS::SecurityHub::SecurityControl.ParameterConfiguration" +} diff --git a/cloudformation/securityhub/aws-securityhub-securitycontrol_parametervalue.go b/cloudformation/securityhub/aws-securityhub-securitycontrol_parametervalue.go new file mode 100644 index 0000000000..d862a91328 --- /dev/null +++ b/cloudformation/securityhub/aws-securityhub-securitycontrol_parametervalue.go @@ -0,0 +1,72 @@ +// Code generated by "go generate". Please don't change this file directly. + +package securityhub + +import ( + "github.com/awslabs/goformation/v7/cloudformation/policies" +) + +// SecurityControl_ParameterValue AWS CloudFormation Resource (AWS::SecurityHub::SecurityControl.ParameterValue) +// See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-securityhub-securitycontrol-parametervalue.html +type SecurityControl_ParameterValue struct { + + // Boolean AWS CloudFormation Property + // Required: false + // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-securityhub-securitycontrol-parametervalue.html#cfn-securityhub-securitycontrol-parametervalue-boolean + Boolean *bool `json:"Boolean,omitempty"` + + // Double AWS CloudFormation Property + // Required: false + // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-securityhub-securitycontrol-parametervalue.html#cfn-securityhub-securitycontrol-parametervalue-double + Double *float64 `json:"Double,omitempty"` + + // Enum AWS CloudFormation Property + // Required: false + // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-securityhub-securitycontrol-parametervalue.html#cfn-securityhub-securitycontrol-parametervalue-enum + Enum *string `json:"Enum,omitempty"` + + // EnumList AWS CloudFormation Property + // Required: false + // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-securityhub-securitycontrol-parametervalue.html#cfn-securityhub-securitycontrol-parametervalue-enumlist + EnumList []string `json:"EnumList,omitempty"` + + // Integer AWS CloudFormation Property + // Required: false + // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-securityhub-securitycontrol-parametervalue.html#cfn-securityhub-securitycontrol-parametervalue-integer + Integer *int `json:"Integer,omitempty"` + + // IntegerList AWS CloudFormation Property + // Required: false + // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-securityhub-securitycontrol-parametervalue.html#cfn-securityhub-securitycontrol-parametervalue-integerlist + IntegerList []int `json:"IntegerList,omitempty"` + + // String AWS CloudFormation Property + // Required: false + // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-securityhub-securitycontrol-parametervalue.html#cfn-securityhub-securitycontrol-parametervalue-string + String *string `json:"String,omitempty"` + + // StringList AWS CloudFormation Property + // Required: false + // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-securityhub-securitycontrol-parametervalue.html#cfn-securityhub-securitycontrol-parametervalue-stringlist + StringList []string `json:"StringList,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 *SecurityControl_ParameterValue) AWSCloudFormationType() string { + return "AWS::SecurityHub::SecurityControl.ParameterValue" +} diff --git a/cloudformation/securitylake/aws-securitylake-subscribernotification.go b/cloudformation/securitylake/aws-securitylake-subscribernotification.go new file mode 100644 index 0000000000..774ee89a70 --- /dev/null +++ b/cloudformation/securitylake/aws-securitylake-subscribernotification.go @@ -0,0 +1,122 @@ +// Code generated by "go generate". Please don't change this file directly. + +package securitylake + +import ( + "bytes" + "encoding/json" + + "github.com/awslabs/goformation/v7/cloudformation/policies" +) + +// SubscriberNotification AWS CloudFormation Resource (AWS::SecurityLake::SubscriberNotification) +// See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-securitylake-subscribernotification.html +type SubscriberNotification struct { + + // NotificationConfiguration AWS CloudFormation Property + // Required: true + // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-securitylake-subscribernotification.html#cfn-securitylake-subscribernotification-notificationconfiguration + NotificationConfiguration *SubscriberNotification_NotificationConfiguration `json:"NotificationConfiguration"` + + // SubscriberArn AWS CloudFormation Property + // Required: true + // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-securitylake-subscribernotification.html#cfn-securitylake-subscribernotification-subscriberarn + SubscriberArn string `json:"SubscriberArn"` + + // 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 *SubscriberNotification) AWSCloudFormationType() string { + return "AWS::SecurityLake::SubscriberNotification" +} + +// MarshalJSON is a custom JSON marshalling hook that embeds this object into +// an AWS CloudFormation JSON resource's 'Properties' field and adds a 'Type'. +func (r SubscriberNotification) MarshalJSON() ([]byte, error) { + type Properties SubscriberNotification + 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 *SubscriberNotification) UnmarshalJSON(b []byte) error { + type Properties SubscriberNotification + 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 = SubscriberNotification(*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/securitylake/aws-securitylake-subscribernotification_httpsnotificationconfiguration.go b/cloudformation/securitylake/aws-securitylake-subscribernotification_httpsnotificationconfiguration.go new file mode 100644 index 0000000000..73f6fc2806 --- /dev/null +++ b/cloudformation/securitylake/aws-securitylake-subscribernotification_httpsnotificationconfiguration.go @@ -0,0 +1,57 @@ +// Code generated by "go generate". Please don't change this file directly. + +package securitylake + +import ( + "github.com/awslabs/goformation/v7/cloudformation/policies" +) + +// SubscriberNotification_HttpsNotificationConfiguration AWS CloudFormation Resource (AWS::SecurityLake::SubscriberNotification.HttpsNotificationConfiguration) +// See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-securitylake-subscribernotification-httpsnotificationconfiguration.html +type SubscriberNotification_HttpsNotificationConfiguration struct { + + // AuthorizationApiKeyName AWS CloudFormation Property + // Required: false + // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-securitylake-subscribernotification-httpsnotificationconfiguration.html#cfn-securitylake-subscribernotification-httpsnotificationconfiguration-authorizationapikeyname + AuthorizationApiKeyName *string `json:"AuthorizationApiKeyName,omitempty"` + + // AuthorizationApiKeyValue AWS CloudFormation Property + // Required: false + // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-securitylake-subscribernotification-httpsnotificationconfiguration.html#cfn-securitylake-subscribernotification-httpsnotificationconfiguration-authorizationapikeyvalue + AuthorizationApiKeyValue *string `json:"AuthorizationApiKeyValue,omitempty"` + + // Endpoint AWS CloudFormation Property + // Required: true + // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-securitylake-subscribernotification-httpsnotificationconfiguration.html#cfn-securitylake-subscribernotification-httpsnotificationconfiguration-endpoint + Endpoint string `json:"Endpoint"` + + // HttpMethod AWS CloudFormation Property + // Required: false + // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-securitylake-subscribernotification-httpsnotificationconfiguration.html#cfn-securitylake-subscribernotification-httpsnotificationconfiguration-httpmethod + HttpMethod *string `json:"HttpMethod,omitempty"` + + // TargetRoleArn AWS CloudFormation Property + // Required: true + // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-securitylake-subscribernotification-httpsnotificationconfiguration.html#cfn-securitylake-subscribernotification-httpsnotificationconfiguration-targetrolearn + TargetRoleArn string `json:"TargetRoleArn"` + + // 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 *SubscriberNotification_HttpsNotificationConfiguration) AWSCloudFormationType() string { + return "AWS::SecurityLake::SubscriberNotification.HttpsNotificationConfiguration" +} diff --git a/cloudformation/securitylake/aws-securitylake-subscribernotification_notificationconfiguration.go b/cloudformation/securitylake/aws-securitylake-subscribernotification_notificationconfiguration.go new file mode 100644 index 0000000000..7d9ef4b2f9 --- /dev/null +++ b/cloudformation/securitylake/aws-securitylake-subscribernotification_notificationconfiguration.go @@ -0,0 +1,42 @@ +// Code generated by "go generate". Please don't change this file directly. + +package securitylake + +import ( + "github.com/awslabs/goformation/v7/cloudformation/policies" +) + +// SubscriberNotification_NotificationConfiguration AWS CloudFormation Resource (AWS::SecurityLake::SubscriberNotification.NotificationConfiguration) +// See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-securitylake-subscribernotification-notificationconfiguration.html +type SubscriberNotification_NotificationConfiguration struct { + + // HttpsNotificationConfiguration AWS CloudFormation Property + // Required: false + // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-securitylake-subscribernotification-notificationconfiguration.html#cfn-securitylake-subscribernotification-notificationconfiguration-httpsnotificationconfiguration + HttpsNotificationConfiguration *SubscriberNotification_HttpsNotificationConfiguration `json:"HttpsNotificationConfiguration,omitempty"` + + // SqsNotificationConfiguration AWS CloudFormation Property + // Required: false + // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-securitylake-subscribernotification-notificationconfiguration.html#cfn-securitylake-subscribernotification-notificationconfiguration-sqsnotificationconfiguration + SqsNotificationConfiguration interface{} `json:"SqsNotificationConfiguration,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 *SubscriberNotification_NotificationConfiguration) AWSCloudFormationType() string { + return "AWS::SecurityLake::SubscriberNotification.NotificationConfiguration" +} diff --git a/cloudformation/sso/aws-sso-application.go b/cloudformation/sso/aws-sso-application.go new file mode 100644 index 0000000000..8dce2f6b72 --- /dev/null +++ b/cloudformation/sso/aws-sso-application.go @@ -0,0 +1,148 @@ +// Code generated by "go generate". Please don't change this file directly. + +package sso + +import ( + "bytes" + "encoding/json" + + "github.com/awslabs/goformation/v7/cloudformation/policies" + "github.com/awslabs/goformation/v7/cloudformation/tags" +) + +// Application AWS CloudFormation Resource (AWS::SSO::Application) +// See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-sso-application.html +type Application struct { + + // ApplicationProviderArn AWS CloudFormation Property + // Required: true + // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-sso-application.html#cfn-sso-application-applicationproviderarn + ApplicationProviderArn string `json:"ApplicationProviderArn"` + + // Description AWS CloudFormation Property + // Required: false + // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-sso-application.html#cfn-sso-application-description + Description *string `json:"Description,omitempty"` + + // InstanceArn AWS CloudFormation Property + // Required: true + // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-sso-application.html#cfn-sso-application-instancearn + InstanceArn string `json:"InstanceArn"` + + // Name AWS CloudFormation Property + // Required: true + // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-sso-application.html#cfn-sso-application-name + Name string `json:"Name"` + + // PortalOptions AWS CloudFormation Property + // Required: false + // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-sso-application.html#cfn-sso-application-portaloptions + PortalOptions *Application_PortalOptionsConfiguration `json:"PortalOptions,omitempty"` + + // Status AWS CloudFormation Property + // Required: false + // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-sso-application.html#cfn-sso-application-status + Status *string `json:"Status,omitempty"` + + // Tags AWS CloudFormation Property + // Required: false + // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-sso-application.html#cfn-sso-application-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 *Application) AWSCloudFormationType() string { + return "AWS::SSO::Application" +} + +// MarshalJSON is a custom JSON marshalling hook that embeds this object into +// an AWS CloudFormation JSON resource's 'Properties' field and adds a 'Type'. +func (r Application) MarshalJSON() ([]byte, error) { + type Properties Application + 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 *Application) UnmarshalJSON(b []byte) error { + type Properties Application + 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 = Application(*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/sso/aws-sso-application_portaloptionsconfiguration.go b/cloudformation/sso/aws-sso-application_portaloptionsconfiguration.go new file mode 100644 index 0000000000..b1f8c24abc --- /dev/null +++ b/cloudformation/sso/aws-sso-application_portaloptionsconfiguration.go @@ -0,0 +1,42 @@ +// Code generated by "go generate". Please don't change this file directly. + +package sso + +import ( + "github.com/awslabs/goformation/v7/cloudformation/policies" +) + +// Application_PortalOptionsConfiguration AWS CloudFormation Resource (AWS::SSO::Application.PortalOptionsConfiguration) +// See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-sso-application-portaloptionsconfiguration.html +type Application_PortalOptionsConfiguration struct { + + // SignInOptions AWS CloudFormation Property + // Required: false + // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-sso-application-portaloptionsconfiguration.html#cfn-sso-application-portaloptionsconfiguration-signinoptions + SignInOptions *Application_SignInOptions `json:"SignInOptions,omitempty"` + + // Visibility AWS CloudFormation Property + // Required: false + // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-sso-application-portaloptionsconfiguration.html#cfn-sso-application-portaloptionsconfiguration-visibility + Visibility *string `json:"Visibility,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 *Application_PortalOptionsConfiguration) AWSCloudFormationType() string { + return "AWS::SSO::Application.PortalOptionsConfiguration" +} diff --git a/cloudformation/sso/aws-sso-application_signinoptions.go b/cloudformation/sso/aws-sso-application_signinoptions.go new file mode 100644 index 0000000000..349dc03fd8 --- /dev/null +++ b/cloudformation/sso/aws-sso-application_signinoptions.go @@ -0,0 +1,42 @@ +// Code generated by "go generate". Please don't change this file directly. + +package sso + +import ( + "github.com/awslabs/goformation/v7/cloudformation/policies" +) + +// Application_SignInOptions AWS CloudFormation Resource (AWS::SSO::Application.SignInOptions) +// See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-sso-application-signinoptions.html +type Application_SignInOptions struct { + + // ApplicationUrl AWS CloudFormation Property + // Required: false + // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-sso-application-signinoptions.html#cfn-sso-application-signinoptions-applicationurl + ApplicationUrl *string `json:"ApplicationUrl,omitempty"` + + // Origin AWS CloudFormation Property + // Required: true + // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-sso-application-signinoptions.html#cfn-sso-application-signinoptions-origin + Origin string `json:"Origin"` + + // 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 *Application_SignInOptions) AWSCloudFormationType() string { + return "AWS::SSO::Application.SignInOptions" +} diff --git a/cloudformation/sso/aws-sso-applicationassignment.go b/cloudformation/sso/aws-sso-applicationassignment.go new file mode 100644 index 0000000000..77c6b5f26c --- /dev/null +++ b/cloudformation/sso/aws-sso-applicationassignment.go @@ -0,0 +1,127 @@ +// Code generated by "go generate". Please don't change this file directly. + +package sso + +import ( + "bytes" + "encoding/json" + + "github.com/awslabs/goformation/v7/cloudformation/policies" +) + +// ApplicationAssignment AWS CloudFormation Resource (AWS::SSO::ApplicationAssignment) +// See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-sso-applicationassignment.html +type ApplicationAssignment struct { + + // ApplicationArn AWS CloudFormation Property + // Required: true + // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-sso-applicationassignment.html#cfn-sso-applicationassignment-applicationarn + ApplicationArn string `json:"ApplicationArn"` + + // PrincipalId AWS CloudFormation Property + // Required: true + // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-sso-applicationassignment.html#cfn-sso-applicationassignment-principalid + PrincipalId string `json:"PrincipalId"` + + // PrincipalType AWS CloudFormation Property + // Required: true + // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-sso-applicationassignment.html#cfn-sso-applicationassignment-principaltype + PrincipalType string `json:"PrincipalType"` + + // 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 *ApplicationAssignment) AWSCloudFormationType() string { + return "AWS::SSO::ApplicationAssignment" +} + +// MarshalJSON is a custom JSON marshalling hook that embeds this object into +// an AWS CloudFormation JSON resource's 'Properties' field and adds a 'Type'. +func (r ApplicationAssignment) MarshalJSON() ([]byte, error) { + type Properties ApplicationAssignment + 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 *ApplicationAssignment) UnmarshalJSON(b []byte) error { + type Properties ApplicationAssignment + 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 = ApplicationAssignment(*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/sso/aws-sso-instance.go b/cloudformation/sso/aws-sso-instance.go new file mode 100644 index 0000000000..264d4fb7e0 --- /dev/null +++ b/cloudformation/sso/aws-sso-instance.go @@ -0,0 +1,123 @@ +// Code generated by "go generate". Please don't change this file directly. + +package sso + +import ( + "bytes" + "encoding/json" + + "github.com/awslabs/goformation/v7/cloudformation/policies" + "github.com/awslabs/goformation/v7/cloudformation/tags" +) + +// Instance AWS CloudFormation Resource (AWS::SSO::Instance) +// See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-sso-instance.html +type Instance struct { + + // Name AWS CloudFormation Property + // Required: false + // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-sso-instance.html#cfn-sso-instance-name + Name *string `json:"Name,omitempty"` + + // Tags AWS CloudFormation Property + // Required: false + // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-sso-instance.html#cfn-sso-instance-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 *Instance) AWSCloudFormationType() string { + return "AWS::SSO::Instance" +} + +// MarshalJSON is a custom JSON marshalling hook that embeds this object into +// an AWS CloudFormation JSON resource's 'Properties' field and adds a 'Type'. +func (r Instance) MarshalJSON() ([]byte, error) { + type Properties Instance + 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 *Instance) UnmarshalJSON(b []byte) error { + type Properties Instance + 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 = Instance(*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/transfer/aws-transfer-connector.go b/cloudformation/transfer/aws-transfer-connector.go index 9a6268bbc4..e9cbe031a9 100644 --- a/cloudformation/transfer/aws-transfer-connector.go +++ b/cloudformation/transfer/aws-transfer-connector.go @@ -29,6 +29,11 @@ type Connector struct { // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-transfer-connector.html#cfn-transfer-connector-loggingrole LoggingRole *string `json:"LoggingRole,omitempty"` + // SecurityPolicyName AWS CloudFormation Property + // Required: false + // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-transfer-connector.html#cfn-transfer-connector-securitypolicyname + SecurityPolicyName *string `json:"SecurityPolicyName,omitempty"` + // SftpConfig AWS CloudFormation Property // Required: false // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-transfer-connector.html#cfn-transfer-connector-sftpconfig diff --git a/cloudformation/transfer/aws-transfer-workflow_decryptstepdetails.go b/cloudformation/transfer/aws-transfer-workflow_decryptstepdetails.go index 559dfcc1cb..b391021aac 100644 --- a/cloudformation/transfer/aws-transfer-workflow_decryptstepdetails.go +++ b/cloudformation/transfer/aws-transfer-workflow_decryptstepdetails.go @@ -11,9 +11,9 @@ import ( type Workflow_DecryptStepDetails struct { // DestinationFileLocation AWS CloudFormation Property - // Required: false + // Required: true // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-transfer-workflow-decryptstepdetails.html#cfn-transfer-workflow-decryptstepdetails-destinationfilelocation - DestinationFileLocation *Workflow_InputFileLocation `json:"DestinationFileLocation,omitempty"` + DestinationFileLocation *Workflow_InputFileLocation `json:"DestinationFileLocation"` // Name AWS CloudFormation Property // Required: false @@ -31,9 +31,9 @@ type Workflow_DecryptStepDetails struct { SourceFileLocation *string `json:"SourceFileLocation,omitempty"` // Type AWS CloudFormation Property - // Required: false + // Required: true // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-transfer-workflow-decryptstepdetails.html#cfn-transfer-workflow-decryptstepdetails-type - Type *string `json:"Type,omitempty"` + Type string `json:"Type"` // AWSCloudFormationDeletionPolicy represents a CloudFormation DeletionPolicy AWSCloudFormationDeletionPolicy policies.DeletionPolicy `json:"-"` diff --git a/schema/cdk.go b/schema/cdk.go index 8fe7da028e..1c39f1bb2c 100644 --- a/schema/cdk.go +++ b/schema/cdk.go @@ -541,6 +541,9 @@ var CdkSchema = `{ "type": "string" } }, + "required": [ + "Enabled" + ], "type": "object" }, "AWS::ACMPCA::CertificateAuthority.CrlDistributionPointExtensionConfiguration": { @@ -597,7 +600,6 @@ var CdkSchema = `{ } }, "required": [ - "NameAssigner", "PartyName" ], "type": "object" @@ -675,6 +677,9 @@ var CdkSchema = `{ "type": "string" } }, + "required": [ + "Enabled" + ], "type": "object" }, "AWS::ACMPCA::CertificateAuthority.OtherName": { @@ -19184,6 +19189,12 @@ var CdkSchema = `{ "MetricName": { "type": "string" }, + "Metrics": { + "items": { + "$ref": "#/definitions/AWS::AutoScaling::ScalingPolicy.TargetTrackingMetricDataQuery" + }, + "type": "array" + }, "Namespace": { "type": "string" }, @@ -19194,11 +19205,6 @@ var CdkSchema = `{ "type": "string" } }, - "required": [ - "MetricName", - "Namespace", - "Statistic" - ], "type": "object" }, "AWS::AutoScaling::ScalingPolicy.Metric": { @@ -19483,6 +19489,49 @@ var CdkSchema = `{ ], "type": "object" }, + "AWS::AutoScaling::ScalingPolicy.TargetTrackingMetricDataQuery": { + "additionalProperties": false, + "properties": { + "Expression": { + "type": "string" + }, + "Id": { + "type": "string" + }, + "Label": { + "type": "string" + }, + "MetricStat": { + "$ref": "#/definitions/AWS::AutoScaling::ScalingPolicy.TargetTrackingMetricStat" + }, + "ReturnData": { + "type": "boolean" + } + }, + "required": [ + "Id" + ], + "type": "object" + }, + "AWS::AutoScaling::ScalingPolicy.TargetTrackingMetricStat": { + "additionalProperties": false, + "properties": { + "Metric": { + "$ref": "#/definitions/AWS::AutoScaling::ScalingPolicy.Metric" + }, + "Stat": { + "type": "string" + }, + "Unit": { + "type": "string" + } + }, + "required": [ + "Metric", + "Stat" + ], + "type": "object" + }, "AWS::AutoScaling::ScheduledAction": { "additionalProperties": false, "properties": { @@ -22618,6 +22667,9 @@ var CdkSchema = `{ "EcsProperties": { "$ref": "#/definitions/AWS::Batch::JobDefinition.EcsProperties" }, + "EksProperties": { + "$ref": "#/definitions/AWS::Batch::JobDefinition.EksProperties" + }, "InstanceTypes": { "items": { "type": "string" @@ -23290,13 +23342,13 @@ var CdkSchema = `{ "AWS::Bedrock::Agent.ActionGroupExecutor": { "additionalProperties": false, "properties": { + "CustomControl": { + "type": "string" + }, "Lambda": { "type": "string" } }, - "required": [ - "Lambda" - ], "type": "object" }, "AWS::Bedrock::Agent.AgentActionGroup": { @@ -23317,6 +23369,9 @@ var CdkSchema = `{ "Description": { "type": "string" }, + "FunctionSchema": { + "$ref": "#/definitions/AWS::Bedrock::Agent.FunctionSchema" + }, "ParentActionGroupSignature": { "type": "string" }, @@ -23348,6 +23403,45 @@ var CdkSchema = `{ ], "type": "object" }, + "AWS::Bedrock::Agent.Function": { + "additionalProperties": false, + "properties": { + "Description": { + "type": "string" + }, + "Name": { + "type": "string" + }, + "Parameters": { + "additionalProperties": false, + "patternProperties": { + "^[a-zA-Z0-9]+$": { + "$ref": "#/definitions/AWS::Bedrock::Agent.ParameterDetail" + } + }, + "type": "object" + } + }, + "required": [ + "Name" + ], + "type": "object" + }, + "AWS::Bedrock::Agent.FunctionSchema": { + "additionalProperties": false, + "properties": { + "Functions": { + "items": { + "$ref": "#/definitions/AWS::Bedrock::Agent.Function" + }, + "type": "array" + } + }, + "required": [ + "Functions" + ], + "type": "object" + }, "AWS::Bedrock::Agent.InferenceConfiguration": { "additionalProperties": false, "properties": { @@ -23372,6 +23466,24 @@ var CdkSchema = `{ }, "type": "object" }, + "AWS::Bedrock::Agent.ParameterDetail": { + "additionalProperties": false, + "properties": { + "Description": { + "type": "string" + }, + "Required": { + "type": "boolean" + }, + "Type": { + "type": "string" + } + }, + "required": [ + "Type" + ], + "type": "object" + }, "AWS::Bedrock::Agent.PromptConfiguration": { "additionalProperties": false, "properties": { @@ -23578,6 +23690,9 @@ var CdkSchema = `{ "Properties": { "additionalProperties": false, "properties": { + "DataDeletionPolicy": { + "type": "string" + }, "DataSourceConfiguration": { "$ref": "#/definitions/AWS::Bedrock::DataSource.DataSourceConfiguration" }, @@ -23678,6 +23793,9 @@ var CdkSchema = `{ "BucketArn": { "type": "string" }, + "BucketOwnerAccountId": { + "type": "string" + }, "InclusionPrefixes": { "items": { "type": "string" @@ -23980,6 +24098,74 @@ var CdkSchema = `{ }, "type": "object" }, + "AWS::Bedrock::GuardrailVersion": { + "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" + }, + "GuardrailIdentifier": { + "type": "string" + } + }, + "required": [ + "GuardrailIdentifier" + ], + "type": "object" + }, + "Type": { + "enum": [ + "AWS::Bedrock::GuardrailVersion" + ], + "type": "string" + }, + "UpdateReplacePolicy": { + "enum": [ + "Delete", + "Retain", + "Snapshot" + ], + "type": "string" + } + }, + "required": [ + "Type", + "Properties" + ], + "type": "object" + }, "AWS::Bedrock::KnowledgeBase": { "additionalProperties": false, "properties": { @@ -24785,6 +24971,12 @@ var CdkSchema = `{ "$ref": "#/definitions/AWS::Budgets::Budget.NotificationWithSubscribers" }, "type": "array" + }, + "ResourceTags": { + "items": { + "$ref": "#/definitions/AWS::Budgets::Budget.ResourceTag" + }, + "type": "array" } }, "required": [ @@ -24958,6 +25150,21 @@ var CdkSchema = `{ ], "type": "object" }, + "AWS::Budgets::Budget.ResourceTag": { + "additionalProperties": false, + "properties": { + "Key": { + "type": "string" + }, + "Value": { + "type": "string" + } + }, + "required": [ + "Key" + ], + "type": "object" + }, "AWS::Budgets::Budget.Spend": { "additionalProperties": false, "properties": { @@ -25058,6 +25265,12 @@ var CdkSchema = `{ "NotificationType": { "type": "string" }, + "ResourceTags": { + "items": { + "$ref": "#/definitions/AWS::Budgets::BudgetsAction.ResourceTag" + }, + "type": "array" + }, "Subscribers": { "items": { "$ref": "#/definitions/AWS::Budgets::BudgetsAction.Subscriber" @@ -25158,6 +25371,22 @@ var CdkSchema = `{ ], "type": "object" }, + "AWS::Budgets::BudgetsAction.ResourceTag": { + "additionalProperties": false, + "properties": { + "Key": { + "type": "string" + }, + "Value": { + "type": "string" + } + }, + "required": [ + "Key", + "Value" + ], + "type": "object" + }, "AWS::Budgets::BudgetsAction.ScpActionDefinition": { "additionalProperties": false, "properties": { @@ -26295,6 +26524,12 @@ var CdkSchema = `{ }, "type": "array" }, + "Tags": { + "items": { + "$ref": "#/definitions/Tag" + }, + "type": "array" + }, "TeamId": { "type": "string" }, @@ -26400,6 +26635,12 @@ var CdkSchema = `{ }, "type": "array" }, + "Tags": { + "items": { + "$ref": "#/definitions/Tag" + }, + "type": "array" + }, "UserRoleRequired": { "type": "boolean" } @@ -33474,9 +33715,18 @@ var CdkSchema = `{ "EnvironmentType": { "type": "string" }, + "FleetServiceRole": { + "type": "string" + }, + "FleetVpcConfig": { + "$ref": "#/definitions/AWS::CodeBuild::Fleet.VpcConfig" + }, "Name": { "type": "string" }, + "OverflowBehavior": { + "type": "string" + }, "Tags": { "items": { "$ref": "#/definitions/Tag" @@ -33506,6 +33756,27 @@ var CdkSchema = `{ ], "type": "object" }, + "AWS::CodeBuild::Fleet.VpcConfig": { + "additionalProperties": false, + "properties": { + "SecurityGroupIds": { + "items": { + "type": "string" + }, + "type": "array" + }, + "Subnets": { + "items": { + "type": "string" + }, + "type": "array" + }, + "VpcId": { + "type": "string" + } + }, + "type": "object" + }, "AWS::CodeBuild::Project": { "additionalProperties": false, "properties": { @@ -35850,6 +36121,18 @@ var CdkSchema = `{ ], "type": "object" }, + "AWS::CodePipeline::Pipeline.FailureConditions": { + "additionalProperties": false, + "properties": { + "Result": { + "type": "string" + } + }, + "required": [ + "Result" + ], + "type": "object" + }, "AWS::CodePipeline::Pipeline.GitBranchFilterCriteria": { "additionalProperties": false, "properties": { @@ -36017,6 +36300,9 @@ var CdkSchema = `{ }, "Name": { "type": "string" + }, + "OnFailure": { + "$ref": "#/definitions/AWS::CodePipeline::Pipeline.FailureConditions" } }, "required": [ @@ -42215,6 +42501,12 @@ var CdkSchema = `{ }, "type": "array" }, + "SubmitAutoEvaluationActions": { + "items": { + "$ref": "#/definitions/AWS::Connect::Rule.SubmitAutoEvaluationAction" + }, + "type": "array" + }, "TaskActions": { "items": { "$ref": "#/definitions/AWS::Connect::Rule.TaskAction" @@ -42374,6 +42666,18 @@ var CdkSchema = `{ ], "type": "object" }, + "AWS::Connect::Rule.SubmitAutoEvaluationAction": { + "additionalProperties": false, + "properties": { + "EvaluationFormArn": { + "type": "string" + } + }, + "required": [ + "EvaluationFormArn" + ], + "type": "object" + }, "AWS::Connect::Rule.TaskAction": { "additionalProperties": false, "properties": { @@ -52024,6 +52328,78 @@ var CdkSchema = `{ }, "type": "object" }, + "AWS::DataZone::GroupProfile": { + "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": { + "DomainIdentifier": { + "type": "string" + }, + "GroupIdentifier": { + "type": "string" + }, + "Status": { + "type": "string" + } + }, + "required": [ + "DomainIdentifier", + "GroupIdentifier" + ], + "type": "object" + }, + "Type": { + "enum": [ + "AWS::DataZone::GroupProfile" + ], + "type": "string" + }, + "UpdateReplacePolicy": { + "enum": [ + "Delete", + "Retain", + "Snapshot" + ], + "type": "string" + } + }, + "required": [ + "Type", + "Properties" + ], + "type": "object" + }, "AWS::DataZone::Project": { "additionalProperties": false, "properties": { @@ -52102,6 +52478,95 @@ var CdkSchema = `{ ], "type": "object" }, + "AWS::DataZone::ProjectMembership": { + "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": { + "Designation": { + "type": "string" + }, + "DomainIdentifier": { + "type": "string" + }, + "Member": { + "$ref": "#/definitions/AWS::DataZone::ProjectMembership.Member" + }, + "ProjectIdentifier": { + "type": "string" + } + }, + "required": [ + "Designation", + "DomainIdentifier", + "Member", + "ProjectIdentifier" + ], + "type": "object" + }, + "Type": { + "enum": [ + "AWS::DataZone::ProjectMembership" + ], + "type": "string" + }, + "UpdateReplacePolicy": { + "enum": [ + "Delete", + "Retain", + "Snapshot" + ], + "type": "string" + } + }, + "required": [ + "Type", + "Properties" + ], + "type": "object" + }, + "AWS::DataZone::ProjectMembership.Member": { + "additionalProperties": false, + "properties": { + "GroupIdentifier": { + "type": "string" + }, + "UserIdentifier": { + "type": "string" + } + }, + "type": "object" + }, "AWS::DataZone::SubscriptionTarget": { "additionalProperties": false, "properties": { @@ -52223,6 +52688,117 @@ var CdkSchema = `{ ], "type": "object" }, + "AWS::DataZone::UserProfile": { + "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": { + "DomainIdentifier": { + "type": "string" + }, + "Status": { + "type": "string" + }, + "UserIdentifier": { + "type": "string" + }, + "UserType": { + "type": "string" + } + }, + "required": [ + "DomainIdentifier", + "UserIdentifier" + ], + "type": "object" + }, + "Type": { + "enum": [ + "AWS::DataZone::UserProfile" + ], + "type": "string" + }, + "UpdateReplacePolicy": { + "enum": [ + "Delete", + "Retain", + "Snapshot" + ], + "type": "string" + } + }, + "required": [ + "Type", + "Properties" + ], + "type": "object" + }, + "AWS::DataZone::UserProfile.IamUserProfileDetails": { + "additionalProperties": false, + "properties": { + "Arn": { + "type": "string" + } + }, + "type": "object" + }, + "AWS::DataZone::UserProfile.SsoUserProfileDetails": { + "additionalProperties": false, + "properties": { + "FirstName": { + "type": "string" + }, + "LastName": { + "type": "string" + }, + "Username": { + "type": "string" + } + }, + "type": "object" + }, + "AWS::DataZone::UserProfile.UserProfileDetails": { + "additionalProperties": false, + "properties": { + "Iam": { + "$ref": "#/definitions/AWS::DataZone::UserProfile.IamUserProfileDetails" + }, + "Sso": { + "$ref": "#/definitions/AWS::DataZone::UserProfile.SsoUserProfileDetails" + } + }, + "type": "object" + }, "AWS::Deadline::Farm": { "additionalProperties": false, "properties": { @@ -54608,6 +55184,9 @@ var CdkSchema = `{ "TimeToLiveSpecification": { "$ref": "#/definitions/AWS::DynamoDB::GlobalTable.TimeToLiveSpecification" }, + "WriteOnDemandThroughputSettings": { + "$ref": "#/definitions/AWS::DynamoDB::GlobalTable.WriteOnDemandThroughputSettings" + }, "WriteProvisionedThroughputSettings": { "$ref": "#/definitions/AWS::DynamoDB::GlobalTable.WriteProvisionedThroughputSettings" } @@ -54706,6 +55285,9 @@ var CdkSchema = `{ "Projection": { "$ref": "#/definitions/AWS::DynamoDB::GlobalTable.Projection" }, + "WriteOnDemandThroughputSettings": { + "$ref": "#/definitions/AWS::DynamoDB::GlobalTable.WriteOnDemandThroughputSettings" + }, "WriteProvisionedThroughputSettings": { "$ref": "#/definitions/AWS::DynamoDB::GlobalTable.WriteProvisionedThroughputSettings" } @@ -54795,6 +55377,15 @@ var CdkSchema = `{ }, "type": "object" }, + "AWS::DynamoDB::GlobalTable.ReadOnDemandThroughputSettings": { + "additionalProperties": false, + "properties": { + "MaxReadRequestUnits": { + "type": "number" + } + }, + "type": "object" + }, "AWS::DynamoDB::GlobalTable.ReadProvisionedThroughputSettings": { "additionalProperties": false, "properties": { @@ -54816,6 +55407,9 @@ var CdkSchema = `{ "IndexName": { "type": "string" }, + "ReadOnDemandThroughputSettings": { + "$ref": "#/definitions/AWS::DynamoDB::GlobalTable.ReadOnDemandThroughputSettings" + }, "ReadProvisionedThroughputSettings": { "$ref": "#/definitions/AWS::DynamoDB::GlobalTable.ReadProvisionedThroughputSettings" } @@ -54858,6 +55452,9 @@ var CdkSchema = `{ "PointInTimeRecoverySpecification": { "$ref": "#/definitions/AWS::DynamoDB::GlobalTable.PointInTimeRecoverySpecification" }, + "ReadOnDemandThroughputSettings": { + "$ref": "#/definitions/AWS::DynamoDB::GlobalTable.ReadOnDemandThroughputSettings" + }, "ReadProvisionedThroughputSettings": { "$ref": "#/definitions/AWS::DynamoDB::GlobalTable.ReadProvisionedThroughputSettings" }, @@ -54975,6 +55572,15 @@ var CdkSchema = `{ ], "type": "object" }, + "AWS::DynamoDB::GlobalTable.WriteOnDemandThroughputSettings": { + "additionalProperties": false, + "properties": { + "MaxWriteRequestUnits": { + "type": "number" + } + }, + "type": "object" + }, "AWS::DynamoDB::GlobalTable.WriteProvisionedThroughputSettings": { "additionalProperties": false, "properties": { @@ -55058,6 +55664,9 @@ var CdkSchema = `{ }, "type": "array" }, + "OnDemandThroughput": { + "$ref": "#/definitions/AWS::DynamoDB::Table.OnDemandThroughput" + }, "PointInTimeRecoverySpecification": { "$ref": "#/definitions/AWS::DynamoDB::Table.PointInTimeRecoverySpecification" }, @@ -55173,6 +55782,9 @@ var CdkSchema = `{ }, "type": "array" }, + "OnDemandThroughput": { + "$ref": "#/definitions/AWS::DynamoDB::Table.OnDemandThroughput" + }, "Projection": { "$ref": "#/definitions/AWS::DynamoDB::Table.Projection" }, @@ -55272,6 +55884,18 @@ var CdkSchema = `{ ], "type": "object" }, + "AWS::DynamoDB::Table.OnDemandThroughput": { + "additionalProperties": false, + "properties": { + "MaxReadRequestUnits": { + "type": "number" + }, + "MaxWriteRequestUnits": { + "type": "number" + } + }, + "type": "object" + }, "AWS::DynamoDB::Table.PointInTimeRecoverySpecification": { "additionalProperties": false, "properties": { @@ -56229,6 +56853,9 @@ var CdkSchema = `{ "BgpAsn": { "type": "number" }, + "BgpAsnExtended": { + "type": "number" + }, "CertificateArn": { "type": "string" }, @@ -58575,6 +59202,18 @@ var CdkSchema = `{ ], "type": "object" }, + "AWS::EC2::Instance.State": { + "additionalProperties": false, + "properties": { + "Code": { + "type": "string" + }, + "Name": { + "type": "string" + } + }, + "type": "object" + }, "AWS::EC2::Instance.Volume": { "additionalProperties": false, "properties": { @@ -64631,6 +65270,7 @@ var CdkSchema = `{ } }, "required": [ + "DestinationCidrBlock", "TransitGatewayRouteTableId" ], "type": "object" @@ -67581,6 +68221,9 @@ var CdkSchema = `{ "properties": { "ExecuteCommandConfiguration": { "$ref": "#/definitions/AWS::ECS::Cluster.ExecuteCommandConfiguration" + }, + "ManagedStorageConfiguration": { + "$ref": "#/definitions/AWS::ECS::Cluster.ManagedStorageConfiguration" } }, "type": "object" @@ -67633,6 +68276,18 @@ var CdkSchema = `{ }, "type": "object" }, + "AWS::ECS::Cluster.ManagedStorageConfiguration": { + "additionalProperties": false, + "properties": { + "FargateEphemeralStorageKmsKeyId": { + "type": "string" + }, + "KmsKeyId": { + "type": "string" + } + }, + "type": "object" + }, "AWS::ECS::Cluster.ServiceConnectDefaults": { "additionalProperties": false, "properties": { @@ -69985,6 +70640,12 @@ var CdkSchema = `{ "ConfigurationValues": { "type": "string" }, + "PodIdentityAssociations": { + "items": { + "$ref": "#/definitions/AWS::EKS::Addon.PodIdentityAssociation" + }, + "type": "array" + }, "PreserveOnDelete": { "type": "boolean" }, @@ -70028,251 +70689,267 @@ var CdkSchema = `{ ], "type": "object" }, - "AWS::EKS::Cluster": { + "AWS::EKS::Addon.PodIdentityAssociation": { "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": { - "AccessConfig": { - "$ref": "#/definitions/AWS::EKS::Cluster.AccessConfig" - }, - "EncryptionConfig": { - "items": { - "$ref": "#/definitions/AWS::EKS::Cluster.EncryptionConfig" - }, - "type": "array" - }, - "KubernetesNetworkConfig": { - "$ref": "#/definitions/AWS::EKS::Cluster.KubernetesNetworkConfig" - }, - "Logging": { - "$ref": "#/definitions/AWS::EKS::Cluster.Logging" - }, - "Name": { - "type": "string" - }, - "OutpostConfig": { - "$ref": "#/definitions/AWS::EKS::Cluster.OutpostConfig" - }, - "ResourcesVpcConfig": { - "$ref": "#/definitions/AWS::EKS::Cluster.ResourcesVpcConfig" - }, - "RoleArn": { - "type": "string" - }, - "Tags": { - "items": { - "$ref": "#/definitions/Tag" - }, - "type": "array" - }, - "Version": { - "type": "string" - } - }, - "required": [ - "ResourcesVpcConfig", - "RoleArn" - ], - "type": "object" - }, - "Type": { - "enum": [ - "AWS::EKS::Cluster" - ], - "type": "string" - }, - "UpdateReplacePolicy": { - "enum": [ - "Delete", - "Retain", - "Snapshot" - ], - "type": "string" - } - }, - "required": [ - "Type", - "Properties" - ], - "type": "object" - }, - "AWS::EKS::Cluster.AccessConfig": { - "additionalProperties": false, - "properties": { - "AuthenticationMode": { - "type": "string" - }, - "BootstrapClusterCreatorAdminPermissions": { - "type": "boolean" - } - }, - "type": "object" - }, - "AWS::EKS::Cluster.ClusterLogging": { - "additionalProperties": false, - "properties": { - "EnabledTypes": { - "items": { - "$ref": "#/definitions/AWS::EKS::Cluster.LoggingTypeConfig" - }, - "type": "array" - } - }, - "type": "object" - }, - "AWS::EKS::Cluster.ControlPlanePlacement": { - "additionalProperties": false, - "properties": { - "GroupName": { - "type": "string" - } - }, - "type": "object" - }, - "AWS::EKS::Cluster.EncryptionConfig": { - "additionalProperties": false, - "properties": { - "Provider": { - "$ref": "#/definitions/AWS::EKS::Cluster.Provider" - }, - "Resources": { - "items": { - "type": "string" - }, - "type": "array" - } - }, - "type": "object" - }, - "AWS::EKS::Cluster.KubernetesNetworkConfig": { - "additionalProperties": false, - "properties": { - "IpFamily": { - "type": "string" - }, - "ServiceIpv4Cidr": { - "type": "string" - }, - "ServiceIpv6Cidr": { - "type": "string" - } - }, - "type": "object" - }, - "AWS::EKS::Cluster.Logging": { - "additionalProperties": false, - "properties": { - "ClusterLogging": { - "$ref": "#/definitions/AWS::EKS::Cluster.ClusterLogging" - } - }, - "type": "object" - }, - "AWS::EKS::Cluster.LoggingTypeConfig": { - "additionalProperties": false, - "properties": { - "Type": { - "type": "string" - } - }, - "type": "object" - }, - "AWS::EKS::Cluster.OutpostConfig": { - "additionalProperties": false, - "properties": { - "ControlPlaneInstanceType": { + "RoleArn": { "type": "string" }, - "ControlPlanePlacement": { - "$ref": "#/definitions/AWS::EKS::Cluster.ControlPlanePlacement" - }, - "OutpostArns": { - "items": { - "type": "string" - }, - "type": "array" - } - }, - "required": [ - "ControlPlaneInstanceType", - "OutpostArns" - ], - "type": "object" - }, - "AWS::EKS::Cluster.Provider": { - "additionalProperties": false, - "properties": { - "KeyArn": { + "ServiceAccount": { "type": "string" } }, - "type": "object" - }, - "AWS::EKS::Cluster.ResourcesVpcConfig": { - "additionalProperties": false, - "properties": { - "EndpointPrivateAccess": { - "type": "boolean" - }, - "EndpointPublicAccess": { - "type": "boolean" - }, - "PublicAccessCidrs": { - "items": { - "type": "string" - }, - "type": "array" - }, - "SecurityGroupIds": { - "items": { - "type": "string" - }, - "type": "array" - }, - "SubnetIds": { - "items": { - "type": "string" - }, - "type": "array" - } - }, "required": [ - "SubnetIds" + "RoleArn", + "ServiceAccount" ], "type": "object" }, - "AWS::EKS::FargateProfile": { + "AWS::EKS::Cluster": { + "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": { + "AccessConfig": { + "$ref": "#/definitions/AWS::EKS::Cluster.AccessConfig" + }, + "EncryptionConfig": { + "items": { + "$ref": "#/definitions/AWS::EKS::Cluster.EncryptionConfig" + }, + "type": "array" + }, + "KubernetesNetworkConfig": { + "$ref": "#/definitions/AWS::EKS::Cluster.KubernetesNetworkConfig" + }, + "Logging": { + "$ref": "#/definitions/AWS::EKS::Cluster.Logging" + }, + "Name": { + "type": "string" + }, + "OutpostConfig": { + "$ref": "#/definitions/AWS::EKS::Cluster.OutpostConfig" + }, + "ResourcesVpcConfig": { + "$ref": "#/definitions/AWS::EKS::Cluster.ResourcesVpcConfig" + }, + "RoleArn": { + "type": "string" + }, + "Tags": { + "items": { + "$ref": "#/definitions/Tag" + }, + "type": "array" + }, + "Version": { + "type": "string" + } + }, + "required": [ + "ResourcesVpcConfig", + "RoleArn" + ], + "type": "object" + }, + "Type": { + "enum": [ + "AWS::EKS::Cluster" + ], + "type": "string" + }, + "UpdateReplacePolicy": { + "enum": [ + "Delete", + "Retain", + "Snapshot" + ], + "type": "string" + } + }, + "required": [ + "Type", + "Properties" + ], + "type": "object" + }, + "AWS::EKS::Cluster.AccessConfig": { + "additionalProperties": false, + "properties": { + "AuthenticationMode": { + "type": "string" + }, + "BootstrapClusterCreatorAdminPermissions": { + "type": "boolean" + } + }, + "type": "object" + }, + "AWS::EKS::Cluster.ClusterLogging": { + "additionalProperties": false, + "properties": { + "EnabledTypes": { + "items": { + "$ref": "#/definitions/AWS::EKS::Cluster.LoggingTypeConfig" + }, + "type": "array" + } + }, + "type": "object" + }, + "AWS::EKS::Cluster.ControlPlanePlacement": { + "additionalProperties": false, + "properties": { + "GroupName": { + "type": "string" + } + }, + "type": "object" + }, + "AWS::EKS::Cluster.EncryptionConfig": { + "additionalProperties": false, + "properties": { + "Provider": { + "$ref": "#/definitions/AWS::EKS::Cluster.Provider" + }, + "Resources": { + "items": { + "type": "string" + }, + "type": "array" + } + }, + "type": "object" + }, + "AWS::EKS::Cluster.KubernetesNetworkConfig": { + "additionalProperties": false, + "properties": { + "IpFamily": { + "type": "string" + }, + "ServiceIpv4Cidr": { + "type": "string" + }, + "ServiceIpv6Cidr": { + "type": "string" + } + }, + "type": "object" + }, + "AWS::EKS::Cluster.Logging": { + "additionalProperties": false, + "properties": { + "ClusterLogging": { + "$ref": "#/definitions/AWS::EKS::Cluster.ClusterLogging" + } + }, + "type": "object" + }, + "AWS::EKS::Cluster.LoggingTypeConfig": { + "additionalProperties": false, + "properties": { + "Type": { + "type": "string" + } + }, + "type": "object" + }, + "AWS::EKS::Cluster.OutpostConfig": { + "additionalProperties": false, + "properties": { + "ControlPlaneInstanceType": { + "type": "string" + }, + "ControlPlanePlacement": { + "$ref": "#/definitions/AWS::EKS::Cluster.ControlPlanePlacement" + }, + "OutpostArns": { + "items": { + "type": "string" + }, + "type": "array" + } + }, + "required": [ + "ControlPlaneInstanceType", + "OutpostArns" + ], + "type": "object" + }, + "AWS::EKS::Cluster.Provider": { + "additionalProperties": false, + "properties": { + "KeyArn": { + "type": "string" + } + }, + "type": "object" + }, + "AWS::EKS::Cluster.ResourcesVpcConfig": { + "additionalProperties": false, + "properties": { + "EndpointPrivateAccess": { + "type": "boolean" + }, + "EndpointPublicAccess": { + "type": "boolean" + }, + "PublicAccessCidrs": { + "items": { + "type": "string" + }, + "type": "array" + }, + "SecurityGroupIds": { + "items": { + "type": "string" + }, + "type": "array" + }, + "SubnetIds": { + "items": { + "type": "string" + }, + "type": "array" + } + }, + "required": [ + "SubnetIds" + ], + "type": "object" + }, + "AWS::EKS::FargateProfile": { "additionalProperties": false, "properties": { "Condition": { @@ -78580,9 +79257,18 @@ var CdkSchema = `{ "Properties": { "additionalProperties": false, "properties": { + "DeadLetterConfig": { + "$ref": "#/definitions/AWS::Events::EventBus.DeadLetterConfig" + }, + "Description": { + "type": "string" + }, "EventSourceName": { "type": "string" }, + "KmsKeyIdentifier": { + "type": "string" + }, "Name": { "type": "string" }, @@ -78622,6 +79308,15 @@ var CdkSchema = `{ ], "type": "object" }, + "AWS::Events::EventBus.DeadLetterConfig": { + "additionalProperties": false, + "properties": { + "Arn": { + "type": "string" + } + }, + "type": "object" + }, "AWS::Events::EventBusPolicy": { "additionalProperties": false, "properties": { @@ -80597,6 +81292,94 @@ var CdkSchema = `{ }, "type": "object" }, + "AWS::FMS::Policy.IcmpTypeCode": { + "additionalProperties": false, + "properties": { + "Code": { + "type": "number" + }, + "Type": { + "type": "number" + } + }, + "required": [ + "Code", + "Type" + ], + "type": "object" + }, + "AWS::FMS::Policy.NetworkAclCommonPolicy": { + "additionalProperties": false, + "properties": { + "NetworkAclEntrySet": { + "$ref": "#/definitions/AWS::FMS::Policy.NetworkAclEntrySet" + } + }, + "required": [ + "NetworkAclEntrySet" + ], + "type": "object" + }, + "AWS::FMS::Policy.NetworkAclEntry": { + "additionalProperties": false, + "properties": { + "CidrBlock": { + "type": "string" + }, + "Egress": { + "type": "boolean" + }, + "IcmpTypeCode": { + "$ref": "#/definitions/AWS::FMS::Policy.IcmpTypeCode" + }, + "Ipv6CidrBlock": { + "type": "string" + }, + "PortRange": { + "$ref": "#/definitions/AWS::FMS::Policy.PortRange" + }, + "Protocol": { + "type": "string" + }, + "RuleAction": { + "type": "string" + } + }, + "required": [ + "Egress", + "Protocol", + "RuleAction" + ], + "type": "object" + }, + "AWS::FMS::Policy.NetworkAclEntrySet": { + "additionalProperties": false, + "properties": { + "FirstEntries": { + "items": { + "$ref": "#/definitions/AWS::FMS::Policy.NetworkAclEntry" + }, + "type": "array" + }, + "ForceRemediateForFirstEntries": { + "type": "boolean" + }, + "ForceRemediateForLastEntries": { + "type": "boolean" + }, + "LastEntries": { + "items": { + "$ref": "#/definitions/AWS::FMS::Policy.NetworkAclEntry" + }, + "type": "array" + } + }, + "required": [ + "ForceRemediateForFirstEntries", + "ForceRemediateForLastEntries" + ], + "type": "object" + }, "AWS::FMS::Policy.NetworkFirewallPolicy": { "additionalProperties": false, "properties": { @@ -80612,6 +81395,9 @@ var CdkSchema = `{ "AWS::FMS::Policy.PolicyOption": { "additionalProperties": false, "properties": { + "NetworkAclCommonPolicy": { + "$ref": "#/definitions/AWS::FMS::Policy.NetworkAclCommonPolicy" + }, "NetworkFirewallPolicy": { "$ref": "#/definitions/AWS::FMS::Policy.NetworkFirewallPolicy" }, @@ -80637,6 +81423,22 @@ var CdkSchema = `{ ], "type": "object" }, + "AWS::FMS::Policy.PortRange": { + "additionalProperties": false, + "properties": { + "From": { + "type": "number" + }, + "To": { + "type": "number" + } + }, + "required": [ + "From", + "To" + ], + "type": "object" + }, "AWS::FMS::Policy.ResourceTag": { "additionalProperties": false, "properties": { @@ -81089,6 +81891,9 @@ var CdkSchema = `{ "ImportedFileChunkSize": { "type": "number" }, + "MetadataConfiguration": { + "$ref": "#/definitions/AWS::FSx::FileSystem.MetadataConfiguration" + }, "PerUnitStorageThroughput": { "type": "number" }, @@ -81098,6 +81903,18 @@ var CdkSchema = `{ }, "type": "object" }, + "AWS::FSx::FileSystem.MetadataConfiguration": { + "additionalProperties": false, + "properties": { + "Iops": { + "type": "number" + }, + "Mode": { + "type": "string" + } + }, + "type": "object" + }, "AWS::FSx::FileSystem.NfsExports": { "additionalProperties": false, "properties": { @@ -85593,6 +86410,12 @@ var CdkSchema = `{ "ConnectionName": { "type": "string" }, + "EnableAdditionalMetadata": { + "items": { + "type": "string" + }, + "type": "array" + }, "Exclusions": { "items": { "type": "string" @@ -86328,6 +87151,9 @@ var CdkSchema = `{ "LogUri": { "type": "string" }, + "MaintenanceWindow": { + "type": "string" + }, "MaxCapacity": { "type": "number" }, @@ -116704,6 +117530,9 @@ var CdkSchema = `{ "FunctionName": { "type": "string" }, + "Policy": { + "type": "object" + }, "ProvisionedConcurrencyConfig": { "$ref": "#/definitions/AWS::Lambda::Version.ProvisionedConcurrencyConfiguration" }, @@ -124599,9 +125428,15 @@ var CdkSchema = `{ "LoggingConfiguration": { "$ref": "#/definitions/AWS::MWAA::Environment.LoggingConfiguration" }, + "MaxWebservers": { + "type": "number" + }, "MaxWorkers": { "type": "number" }, + "MinWebservers": { + "type": "number" + }, "MinWorkers": { "type": "number" }, @@ -125988,6 +126823,15 @@ var CdkSchema = `{ "AvailabilityZone": { "type": "string" }, + "Maintenance": { + "$ref": "#/definitions/AWS::MediaConnect::Flow.Maintenance" + }, + "MediaStreams": { + "items": { + "$ref": "#/definitions/AWS::MediaConnect::Flow.MediaStream" + }, + "type": "array" + }, "Name": { "type": "string" }, @@ -125996,6 +126840,12 @@ var CdkSchema = `{ }, "SourceFailoverConfig": { "$ref": "#/definitions/AWS::MediaConnect::Flow.FailoverConfig" + }, + "VpcInterfaces": { + "items": { + "$ref": "#/definitions/AWS::MediaConnect::Flow.VpcInterface" + }, + "type": "array" } }, "required": [ @@ -126079,6 +126929,33 @@ var CdkSchema = `{ }, "type": "object" }, + "AWS::MediaConnect::Flow.Fmtp": { + "additionalProperties": false, + "properties": { + "ChannelOrder": { + "type": "string" + }, + "Colorimetry": { + "type": "string" + }, + "ExactFramerate": { + "type": "string" + }, + "Par": { + "type": "string" + }, + "Range": { + "type": "string" + }, + "ScanMode": { + "type": "string" + }, + "Tcs": { + "type": "string" + } + }, + "type": "object" + }, "AWS::MediaConnect::Flow.GatewayBridgeSource": { "additionalProperties": false, "properties": { @@ -126094,6 +126971,119 @@ var CdkSchema = `{ ], "type": "object" }, + "AWS::MediaConnect::Flow.InputConfiguration": { + "additionalProperties": false, + "properties": { + "InputPort": { + "type": "number" + }, + "Interface": { + "$ref": "#/definitions/AWS::MediaConnect::Flow.Interface" + } + }, + "required": [ + "InputPort", + "Interface" + ], + "type": "object" + }, + "AWS::MediaConnect::Flow.Interface": { + "additionalProperties": false, + "properties": { + "Name": { + "type": "string" + } + }, + "required": [ + "Name" + ], + "type": "object" + }, + "AWS::MediaConnect::Flow.Maintenance": { + "additionalProperties": false, + "properties": { + "MaintenanceDay": { + "type": "string" + }, + "MaintenanceStartHour": { + "type": "string" + } + }, + "required": [ + "MaintenanceDay", + "MaintenanceStartHour" + ], + "type": "object" + }, + "AWS::MediaConnect::Flow.MediaStream": { + "additionalProperties": false, + "properties": { + "Attributes": { + "$ref": "#/definitions/AWS::MediaConnect::Flow.MediaStreamAttributes" + }, + "ClockRate": { + "type": "number" + }, + "Description": { + "type": "string" + }, + "Fmt": { + "type": "number" + }, + "MediaStreamId": { + "type": "number" + }, + "MediaStreamName": { + "type": "string" + }, + "MediaStreamType": { + "type": "string" + }, + "VideoFormat": { + "type": "string" + } + }, + "required": [ + "MediaStreamId", + "MediaStreamName", + "MediaStreamType" + ], + "type": "object" + }, + "AWS::MediaConnect::Flow.MediaStreamAttributes": { + "additionalProperties": false, + "properties": { + "Fmtp": { + "$ref": "#/definitions/AWS::MediaConnect::Flow.Fmtp" + }, + "Lang": { + "type": "string" + } + }, + "type": "object" + }, + "AWS::MediaConnect::Flow.MediaStreamSourceConfiguration": { + "additionalProperties": false, + "properties": { + "EncodingName": { + "type": "string" + }, + "InputConfigurations": { + "items": { + "$ref": "#/definitions/AWS::MediaConnect::Flow.InputConfiguration" + }, + "type": "array" + }, + "MediaStreamName": { + "type": "string" + } + }, + "required": [ + "EncodingName", + "MediaStreamName" + ], + "type": "object" + }, "AWS::MediaConnect::Flow.Source": { "additionalProperties": false, "properties": { @@ -126121,6 +127111,15 @@ var CdkSchema = `{ "MaxLatency": { "type": "number" }, + "MaxSyncBuffer": { + "type": "number" + }, + "MediaStreamSourceConfigurations": { + "items": { + "$ref": "#/definitions/AWS::MediaConnect::Flow.MediaStreamSourceConfiguration" + }, + "type": "array" + }, "MinLatency": { "type": "number" }, @@ -126172,6 +127171,42 @@ var CdkSchema = `{ ], "type": "object" }, + "AWS::MediaConnect::Flow.VpcInterface": { + "additionalProperties": false, + "properties": { + "Name": { + "type": "string" + }, + "NetworkInterfaceIds": { + "items": { + "type": "string" + }, + "type": "array" + }, + "NetworkInterfaceType": { + "type": "string" + }, + "RoleArn": { + "type": "string" + }, + "SecurityGroupIds": { + "items": { + "type": "string" + }, + "type": "array" + }, + "SubnetId": { + "type": "string" + } + }, + "required": [ + "Name", + "RoleArn", + "SecurityGroupIds", + "SubnetId" + ], + "type": "object" + }, "AWS::MediaConnect::Flow.VpcInterfaceAttachment": { "additionalProperties": false, "properties": { @@ -126363,6 +127398,12 @@ var CdkSchema = `{ "MaxLatency": { "type": "number" }, + "MediaStreamOutputConfigurations": { + "items": { + "$ref": "#/definitions/AWS::MediaConnect::FlowOutput.MediaStreamOutputConfiguration" + }, + "type": "array" + }, "MinLatency": { "type": "number" }, @@ -126415,6 +127456,41 @@ var CdkSchema = `{ ], "type": "object" }, + "AWS::MediaConnect::FlowOutput.DestinationConfiguration": { + "additionalProperties": false, + "properties": { + "DestinationIp": { + "type": "string" + }, + "DestinationPort": { + "type": "number" + }, + "Interface": { + "$ref": "#/definitions/AWS::MediaConnect::FlowOutput.Interface" + } + }, + "required": [ + "DestinationIp", + "DestinationPort", + "Interface" + ], + "type": "object" + }, + "AWS::MediaConnect::FlowOutput.EncodingParameters": { + "additionalProperties": false, + "properties": { + "CompressionFactor": { + "type": "number" + }, + "EncoderProfile": { + "type": "string" + } + }, + "required": [ + "CompressionFactor" + ], + "type": "object" + }, "AWS::MediaConnect::FlowOutput.Encryption": { "additionalProperties": false, "properties": { @@ -126437,6 +127513,43 @@ var CdkSchema = `{ ], "type": "object" }, + "AWS::MediaConnect::FlowOutput.Interface": { + "additionalProperties": false, + "properties": { + "Name": { + "type": "string" + } + }, + "required": [ + "Name" + ], + "type": "object" + }, + "AWS::MediaConnect::FlowOutput.MediaStreamOutputConfiguration": { + "additionalProperties": false, + "properties": { + "DestinationConfigurations": { + "items": { + "$ref": "#/definitions/AWS::MediaConnect::FlowOutput.DestinationConfiguration" + }, + "type": "array" + }, + "EncodingName": { + "type": "string" + }, + "EncodingParameters": { + "$ref": "#/definitions/AWS::MediaConnect::FlowOutput.EncodingParameters" + }, + "MediaStreamName": { + "type": "string" + } + }, + "required": [ + "EncodingName", + "MediaStreamName" + ], + "type": "object" + }, "AWS::MediaConnect::FlowOutput.VpcInterfaceAttachment": { "additionalProperties": false, "properties": { @@ -127594,6 +128707,9 @@ var CdkSchema = `{ "properties": { "AvailSettings": { "$ref": "#/definitions/AWS::MediaLive::Channel.AvailSettings" + }, + "Scte35SegmentationScope": { + "type": "string" } }, "type": "object" @@ -132405,6 +133521,12 @@ var CdkSchema = `{ "ContainerType": { "type": "string" }, + "DashManifests": { + "items": { + "$ref": "#/definitions/AWS::MediaPackageV2::OriginEndpoint.DashManifestConfiguration" + }, + "type": "array" + }, "Description": { "type": "string" }, @@ -132464,6 +133586,63 @@ var CdkSchema = `{ ], "type": "object" }, + "AWS::MediaPackageV2::OriginEndpoint.DashManifestConfiguration": { + "additionalProperties": false, + "properties": { + "DrmSignaling": { + "type": "string" + }, + "FilterConfiguration": { + "$ref": "#/definitions/AWS::MediaPackageV2::OriginEndpoint.FilterConfiguration" + }, + "ManifestName": { + "type": "string" + }, + "ManifestWindowSeconds": { + "type": "number" + }, + "MinBufferTimeSeconds": { + "type": "number" + }, + "MinUpdatePeriodSeconds": { + "type": "number" + }, + "PeriodTriggers": { + "items": { + "type": "string" + }, + "type": "array" + }, + "ScteDash": { + "$ref": "#/definitions/AWS::MediaPackageV2::OriginEndpoint.ScteDash" + }, + "SegmentTemplateFormat": { + "type": "string" + }, + "SuggestedPresentationDelaySeconds": { + "type": "number" + }, + "UtcTiming": { + "$ref": "#/definitions/AWS::MediaPackageV2::OriginEndpoint.DashUtcTiming" + } + }, + "required": [ + "ManifestName" + ], + "type": "object" + }, + "AWS::MediaPackageV2::OriginEndpoint.DashUtcTiming": { + "additionalProperties": false, + "properties": { + "TimingMode": { + "type": "string" + }, + "TimingSource": { + "type": "string" + } + }, + "type": "object" + }, "AWS::MediaPackageV2::OriginEndpoint.Encryption": { "additionalProperties": false, "properties": { @@ -132604,6 +133783,15 @@ var CdkSchema = `{ }, "type": "object" }, + "AWS::MediaPackageV2::OriginEndpoint.ScteDash": { + "additionalProperties": false, + "properties": { + "AdMarkerDash": { + "type": "string" + } + }, + "type": "object" + }, "AWS::MediaPackageV2::OriginEndpoint.ScteHls": { "additionalProperties": false, "properties": { @@ -133396,6 +134584,9 @@ var CdkSchema = `{ "AWS::MediaTailor::PlaybackConfiguration.AvailSuppression": { "additionalProperties": false, "properties": { + "FillPolicy": { + "type": "string" + }, "Mode": { "type": "string" }, @@ -134736,7 +135927,7 @@ var CdkSchema = `{ ], "type": "object" }, - "AWS::NeptuneGraph::Graph": { + "AWS::Neptune::EventSubscription": { "additionalProperties": false, "properties": { "Condition": { @@ -134771,39 +135962,33 @@ var CdkSchema = `{ "Properties": { "additionalProperties": false, "properties": { - "DeletionProtection": { + "Enabled": { "type": "boolean" }, - "GraphName": { - "type": "string" - }, - "ProvisionedMemory": { - "type": "number" - }, - "PublicConnectivity": { - "type": "boolean" + "EventCategories": { + "items": { + "type": "string" + }, + "type": "array" }, - "ReplicaCount": { - "type": "number" + "SnsTopicArn": { + "type": "string" }, - "Tags": { + "SourceIds": { "items": { - "$ref": "#/definitions/Tag" + "type": "string" }, "type": "array" }, - "VectorSearchConfiguration": { - "$ref": "#/definitions/AWS::NeptuneGraph::Graph.VectorSearchConfiguration" + "SourceType": { + "type": "string" } }, - "required": [ - "ProvisionedMemory" - ], "type": "object" }, "Type": { "enum": [ - "AWS::NeptuneGraph::Graph" + "AWS::Neptune::EventSubscription" ], "type": "string" }, @@ -134817,24 +136002,11 @@ var CdkSchema = `{ } }, "required": [ - "Type", - "Properties" - ], - "type": "object" - }, - "AWS::NeptuneGraph::Graph.VectorSearchConfiguration": { - "additionalProperties": false, - "properties": { - "VectorSearchDimension": { - "type": "number" - } - }, - "required": [ - "VectorSearchDimension" + "Type" ], "type": "object" }, - "AWS::NeptuneGraph::PrivateGraphEndpoint": { + "AWS::NeptuneGraph::Graph": { "additionalProperties": false, "properties": { "Condition": { @@ -134869,34 +136041,39 @@ var CdkSchema = `{ "Properties": { "additionalProperties": false, "properties": { - "GraphIdentifier": { + "DeletionProtection": { + "type": "boolean" + }, + "GraphName": { "type": "string" }, - "SecurityGroupIds": { - "items": { - "type": "string" - }, - "type": "array" + "ProvisionedMemory": { + "type": "number" }, - "SubnetIds": { + "PublicConnectivity": { + "type": "boolean" + }, + "ReplicaCount": { + "type": "number" + }, + "Tags": { "items": { - "type": "string" + "$ref": "#/definitions/Tag" }, "type": "array" }, - "VpcId": { - "type": "string" + "VectorSearchConfiguration": { + "$ref": "#/definitions/AWS::NeptuneGraph::Graph.VectorSearchConfiguration" } }, "required": [ - "GraphIdentifier", - "VpcId" + "ProvisionedMemory" ], "type": "object" }, "Type": { "enum": [ - "AWS::NeptuneGraph::PrivateGraphEndpoint" + "AWS::NeptuneGraph::Graph" ], "type": "string" }, @@ -134915,7 +136092,19 @@ var CdkSchema = `{ ], "type": "object" }, - "AWS::NetworkFirewall::Firewall": { + "AWS::NeptuneGraph::Graph.VectorSearchConfiguration": { + "additionalProperties": false, + "properties": { + "VectorSearchDimension": { + "type": "number" + } + }, + "required": [ + "VectorSearchDimension" + ], + "type": "object" + }, + "AWS::NeptuneGraph::PrivateGraphEndpoint": { "additionalProperties": false, "properties": { "Condition": { @@ -134950,33 +136139,18 @@ var CdkSchema = `{ "Properties": { "additionalProperties": false, "properties": { - "DeleteProtection": { - "type": "boolean" - }, - "Description": { - "type": "string" - }, - "FirewallName": { - "type": "string" - }, - "FirewallPolicyArn": { + "GraphIdentifier": { "type": "string" }, - "FirewallPolicyChangeProtection": { - "type": "boolean" - }, - "SubnetChangeProtection": { - "type": "boolean" - }, - "SubnetMappings": { + "SecurityGroupIds": { "items": { - "$ref": "#/definitions/AWS::NetworkFirewall::Firewall.SubnetMapping" + "type": "string" }, "type": "array" }, - "Tags": { + "SubnetIds": { "items": { - "$ref": "#/definitions/Tag" + "type": "string" }, "type": "array" }, @@ -134985,16 +136159,14 @@ var CdkSchema = `{ } }, "required": [ - "FirewallName", - "FirewallPolicyArn", - "SubnetMappings", + "GraphIdentifier", "VpcId" ], "type": "object" }, "Type": { "enum": [ - "AWS::NetworkFirewall::Firewall" + "AWS::NeptuneGraph::PrivateGraphEndpoint" ], "type": "string" }, @@ -135013,22 +136185,120 @@ var CdkSchema = `{ ], "type": "object" }, - "AWS::NetworkFirewall::Firewall.SubnetMapping": { - "additionalProperties": false, - "properties": { - "IPAddressType": { - "type": "string" - }, - "SubnetId": { - "type": "string" - } - }, - "required": [ - "SubnetId" - ], - "type": "object" - }, - "AWS::NetworkFirewall::FirewallPolicy": { + "AWS::NetworkFirewall::Firewall": { + "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": { + "DeleteProtection": { + "type": "boolean" + }, + "Description": { + "type": "string" + }, + "FirewallName": { + "type": "string" + }, + "FirewallPolicyArn": { + "type": "string" + }, + "FirewallPolicyChangeProtection": { + "type": "boolean" + }, + "SubnetChangeProtection": { + "type": "boolean" + }, + "SubnetMappings": { + "items": { + "$ref": "#/definitions/AWS::NetworkFirewall::Firewall.SubnetMapping" + }, + "type": "array" + }, + "Tags": { + "items": { + "$ref": "#/definitions/Tag" + }, + "type": "array" + }, + "VpcId": { + "type": "string" + } + }, + "required": [ + "FirewallName", + "FirewallPolicyArn", + "SubnetMappings", + "VpcId" + ], + "type": "object" + }, + "Type": { + "enum": [ + "AWS::NetworkFirewall::Firewall" + ], + "type": "string" + }, + "UpdateReplacePolicy": { + "enum": [ + "Delete", + "Retain", + "Snapshot" + ], + "type": "string" + } + }, + "required": [ + "Type", + "Properties" + ], + "type": "object" + }, + "AWS::NetworkFirewall::Firewall.SubnetMapping": { + "additionalProperties": false, + "properties": { + "IPAddressType": { + "type": "string" + }, + "SubnetId": { + "type": "string" + } + }, + "required": [ + "SubnetId" + ], + "type": "object" + }, + "AWS::NetworkFirewall::FirewallPolicy": { "additionalProperties": false, "properties": { "Condition": { @@ -147036,6 +148306,26 @@ var CdkSchema = `{ }, "type": "object" }, + "AWS::Pipes::Pipe.DimensionMapping": { + "additionalProperties": false, + "properties": { + "DimensionName": { + "type": "string" + }, + "DimensionValue": { + "type": "string" + }, + "DimensionValueType": { + "type": "string" + } + }, + "required": [ + "DimensionName", + "DimensionValue", + "DimensionValueType" + ], + "type": "object" + }, "AWS::Pipes::Pipe.EcsContainerOverride": { "additionalProperties": false, "properties": { @@ -147233,6 +148523,45 @@ var CdkSchema = `{ }, "type": "object" }, + "AWS::Pipes::Pipe.MultiMeasureAttributeMapping": { + "additionalProperties": false, + "properties": { + "MeasureValue": { + "type": "string" + }, + "MeasureValueType": { + "type": "string" + }, + "MultiMeasureAttributeName": { + "type": "string" + } + }, + "required": [ + "MeasureValue", + "MeasureValueType", + "MultiMeasureAttributeName" + ], + "type": "object" + }, + "AWS::Pipes::Pipe.MultiMeasureMapping": { + "additionalProperties": false, + "properties": { + "MultiMeasureAttributeMappings": { + "items": { + "$ref": "#/definitions/AWS::Pipes::Pipe.MultiMeasureAttributeMapping" + }, + "type": "array" + }, + "MultiMeasureName": { + "type": "string" + } + }, + "required": [ + "MultiMeasureAttributeMappings", + "MultiMeasureName" + ], + "type": "object" + }, "AWS::Pipes::Pipe.NetworkConfiguration": { "additionalProperties": false, "properties": { @@ -147763,6 +149092,9 @@ var CdkSchema = `{ }, "StepFunctionStateMachineParameters": { "$ref": "#/definitions/AWS::Pipes::Pipe.PipeTargetStateMachineParameters" + }, + "TimestreamParameters": { + "$ref": "#/definitions/AWS::Pipes::Pipe.PipeTargetTimestreamParameters" } }, "type": "object" @@ -147831,6 +149163,50 @@ var CdkSchema = `{ }, "type": "object" }, + "AWS::Pipes::Pipe.PipeTargetTimestreamParameters": { + "additionalProperties": false, + "properties": { + "DimensionMappings": { + "items": { + "$ref": "#/definitions/AWS::Pipes::Pipe.DimensionMapping" + }, + "type": "array" + }, + "EpochTimeUnit": { + "type": "string" + }, + "MultiMeasureMappings": { + "items": { + "$ref": "#/definitions/AWS::Pipes::Pipe.MultiMeasureMapping" + }, + "type": "array" + }, + "SingleMeasureMappings": { + "items": { + "$ref": "#/definitions/AWS::Pipes::Pipe.SingleMeasureMapping" + }, + "type": "array" + }, + "TimeFieldType": { + "type": "string" + }, + "TimeValue": { + "type": "string" + }, + "TimestampFormat": { + "type": "string" + }, + "VersionValue": { + "type": "string" + } + }, + "required": [ + "DimensionMappings", + "TimeValue", + "VersionValue" + ], + "type": "object" + }, "AWS::Pipes::Pipe.PlacementConstraint": { "additionalProperties": false, "properties": { @@ -147925,89 +149301,109 @@ var CdkSchema = `{ }, "type": "object" }, - "AWS::Proton::EnvironmentAccountConnection": { + "AWS::Pipes::Pipe.SingleMeasureMapping": { "additionalProperties": false, "properties": { - "Condition": { - "type": "string" - }, - "DeletionPolicy": { - "enum": [ - "Delete", - "Retain", - "Snapshot" - ], + "MeasureName": { "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": { - "CodebuildRoleArn": { - "type": "string" - }, - "ComponentRoleArn": { - "type": "string" - }, - "EnvironmentAccountId": { - "type": "string" - }, - "EnvironmentName": { - "type": "string" - }, - "ManagementAccountId": { - "type": "string" - }, - "RoleArn": { - "type": "string" - }, - "Tags": { - "items": { - "$ref": "#/definitions/Tag" - }, - "type": "array" - } - }, - "type": "object" - }, - "Type": { - "enum": [ - "AWS::Proton::EnvironmentAccountConnection" - ], + "MeasureValue": { "type": "string" }, - "UpdateReplacePolicy": { - "enum": [ - "Delete", - "Retain", - "Snapshot" - ], + "MeasureValueType": { "type": "string" } }, "required": [ - "Type" + "MeasureName", + "MeasureValue", + "MeasureValueType" ], "type": "object" }, - "AWS::Proton::EnvironmentTemplate": { + "AWS::Proton::EnvironmentAccountConnection": { + "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": { + "CodebuildRoleArn": { + "type": "string" + }, + "ComponentRoleArn": { + "type": "string" + }, + "EnvironmentAccountId": { + "type": "string" + }, + "EnvironmentName": { + "type": "string" + }, + "ManagementAccountId": { + "type": "string" + }, + "RoleArn": { + "type": "string" + }, + "Tags": { + "items": { + "$ref": "#/definitions/Tag" + }, + "type": "array" + } + }, + "type": "object" + }, + "Type": { + "enum": [ + "AWS::Proton::EnvironmentAccountConnection" + ], + "type": "string" + }, + "UpdateReplacePolicy": { + "enum": [ + "Delete", + "Retain", + "Snapshot" + ], + "type": "string" + } + }, + "required": [ + "Type" + ], + "type": "object" + }, + "AWS::Proton::EnvironmentTemplate": { "additionalProperties": false, "properties": { "Condition": { @@ -148121,19 +149517,875 @@ var CdkSchema = `{ "Properties": { "additionalProperties": false, "properties": { - "Description": { + "Description": { + "type": "string" + }, + "DisplayName": { + "type": "string" + }, + "EncryptionKey": { + "type": "string" + }, + "Name": { + "type": "string" + }, + "PipelineProvisioning": { + "type": "string" + }, + "Tags": { + "items": { + "$ref": "#/definitions/Tag" + }, + "type": "array" + } + }, + "type": "object" + }, + "Type": { + "enum": [ + "AWS::Proton::ServiceTemplate" + ], + "type": "string" + }, + "UpdateReplacePolicy": { + "enum": [ + "Delete", + "Retain", + "Snapshot" + ], + "type": "string" + } + }, + "required": [ + "Type" + ], + "type": "object" + }, + "AWS::QBusiness::Application": { + "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": { + "AttachmentsConfiguration": { + "$ref": "#/definitions/AWS::QBusiness::Application.AttachmentsConfiguration" + }, + "Description": { + "type": "string" + }, + "DisplayName": { + "type": "string" + }, + "EncryptionConfiguration": { + "$ref": "#/definitions/AWS::QBusiness::Application.EncryptionConfiguration" + }, + "IdentityCenterInstanceArn": { + "type": "string" + }, + "RoleArn": { + "type": "string" + }, + "Tags": { + "items": { + "$ref": "#/definitions/Tag" + }, + "type": "array" + } + }, + "required": [ + "DisplayName" + ], + "type": "object" + }, + "Type": { + "enum": [ + "AWS::QBusiness::Application" + ], + "type": "string" + }, + "UpdateReplacePolicy": { + "enum": [ + "Delete", + "Retain", + "Snapshot" + ], + "type": "string" + } + }, + "required": [ + "Type", + "Properties" + ], + "type": "object" + }, + "AWS::QBusiness::Application.AttachmentsConfiguration": { + "additionalProperties": false, + "properties": { + "AttachmentsControlMode": { + "type": "string" + } + }, + "required": [ + "AttachmentsControlMode" + ], + "type": "object" + }, + "AWS::QBusiness::Application.EncryptionConfiguration": { + "additionalProperties": false, + "properties": { + "KmsKeyId": { + "type": "string" + } + }, + "type": "object" + }, + "AWS::QBusiness::DataSource": { + "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": { + "ApplicationId": { + "type": "string" + }, + "Configuration": { + "type": "object" + }, + "Description": { + "type": "string" + }, + "DisplayName": { + "type": "string" + }, + "DocumentEnrichmentConfiguration": { + "$ref": "#/definitions/AWS::QBusiness::DataSource.DocumentEnrichmentConfiguration" + }, + "IndexId": { + "type": "string" + }, + "RoleArn": { + "type": "string" + }, + "SyncSchedule": { + "type": "string" + }, + "Tags": { + "items": { + "$ref": "#/definitions/Tag" + }, + "type": "array" + }, + "VpcConfiguration": { + "$ref": "#/definitions/AWS::QBusiness::DataSource.DataSourceVpcConfiguration" + } + }, + "required": [ + "ApplicationId", + "Configuration", + "DisplayName", + "IndexId" + ], + "type": "object" + }, + "Type": { + "enum": [ + "AWS::QBusiness::DataSource" + ], + "type": "string" + }, + "UpdateReplacePolicy": { + "enum": [ + "Delete", + "Retain", + "Snapshot" + ], + "type": "string" + } + }, + "required": [ + "Type", + "Properties" + ], + "type": "object" + }, + "AWS::QBusiness::DataSource.DataSourceVpcConfiguration": { + "additionalProperties": false, + "properties": { + "SecurityGroupIds": { + "items": { + "type": "string" + }, + "type": "array" + }, + "SubnetIds": { + "items": { + "type": "string" + }, + "type": "array" + } + }, + "required": [ + "SecurityGroupIds", + "SubnetIds" + ], + "type": "object" + }, + "AWS::QBusiness::DataSource.DocumentAttributeCondition": { + "additionalProperties": false, + "properties": { + "Key": { + "type": "string" + }, + "Operator": { + "type": "string" + }, + "Value": { + "$ref": "#/definitions/AWS::QBusiness::DataSource.DocumentAttributeValue" + } + }, + "required": [ + "Key", + "Operator" + ], + "type": "object" + }, + "AWS::QBusiness::DataSource.DocumentAttributeTarget": { + "additionalProperties": false, + "properties": { + "AttributeValueOperator": { + "type": "string" + }, + "Key": { + "type": "string" + }, + "Value": { + "$ref": "#/definitions/AWS::QBusiness::DataSource.DocumentAttributeValue" + } + }, + "required": [ + "Key" + ], + "type": "object" + }, + "AWS::QBusiness::DataSource.DocumentAttributeValue": { + "additionalProperties": false, + "properties": { + "DateValue": { + "type": "string" + }, + "LongValue": { + "type": "number" + }, + "StringListValue": { + "items": { + "type": "string" + }, + "type": "array" + }, + "StringValue": { + "type": "string" + } + }, + "type": "object" + }, + "AWS::QBusiness::DataSource.DocumentEnrichmentConfiguration": { + "additionalProperties": false, + "properties": { + "InlineConfigurations": { + "items": { + "$ref": "#/definitions/AWS::QBusiness::DataSource.InlineDocumentEnrichmentConfiguration" + }, + "type": "array" + }, + "PostExtractionHookConfiguration": { + "$ref": "#/definitions/AWS::QBusiness::DataSource.HookConfiguration" + }, + "PreExtractionHookConfiguration": { + "$ref": "#/definitions/AWS::QBusiness::DataSource.HookConfiguration" + } + }, + "type": "object" + }, + "AWS::QBusiness::DataSource.HookConfiguration": { + "additionalProperties": false, + "properties": { + "InvocationCondition": { + "$ref": "#/definitions/AWS::QBusiness::DataSource.DocumentAttributeCondition" + }, + "LambdaArn": { + "type": "string" + }, + "RoleArn": { + "type": "string" + }, + "S3BucketName": { + "type": "string" + } + }, + "type": "object" + }, + "AWS::QBusiness::DataSource.InlineDocumentEnrichmentConfiguration": { + "additionalProperties": false, + "properties": { + "Condition": { + "$ref": "#/definitions/AWS::QBusiness::DataSource.DocumentAttributeCondition" + }, + "DocumentContentOperator": { + "type": "string" + }, + "Target": { + "$ref": "#/definitions/AWS::QBusiness::DataSource.DocumentAttributeTarget" + } + }, + "type": "object" + }, + "AWS::QBusiness::Index": { + "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": { + "ApplicationId": { + "type": "string" + }, + "CapacityConfiguration": { + "$ref": "#/definitions/AWS::QBusiness::Index.IndexCapacityConfiguration" + }, + "Description": { + "type": "string" + }, + "DisplayName": { + "type": "string" + }, + "DocumentAttributeConfigurations": { + "items": { + "$ref": "#/definitions/AWS::QBusiness::Index.DocumentAttributeConfiguration" + }, + "type": "array" + }, + "Tags": { + "items": { + "$ref": "#/definitions/Tag" + }, + "type": "array" + }, + "Type": { + "type": "string" + } + }, + "required": [ + "ApplicationId", + "DisplayName" + ], + "type": "object" + }, + "Type": { + "enum": [ + "AWS::QBusiness::Index" + ], + "type": "string" + }, + "UpdateReplacePolicy": { + "enum": [ + "Delete", + "Retain", + "Snapshot" + ], + "type": "string" + } + }, + "required": [ + "Type", + "Properties" + ], + "type": "object" + }, + "AWS::QBusiness::Index.DocumentAttributeConfiguration": { + "additionalProperties": false, + "properties": { + "Name": { + "type": "string" + }, + "Search": { + "type": "string" + }, + "Type": { + "type": "string" + } + }, + "type": "object" + }, + "AWS::QBusiness::Index.IndexCapacityConfiguration": { + "additionalProperties": false, + "properties": { + "Units": { + "type": "number" + } + }, + "type": "object" + }, + "AWS::QBusiness::Index.IndexStatistics": { + "additionalProperties": false, + "properties": { + "TextDocumentStatistics": { + "$ref": "#/definitions/AWS::QBusiness::Index.TextDocumentStatistics" + } + }, + "type": "object" + }, + "AWS::QBusiness::Index.TextDocumentStatistics": { + "additionalProperties": false, + "properties": { + "IndexedTextBytes": { + "type": "number" + }, + "IndexedTextDocumentCount": { + "type": "number" + } + }, + "type": "object" + }, + "AWS::QBusiness::Plugin": { + "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": { + "ApplicationId": { + "type": "string" + }, + "AuthConfiguration": { + "$ref": "#/definitions/AWS::QBusiness::Plugin.PluginAuthConfiguration" + }, + "CustomPluginConfiguration": { + "$ref": "#/definitions/AWS::QBusiness::Plugin.CustomPluginConfiguration" + }, + "DisplayName": { + "type": "string" + }, + "ServerUrl": { + "type": "string" + }, + "State": { + "type": "string" + }, + "Tags": { + "items": { + "$ref": "#/definitions/Tag" + }, + "type": "array" + }, + "Type": { + "type": "string" + } + }, + "required": [ + "ApplicationId", + "AuthConfiguration", + "DisplayName", + "Type" + ], + "type": "object" + }, + "Type": { + "enum": [ + "AWS::QBusiness::Plugin" + ], + "type": "string" + }, + "UpdateReplacePolicy": { + "enum": [ + "Delete", + "Retain", + "Snapshot" + ], + "type": "string" + } + }, + "required": [ + "Type", + "Properties" + ], + "type": "object" + }, + "AWS::QBusiness::Plugin.APISchema": { + "additionalProperties": false, + "properties": { + "Payload": { + "type": "string" + }, + "S3": { + "$ref": "#/definitions/AWS::QBusiness::Plugin.S3" + } + }, + "type": "object" + }, + "AWS::QBusiness::Plugin.BasicAuthConfiguration": { + "additionalProperties": false, + "properties": { + "RoleArn": { + "type": "string" + }, + "SecretArn": { + "type": "string" + } + }, + "required": [ + "RoleArn", + "SecretArn" + ], + "type": "object" + }, + "AWS::QBusiness::Plugin.CustomPluginConfiguration": { + "additionalProperties": false, + "properties": { + "ApiSchema": { + "$ref": "#/definitions/AWS::QBusiness::Plugin.APISchema" + }, + "ApiSchemaType": { + "type": "string" + }, + "Description": { + "type": "string" + } + }, + "required": [ + "ApiSchema", + "ApiSchemaType", + "Description" + ], + "type": "object" + }, + "AWS::QBusiness::Plugin.OAuth2ClientCredentialConfiguration": { + "additionalProperties": false, + "properties": { + "RoleArn": { + "type": "string" + }, + "SecretArn": { + "type": "string" + } + }, + "required": [ + "RoleArn", + "SecretArn" + ], + "type": "object" + }, + "AWS::QBusiness::Plugin.PluginAuthConfiguration": { + "additionalProperties": false, + "properties": { + "BasicAuthConfiguration": { + "$ref": "#/definitions/AWS::QBusiness::Plugin.BasicAuthConfiguration" + }, + "NoAuthConfiguration": { + "type": "object" + }, + "OAuth2ClientCredentialConfiguration": { + "$ref": "#/definitions/AWS::QBusiness::Plugin.OAuth2ClientCredentialConfiguration" + } + }, + "type": "object" + }, + "AWS::QBusiness::Plugin.S3": { + "additionalProperties": false, + "properties": { + "Bucket": { + "type": "string" + }, + "Key": { + "type": "string" + } + }, + "required": [ + "Bucket", + "Key" + ], + "type": "object" + }, + "AWS::QBusiness::Retriever": { + "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": { + "ApplicationId": { "type": "string" }, + "Configuration": { + "$ref": "#/definitions/AWS::QBusiness::Retriever.RetrieverConfiguration" + }, "DisplayName": { "type": "string" }, - "EncryptionKey": { + "RoleArn": { "type": "string" }, - "Name": { + "Tags": { + "items": { + "$ref": "#/definitions/Tag" + }, + "type": "array" + }, + "Type": { + "type": "string" + } + }, + "required": [ + "ApplicationId", + "Configuration", + "DisplayName", + "Type" + ], + "type": "object" + }, + "Type": { + "enum": [ + "AWS::QBusiness::Retriever" + ], + "type": "string" + }, + "UpdateReplacePolicy": { + "enum": [ + "Delete", + "Retain", + "Snapshot" + ], + "type": "string" + } + }, + "required": [ + "Type", + "Properties" + ], + "type": "object" + }, + "AWS::QBusiness::Retriever.KendraIndexConfiguration": { + "additionalProperties": false, + "properties": { + "IndexId": { + "type": "string" + } + }, + "required": [ + "IndexId" + ], + "type": "object" + }, + "AWS::QBusiness::Retriever.NativeIndexConfiguration": { + "additionalProperties": false, + "properties": { + "IndexId": { + "type": "string" + } + }, + "required": [ + "IndexId" + ], + "type": "object" + }, + "AWS::QBusiness::Retriever.RetrieverConfiguration": { + "additionalProperties": false, + "properties": { + "KendraIndexConfiguration": { + "$ref": "#/definitions/AWS::QBusiness::Retriever.KendraIndexConfiguration" + }, + "NativeIndexConfiguration": { + "$ref": "#/definitions/AWS::QBusiness::Retriever.NativeIndexConfiguration" + } + }, + "type": "object" + }, + "AWS::QBusiness::WebExperience": { + "additionalProperties": false, + "properties": { + "Condition": { + "type": "string" + }, + "DeletionPolicy": { + "enum": [ + "Delete", + "Retain", + "Snapshot" + ], + "type": "string" + }, + "DependsOn": { + "anyOf": [ + { + "pattern": "^[a-zA-Z0-9]+$", "type": "string" }, - "PipelineProvisioning": { + { + "items": { + "pattern": "^[a-zA-Z0-9]+$", + "type": "string" + }, + "type": "array" + } + ] + }, + "Metadata": { + "type": "object" + }, + "Properties": { + "additionalProperties": false, + "properties": { + "ApplicationId": { + "type": "string" + }, + "RoleArn": { + "type": "string" + }, + "SamplePromptsControlMode": { + "type": "string" + }, + "Subtitle": { "type": "string" }, "Tags": { @@ -148141,13 +150393,22 @@ var CdkSchema = `{ "$ref": "#/definitions/Tag" }, "type": "array" + }, + "Title": { + "type": "string" + }, + "WelcomeMessage": { + "type": "string" } }, + "required": [ + "ApplicationId" + ], "type": "object" }, "Type": { "enum": [ - "AWS::Proton::ServiceTemplate" + "AWS::QBusiness::WebExperience" ], "type": "string" }, @@ -148161,7 +150422,8 @@ var CdkSchema = `{ } }, "required": [ - "Type" + "Type", + "Properties" ], "type": "object" }, @@ -157193,6 +159455,15 @@ var CdkSchema = `{ }, "type": "object" }, + "AWS::QuickSight::Analysis.WaterfallChartColorConfiguration": { + "additionalProperties": false, + "properties": { + "GroupColorConfiguration": { + "$ref": "#/definitions/AWS::QuickSight::Analysis.WaterfallChartGroupColorConfiguration" + } + }, + "type": "object" + }, "AWS::QuickSight::Analysis.WaterfallChartConfiguration": { "additionalProperties": false, "properties": { @@ -157202,6 +159473,9 @@ var CdkSchema = `{ "CategoryAxisLabelOptions": { "$ref": "#/definitions/AWS::QuickSight::Analysis.ChartAxisLabelOptions" }, + "ColorConfiguration": { + "$ref": "#/definitions/AWS::QuickSight::Analysis.WaterfallChartColorConfiguration" + }, "DataLabels": { "$ref": "#/definitions/AWS::QuickSight::Analysis.DataLabelOptions" }, @@ -157238,6 +159512,21 @@ var CdkSchema = `{ }, "type": "object" }, + "AWS::QuickSight::Analysis.WaterfallChartGroupColorConfiguration": { + "additionalProperties": false, + "properties": { + "NegativeBarColor": { + "type": "string" + }, + "PositiveBarColor": { + "type": "string" + }, + "TotalBarColor": { + "type": "string" + } + }, + "type": "object" + }, "AWS::QuickSight::Analysis.WaterfallChartOptions": { "additionalProperties": false, "properties": { @@ -166498,6 +168787,15 @@ var CdkSchema = `{ }, "type": "object" }, + "AWS::QuickSight::Dashboard.WaterfallChartColorConfiguration": { + "additionalProperties": false, + "properties": { + "GroupColorConfiguration": { + "$ref": "#/definitions/AWS::QuickSight::Dashboard.WaterfallChartGroupColorConfiguration" + } + }, + "type": "object" + }, "AWS::QuickSight::Dashboard.WaterfallChartConfiguration": { "additionalProperties": false, "properties": { @@ -166507,6 +168805,9 @@ var CdkSchema = `{ "CategoryAxisLabelOptions": { "$ref": "#/definitions/AWS::QuickSight::Dashboard.ChartAxisLabelOptions" }, + "ColorConfiguration": { + "$ref": "#/definitions/AWS::QuickSight::Dashboard.WaterfallChartColorConfiguration" + }, "DataLabels": { "$ref": "#/definitions/AWS::QuickSight::Dashboard.DataLabelOptions" }, @@ -166543,6 +168844,21 @@ var CdkSchema = `{ }, "type": "object" }, + "AWS::QuickSight::Dashboard.WaterfallChartGroupColorConfiguration": { + "additionalProperties": false, + "properties": { + "NegativeBarColor": { + "type": "string" + }, + "PositiveBarColor": { + "type": "string" + }, + "TotalBarColor": { + "type": "string" + } + }, + "type": "object" + }, "AWS::QuickSight::Dashboard.WaterfallChartOptions": { "additionalProperties": false, "properties": { @@ -167034,6 +169350,9 @@ var CdkSchema = `{ "$ref": "#/definitions/AWS::QuickSight::DataSet.RefreshConfiguration" } }, + "required": [ + "RefreshConfiguration" + ], "type": "object" }, "AWS::QuickSight::DataSet.DataSetUsageConfiguration": { @@ -167195,6 +169514,9 @@ var CdkSchema = `{ "$ref": "#/definitions/AWS::QuickSight::DataSet.LookbackWindow" } }, + "required": [ + "LookbackWindow" + ], "type": "object" }, "AWS::QuickSight::DataSet.IngestionWaitPolicy": { @@ -167352,6 +169674,11 @@ var CdkSchema = `{ "type": "string" } }, + "required": [ + "ColumnName", + "Size", + "SizeUnit" + ], "type": "object" }, "AWS::QuickSight::DataSet.NewDefaultValues": { @@ -167457,6 +169784,9 @@ var CdkSchema = `{ "$ref": "#/definitions/AWS::QuickSight::DataSet.IncrementalRefresh" } }, + "required": [ + "IncrementalRefresh" + ], "type": "object" }, "AWS::QuickSight::DataSet.RelationalTable": { @@ -167690,10 +170020,32 @@ var CdkSchema = `{ }, "TagColumnOperation": { "$ref": "#/definitions/AWS::QuickSight::DataSet.TagColumnOperation" + }, + "UntagColumnOperation": { + "$ref": "#/definitions/AWS::QuickSight::DataSet.UntagColumnOperation" } }, "type": "object" }, + "AWS::QuickSight::DataSet.UntagColumnOperation": { + "additionalProperties": false, + "properties": { + "ColumnName": { + "type": "string" + }, + "TagNames": { + "items": { + "type": "string" + }, + "type": "array" + } + }, + "required": [ + "ColumnName", + "TagNames" + ], + "type": "object" + }, "AWS::QuickSight::DataSet.UploadSettings": { "additionalProperties": false, "properties": { @@ -167796,6 +170148,10 @@ var CdkSchema = `{ "$ref": "#/definitions/AWS::QuickSight::DataSource.VpcConnectionProperties" } }, + "required": [ + "Name", + "Type" + ], "type": "object" }, "Type": { @@ -167814,7 +170170,8 @@ var CdkSchema = `{ } }, "required": [ - "Type" + "Type", + "Properties" ], "type": "object" }, @@ -168029,6 +170386,15 @@ var CdkSchema = `{ ], "type": "object" }, + "AWS::QuickSight::DataSource.IdentityCenterConfiguration": { + "additionalProperties": false, + "properties": { + "EnableIdentityPropagation": { + "type": "boolean" + } + }, + "type": "object" + }, "AWS::QuickSight::DataSource.ManifestFileLocation": { "additionalProperties": false, "properties": { @@ -168161,6 +170527,30 @@ var CdkSchema = `{ ], "type": "object" }, + "AWS::QuickSight::DataSource.RedshiftIAMParameters": { + "additionalProperties": false, + "properties": { + "AutoCreateDatabaseUser": { + "type": "boolean" + }, + "DatabaseGroups": { + "items": { + "type": "string" + }, + "type": "array" + }, + "DatabaseUser": { + "type": "string" + }, + "RoleArn": { + "type": "string" + } + }, + "required": [ + "RoleArn" + ], + "type": "object" + }, "AWS::QuickSight::DataSource.RedshiftParameters": { "additionalProperties": false, "properties": { @@ -168173,6 +170563,12 @@ var CdkSchema = `{ "Host": { "type": "string" }, + "IAMParameters": { + "$ref": "#/definitions/AWS::QuickSight::DataSource.RedshiftIAMParameters" + }, + "IdentityCenterConfiguration": { + "$ref": "#/definitions/AWS::QuickSight::DataSource.IdentityCenterConfiguration" + }, "Port": { "type": "number" } @@ -168193,6 +170589,9 @@ var CdkSchema = `{ }, "Principal": { "type": "string" + }, + "Resource": { + "type": "string" } }, "required": [ @@ -177302,6 +179701,15 @@ var CdkSchema = `{ }, "type": "object" }, + "AWS::QuickSight::Template.WaterfallChartColorConfiguration": { + "additionalProperties": false, + "properties": { + "GroupColorConfiguration": { + "$ref": "#/definitions/AWS::QuickSight::Template.WaterfallChartGroupColorConfiguration" + } + }, + "type": "object" + }, "AWS::QuickSight::Template.WaterfallChartConfiguration": { "additionalProperties": false, "properties": { @@ -177311,6 +179719,9 @@ var CdkSchema = `{ "CategoryAxisLabelOptions": { "$ref": "#/definitions/AWS::QuickSight::Template.ChartAxisLabelOptions" }, + "ColorConfiguration": { + "$ref": "#/definitions/AWS::QuickSight::Template.WaterfallChartColorConfiguration" + }, "DataLabels": { "$ref": "#/definitions/AWS::QuickSight::Template.DataLabelOptions" }, @@ -177347,6 +179758,21 @@ var CdkSchema = `{ }, "type": "object" }, + "AWS::QuickSight::Template.WaterfallChartGroupColorConfiguration": { + "additionalProperties": false, + "properties": { + "NegativeBarColor": { + "type": "string" + }, + "PositiveBarColor": { + "type": "string" + }, + "TotalBarColor": { + "type": "string" + } + }, + "type": "object" + }, "AWS::QuickSight::Template.WaterfallChartOptions": { "additionalProperties": false, "properties": { @@ -178288,6 +180714,9 @@ var CdkSchema = `{ "DefaultFormatting": { "$ref": "#/definitions/AWS::QuickSight::Topic.DefaultFormatting" }, + "DisableIndexing": { + "type": "boolean" + }, "Expression": { "type": "string" }, @@ -178394,6 +180823,9 @@ var CdkSchema = `{ "DefaultFormatting": { "$ref": "#/definitions/AWS::QuickSight::Topic.DefaultFormatting" }, + "DisableIndexing": { + "type": "boolean" + }, "IsIncludedInTopic": { "type": "boolean" }, @@ -184707,6 +187139,12 @@ var CdkSchema = `{ "Properties": { "additionalProperties": false, "properties": { + "AttributeMappings": { + "items": { + "$ref": "#/definitions/AWS::RolesAnywhere::Profile.AttributeMapping" + }, + "type": "array" + }, "DurationSeconds": { "type": "number" }, @@ -184768,6 +187206,37 @@ var CdkSchema = `{ ], "type": "object" }, + "AWS::RolesAnywhere::Profile.AttributeMapping": { + "additionalProperties": false, + "properties": { + "CertificateField": { + "type": "string" + }, + "MappingRules": { + "items": { + "$ref": "#/definitions/AWS::RolesAnywhere::Profile.MappingRule" + }, + "type": "array" + } + }, + "required": [ + "CertificateField", + "MappingRules" + ], + "type": "object" + }, + "AWS::RolesAnywhere::Profile.MappingRule": { + "additionalProperties": false, + "properties": { + "Specifier": { + "type": "string" + } + }, + "required": [ + "Specifier" + ], + "type": "object" + }, "AWS::RolesAnywhere::TrustAnchor": { "additionalProperties": false, "properties": { @@ -186999,6 +189468,9 @@ var CdkSchema = `{ "FirewallDomainListId": { "type": "string" }, + "FirewallDomainRedirectionAction": { + "type": "string" + }, "Priority": { "type": "number" }, @@ -195021,6 +197493,194 @@ var CdkSchema = `{ ], "type": "object" }, + "AWS::SSO::Application": { + "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": { + "ApplicationProviderArn": { + "type": "string" + }, + "Description": { + "type": "string" + }, + "InstanceArn": { + "type": "string" + }, + "Name": { + "type": "string" + }, + "PortalOptions": { + "$ref": "#/definitions/AWS::SSO::Application.PortalOptionsConfiguration" + }, + "Status": { + "type": "string" + }, + "Tags": { + "items": { + "$ref": "#/definitions/Tag" + }, + "type": "array" + } + }, + "required": [ + "ApplicationProviderArn", + "InstanceArn", + "Name" + ], + "type": "object" + }, + "Type": { + "enum": [ + "AWS::SSO::Application" + ], + "type": "string" + }, + "UpdateReplacePolicy": { + "enum": [ + "Delete", + "Retain", + "Snapshot" + ], + "type": "string" + } + }, + "required": [ + "Type", + "Properties" + ], + "type": "object" + }, + "AWS::SSO::Application.PortalOptionsConfiguration": { + "additionalProperties": false, + "properties": { + "SignInOptions": { + "$ref": "#/definitions/AWS::SSO::Application.SignInOptions" + }, + "Visibility": { + "type": "string" + } + }, + "type": "object" + }, + "AWS::SSO::Application.SignInOptions": { + "additionalProperties": false, + "properties": { + "ApplicationUrl": { + "type": "string" + }, + "Origin": { + "type": "string" + } + }, + "required": [ + "Origin" + ], + "type": "object" + }, + "AWS::SSO::ApplicationAssignment": { + "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": { + "ApplicationArn": { + "type": "string" + }, + "PrincipalId": { + "type": "string" + }, + "PrincipalType": { + "type": "string" + } + }, + "required": [ + "ApplicationArn", + "PrincipalId", + "PrincipalType" + ], + "type": "object" + }, + "Type": { + "enum": [ + "AWS::SSO::ApplicationAssignment" + ], + "type": "string" + }, + "UpdateReplacePolicy": { + "enum": [ + "Delete", + "Retain", + "Snapshot" + ], + "type": "string" + } + }, + "required": [ + "Type", + "Properties" + ], + "type": "object" + }, "AWS::SSO::Assignment": { "additionalProperties": false, "properties": { @@ -195056,38 +197716,106 @@ var CdkSchema = `{ "Properties": { "additionalProperties": false, "properties": { - "InstanceArn": { - "type": "string" - }, - "PermissionSetArn": { - "type": "string" - }, - "PrincipalId": { - "type": "string" - }, - "PrincipalType": { - "type": "string" - }, - "TargetId": { + "InstanceArn": { + "type": "string" + }, + "PermissionSetArn": { + "type": "string" + }, + "PrincipalId": { + "type": "string" + }, + "PrincipalType": { + "type": "string" + }, + "TargetId": { + "type": "string" + }, + "TargetType": { + "type": "string" + } + }, + "required": [ + "InstanceArn", + "PermissionSetArn", + "PrincipalId", + "PrincipalType", + "TargetId", + "TargetType" + ], + "type": "object" + }, + "Type": { + "enum": [ + "AWS::SSO::Assignment" + ], + "type": "string" + }, + "UpdateReplacePolicy": { + "enum": [ + "Delete", + "Retain", + "Snapshot" + ], + "type": "string" + } + }, + "required": [ + "Type", + "Properties" + ], + "type": "object" + }, + "AWS::SSO::Instance": { + "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": { + "Name": { "type": "string" }, - "TargetType": { - "type": "string" + "Tags": { + "items": { + "$ref": "#/definitions/Tag" + }, + "type": "array" } }, - "required": [ - "InstanceArn", - "PermissionSetArn", - "PrincipalId", - "PrincipalType", - "TargetId", - "TargetType" - ], "type": "object" }, "Type": { "enum": [ - "AWS::SSO::Assignment" + "AWS::SSO::Instance" ], "type": "string" }, @@ -195101,8 +197829,7 @@ var CdkSchema = `{ } }, "required": [ - "Type", - "Properties" + "Type" ], "type": "object" }, @@ -196512,9 +199239,21 @@ var CdkSchema = `{ "AWS::SageMaker::Domain.DefaultSpaceSettings": { "additionalProperties": false, "properties": { + "CustomFileSystemConfigs": { + "items": { + "$ref": "#/definitions/AWS::SageMaker::Domain.CustomFileSystemConfig" + }, + "type": "array" + }, + "CustomPosixUserConfig": { + "$ref": "#/definitions/AWS::SageMaker::Domain.CustomPosixUserConfig" + }, "ExecutionRole": { "type": "string" }, + "JupyterLabAppSettings": { + "$ref": "#/definitions/AWS::SageMaker::Domain.JupyterLabAppSettings" + }, "JupyterServerAppSettings": { "$ref": "#/definitions/AWS::SageMaker::Domain.JupyterServerAppSettings" }, @@ -196526,6 +199265,9 @@ var CdkSchema = `{ "type": "string" }, "type": "array" + }, + "SpaceStorageSettings": { + "$ref": "#/definitions/AWS::SageMaker::Domain.DefaultSpaceStorageSettings" } }, "required": [ @@ -204311,6 +207053,210 @@ var CdkSchema = `{ ], "type": "object" }, + "AWS::SecurityHub::ConfigurationPolicy": { + "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": { + "ConfigurationPolicy": { + "$ref": "#/definitions/AWS::SecurityHub::ConfigurationPolicy.Policy" + }, + "Description": { + "type": "string" + }, + "Name": { + "type": "string" + }, + "Tags": { + "additionalProperties": true, + "patternProperties": { + "^[a-zA-Z0-9]+$": { + "type": "string" + } + }, + "type": "object" + } + }, + "required": [ + "ConfigurationPolicy", + "Name" + ], + "type": "object" + }, + "Type": { + "enum": [ + "AWS::SecurityHub::ConfigurationPolicy" + ], + "type": "string" + }, + "UpdateReplacePolicy": { + "enum": [ + "Delete", + "Retain", + "Snapshot" + ], + "type": "string" + } + }, + "required": [ + "Type", + "Properties" + ], + "type": "object" + }, + "AWS::SecurityHub::ConfigurationPolicy.ParameterConfiguration": { + "additionalProperties": false, + "properties": { + "Value": { + "$ref": "#/definitions/AWS::SecurityHub::ConfigurationPolicy.ParameterValue" + }, + "ValueType": { + "type": "string" + } + }, + "required": [ + "ValueType" + ], + "type": "object" + }, + "AWS::SecurityHub::ConfigurationPolicy.ParameterValue": { + "additionalProperties": false, + "properties": { + "Boolean": { + "type": "boolean" + }, + "Double": { + "type": "number" + }, + "Enum": { + "type": "string" + }, + "EnumList": { + "items": { + "type": "string" + }, + "type": "array" + }, + "Integer": { + "type": "number" + }, + "IntegerList": { + "items": { + "type": "number" + }, + "type": "array" + }, + "String": { + "type": "string" + }, + "StringList": { + "items": { + "type": "string" + }, + "type": "array" + } + }, + "type": "object" + }, + "AWS::SecurityHub::ConfigurationPolicy.Policy": { + "additionalProperties": false, + "properties": { + "SecurityHub": { + "$ref": "#/definitions/AWS::SecurityHub::ConfigurationPolicy.SecurityHubPolicy" + } + }, + "type": "object" + }, + "AWS::SecurityHub::ConfigurationPolicy.SecurityControlCustomParameter": { + "additionalProperties": false, + "properties": { + "Parameters": { + "additionalProperties": false, + "patternProperties": { + "^[a-zA-Z0-9]+$": { + "$ref": "#/definitions/AWS::SecurityHub::ConfigurationPolicy.ParameterConfiguration" + } + }, + "type": "object" + }, + "SecurityControlId": { + "type": "string" + } + }, + "type": "object" + }, + "AWS::SecurityHub::ConfigurationPolicy.SecurityControlsConfiguration": { + "additionalProperties": false, + "properties": { + "DisabledSecurityControlIdentifiers": { + "items": { + "type": "string" + }, + "type": "array" + }, + "EnabledSecurityControlIdentifiers": { + "items": { + "type": "string" + }, + "type": "array" + }, + "SecurityControlCustomParameters": { + "items": { + "$ref": "#/definitions/AWS::SecurityHub::ConfigurationPolicy.SecurityControlCustomParameter" + }, + "type": "array" + } + }, + "type": "object" + }, + "AWS::SecurityHub::ConfigurationPolicy.SecurityHubPolicy": { + "additionalProperties": false, + "properties": { + "EnabledStandardIdentifiers": { + "items": { + "type": "string" + }, + "type": "array" + }, + "SecurityControlsConfiguration": { + "$ref": "#/definitions/AWS::SecurityHub::ConfigurationPolicy.SecurityControlsConfiguration" + }, + "ServiceEnabled": { + "type": "boolean" + } + }, + "type": "object" + }, "AWS::SecurityHub::DelegatedAdmin": { "additionalProperties": false, "properties": { @@ -204376,6 +207322,77 @@ var CdkSchema = `{ ], "type": "object" }, + "AWS::SecurityHub::FindingAggregator": { + "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": { + "RegionLinkingMode": { + "type": "string" + }, + "Regions": { + "items": { + "type": "string" + }, + "type": "array" + } + }, + "required": [ + "RegionLinkingMode" + ], + "type": "object" + }, + "Type": { + "enum": [ + "AWS::SecurityHub::FindingAggregator" + ], + "type": "string" + }, + "UpdateReplacePolicy": { + "enum": [ + "Delete", + "Retain", + "Snapshot" + ], + "type": "string" + } + }, + "required": [ + "Type", + "Properties" + ], + "type": "object" + }, "AWS::SecurityHub::Hub": { "additionalProperties": false, "properties": { @@ -205237,6 +208254,150 @@ var CdkSchema = `{ ], "type": "object" }, + "AWS::SecurityHub::OrganizationConfiguration": { + "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": { + "AutoEnable": { + "type": "boolean" + }, + "AutoEnableStandards": { + "type": "string" + }, + "ConfigurationType": { + "type": "string" + } + }, + "required": [ + "AutoEnable" + ], + "type": "object" + }, + "Type": { + "enum": [ + "AWS::SecurityHub::OrganizationConfiguration" + ], + "type": "string" + }, + "UpdateReplacePolicy": { + "enum": [ + "Delete", + "Retain", + "Snapshot" + ], + "type": "string" + } + }, + "required": [ + "Type", + "Properties" + ], + "type": "object" + }, + "AWS::SecurityHub::PolicyAssociation": { + "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": { + "ConfigurationPolicyId": { + "type": "string" + }, + "TargetId": { + "type": "string" + }, + "TargetType": { + "type": "string" + } + }, + "required": [ + "ConfigurationPolicyId", + "TargetId", + "TargetType" + ], + "type": "object" + }, + "Type": { + "enum": [ + "AWS::SecurityHub::PolicyAssociation" + ], + "type": "string" + }, + "UpdateReplacePolicy": { + "enum": [ + "Delete", + "Retain", + "Snapshot" + ], + "type": "string" + } + }, + "required": [ + "Type", + "Properties" + ], + "type": "object" + }, "AWS::SecurityHub::ProductSubscription": { "additionalProperties": false, "properties": { @@ -205302,6 +208463,140 @@ var CdkSchema = `{ ], "type": "object" }, + "AWS::SecurityHub::SecurityControl": { + "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": { + "LastUpdateReason": { + "type": "string" + }, + "Parameters": { + "additionalProperties": false, + "patternProperties": { + "^[a-zA-Z0-9]+$": { + "$ref": "#/definitions/AWS::SecurityHub::SecurityControl.ParameterConfiguration" + } + }, + "type": "object" + }, + "SecurityControlArn": { + "type": "string" + }, + "SecurityControlId": { + "type": "string" + } + }, + "required": [ + "Parameters" + ], + "type": "object" + }, + "Type": { + "enum": [ + "AWS::SecurityHub::SecurityControl" + ], + "type": "string" + }, + "UpdateReplacePolicy": { + "enum": [ + "Delete", + "Retain", + "Snapshot" + ], + "type": "string" + } + }, + "required": [ + "Type", + "Properties" + ], + "type": "object" + }, + "AWS::SecurityHub::SecurityControl.ParameterConfiguration": { + "additionalProperties": false, + "properties": { + "Value": { + "$ref": "#/definitions/AWS::SecurityHub::SecurityControl.ParameterValue" + }, + "ValueType": { + "type": "string" + } + }, + "required": [ + "ValueType" + ], + "type": "object" + }, + "AWS::SecurityHub::SecurityControl.ParameterValue": { + "additionalProperties": false, + "properties": { + "Boolean": { + "type": "boolean" + }, + "Double": { + "type": "number" + }, + "Enum": { + "type": "string" + }, + "EnumList": { + "items": { + "type": "string" + }, + "type": "array" + }, + "Integer": { + "type": "number" + }, + "IntegerList": { + "items": { + "type": "number" + }, + "type": "array" + }, + "String": { + "type": "string" + }, + "StringList": { + "items": { + "type": "string" + }, + "type": "array" + } + }, + "type": "object" + }, "AWS::SecurityHub::Standard": { "additionalProperties": false, "properties": { @@ -205423,7 +208718,222 @@ var CdkSchema = `{ "Properties": { "additionalProperties": false, "properties": { - "Accounts": { + "Accounts": { + "items": { + "type": "string" + }, + "type": "array" + }, + "DataLakeArn": { + "type": "string" + }, + "SourceName": { + "type": "string" + }, + "SourceVersion": { + "type": "string" + } + }, + "required": [ + "DataLakeArn", + "SourceName", + "SourceVersion" + ], + "type": "object" + }, + "Type": { + "enum": [ + "AWS::SecurityLake::AwsLogSource" + ], + "type": "string" + }, + "UpdateReplacePolicy": { + "enum": [ + "Delete", + "Retain", + "Snapshot" + ], + "type": "string" + } + }, + "required": [ + "Type", + "Properties" + ], + "type": "object" + }, + "AWS::SecurityLake::DataLake": { + "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": { + "EncryptionConfiguration": { + "$ref": "#/definitions/AWS::SecurityLake::DataLake.EncryptionConfiguration" + }, + "LifecycleConfiguration": { + "$ref": "#/definitions/AWS::SecurityLake::DataLake.LifecycleConfiguration" + }, + "MetaStoreManagerRoleArn": { + "type": "string" + }, + "ReplicationConfiguration": { + "$ref": "#/definitions/AWS::SecurityLake::DataLake.ReplicationConfiguration" + }, + "Tags": { + "items": { + "$ref": "#/definitions/Tag" + }, + "type": "array" + } + }, + "type": "object" + }, + "Type": { + "enum": [ + "AWS::SecurityLake::DataLake" + ], + "type": "string" + }, + "UpdateReplacePolicy": { + "enum": [ + "Delete", + "Retain", + "Snapshot" + ], + "type": "string" + } + }, + "required": [ + "Type" + ], + "type": "object" + }, + "AWS::SecurityLake::DataLake.EncryptionConfiguration": { + "additionalProperties": false, + "properties": { + "KmsKeyId": { + "type": "string" + } + }, + "type": "object" + }, + "AWS::SecurityLake::DataLake.Expiration": { + "additionalProperties": false, + "properties": { + "Days": { + "type": "number" + } + }, + "type": "object" + }, + "AWS::SecurityLake::DataLake.LifecycleConfiguration": { + "additionalProperties": false, + "properties": { + "Expiration": { + "$ref": "#/definitions/AWS::SecurityLake::DataLake.Expiration" + }, + "Transitions": { + "items": { + "$ref": "#/definitions/AWS::SecurityLake::DataLake.Transitions" + }, + "type": "array" + } + }, + "type": "object" + }, + "AWS::SecurityLake::DataLake.ReplicationConfiguration": { + "additionalProperties": false, + "properties": { + "Regions": { + "items": { + "type": "string" + }, + "type": "array" + }, + "RoleArn": { + "type": "string" + } + }, + "type": "object" + }, + "AWS::SecurityLake::DataLake.Transitions": { + "additionalProperties": false, + "properties": { + "Days": { + "type": "number" + }, + "StorageClass": { + "type": "string" + } + }, + "type": "object" + }, + "AWS::SecurityLake::Subscriber": { + "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": { + "AccessTypes": { "items": { "type": "string" }, @@ -205432,87 +208942,20 @@ var CdkSchema = `{ "DataLakeArn": { "type": "string" }, - "SourceName": { - "type": "string" - }, - "SourceVersion": { - "type": "string" - } - }, - "required": [ - "DataLakeArn", - "SourceName", - "SourceVersion" - ], - "type": "object" - }, - "Type": { - "enum": [ - "AWS::SecurityLake::AwsLogSource" - ], - "type": "string" - }, - "UpdateReplacePolicy": { - "enum": [ - "Delete", - "Retain", - "Snapshot" - ], - "type": "string" - } - }, - "required": [ - "Type", - "Properties" - ], - "type": "object" - }, - "AWS::SecurityLake::DataLake": { - "additionalProperties": false, - "properties": { - "Condition": { - "type": "string" - }, - "DeletionPolicy": { - "enum": [ - "Delete", - "Retain", - "Snapshot" - ], - "type": "string" - }, - "DependsOn": { - "anyOf": [ - { - "pattern": "^[a-zA-Z0-9]+$", - "type": "string" - }, - { + "Sources": { "items": { - "pattern": "^[a-zA-Z0-9]+$", - "type": "string" + "$ref": "#/definitions/AWS::SecurityLake::Subscriber.Source" }, "type": "array" - } - ] - }, - "Metadata": { - "type": "object" - }, - "Properties": { - "additionalProperties": false, - "properties": { - "EncryptionConfiguration": { - "$ref": "#/definitions/AWS::SecurityLake::DataLake.EncryptionConfiguration" }, - "LifecycleConfiguration": { - "$ref": "#/definitions/AWS::SecurityLake::DataLake.LifecycleConfiguration" - }, - "MetaStoreManagerRoleArn": { + "SubscriberDescription": { "type": "string" }, - "ReplicationConfiguration": { - "$ref": "#/definitions/AWS::SecurityLake::DataLake.ReplicationConfiguration" + "SubscriberIdentity": { + "$ref": "#/definitions/AWS::SecurityLake::Subscriber.SubscriberIdentity" + }, + "SubscriberName": { + "type": "string" }, "Tags": { "items": { @@ -205521,11 +208964,18 @@ var CdkSchema = `{ "type": "array" } }, + "required": [ + "AccessTypes", + "DataLakeArn", + "Sources", + "SubscriberIdentity", + "SubscriberName" + ], "type": "object" }, "Type": { "enum": [ - "AWS::SecurityLake::DataLake" + "AWS::SecurityLake::Subscriber" ], "type": "string" }, @@ -205539,71 +208989,64 @@ var CdkSchema = `{ } }, "required": [ - "Type" + "Type", + "Properties" ], "type": "object" }, - "AWS::SecurityLake::DataLake.EncryptionConfiguration": { + "AWS::SecurityLake::Subscriber.AwsLogSource": { "additionalProperties": false, "properties": { - "KmsKeyId": { + "SourceName": { + "type": "string" + }, + "SourceVersion": { "type": "string" } }, "type": "object" }, - "AWS::SecurityLake::DataLake.Expiration": { - "additionalProperties": false, - "properties": { - "Days": { - "type": "number" - } - }, - "type": "object" - }, - "AWS::SecurityLake::DataLake.LifecycleConfiguration": { + "AWS::SecurityLake::Subscriber.CustomLogSource": { "additionalProperties": false, "properties": { - "Expiration": { - "$ref": "#/definitions/AWS::SecurityLake::DataLake.Expiration" + "SourceName": { + "type": "string" }, - "Transitions": { - "items": { - "$ref": "#/definitions/AWS::SecurityLake::DataLake.Transitions" - }, - "type": "array" + "SourceVersion": { + "type": "string" } }, "type": "object" }, - "AWS::SecurityLake::DataLake.ReplicationConfiguration": { + "AWS::SecurityLake::Subscriber.Source": { "additionalProperties": false, "properties": { - "Regions": { - "items": { - "type": "string" - }, - "type": "array" + "AwsLogSource": { + "$ref": "#/definitions/AWS::SecurityLake::Subscriber.AwsLogSource" }, - "RoleArn": { - "type": "string" + "CustomLogSource": { + "$ref": "#/definitions/AWS::SecurityLake::Subscriber.CustomLogSource" } }, "type": "object" }, - "AWS::SecurityLake::DataLake.Transitions": { + "AWS::SecurityLake::Subscriber.SubscriberIdentity": { "additionalProperties": false, "properties": { - "Days": { - "type": "number" + "ExternalId": { + "type": "string" }, - "StorageClass": { + "Principal": { "type": "string" } }, + "required": [ + "ExternalId", + "Principal" + ], "type": "object" }, - "AWS::SecurityLake::Subscriber": { + "AWS::SecurityLake::SubscriberNotification": { "additionalProperties": false, "properties": { "Condition": { @@ -205638,49 +209081,22 @@ var CdkSchema = `{ "Properties": { "additionalProperties": false, "properties": { - "AccessTypes": { - "items": { - "type": "string" - }, - "type": "array" - }, - "DataLakeArn": { - "type": "string" - }, - "Sources": { - "items": { - "$ref": "#/definitions/AWS::SecurityLake::Subscriber.Source" - }, - "type": "array" - }, - "SubscriberDescription": { - "type": "string" - }, - "SubscriberIdentity": { - "$ref": "#/definitions/AWS::SecurityLake::Subscriber.SubscriberIdentity" + "NotificationConfiguration": { + "$ref": "#/definitions/AWS::SecurityLake::SubscriberNotification.NotificationConfiguration" }, - "SubscriberName": { + "SubscriberArn": { "type": "string" - }, - "Tags": { - "items": { - "$ref": "#/definitions/Tag" - }, - "type": "array" } }, "required": [ - "AccessTypes", - "DataLakeArn", - "Sources", - "SubscriberIdentity", - "SubscriberName" + "NotificationConfiguration", + "SubscriberArn" ], "type": "object" }, "Type": { "enum": [ - "AWS::SecurityLake::Subscriber" + "AWS::SecurityLake::SubscriberNotification" ], "type": "string" }, @@ -205699,56 +209115,41 @@ var CdkSchema = `{ ], "type": "object" }, - "AWS::SecurityLake::Subscriber.AwsLogSource": { + "AWS::SecurityLake::SubscriberNotification.HttpsNotificationConfiguration": { "additionalProperties": false, "properties": { - "SourceName": { + "AuthorizationApiKeyName": { "type": "string" }, - "SourceVersion": { + "AuthorizationApiKeyValue": { "type": "string" - } - }, - "type": "object" - }, - "AWS::SecurityLake::Subscriber.CustomLogSource": { - "additionalProperties": false, - "properties": { - "SourceName": { + }, + "Endpoint": { "type": "string" }, - "SourceVersion": { + "HttpMethod": { "type": "string" - } - }, - "type": "object" - }, - "AWS::SecurityLake::Subscriber.Source": { - "additionalProperties": false, - "properties": { - "AwsLogSource": { - "$ref": "#/definitions/AWS::SecurityLake::Subscriber.AwsLogSource" }, - "CustomLogSource": { - "$ref": "#/definitions/AWS::SecurityLake::Subscriber.CustomLogSource" + "TargetRoleArn": { + "type": "string" } }, + "required": [ + "Endpoint", + "TargetRoleArn" + ], "type": "object" }, - "AWS::SecurityLake::Subscriber.SubscriberIdentity": { + "AWS::SecurityLake::SubscriberNotification.NotificationConfiguration": { "additionalProperties": false, "properties": { - "ExternalId": { - "type": "string" + "HttpsNotificationConfiguration": { + "$ref": "#/definitions/AWS::SecurityLake::SubscriberNotification.HttpsNotificationConfiguration" }, - "Principal": { - "type": "string" + "SqsNotificationConfiguration": { + "type": "object" } }, - "required": [ - "ExternalId", - "Principal" - ], "type": "object" }, "AWS::ServiceCatalog::AcceptedPortfolioShare": { @@ -210649,6 +214050,9 @@ var CdkSchema = `{ "LoggingRole": { "type": "string" }, + "SecurityPolicyName": { + "type": "string" + }, "SftpConfig": { "$ref": "#/definitions/AWS::Transfer::Connector.SftpConfig" }, @@ -211350,6 +214754,10 @@ var CdkSchema = `{ "type": "string" } }, + "required": [ + "DestinationFileLocation", + "Type" + ], "type": "object" }, "AWS::Transfer::Workflow.DeleteStepDetails": { @@ -220173,6 +223581,9 @@ var CdkSchema = `{ { "$ref": "#/definitions/AWS::Bedrock::Guardrail" }, + { + "$ref": "#/definitions/AWS::Bedrock::GuardrailVersion" + }, { "$ref": "#/definitions/AWS::Bedrock::KnowledgeBase" }, @@ -220731,12 +224142,21 @@ var CdkSchema = `{ { "$ref": "#/definitions/AWS::DataZone::EnvironmentProfile" }, + { + "$ref": "#/definitions/AWS::DataZone::GroupProfile" + }, { "$ref": "#/definitions/AWS::DataZone::Project" }, + { + "$ref": "#/definitions/AWS::DataZone::ProjectMembership" + }, { "$ref": "#/definitions/AWS::DataZone::SubscriptionTarget" }, + { + "$ref": "#/definitions/AWS::DataZone::UserProfile" + }, { "$ref": "#/definitions/AWS::Deadline::Farm" }, @@ -222330,6 +225750,9 @@ var CdkSchema = `{ { "$ref": "#/definitions/AWS::Neptune::DBSubnetGroup" }, + { + "$ref": "#/definitions/AWS::Neptune::EventSubscription" + }, { "$ref": "#/definitions/AWS::NeptuneGraph::Graph" }, @@ -222615,6 +226038,24 @@ var CdkSchema = `{ { "$ref": "#/definitions/AWS::Proton::ServiceTemplate" }, + { + "$ref": "#/definitions/AWS::QBusiness::Application" + }, + { + "$ref": "#/definitions/AWS::QBusiness::DataSource" + }, + { + "$ref": "#/definitions/AWS::QBusiness::Index" + }, + { + "$ref": "#/definitions/AWS::QBusiness::Plugin" + }, + { + "$ref": "#/definitions/AWS::QBusiness::Retriever" + }, + { + "$ref": "#/definitions/AWS::QBusiness::WebExperience" + }, { "$ref": "#/definitions/AWS::QLDB::Ledger" }, @@ -223041,9 +226482,18 @@ var CdkSchema = `{ { "$ref": "#/definitions/AWS::SSMIncidents::ResponsePlan" }, + { + "$ref": "#/definitions/AWS::SSO::Application" + }, + { + "$ref": "#/definitions/AWS::SSO::ApplicationAssignment" + }, { "$ref": "#/definitions/AWS::SSO::Assignment" }, + { + "$ref": "#/definitions/AWS::SSO::Instance" + }, { "$ref": "#/definitions/AWS::SSO::InstanceAccessControlAttributeConfiguration" }, @@ -223158,18 +226608,33 @@ var CdkSchema = `{ { "$ref": "#/definitions/AWS::SecurityHub::AutomationRule" }, + { + "$ref": "#/definitions/AWS::SecurityHub::ConfigurationPolicy" + }, { "$ref": "#/definitions/AWS::SecurityHub::DelegatedAdmin" }, + { + "$ref": "#/definitions/AWS::SecurityHub::FindingAggregator" + }, { "$ref": "#/definitions/AWS::SecurityHub::Hub" }, { "$ref": "#/definitions/AWS::SecurityHub::Insight" }, + { + "$ref": "#/definitions/AWS::SecurityHub::OrganizationConfiguration" + }, + { + "$ref": "#/definitions/AWS::SecurityHub::PolicyAssociation" + }, { "$ref": "#/definitions/AWS::SecurityHub::ProductSubscription" }, + { + "$ref": "#/definitions/AWS::SecurityHub::SecurityControl" + }, { "$ref": "#/definitions/AWS::SecurityHub::Standard" }, @@ -223182,6 +226647,9 @@ var CdkSchema = `{ { "$ref": "#/definitions/AWS::SecurityLake::Subscriber" }, + { + "$ref": "#/definitions/AWS::SecurityLake::SubscriberNotification" + }, { "$ref": "#/definitions/AWS::ServiceCatalog::AcceptedPortfolioShare" }, diff --git a/schema/cdk.schema.json b/schema/cdk.schema.json index edab74ef4a..49e75d8f4b 100644 --- a/schema/cdk.schema.json +++ b/schema/cdk.schema.json @@ -536,6 +536,9 @@ "type": "string" } }, + "required": [ + "Enabled" + ], "type": "object" }, "AWS::ACMPCA::CertificateAuthority.CrlDistributionPointExtensionConfiguration": { @@ -592,7 +595,6 @@ } }, "required": [ - "NameAssigner", "PartyName" ], "type": "object" @@ -670,6 +672,9 @@ "type": "string" } }, + "required": [ + "Enabled" + ], "type": "object" }, "AWS::ACMPCA::CertificateAuthority.OtherName": { @@ -19179,6 +19184,12 @@ "MetricName": { "type": "string" }, + "Metrics": { + "items": { + "$ref": "#/definitions/AWS::AutoScaling::ScalingPolicy.TargetTrackingMetricDataQuery" + }, + "type": "array" + }, "Namespace": { "type": "string" }, @@ -19189,11 +19200,6 @@ "type": "string" } }, - "required": [ - "MetricName", - "Namespace", - "Statistic" - ], "type": "object" }, "AWS::AutoScaling::ScalingPolicy.Metric": { @@ -19478,6 +19484,49 @@ ], "type": "object" }, + "AWS::AutoScaling::ScalingPolicy.TargetTrackingMetricDataQuery": { + "additionalProperties": false, + "properties": { + "Expression": { + "type": "string" + }, + "Id": { + "type": "string" + }, + "Label": { + "type": "string" + }, + "MetricStat": { + "$ref": "#/definitions/AWS::AutoScaling::ScalingPolicy.TargetTrackingMetricStat" + }, + "ReturnData": { + "type": "boolean" + } + }, + "required": [ + "Id" + ], + "type": "object" + }, + "AWS::AutoScaling::ScalingPolicy.TargetTrackingMetricStat": { + "additionalProperties": false, + "properties": { + "Metric": { + "$ref": "#/definitions/AWS::AutoScaling::ScalingPolicy.Metric" + }, + "Stat": { + "type": "string" + }, + "Unit": { + "type": "string" + } + }, + "required": [ + "Metric", + "Stat" + ], + "type": "object" + }, "AWS::AutoScaling::ScheduledAction": { "additionalProperties": false, "properties": { @@ -22613,6 +22662,9 @@ "EcsProperties": { "$ref": "#/definitions/AWS::Batch::JobDefinition.EcsProperties" }, + "EksProperties": { + "$ref": "#/definitions/AWS::Batch::JobDefinition.EksProperties" + }, "InstanceTypes": { "items": { "type": "string" @@ -23285,13 +23337,13 @@ "AWS::Bedrock::Agent.ActionGroupExecutor": { "additionalProperties": false, "properties": { + "CustomControl": { + "type": "string" + }, "Lambda": { "type": "string" } }, - "required": [ - "Lambda" - ], "type": "object" }, "AWS::Bedrock::Agent.AgentActionGroup": { @@ -23312,6 +23364,9 @@ "Description": { "type": "string" }, + "FunctionSchema": { + "$ref": "#/definitions/AWS::Bedrock::Agent.FunctionSchema" + }, "ParentActionGroupSignature": { "type": "string" }, @@ -23343,6 +23398,45 @@ ], "type": "object" }, + "AWS::Bedrock::Agent.Function": { + "additionalProperties": false, + "properties": { + "Description": { + "type": "string" + }, + "Name": { + "type": "string" + }, + "Parameters": { + "additionalProperties": false, + "patternProperties": { + "^[a-zA-Z0-9]+$": { + "$ref": "#/definitions/AWS::Bedrock::Agent.ParameterDetail" + } + }, + "type": "object" + } + }, + "required": [ + "Name" + ], + "type": "object" + }, + "AWS::Bedrock::Agent.FunctionSchema": { + "additionalProperties": false, + "properties": { + "Functions": { + "items": { + "$ref": "#/definitions/AWS::Bedrock::Agent.Function" + }, + "type": "array" + } + }, + "required": [ + "Functions" + ], + "type": "object" + }, "AWS::Bedrock::Agent.InferenceConfiguration": { "additionalProperties": false, "properties": { @@ -23367,6 +23461,24 @@ }, "type": "object" }, + "AWS::Bedrock::Agent.ParameterDetail": { + "additionalProperties": false, + "properties": { + "Description": { + "type": "string" + }, + "Required": { + "type": "boolean" + }, + "Type": { + "type": "string" + } + }, + "required": [ + "Type" + ], + "type": "object" + }, "AWS::Bedrock::Agent.PromptConfiguration": { "additionalProperties": false, "properties": { @@ -23573,6 +23685,9 @@ "Properties": { "additionalProperties": false, "properties": { + "DataDeletionPolicy": { + "type": "string" + }, "DataSourceConfiguration": { "$ref": "#/definitions/AWS::Bedrock::DataSource.DataSourceConfiguration" }, @@ -23673,6 +23788,9 @@ "BucketArn": { "type": "string" }, + "BucketOwnerAccountId": { + "type": "string" + }, "InclusionPrefixes": { "items": { "type": "string" @@ -23975,6 +24093,74 @@ }, "type": "object" }, + "AWS::Bedrock::GuardrailVersion": { + "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" + }, + "GuardrailIdentifier": { + "type": "string" + } + }, + "required": [ + "GuardrailIdentifier" + ], + "type": "object" + }, + "Type": { + "enum": [ + "AWS::Bedrock::GuardrailVersion" + ], + "type": "string" + }, + "UpdateReplacePolicy": { + "enum": [ + "Delete", + "Retain", + "Snapshot" + ], + "type": "string" + } + }, + "required": [ + "Type", + "Properties" + ], + "type": "object" + }, "AWS::Bedrock::KnowledgeBase": { "additionalProperties": false, "properties": { @@ -24780,6 +24966,12 @@ "$ref": "#/definitions/AWS::Budgets::Budget.NotificationWithSubscribers" }, "type": "array" + }, + "ResourceTags": { + "items": { + "$ref": "#/definitions/AWS::Budgets::Budget.ResourceTag" + }, + "type": "array" } }, "required": [ @@ -24953,6 +25145,21 @@ ], "type": "object" }, + "AWS::Budgets::Budget.ResourceTag": { + "additionalProperties": false, + "properties": { + "Key": { + "type": "string" + }, + "Value": { + "type": "string" + } + }, + "required": [ + "Key" + ], + "type": "object" + }, "AWS::Budgets::Budget.Spend": { "additionalProperties": false, "properties": { @@ -25053,6 +25260,12 @@ "NotificationType": { "type": "string" }, + "ResourceTags": { + "items": { + "$ref": "#/definitions/AWS::Budgets::BudgetsAction.ResourceTag" + }, + "type": "array" + }, "Subscribers": { "items": { "$ref": "#/definitions/AWS::Budgets::BudgetsAction.Subscriber" @@ -25153,6 +25366,22 @@ ], "type": "object" }, + "AWS::Budgets::BudgetsAction.ResourceTag": { + "additionalProperties": false, + "properties": { + "Key": { + "type": "string" + }, + "Value": { + "type": "string" + } + }, + "required": [ + "Key", + "Value" + ], + "type": "object" + }, "AWS::Budgets::BudgetsAction.ScpActionDefinition": { "additionalProperties": false, "properties": { @@ -26290,6 +26519,12 @@ }, "type": "array" }, + "Tags": { + "items": { + "$ref": "#/definitions/Tag" + }, + "type": "array" + }, "TeamId": { "type": "string" }, @@ -26395,6 +26630,12 @@ }, "type": "array" }, + "Tags": { + "items": { + "$ref": "#/definitions/Tag" + }, + "type": "array" + }, "UserRoleRequired": { "type": "boolean" } @@ -33469,9 +33710,18 @@ "EnvironmentType": { "type": "string" }, + "FleetServiceRole": { + "type": "string" + }, + "FleetVpcConfig": { + "$ref": "#/definitions/AWS::CodeBuild::Fleet.VpcConfig" + }, "Name": { "type": "string" }, + "OverflowBehavior": { + "type": "string" + }, "Tags": { "items": { "$ref": "#/definitions/Tag" @@ -33501,6 +33751,27 @@ ], "type": "object" }, + "AWS::CodeBuild::Fleet.VpcConfig": { + "additionalProperties": false, + "properties": { + "SecurityGroupIds": { + "items": { + "type": "string" + }, + "type": "array" + }, + "Subnets": { + "items": { + "type": "string" + }, + "type": "array" + }, + "VpcId": { + "type": "string" + } + }, + "type": "object" + }, "AWS::CodeBuild::Project": { "additionalProperties": false, "properties": { @@ -35845,6 +36116,18 @@ ], "type": "object" }, + "AWS::CodePipeline::Pipeline.FailureConditions": { + "additionalProperties": false, + "properties": { + "Result": { + "type": "string" + } + }, + "required": [ + "Result" + ], + "type": "object" + }, "AWS::CodePipeline::Pipeline.GitBranchFilterCriteria": { "additionalProperties": false, "properties": { @@ -36012,6 +36295,9 @@ }, "Name": { "type": "string" + }, + "OnFailure": { + "$ref": "#/definitions/AWS::CodePipeline::Pipeline.FailureConditions" } }, "required": [ @@ -42210,6 +42496,12 @@ }, "type": "array" }, + "SubmitAutoEvaluationActions": { + "items": { + "$ref": "#/definitions/AWS::Connect::Rule.SubmitAutoEvaluationAction" + }, + "type": "array" + }, "TaskActions": { "items": { "$ref": "#/definitions/AWS::Connect::Rule.TaskAction" @@ -42369,6 +42661,18 @@ ], "type": "object" }, + "AWS::Connect::Rule.SubmitAutoEvaluationAction": { + "additionalProperties": false, + "properties": { + "EvaluationFormArn": { + "type": "string" + } + }, + "required": [ + "EvaluationFormArn" + ], + "type": "object" + }, "AWS::Connect::Rule.TaskAction": { "additionalProperties": false, "properties": { @@ -52019,6 +52323,78 @@ }, "type": "object" }, + "AWS::DataZone::GroupProfile": { + "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": { + "DomainIdentifier": { + "type": "string" + }, + "GroupIdentifier": { + "type": "string" + }, + "Status": { + "type": "string" + } + }, + "required": [ + "DomainIdentifier", + "GroupIdentifier" + ], + "type": "object" + }, + "Type": { + "enum": [ + "AWS::DataZone::GroupProfile" + ], + "type": "string" + }, + "UpdateReplacePolicy": { + "enum": [ + "Delete", + "Retain", + "Snapshot" + ], + "type": "string" + } + }, + "required": [ + "Type", + "Properties" + ], + "type": "object" + }, "AWS::DataZone::Project": { "additionalProperties": false, "properties": { @@ -52097,6 +52473,95 @@ ], "type": "object" }, + "AWS::DataZone::ProjectMembership": { + "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": { + "Designation": { + "type": "string" + }, + "DomainIdentifier": { + "type": "string" + }, + "Member": { + "$ref": "#/definitions/AWS::DataZone::ProjectMembership.Member" + }, + "ProjectIdentifier": { + "type": "string" + } + }, + "required": [ + "Designation", + "DomainIdentifier", + "Member", + "ProjectIdentifier" + ], + "type": "object" + }, + "Type": { + "enum": [ + "AWS::DataZone::ProjectMembership" + ], + "type": "string" + }, + "UpdateReplacePolicy": { + "enum": [ + "Delete", + "Retain", + "Snapshot" + ], + "type": "string" + } + }, + "required": [ + "Type", + "Properties" + ], + "type": "object" + }, + "AWS::DataZone::ProjectMembership.Member": { + "additionalProperties": false, + "properties": { + "GroupIdentifier": { + "type": "string" + }, + "UserIdentifier": { + "type": "string" + } + }, + "type": "object" + }, "AWS::DataZone::SubscriptionTarget": { "additionalProperties": false, "properties": { @@ -52218,6 +52683,117 @@ ], "type": "object" }, + "AWS::DataZone::UserProfile": { + "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": { + "DomainIdentifier": { + "type": "string" + }, + "Status": { + "type": "string" + }, + "UserIdentifier": { + "type": "string" + }, + "UserType": { + "type": "string" + } + }, + "required": [ + "DomainIdentifier", + "UserIdentifier" + ], + "type": "object" + }, + "Type": { + "enum": [ + "AWS::DataZone::UserProfile" + ], + "type": "string" + }, + "UpdateReplacePolicy": { + "enum": [ + "Delete", + "Retain", + "Snapshot" + ], + "type": "string" + } + }, + "required": [ + "Type", + "Properties" + ], + "type": "object" + }, + "AWS::DataZone::UserProfile.IamUserProfileDetails": { + "additionalProperties": false, + "properties": { + "Arn": { + "type": "string" + } + }, + "type": "object" + }, + "AWS::DataZone::UserProfile.SsoUserProfileDetails": { + "additionalProperties": false, + "properties": { + "FirstName": { + "type": "string" + }, + "LastName": { + "type": "string" + }, + "Username": { + "type": "string" + } + }, + "type": "object" + }, + "AWS::DataZone::UserProfile.UserProfileDetails": { + "additionalProperties": false, + "properties": { + "Iam": { + "$ref": "#/definitions/AWS::DataZone::UserProfile.IamUserProfileDetails" + }, + "Sso": { + "$ref": "#/definitions/AWS::DataZone::UserProfile.SsoUserProfileDetails" + } + }, + "type": "object" + }, "AWS::Deadline::Farm": { "additionalProperties": false, "properties": { @@ -54603,6 +55179,9 @@ "TimeToLiveSpecification": { "$ref": "#/definitions/AWS::DynamoDB::GlobalTable.TimeToLiveSpecification" }, + "WriteOnDemandThroughputSettings": { + "$ref": "#/definitions/AWS::DynamoDB::GlobalTable.WriteOnDemandThroughputSettings" + }, "WriteProvisionedThroughputSettings": { "$ref": "#/definitions/AWS::DynamoDB::GlobalTable.WriteProvisionedThroughputSettings" } @@ -54701,6 +55280,9 @@ "Projection": { "$ref": "#/definitions/AWS::DynamoDB::GlobalTable.Projection" }, + "WriteOnDemandThroughputSettings": { + "$ref": "#/definitions/AWS::DynamoDB::GlobalTable.WriteOnDemandThroughputSettings" + }, "WriteProvisionedThroughputSettings": { "$ref": "#/definitions/AWS::DynamoDB::GlobalTable.WriteProvisionedThroughputSettings" } @@ -54790,6 +55372,15 @@ }, "type": "object" }, + "AWS::DynamoDB::GlobalTable.ReadOnDemandThroughputSettings": { + "additionalProperties": false, + "properties": { + "MaxReadRequestUnits": { + "type": "number" + } + }, + "type": "object" + }, "AWS::DynamoDB::GlobalTable.ReadProvisionedThroughputSettings": { "additionalProperties": false, "properties": { @@ -54811,6 +55402,9 @@ "IndexName": { "type": "string" }, + "ReadOnDemandThroughputSettings": { + "$ref": "#/definitions/AWS::DynamoDB::GlobalTable.ReadOnDemandThroughputSettings" + }, "ReadProvisionedThroughputSettings": { "$ref": "#/definitions/AWS::DynamoDB::GlobalTable.ReadProvisionedThroughputSettings" } @@ -54853,6 +55447,9 @@ "PointInTimeRecoverySpecification": { "$ref": "#/definitions/AWS::DynamoDB::GlobalTable.PointInTimeRecoverySpecification" }, + "ReadOnDemandThroughputSettings": { + "$ref": "#/definitions/AWS::DynamoDB::GlobalTable.ReadOnDemandThroughputSettings" + }, "ReadProvisionedThroughputSettings": { "$ref": "#/definitions/AWS::DynamoDB::GlobalTable.ReadProvisionedThroughputSettings" }, @@ -54970,6 +55567,15 @@ ], "type": "object" }, + "AWS::DynamoDB::GlobalTable.WriteOnDemandThroughputSettings": { + "additionalProperties": false, + "properties": { + "MaxWriteRequestUnits": { + "type": "number" + } + }, + "type": "object" + }, "AWS::DynamoDB::GlobalTable.WriteProvisionedThroughputSettings": { "additionalProperties": false, "properties": { @@ -55053,6 +55659,9 @@ }, "type": "array" }, + "OnDemandThroughput": { + "$ref": "#/definitions/AWS::DynamoDB::Table.OnDemandThroughput" + }, "PointInTimeRecoverySpecification": { "$ref": "#/definitions/AWS::DynamoDB::Table.PointInTimeRecoverySpecification" }, @@ -55168,6 +55777,9 @@ }, "type": "array" }, + "OnDemandThroughput": { + "$ref": "#/definitions/AWS::DynamoDB::Table.OnDemandThroughput" + }, "Projection": { "$ref": "#/definitions/AWS::DynamoDB::Table.Projection" }, @@ -55267,6 +55879,18 @@ ], "type": "object" }, + "AWS::DynamoDB::Table.OnDemandThroughput": { + "additionalProperties": false, + "properties": { + "MaxReadRequestUnits": { + "type": "number" + }, + "MaxWriteRequestUnits": { + "type": "number" + } + }, + "type": "object" + }, "AWS::DynamoDB::Table.PointInTimeRecoverySpecification": { "additionalProperties": false, "properties": { @@ -56224,6 +56848,9 @@ "BgpAsn": { "type": "number" }, + "BgpAsnExtended": { + "type": "number" + }, "CertificateArn": { "type": "string" }, @@ -58570,6 +59197,18 @@ ], "type": "object" }, + "AWS::EC2::Instance.State": { + "additionalProperties": false, + "properties": { + "Code": { + "type": "string" + }, + "Name": { + "type": "string" + } + }, + "type": "object" + }, "AWS::EC2::Instance.Volume": { "additionalProperties": false, "properties": { @@ -64626,6 +65265,7 @@ } }, "required": [ + "DestinationCidrBlock", "TransitGatewayRouteTableId" ], "type": "object" @@ -67576,6 +68216,9 @@ "properties": { "ExecuteCommandConfiguration": { "$ref": "#/definitions/AWS::ECS::Cluster.ExecuteCommandConfiguration" + }, + "ManagedStorageConfiguration": { + "$ref": "#/definitions/AWS::ECS::Cluster.ManagedStorageConfiguration" } }, "type": "object" @@ -67628,6 +68271,18 @@ }, "type": "object" }, + "AWS::ECS::Cluster.ManagedStorageConfiguration": { + "additionalProperties": false, + "properties": { + "FargateEphemeralStorageKmsKeyId": { + "type": "string" + }, + "KmsKeyId": { + "type": "string" + } + }, + "type": "object" + }, "AWS::ECS::Cluster.ServiceConnectDefaults": { "additionalProperties": false, "properties": { @@ -69980,6 +70635,12 @@ "ConfigurationValues": { "type": "string" }, + "PodIdentityAssociations": { + "items": { + "$ref": "#/definitions/AWS::EKS::Addon.PodIdentityAssociation" + }, + "type": "array" + }, "PreserveOnDelete": { "type": "boolean" }, @@ -70023,251 +70684,267 @@ ], "type": "object" }, - "AWS::EKS::Cluster": { + "AWS::EKS::Addon.PodIdentityAssociation": { "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": { - "AccessConfig": { - "$ref": "#/definitions/AWS::EKS::Cluster.AccessConfig" - }, - "EncryptionConfig": { - "items": { - "$ref": "#/definitions/AWS::EKS::Cluster.EncryptionConfig" - }, - "type": "array" - }, - "KubernetesNetworkConfig": { - "$ref": "#/definitions/AWS::EKS::Cluster.KubernetesNetworkConfig" - }, - "Logging": { - "$ref": "#/definitions/AWS::EKS::Cluster.Logging" - }, - "Name": { - "type": "string" - }, - "OutpostConfig": { - "$ref": "#/definitions/AWS::EKS::Cluster.OutpostConfig" - }, - "ResourcesVpcConfig": { - "$ref": "#/definitions/AWS::EKS::Cluster.ResourcesVpcConfig" - }, - "RoleArn": { - "type": "string" - }, - "Tags": { - "items": { - "$ref": "#/definitions/Tag" - }, - "type": "array" - }, - "Version": { - "type": "string" - } - }, - "required": [ - "ResourcesVpcConfig", - "RoleArn" - ], - "type": "object" - }, - "Type": { - "enum": [ - "AWS::EKS::Cluster" - ], - "type": "string" - }, - "UpdateReplacePolicy": { - "enum": [ - "Delete", - "Retain", - "Snapshot" - ], - "type": "string" - } - }, - "required": [ - "Type", - "Properties" - ], - "type": "object" - }, - "AWS::EKS::Cluster.AccessConfig": { - "additionalProperties": false, - "properties": { - "AuthenticationMode": { - "type": "string" - }, - "BootstrapClusterCreatorAdminPermissions": { - "type": "boolean" - } - }, - "type": "object" - }, - "AWS::EKS::Cluster.ClusterLogging": { - "additionalProperties": false, - "properties": { - "EnabledTypes": { - "items": { - "$ref": "#/definitions/AWS::EKS::Cluster.LoggingTypeConfig" - }, - "type": "array" - } - }, - "type": "object" - }, - "AWS::EKS::Cluster.ControlPlanePlacement": { - "additionalProperties": false, - "properties": { - "GroupName": { - "type": "string" - } - }, - "type": "object" - }, - "AWS::EKS::Cluster.EncryptionConfig": { - "additionalProperties": false, - "properties": { - "Provider": { - "$ref": "#/definitions/AWS::EKS::Cluster.Provider" - }, - "Resources": { - "items": { - "type": "string" - }, - "type": "array" - } - }, - "type": "object" - }, - "AWS::EKS::Cluster.KubernetesNetworkConfig": { - "additionalProperties": false, - "properties": { - "IpFamily": { - "type": "string" - }, - "ServiceIpv4Cidr": { - "type": "string" - }, - "ServiceIpv6Cidr": { - "type": "string" - } - }, - "type": "object" - }, - "AWS::EKS::Cluster.Logging": { - "additionalProperties": false, - "properties": { - "ClusterLogging": { - "$ref": "#/definitions/AWS::EKS::Cluster.ClusterLogging" - } - }, - "type": "object" - }, - "AWS::EKS::Cluster.LoggingTypeConfig": { - "additionalProperties": false, - "properties": { - "Type": { - "type": "string" - } - }, - "type": "object" - }, - "AWS::EKS::Cluster.OutpostConfig": { - "additionalProperties": false, - "properties": { - "ControlPlaneInstanceType": { + "RoleArn": { "type": "string" }, - "ControlPlanePlacement": { - "$ref": "#/definitions/AWS::EKS::Cluster.ControlPlanePlacement" - }, - "OutpostArns": { - "items": { - "type": "string" - }, - "type": "array" - } - }, - "required": [ - "ControlPlaneInstanceType", - "OutpostArns" - ], - "type": "object" - }, - "AWS::EKS::Cluster.Provider": { - "additionalProperties": false, - "properties": { - "KeyArn": { + "ServiceAccount": { "type": "string" } }, - "type": "object" - }, - "AWS::EKS::Cluster.ResourcesVpcConfig": { - "additionalProperties": false, - "properties": { - "EndpointPrivateAccess": { - "type": "boolean" - }, - "EndpointPublicAccess": { - "type": "boolean" - }, - "PublicAccessCidrs": { - "items": { - "type": "string" - }, - "type": "array" - }, - "SecurityGroupIds": { - "items": { - "type": "string" - }, - "type": "array" - }, - "SubnetIds": { - "items": { - "type": "string" - }, - "type": "array" - } - }, "required": [ - "SubnetIds" + "RoleArn", + "ServiceAccount" ], "type": "object" }, - "AWS::EKS::FargateProfile": { + "AWS::EKS::Cluster": { + "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": { + "AccessConfig": { + "$ref": "#/definitions/AWS::EKS::Cluster.AccessConfig" + }, + "EncryptionConfig": { + "items": { + "$ref": "#/definitions/AWS::EKS::Cluster.EncryptionConfig" + }, + "type": "array" + }, + "KubernetesNetworkConfig": { + "$ref": "#/definitions/AWS::EKS::Cluster.KubernetesNetworkConfig" + }, + "Logging": { + "$ref": "#/definitions/AWS::EKS::Cluster.Logging" + }, + "Name": { + "type": "string" + }, + "OutpostConfig": { + "$ref": "#/definitions/AWS::EKS::Cluster.OutpostConfig" + }, + "ResourcesVpcConfig": { + "$ref": "#/definitions/AWS::EKS::Cluster.ResourcesVpcConfig" + }, + "RoleArn": { + "type": "string" + }, + "Tags": { + "items": { + "$ref": "#/definitions/Tag" + }, + "type": "array" + }, + "Version": { + "type": "string" + } + }, + "required": [ + "ResourcesVpcConfig", + "RoleArn" + ], + "type": "object" + }, + "Type": { + "enum": [ + "AWS::EKS::Cluster" + ], + "type": "string" + }, + "UpdateReplacePolicy": { + "enum": [ + "Delete", + "Retain", + "Snapshot" + ], + "type": "string" + } + }, + "required": [ + "Type", + "Properties" + ], + "type": "object" + }, + "AWS::EKS::Cluster.AccessConfig": { + "additionalProperties": false, + "properties": { + "AuthenticationMode": { + "type": "string" + }, + "BootstrapClusterCreatorAdminPermissions": { + "type": "boolean" + } + }, + "type": "object" + }, + "AWS::EKS::Cluster.ClusterLogging": { + "additionalProperties": false, + "properties": { + "EnabledTypes": { + "items": { + "$ref": "#/definitions/AWS::EKS::Cluster.LoggingTypeConfig" + }, + "type": "array" + } + }, + "type": "object" + }, + "AWS::EKS::Cluster.ControlPlanePlacement": { + "additionalProperties": false, + "properties": { + "GroupName": { + "type": "string" + } + }, + "type": "object" + }, + "AWS::EKS::Cluster.EncryptionConfig": { + "additionalProperties": false, + "properties": { + "Provider": { + "$ref": "#/definitions/AWS::EKS::Cluster.Provider" + }, + "Resources": { + "items": { + "type": "string" + }, + "type": "array" + } + }, + "type": "object" + }, + "AWS::EKS::Cluster.KubernetesNetworkConfig": { + "additionalProperties": false, + "properties": { + "IpFamily": { + "type": "string" + }, + "ServiceIpv4Cidr": { + "type": "string" + }, + "ServiceIpv6Cidr": { + "type": "string" + } + }, + "type": "object" + }, + "AWS::EKS::Cluster.Logging": { + "additionalProperties": false, + "properties": { + "ClusterLogging": { + "$ref": "#/definitions/AWS::EKS::Cluster.ClusterLogging" + } + }, + "type": "object" + }, + "AWS::EKS::Cluster.LoggingTypeConfig": { + "additionalProperties": false, + "properties": { + "Type": { + "type": "string" + } + }, + "type": "object" + }, + "AWS::EKS::Cluster.OutpostConfig": { + "additionalProperties": false, + "properties": { + "ControlPlaneInstanceType": { + "type": "string" + }, + "ControlPlanePlacement": { + "$ref": "#/definitions/AWS::EKS::Cluster.ControlPlanePlacement" + }, + "OutpostArns": { + "items": { + "type": "string" + }, + "type": "array" + } + }, + "required": [ + "ControlPlaneInstanceType", + "OutpostArns" + ], + "type": "object" + }, + "AWS::EKS::Cluster.Provider": { + "additionalProperties": false, + "properties": { + "KeyArn": { + "type": "string" + } + }, + "type": "object" + }, + "AWS::EKS::Cluster.ResourcesVpcConfig": { + "additionalProperties": false, + "properties": { + "EndpointPrivateAccess": { + "type": "boolean" + }, + "EndpointPublicAccess": { + "type": "boolean" + }, + "PublicAccessCidrs": { + "items": { + "type": "string" + }, + "type": "array" + }, + "SecurityGroupIds": { + "items": { + "type": "string" + }, + "type": "array" + }, + "SubnetIds": { + "items": { + "type": "string" + }, + "type": "array" + } + }, + "required": [ + "SubnetIds" + ], + "type": "object" + }, + "AWS::EKS::FargateProfile": { "additionalProperties": false, "properties": { "Condition": { @@ -78575,9 +79252,18 @@ "Properties": { "additionalProperties": false, "properties": { + "DeadLetterConfig": { + "$ref": "#/definitions/AWS::Events::EventBus.DeadLetterConfig" + }, + "Description": { + "type": "string" + }, "EventSourceName": { "type": "string" }, + "KmsKeyIdentifier": { + "type": "string" + }, "Name": { "type": "string" }, @@ -78617,6 +79303,15 @@ ], "type": "object" }, + "AWS::Events::EventBus.DeadLetterConfig": { + "additionalProperties": false, + "properties": { + "Arn": { + "type": "string" + } + }, + "type": "object" + }, "AWS::Events::EventBusPolicy": { "additionalProperties": false, "properties": { @@ -80592,6 +81287,94 @@ }, "type": "object" }, + "AWS::FMS::Policy.IcmpTypeCode": { + "additionalProperties": false, + "properties": { + "Code": { + "type": "number" + }, + "Type": { + "type": "number" + } + }, + "required": [ + "Code", + "Type" + ], + "type": "object" + }, + "AWS::FMS::Policy.NetworkAclCommonPolicy": { + "additionalProperties": false, + "properties": { + "NetworkAclEntrySet": { + "$ref": "#/definitions/AWS::FMS::Policy.NetworkAclEntrySet" + } + }, + "required": [ + "NetworkAclEntrySet" + ], + "type": "object" + }, + "AWS::FMS::Policy.NetworkAclEntry": { + "additionalProperties": false, + "properties": { + "CidrBlock": { + "type": "string" + }, + "Egress": { + "type": "boolean" + }, + "IcmpTypeCode": { + "$ref": "#/definitions/AWS::FMS::Policy.IcmpTypeCode" + }, + "Ipv6CidrBlock": { + "type": "string" + }, + "PortRange": { + "$ref": "#/definitions/AWS::FMS::Policy.PortRange" + }, + "Protocol": { + "type": "string" + }, + "RuleAction": { + "type": "string" + } + }, + "required": [ + "Egress", + "Protocol", + "RuleAction" + ], + "type": "object" + }, + "AWS::FMS::Policy.NetworkAclEntrySet": { + "additionalProperties": false, + "properties": { + "FirstEntries": { + "items": { + "$ref": "#/definitions/AWS::FMS::Policy.NetworkAclEntry" + }, + "type": "array" + }, + "ForceRemediateForFirstEntries": { + "type": "boolean" + }, + "ForceRemediateForLastEntries": { + "type": "boolean" + }, + "LastEntries": { + "items": { + "$ref": "#/definitions/AWS::FMS::Policy.NetworkAclEntry" + }, + "type": "array" + } + }, + "required": [ + "ForceRemediateForFirstEntries", + "ForceRemediateForLastEntries" + ], + "type": "object" + }, "AWS::FMS::Policy.NetworkFirewallPolicy": { "additionalProperties": false, "properties": { @@ -80607,6 +81390,9 @@ "AWS::FMS::Policy.PolicyOption": { "additionalProperties": false, "properties": { + "NetworkAclCommonPolicy": { + "$ref": "#/definitions/AWS::FMS::Policy.NetworkAclCommonPolicy" + }, "NetworkFirewallPolicy": { "$ref": "#/definitions/AWS::FMS::Policy.NetworkFirewallPolicy" }, @@ -80632,6 +81418,22 @@ ], "type": "object" }, + "AWS::FMS::Policy.PortRange": { + "additionalProperties": false, + "properties": { + "From": { + "type": "number" + }, + "To": { + "type": "number" + } + }, + "required": [ + "From", + "To" + ], + "type": "object" + }, "AWS::FMS::Policy.ResourceTag": { "additionalProperties": false, "properties": { @@ -81084,6 +81886,9 @@ "ImportedFileChunkSize": { "type": "number" }, + "MetadataConfiguration": { + "$ref": "#/definitions/AWS::FSx::FileSystem.MetadataConfiguration" + }, "PerUnitStorageThroughput": { "type": "number" }, @@ -81093,6 +81898,18 @@ }, "type": "object" }, + "AWS::FSx::FileSystem.MetadataConfiguration": { + "additionalProperties": false, + "properties": { + "Iops": { + "type": "number" + }, + "Mode": { + "type": "string" + } + }, + "type": "object" + }, "AWS::FSx::FileSystem.NfsExports": { "additionalProperties": false, "properties": { @@ -85588,6 +86405,12 @@ "ConnectionName": { "type": "string" }, + "EnableAdditionalMetadata": { + "items": { + "type": "string" + }, + "type": "array" + }, "Exclusions": { "items": { "type": "string" @@ -86323,6 +87146,9 @@ "LogUri": { "type": "string" }, + "MaintenanceWindow": { + "type": "string" + }, "MaxCapacity": { "type": "number" }, @@ -116699,6 +117525,9 @@ "FunctionName": { "type": "string" }, + "Policy": { + "type": "object" + }, "ProvisionedConcurrencyConfig": { "$ref": "#/definitions/AWS::Lambda::Version.ProvisionedConcurrencyConfiguration" }, @@ -124594,9 +125423,15 @@ "LoggingConfiguration": { "$ref": "#/definitions/AWS::MWAA::Environment.LoggingConfiguration" }, + "MaxWebservers": { + "type": "number" + }, "MaxWorkers": { "type": "number" }, + "MinWebservers": { + "type": "number" + }, "MinWorkers": { "type": "number" }, @@ -125983,6 +126818,15 @@ "AvailabilityZone": { "type": "string" }, + "Maintenance": { + "$ref": "#/definitions/AWS::MediaConnect::Flow.Maintenance" + }, + "MediaStreams": { + "items": { + "$ref": "#/definitions/AWS::MediaConnect::Flow.MediaStream" + }, + "type": "array" + }, "Name": { "type": "string" }, @@ -125991,6 +126835,12 @@ }, "SourceFailoverConfig": { "$ref": "#/definitions/AWS::MediaConnect::Flow.FailoverConfig" + }, + "VpcInterfaces": { + "items": { + "$ref": "#/definitions/AWS::MediaConnect::Flow.VpcInterface" + }, + "type": "array" } }, "required": [ @@ -126074,6 +126924,33 @@ }, "type": "object" }, + "AWS::MediaConnect::Flow.Fmtp": { + "additionalProperties": false, + "properties": { + "ChannelOrder": { + "type": "string" + }, + "Colorimetry": { + "type": "string" + }, + "ExactFramerate": { + "type": "string" + }, + "Par": { + "type": "string" + }, + "Range": { + "type": "string" + }, + "ScanMode": { + "type": "string" + }, + "Tcs": { + "type": "string" + } + }, + "type": "object" + }, "AWS::MediaConnect::Flow.GatewayBridgeSource": { "additionalProperties": false, "properties": { @@ -126089,6 +126966,119 @@ ], "type": "object" }, + "AWS::MediaConnect::Flow.InputConfiguration": { + "additionalProperties": false, + "properties": { + "InputPort": { + "type": "number" + }, + "Interface": { + "$ref": "#/definitions/AWS::MediaConnect::Flow.Interface" + } + }, + "required": [ + "InputPort", + "Interface" + ], + "type": "object" + }, + "AWS::MediaConnect::Flow.Interface": { + "additionalProperties": false, + "properties": { + "Name": { + "type": "string" + } + }, + "required": [ + "Name" + ], + "type": "object" + }, + "AWS::MediaConnect::Flow.Maintenance": { + "additionalProperties": false, + "properties": { + "MaintenanceDay": { + "type": "string" + }, + "MaintenanceStartHour": { + "type": "string" + } + }, + "required": [ + "MaintenanceDay", + "MaintenanceStartHour" + ], + "type": "object" + }, + "AWS::MediaConnect::Flow.MediaStream": { + "additionalProperties": false, + "properties": { + "Attributes": { + "$ref": "#/definitions/AWS::MediaConnect::Flow.MediaStreamAttributes" + }, + "ClockRate": { + "type": "number" + }, + "Description": { + "type": "string" + }, + "Fmt": { + "type": "number" + }, + "MediaStreamId": { + "type": "number" + }, + "MediaStreamName": { + "type": "string" + }, + "MediaStreamType": { + "type": "string" + }, + "VideoFormat": { + "type": "string" + } + }, + "required": [ + "MediaStreamId", + "MediaStreamName", + "MediaStreamType" + ], + "type": "object" + }, + "AWS::MediaConnect::Flow.MediaStreamAttributes": { + "additionalProperties": false, + "properties": { + "Fmtp": { + "$ref": "#/definitions/AWS::MediaConnect::Flow.Fmtp" + }, + "Lang": { + "type": "string" + } + }, + "type": "object" + }, + "AWS::MediaConnect::Flow.MediaStreamSourceConfiguration": { + "additionalProperties": false, + "properties": { + "EncodingName": { + "type": "string" + }, + "InputConfigurations": { + "items": { + "$ref": "#/definitions/AWS::MediaConnect::Flow.InputConfiguration" + }, + "type": "array" + }, + "MediaStreamName": { + "type": "string" + } + }, + "required": [ + "EncodingName", + "MediaStreamName" + ], + "type": "object" + }, "AWS::MediaConnect::Flow.Source": { "additionalProperties": false, "properties": { @@ -126116,6 +127106,15 @@ "MaxLatency": { "type": "number" }, + "MaxSyncBuffer": { + "type": "number" + }, + "MediaStreamSourceConfigurations": { + "items": { + "$ref": "#/definitions/AWS::MediaConnect::Flow.MediaStreamSourceConfiguration" + }, + "type": "array" + }, "MinLatency": { "type": "number" }, @@ -126167,6 +127166,42 @@ ], "type": "object" }, + "AWS::MediaConnect::Flow.VpcInterface": { + "additionalProperties": false, + "properties": { + "Name": { + "type": "string" + }, + "NetworkInterfaceIds": { + "items": { + "type": "string" + }, + "type": "array" + }, + "NetworkInterfaceType": { + "type": "string" + }, + "RoleArn": { + "type": "string" + }, + "SecurityGroupIds": { + "items": { + "type": "string" + }, + "type": "array" + }, + "SubnetId": { + "type": "string" + } + }, + "required": [ + "Name", + "RoleArn", + "SecurityGroupIds", + "SubnetId" + ], + "type": "object" + }, "AWS::MediaConnect::Flow.VpcInterfaceAttachment": { "additionalProperties": false, "properties": { @@ -126358,6 +127393,12 @@ "MaxLatency": { "type": "number" }, + "MediaStreamOutputConfigurations": { + "items": { + "$ref": "#/definitions/AWS::MediaConnect::FlowOutput.MediaStreamOutputConfiguration" + }, + "type": "array" + }, "MinLatency": { "type": "number" }, @@ -126410,6 +127451,41 @@ ], "type": "object" }, + "AWS::MediaConnect::FlowOutput.DestinationConfiguration": { + "additionalProperties": false, + "properties": { + "DestinationIp": { + "type": "string" + }, + "DestinationPort": { + "type": "number" + }, + "Interface": { + "$ref": "#/definitions/AWS::MediaConnect::FlowOutput.Interface" + } + }, + "required": [ + "DestinationIp", + "DestinationPort", + "Interface" + ], + "type": "object" + }, + "AWS::MediaConnect::FlowOutput.EncodingParameters": { + "additionalProperties": false, + "properties": { + "CompressionFactor": { + "type": "number" + }, + "EncoderProfile": { + "type": "string" + } + }, + "required": [ + "CompressionFactor" + ], + "type": "object" + }, "AWS::MediaConnect::FlowOutput.Encryption": { "additionalProperties": false, "properties": { @@ -126432,6 +127508,43 @@ ], "type": "object" }, + "AWS::MediaConnect::FlowOutput.Interface": { + "additionalProperties": false, + "properties": { + "Name": { + "type": "string" + } + }, + "required": [ + "Name" + ], + "type": "object" + }, + "AWS::MediaConnect::FlowOutput.MediaStreamOutputConfiguration": { + "additionalProperties": false, + "properties": { + "DestinationConfigurations": { + "items": { + "$ref": "#/definitions/AWS::MediaConnect::FlowOutput.DestinationConfiguration" + }, + "type": "array" + }, + "EncodingName": { + "type": "string" + }, + "EncodingParameters": { + "$ref": "#/definitions/AWS::MediaConnect::FlowOutput.EncodingParameters" + }, + "MediaStreamName": { + "type": "string" + } + }, + "required": [ + "EncodingName", + "MediaStreamName" + ], + "type": "object" + }, "AWS::MediaConnect::FlowOutput.VpcInterfaceAttachment": { "additionalProperties": false, "properties": { @@ -127589,6 +128702,9 @@ "properties": { "AvailSettings": { "$ref": "#/definitions/AWS::MediaLive::Channel.AvailSettings" + }, + "Scte35SegmentationScope": { + "type": "string" } }, "type": "object" @@ -132400,6 +133516,12 @@ "ContainerType": { "type": "string" }, + "DashManifests": { + "items": { + "$ref": "#/definitions/AWS::MediaPackageV2::OriginEndpoint.DashManifestConfiguration" + }, + "type": "array" + }, "Description": { "type": "string" }, @@ -132459,6 +133581,63 @@ ], "type": "object" }, + "AWS::MediaPackageV2::OriginEndpoint.DashManifestConfiguration": { + "additionalProperties": false, + "properties": { + "DrmSignaling": { + "type": "string" + }, + "FilterConfiguration": { + "$ref": "#/definitions/AWS::MediaPackageV2::OriginEndpoint.FilterConfiguration" + }, + "ManifestName": { + "type": "string" + }, + "ManifestWindowSeconds": { + "type": "number" + }, + "MinBufferTimeSeconds": { + "type": "number" + }, + "MinUpdatePeriodSeconds": { + "type": "number" + }, + "PeriodTriggers": { + "items": { + "type": "string" + }, + "type": "array" + }, + "ScteDash": { + "$ref": "#/definitions/AWS::MediaPackageV2::OriginEndpoint.ScteDash" + }, + "SegmentTemplateFormat": { + "type": "string" + }, + "SuggestedPresentationDelaySeconds": { + "type": "number" + }, + "UtcTiming": { + "$ref": "#/definitions/AWS::MediaPackageV2::OriginEndpoint.DashUtcTiming" + } + }, + "required": [ + "ManifestName" + ], + "type": "object" + }, + "AWS::MediaPackageV2::OriginEndpoint.DashUtcTiming": { + "additionalProperties": false, + "properties": { + "TimingMode": { + "type": "string" + }, + "TimingSource": { + "type": "string" + } + }, + "type": "object" + }, "AWS::MediaPackageV2::OriginEndpoint.Encryption": { "additionalProperties": false, "properties": { @@ -132599,6 +133778,15 @@ }, "type": "object" }, + "AWS::MediaPackageV2::OriginEndpoint.ScteDash": { + "additionalProperties": false, + "properties": { + "AdMarkerDash": { + "type": "string" + } + }, + "type": "object" + }, "AWS::MediaPackageV2::OriginEndpoint.ScteHls": { "additionalProperties": false, "properties": { @@ -133391,6 +134579,9 @@ "AWS::MediaTailor::PlaybackConfiguration.AvailSuppression": { "additionalProperties": false, "properties": { + "FillPolicy": { + "type": "string" + }, "Mode": { "type": "string" }, @@ -134731,7 +135922,7 @@ ], "type": "object" }, - "AWS::NeptuneGraph::Graph": { + "AWS::Neptune::EventSubscription": { "additionalProperties": false, "properties": { "Condition": { @@ -134766,39 +135957,33 @@ "Properties": { "additionalProperties": false, "properties": { - "DeletionProtection": { + "Enabled": { "type": "boolean" }, - "GraphName": { - "type": "string" - }, - "ProvisionedMemory": { - "type": "number" - }, - "PublicConnectivity": { - "type": "boolean" + "EventCategories": { + "items": { + "type": "string" + }, + "type": "array" }, - "ReplicaCount": { - "type": "number" + "SnsTopicArn": { + "type": "string" }, - "Tags": { + "SourceIds": { "items": { - "$ref": "#/definitions/Tag" + "type": "string" }, "type": "array" }, - "VectorSearchConfiguration": { - "$ref": "#/definitions/AWS::NeptuneGraph::Graph.VectorSearchConfiguration" + "SourceType": { + "type": "string" } }, - "required": [ - "ProvisionedMemory" - ], "type": "object" }, "Type": { "enum": [ - "AWS::NeptuneGraph::Graph" + "AWS::Neptune::EventSubscription" ], "type": "string" }, @@ -134812,24 +135997,11 @@ } }, "required": [ - "Type", - "Properties" - ], - "type": "object" - }, - "AWS::NeptuneGraph::Graph.VectorSearchConfiguration": { - "additionalProperties": false, - "properties": { - "VectorSearchDimension": { - "type": "number" - } - }, - "required": [ - "VectorSearchDimension" + "Type" ], "type": "object" }, - "AWS::NeptuneGraph::PrivateGraphEndpoint": { + "AWS::NeptuneGraph::Graph": { "additionalProperties": false, "properties": { "Condition": { @@ -134864,34 +136036,39 @@ "Properties": { "additionalProperties": false, "properties": { - "GraphIdentifier": { + "DeletionProtection": { + "type": "boolean" + }, + "GraphName": { "type": "string" }, - "SecurityGroupIds": { - "items": { - "type": "string" - }, - "type": "array" + "ProvisionedMemory": { + "type": "number" }, - "SubnetIds": { + "PublicConnectivity": { + "type": "boolean" + }, + "ReplicaCount": { + "type": "number" + }, + "Tags": { "items": { - "type": "string" + "$ref": "#/definitions/Tag" }, "type": "array" }, - "VpcId": { - "type": "string" + "VectorSearchConfiguration": { + "$ref": "#/definitions/AWS::NeptuneGraph::Graph.VectorSearchConfiguration" } }, "required": [ - "GraphIdentifier", - "VpcId" + "ProvisionedMemory" ], "type": "object" }, "Type": { "enum": [ - "AWS::NeptuneGraph::PrivateGraphEndpoint" + "AWS::NeptuneGraph::Graph" ], "type": "string" }, @@ -134910,7 +136087,19 @@ ], "type": "object" }, - "AWS::NetworkFirewall::Firewall": { + "AWS::NeptuneGraph::Graph.VectorSearchConfiguration": { + "additionalProperties": false, + "properties": { + "VectorSearchDimension": { + "type": "number" + } + }, + "required": [ + "VectorSearchDimension" + ], + "type": "object" + }, + "AWS::NeptuneGraph::PrivateGraphEndpoint": { "additionalProperties": false, "properties": { "Condition": { @@ -134945,33 +136134,18 @@ "Properties": { "additionalProperties": false, "properties": { - "DeleteProtection": { - "type": "boolean" - }, - "Description": { - "type": "string" - }, - "FirewallName": { - "type": "string" - }, - "FirewallPolicyArn": { + "GraphIdentifier": { "type": "string" }, - "FirewallPolicyChangeProtection": { - "type": "boolean" - }, - "SubnetChangeProtection": { - "type": "boolean" - }, - "SubnetMappings": { + "SecurityGroupIds": { "items": { - "$ref": "#/definitions/AWS::NetworkFirewall::Firewall.SubnetMapping" + "type": "string" }, "type": "array" }, - "Tags": { + "SubnetIds": { "items": { - "$ref": "#/definitions/Tag" + "type": "string" }, "type": "array" }, @@ -134980,16 +136154,14 @@ } }, "required": [ - "FirewallName", - "FirewallPolicyArn", - "SubnetMappings", + "GraphIdentifier", "VpcId" ], "type": "object" }, "Type": { "enum": [ - "AWS::NetworkFirewall::Firewall" + "AWS::NeptuneGraph::PrivateGraphEndpoint" ], "type": "string" }, @@ -135008,22 +136180,120 @@ ], "type": "object" }, - "AWS::NetworkFirewall::Firewall.SubnetMapping": { - "additionalProperties": false, - "properties": { - "IPAddressType": { - "type": "string" - }, - "SubnetId": { - "type": "string" - } - }, - "required": [ - "SubnetId" - ], - "type": "object" - }, - "AWS::NetworkFirewall::FirewallPolicy": { + "AWS::NetworkFirewall::Firewall": { + "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": { + "DeleteProtection": { + "type": "boolean" + }, + "Description": { + "type": "string" + }, + "FirewallName": { + "type": "string" + }, + "FirewallPolicyArn": { + "type": "string" + }, + "FirewallPolicyChangeProtection": { + "type": "boolean" + }, + "SubnetChangeProtection": { + "type": "boolean" + }, + "SubnetMappings": { + "items": { + "$ref": "#/definitions/AWS::NetworkFirewall::Firewall.SubnetMapping" + }, + "type": "array" + }, + "Tags": { + "items": { + "$ref": "#/definitions/Tag" + }, + "type": "array" + }, + "VpcId": { + "type": "string" + } + }, + "required": [ + "FirewallName", + "FirewallPolicyArn", + "SubnetMappings", + "VpcId" + ], + "type": "object" + }, + "Type": { + "enum": [ + "AWS::NetworkFirewall::Firewall" + ], + "type": "string" + }, + "UpdateReplacePolicy": { + "enum": [ + "Delete", + "Retain", + "Snapshot" + ], + "type": "string" + } + }, + "required": [ + "Type", + "Properties" + ], + "type": "object" + }, + "AWS::NetworkFirewall::Firewall.SubnetMapping": { + "additionalProperties": false, + "properties": { + "IPAddressType": { + "type": "string" + }, + "SubnetId": { + "type": "string" + } + }, + "required": [ + "SubnetId" + ], + "type": "object" + }, + "AWS::NetworkFirewall::FirewallPolicy": { "additionalProperties": false, "properties": { "Condition": { @@ -147031,6 +148301,26 @@ }, "type": "object" }, + "AWS::Pipes::Pipe.DimensionMapping": { + "additionalProperties": false, + "properties": { + "DimensionName": { + "type": "string" + }, + "DimensionValue": { + "type": "string" + }, + "DimensionValueType": { + "type": "string" + } + }, + "required": [ + "DimensionName", + "DimensionValue", + "DimensionValueType" + ], + "type": "object" + }, "AWS::Pipes::Pipe.EcsContainerOverride": { "additionalProperties": false, "properties": { @@ -147228,6 +148518,45 @@ }, "type": "object" }, + "AWS::Pipes::Pipe.MultiMeasureAttributeMapping": { + "additionalProperties": false, + "properties": { + "MeasureValue": { + "type": "string" + }, + "MeasureValueType": { + "type": "string" + }, + "MultiMeasureAttributeName": { + "type": "string" + } + }, + "required": [ + "MeasureValue", + "MeasureValueType", + "MultiMeasureAttributeName" + ], + "type": "object" + }, + "AWS::Pipes::Pipe.MultiMeasureMapping": { + "additionalProperties": false, + "properties": { + "MultiMeasureAttributeMappings": { + "items": { + "$ref": "#/definitions/AWS::Pipes::Pipe.MultiMeasureAttributeMapping" + }, + "type": "array" + }, + "MultiMeasureName": { + "type": "string" + } + }, + "required": [ + "MultiMeasureAttributeMappings", + "MultiMeasureName" + ], + "type": "object" + }, "AWS::Pipes::Pipe.NetworkConfiguration": { "additionalProperties": false, "properties": { @@ -147758,6 +149087,9 @@ }, "StepFunctionStateMachineParameters": { "$ref": "#/definitions/AWS::Pipes::Pipe.PipeTargetStateMachineParameters" + }, + "TimestreamParameters": { + "$ref": "#/definitions/AWS::Pipes::Pipe.PipeTargetTimestreamParameters" } }, "type": "object" @@ -147826,6 +149158,50 @@ }, "type": "object" }, + "AWS::Pipes::Pipe.PipeTargetTimestreamParameters": { + "additionalProperties": false, + "properties": { + "DimensionMappings": { + "items": { + "$ref": "#/definitions/AWS::Pipes::Pipe.DimensionMapping" + }, + "type": "array" + }, + "EpochTimeUnit": { + "type": "string" + }, + "MultiMeasureMappings": { + "items": { + "$ref": "#/definitions/AWS::Pipes::Pipe.MultiMeasureMapping" + }, + "type": "array" + }, + "SingleMeasureMappings": { + "items": { + "$ref": "#/definitions/AWS::Pipes::Pipe.SingleMeasureMapping" + }, + "type": "array" + }, + "TimeFieldType": { + "type": "string" + }, + "TimeValue": { + "type": "string" + }, + "TimestampFormat": { + "type": "string" + }, + "VersionValue": { + "type": "string" + } + }, + "required": [ + "DimensionMappings", + "TimeValue", + "VersionValue" + ], + "type": "object" + }, "AWS::Pipes::Pipe.PlacementConstraint": { "additionalProperties": false, "properties": { @@ -147920,89 +149296,109 @@ }, "type": "object" }, - "AWS::Proton::EnvironmentAccountConnection": { + "AWS::Pipes::Pipe.SingleMeasureMapping": { "additionalProperties": false, "properties": { - "Condition": { - "type": "string" - }, - "DeletionPolicy": { - "enum": [ - "Delete", - "Retain", - "Snapshot" - ], + "MeasureName": { "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": { - "CodebuildRoleArn": { - "type": "string" - }, - "ComponentRoleArn": { - "type": "string" - }, - "EnvironmentAccountId": { - "type": "string" - }, - "EnvironmentName": { - "type": "string" - }, - "ManagementAccountId": { - "type": "string" - }, - "RoleArn": { - "type": "string" - }, - "Tags": { - "items": { - "$ref": "#/definitions/Tag" - }, - "type": "array" - } - }, - "type": "object" - }, - "Type": { - "enum": [ - "AWS::Proton::EnvironmentAccountConnection" - ], + "MeasureValue": { "type": "string" }, - "UpdateReplacePolicy": { - "enum": [ - "Delete", - "Retain", - "Snapshot" - ], + "MeasureValueType": { "type": "string" } }, "required": [ - "Type" + "MeasureName", + "MeasureValue", + "MeasureValueType" ], "type": "object" }, - "AWS::Proton::EnvironmentTemplate": { + "AWS::Proton::EnvironmentAccountConnection": { + "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": { + "CodebuildRoleArn": { + "type": "string" + }, + "ComponentRoleArn": { + "type": "string" + }, + "EnvironmentAccountId": { + "type": "string" + }, + "EnvironmentName": { + "type": "string" + }, + "ManagementAccountId": { + "type": "string" + }, + "RoleArn": { + "type": "string" + }, + "Tags": { + "items": { + "$ref": "#/definitions/Tag" + }, + "type": "array" + } + }, + "type": "object" + }, + "Type": { + "enum": [ + "AWS::Proton::EnvironmentAccountConnection" + ], + "type": "string" + }, + "UpdateReplacePolicy": { + "enum": [ + "Delete", + "Retain", + "Snapshot" + ], + "type": "string" + } + }, + "required": [ + "Type" + ], + "type": "object" + }, + "AWS::Proton::EnvironmentTemplate": { "additionalProperties": false, "properties": { "Condition": { @@ -148116,19 +149512,875 @@ "Properties": { "additionalProperties": false, "properties": { - "Description": { + "Description": { + "type": "string" + }, + "DisplayName": { + "type": "string" + }, + "EncryptionKey": { + "type": "string" + }, + "Name": { + "type": "string" + }, + "PipelineProvisioning": { + "type": "string" + }, + "Tags": { + "items": { + "$ref": "#/definitions/Tag" + }, + "type": "array" + } + }, + "type": "object" + }, + "Type": { + "enum": [ + "AWS::Proton::ServiceTemplate" + ], + "type": "string" + }, + "UpdateReplacePolicy": { + "enum": [ + "Delete", + "Retain", + "Snapshot" + ], + "type": "string" + } + }, + "required": [ + "Type" + ], + "type": "object" + }, + "AWS::QBusiness::Application": { + "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": { + "AttachmentsConfiguration": { + "$ref": "#/definitions/AWS::QBusiness::Application.AttachmentsConfiguration" + }, + "Description": { + "type": "string" + }, + "DisplayName": { + "type": "string" + }, + "EncryptionConfiguration": { + "$ref": "#/definitions/AWS::QBusiness::Application.EncryptionConfiguration" + }, + "IdentityCenterInstanceArn": { + "type": "string" + }, + "RoleArn": { + "type": "string" + }, + "Tags": { + "items": { + "$ref": "#/definitions/Tag" + }, + "type": "array" + } + }, + "required": [ + "DisplayName" + ], + "type": "object" + }, + "Type": { + "enum": [ + "AWS::QBusiness::Application" + ], + "type": "string" + }, + "UpdateReplacePolicy": { + "enum": [ + "Delete", + "Retain", + "Snapshot" + ], + "type": "string" + } + }, + "required": [ + "Type", + "Properties" + ], + "type": "object" + }, + "AWS::QBusiness::Application.AttachmentsConfiguration": { + "additionalProperties": false, + "properties": { + "AttachmentsControlMode": { + "type": "string" + } + }, + "required": [ + "AttachmentsControlMode" + ], + "type": "object" + }, + "AWS::QBusiness::Application.EncryptionConfiguration": { + "additionalProperties": false, + "properties": { + "KmsKeyId": { + "type": "string" + } + }, + "type": "object" + }, + "AWS::QBusiness::DataSource": { + "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": { + "ApplicationId": { + "type": "string" + }, + "Configuration": { + "type": "object" + }, + "Description": { + "type": "string" + }, + "DisplayName": { + "type": "string" + }, + "DocumentEnrichmentConfiguration": { + "$ref": "#/definitions/AWS::QBusiness::DataSource.DocumentEnrichmentConfiguration" + }, + "IndexId": { + "type": "string" + }, + "RoleArn": { + "type": "string" + }, + "SyncSchedule": { + "type": "string" + }, + "Tags": { + "items": { + "$ref": "#/definitions/Tag" + }, + "type": "array" + }, + "VpcConfiguration": { + "$ref": "#/definitions/AWS::QBusiness::DataSource.DataSourceVpcConfiguration" + } + }, + "required": [ + "ApplicationId", + "Configuration", + "DisplayName", + "IndexId" + ], + "type": "object" + }, + "Type": { + "enum": [ + "AWS::QBusiness::DataSource" + ], + "type": "string" + }, + "UpdateReplacePolicy": { + "enum": [ + "Delete", + "Retain", + "Snapshot" + ], + "type": "string" + } + }, + "required": [ + "Type", + "Properties" + ], + "type": "object" + }, + "AWS::QBusiness::DataSource.DataSourceVpcConfiguration": { + "additionalProperties": false, + "properties": { + "SecurityGroupIds": { + "items": { + "type": "string" + }, + "type": "array" + }, + "SubnetIds": { + "items": { + "type": "string" + }, + "type": "array" + } + }, + "required": [ + "SecurityGroupIds", + "SubnetIds" + ], + "type": "object" + }, + "AWS::QBusiness::DataSource.DocumentAttributeCondition": { + "additionalProperties": false, + "properties": { + "Key": { + "type": "string" + }, + "Operator": { + "type": "string" + }, + "Value": { + "$ref": "#/definitions/AWS::QBusiness::DataSource.DocumentAttributeValue" + } + }, + "required": [ + "Key", + "Operator" + ], + "type": "object" + }, + "AWS::QBusiness::DataSource.DocumentAttributeTarget": { + "additionalProperties": false, + "properties": { + "AttributeValueOperator": { + "type": "string" + }, + "Key": { + "type": "string" + }, + "Value": { + "$ref": "#/definitions/AWS::QBusiness::DataSource.DocumentAttributeValue" + } + }, + "required": [ + "Key" + ], + "type": "object" + }, + "AWS::QBusiness::DataSource.DocumentAttributeValue": { + "additionalProperties": false, + "properties": { + "DateValue": { + "type": "string" + }, + "LongValue": { + "type": "number" + }, + "StringListValue": { + "items": { + "type": "string" + }, + "type": "array" + }, + "StringValue": { + "type": "string" + } + }, + "type": "object" + }, + "AWS::QBusiness::DataSource.DocumentEnrichmentConfiguration": { + "additionalProperties": false, + "properties": { + "InlineConfigurations": { + "items": { + "$ref": "#/definitions/AWS::QBusiness::DataSource.InlineDocumentEnrichmentConfiguration" + }, + "type": "array" + }, + "PostExtractionHookConfiguration": { + "$ref": "#/definitions/AWS::QBusiness::DataSource.HookConfiguration" + }, + "PreExtractionHookConfiguration": { + "$ref": "#/definitions/AWS::QBusiness::DataSource.HookConfiguration" + } + }, + "type": "object" + }, + "AWS::QBusiness::DataSource.HookConfiguration": { + "additionalProperties": false, + "properties": { + "InvocationCondition": { + "$ref": "#/definitions/AWS::QBusiness::DataSource.DocumentAttributeCondition" + }, + "LambdaArn": { + "type": "string" + }, + "RoleArn": { + "type": "string" + }, + "S3BucketName": { + "type": "string" + } + }, + "type": "object" + }, + "AWS::QBusiness::DataSource.InlineDocumentEnrichmentConfiguration": { + "additionalProperties": false, + "properties": { + "Condition": { + "$ref": "#/definitions/AWS::QBusiness::DataSource.DocumentAttributeCondition" + }, + "DocumentContentOperator": { + "type": "string" + }, + "Target": { + "$ref": "#/definitions/AWS::QBusiness::DataSource.DocumentAttributeTarget" + } + }, + "type": "object" + }, + "AWS::QBusiness::Index": { + "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": { + "ApplicationId": { + "type": "string" + }, + "CapacityConfiguration": { + "$ref": "#/definitions/AWS::QBusiness::Index.IndexCapacityConfiguration" + }, + "Description": { + "type": "string" + }, + "DisplayName": { + "type": "string" + }, + "DocumentAttributeConfigurations": { + "items": { + "$ref": "#/definitions/AWS::QBusiness::Index.DocumentAttributeConfiguration" + }, + "type": "array" + }, + "Tags": { + "items": { + "$ref": "#/definitions/Tag" + }, + "type": "array" + }, + "Type": { + "type": "string" + } + }, + "required": [ + "ApplicationId", + "DisplayName" + ], + "type": "object" + }, + "Type": { + "enum": [ + "AWS::QBusiness::Index" + ], + "type": "string" + }, + "UpdateReplacePolicy": { + "enum": [ + "Delete", + "Retain", + "Snapshot" + ], + "type": "string" + } + }, + "required": [ + "Type", + "Properties" + ], + "type": "object" + }, + "AWS::QBusiness::Index.DocumentAttributeConfiguration": { + "additionalProperties": false, + "properties": { + "Name": { + "type": "string" + }, + "Search": { + "type": "string" + }, + "Type": { + "type": "string" + } + }, + "type": "object" + }, + "AWS::QBusiness::Index.IndexCapacityConfiguration": { + "additionalProperties": false, + "properties": { + "Units": { + "type": "number" + } + }, + "type": "object" + }, + "AWS::QBusiness::Index.IndexStatistics": { + "additionalProperties": false, + "properties": { + "TextDocumentStatistics": { + "$ref": "#/definitions/AWS::QBusiness::Index.TextDocumentStatistics" + } + }, + "type": "object" + }, + "AWS::QBusiness::Index.TextDocumentStatistics": { + "additionalProperties": false, + "properties": { + "IndexedTextBytes": { + "type": "number" + }, + "IndexedTextDocumentCount": { + "type": "number" + } + }, + "type": "object" + }, + "AWS::QBusiness::Plugin": { + "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": { + "ApplicationId": { + "type": "string" + }, + "AuthConfiguration": { + "$ref": "#/definitions/AWS::QBusiness::Plugin.PluginAuthConfiguration" + }, + "CustomPluginConfiguration": { + "$ref": "#/definitions/AWS::QBusiness::Plugin.CustomPluginConfiguration" + }, + "DisplayName": { + "type": "string" + }, + "ServerUrl": { + "type": "string" + }, + "State": { + "type": "string" + }, + "Tags": { + "items": { + "$ref": "#/definitions/Tag" + }, + "type": "array" + }, + "Type": { + "type": "string" + } + }, + "required": [ + "ApplicationId", + "AuthConfiguration", + "DisplayName", + "Type" + ], + "type": "object" + }, + "Type": { + "enum": [ + "AWS::QBusiness::Plugin" + ], + "type": "string" + }, + "UpdateReplacePolicy": { + "enum": [ + "Delete", + "Retain", + "Snapshot" + ], + "type": "string" + } + }, + "required": [ + "Type", + "Properties" + ], + "type": "object" + }, + "AWS::QBusiness::Plugin.APISchema": { + "additionalProperties": false, + "properties": { + "Payload": { + "type": "string" + }, + "S3": { + "$ref": "#/definitions/AWS::QBusiness::Plugin.S3" + } + }, + "type": "object" + }, + "AWS::QBusiness::Plugin.BasicAuthConfiguration": { + "additionalProperties": false, + "properties": { + "RoleArn": { + "type": "string" + }, + "SecretArn": { + "type": "string" + } + }, + "required": [ + "RoleArn", + "SecretArn" + ], + "type": "object" + }, + "AWS::QBusiness::Plugin.CustomPluginConfiguration": { + "additionalProperties": false, + "properties": { + "ApiSchema": { + "$ref": "#/definitions/AWS::QBusiness::Plugin.APISchema" + }, + "ApiSchemaType": { + "type": "string" + }, + "Description": { + "type": "string" + } + }, + "required": [ + "ApiSchema", + "ApiSchemaType", + "Description" + ], + "type": "object" + }, + "AWS::QBusiness::Plugin.OAuth2ClientCredentialConfiguration": { + "additionalProperties": false, + "properties": { + "RoleArn": { + "type": "string" + }, + "SecretArn": { + "type": "string" + } + }, + "required": [ + "RoleArn", + "SecretArn" + ], + "type": "object" + }, + "AWS::QBusiness::Plugin.PluginAuthConfiguration": { + "additionalProperties": false, + "properties": { + "BasicAuthConfiguration": { + "$ref": "#/definitions/AWS::QBusiness::Plugin.BasicAuthConfiguration" + }, + "NoAuthConfiguration": { + "type": "object" + }, + "OAuth2ClientCredentialConfiguration": { + "$ref": "#/definitions/AWS::QBusiness::Plugin.OAuth2ClientCredentialConfiguration" + } + }, + "type": "object" + }, + "AWS::QBusiness::Plugin.S3": { + "additionalProperties": false, + "properties": { + "Bucket": { + "type": "string" + }, + "Key": { + "type": "string" + } + }, + "required": [ + "Bucket", + "Key" + ], + "type": "object" + }, + "AWS::QBusiness::Retriever": { + "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": { + "ApplicationId": { "type": "string" }, + "Configuration": { + "$ref": "#/definitions/AWS::QBusiness::Retriever.RetrieverConfiguration" + }, "DisplayName": { "type": "string" }, - "EncryptionKey": { + "RoleArn": { "type": "string" }, - "Name": { + "Tags": { + "items": { + "$ref": "#/definitions/Tag" + }, + "type": "array" + }, + "Type": { + "type": "string" + } + }, + "required": [ + "ApplicationId", + "Configuration", + "DisplayName", + "Type" + ], + "type": "object" + }, + "Type": { + "enum": [ + "AWS::QBusiness::Retriever" + ], + "type": "string" + }, + "UpdateReplacePolicy": { + "enum": [ + "Delete", + "Retain", + "Snapshot" + ], + "type": "string" + } + }, + "required": [ + "Type", + "Properties" + ], + "type": "object" + }, + "AWS::QBusiness::Retriever.KendraIndexConfiguration": { + "additionalProperties": false, + "properties": { + "IndexId": { + "type": "string" + } + }, + "required": [ + "IndexId" + ], + "type": "object" + }, + "AWS::QBusiness::Retriever.NativeIndexConfiguration": { + "additionalProperties": false, + "properties": { + "IndexId": { + "type": "string" + } + }, + "required": [ + "IndexId" + ], + "type": "object" + }, + "AWS::QBusiness::Retriever.RetrieverConfiguration": { + "additionalProperties": false, + "properties": { + "KendraIndexConfiguration": { + "$ref": "#/definitions/AWS::QBusiness::Retriever.KendraIndexConfiguration" + }, + "NativeIndexConfiguration": { + "$ref": "#/definitions/AWS::QBusiness::Retriever.NativeIndexConfiguration" + } + }, + "type": "object" + }, + "AWS::QBusiness::WebExperience": { + "additionalProperties": false, + "properties": { + "Condition": { + "type": "string" + }, + "DeletionPolicy": { + "enum": [ + "Delete", + "Retain", + "Snapshot" + ], + "type": "string" + }, + "DependsOn": { + "anyOf": [ + { + "pattern": "^[a-zA-Z0-9]+$", "type": "string" }, - "PipelineProvisioning": { + { + "items": { + "pattern": "^[a-zA-Z0-9]+$", + "type": "string" + }, + "type": "array" + } + ] + }, + "Metadata": { + "type": "object" + }, + "Properties": { + "additionalProperties": false, + "properties": { + "ApplicationId": { + "type": "string" + }, + "RoleArn": { + "type": "string" + }, + "SamplePromptsControlMode": { + "type": "string" + }, + "Subtitle": { "type": "string" }, "Tags": { @@ -148136,13 +150388,22 @@ "$ref": "#/definitions/Tag" }, "type": "array" + }, + "Title": { + "type": "string" + }, + "WelcomeMessage": { + "type": "string" } }, + "required": [ + "ApplicationId" + ], "type": "object" }, "Type": { "enum": [ - "AWS::Proton::ServiceTemplate" + "AWS::QBusiness::WebExperience" ], "type": "string" }, @@ -148156,7 +150417,8 @@ } }, "required": [ - "Type" + "Type", + "Properties" ], "type": "object" }, @@ -157188,6 +159450,15 @@ }, "type": "object" }, + "AWS::QuickSight::Analysis.WaterfallChartColorConfiguration": { + "additionalProperties": false, + "properties": { + "GroupColorConfiguration": { + "$ref": "#/definitions/AWS::QuickSight::Analysis.WaterfallChartGroupColorConfiguration" + } + }, + "type": "object" + }, "AWS::QuickSight::Analysis.WaterfallChartConfiguration": { "additionalProperties": false, "properties": { @@ -157197,6 +159468,9 @@ "CategoryAxisLabelOptions": { "$ref": "#/definitions/AWS::QuickSight::Analysis.ChartAxisLabelOptions" }, + "ColorConfiguration": { + "$ref": "#/definitions/AWS::QuickSight::Analysis.WaterfallChartColorConfiguration" + }, "DataLabels": { "$ref": "#/definitions/AWS::QuickSight::Analysis.DataLabelOptions" }, @@ -157233,6 +159507,21 @@ }, "type": "object" }, + "AWS::QuickSight::Analysis.WaterfallChartGroupColorConfiguration": { + "additionalProperties": false, + "properties": { + "NegativeBarColor": { + "type": "string" + }, + "PositiveBarColor": { + "type": "string" + }, + "TotalBarColor": { + "type": "string" + } + }, + "type": "object" + }, "AWS::QuickSight::Analysis.WaterfallChartOptions": { "additionalProperties": false, "properties": { @@ -166493,6 +168782,15 @@ }, "type": "object" }, + "AWS::QuickSight::Dashboard.WaterfallChartColorConfiguration": { + "additionalProperties": false, + "properties": { + "GroupColorConfiguration": { + "$ref": "#/definitions/AWS::QuickSight::Dashboard.WaterfallChartGroupColorConfiguration" + } + }, + "type": "object" + }, "AWS::QuickSight::Dashboard.WaterfallChartConfiguration": { "additionalProperties": false, "properties": { @@ -166502,6 +168800,9 @@ "CategoryAxisLabelOptions": { "$ref": "#/definitions/AWS::QuickSight::Dashboard.ChartAxisLabelOptions" }, + "ColorConfiguration": { + "$ref": "#/definitions/AWS::QuickSight::Dashboard.WaterfallChartColorConfiguration" + }, "DataLabels": { "$ref": "#/definitions/AWS::QuickSight::Dashboard.DataLabelOptions" }, @@ -166538,6 +168839,21 @@ }, "type": "object" }, + "AWS::QuickSight::Dashboard.WaterfallChartGroupColorConfiguration": { + "additionalProperties": false, + "properties": { + "NegativeBarColor": { + "type": "string" + }, + "PositiveBarColor": { + "type": "string" + }, + "TotalBarColor": { + "type": "string" + } + }, + "type": "object" + }, "AWS::QuickSight::Dashboard.WaterfallChartOptions": { "additionalProperties": false, "properties": { @@ -167029,6 +169345,9 @@ "$ref": "#/definitions/AWS::QuickSight::DataSet.RefreshConfiguration" } }, + "required": [ + "RefreshConfiguration" + ], "type": "object" }, "AWS::QuickSight::DataSet.DataSetUsageConfiguration": { @@ -167190,6 +169509,9 @@ "$ref": "#/definitions/AWS::QuickSight::DataSet.LookbackWindow" } }, + "required": [ + "LookbackWindow" + ], "type": "object" }, "AWS::QuickSight::DataSet.IngestionWaitPolicy": { @@ -167347,6 +169669,11 @@ "type": "string" } }, + "required": [ + "ColumnName", + "Size", + "SizeUnit" + ], "type": "object" }, "AWS::QuickSight::DataSet.NewDefaultValues": { @@ -167452,6 +169779,9 @@ "$ref": "#/definitions/AWS::QuickSight::DataSet.IncrementalRefresh" } }, + "required": [ + "IncrementalRefresh" + ], "type": "object" }, "AWS::QuickSight::DataSet.RelationalTable": { @@ -167685,10 +170015,32 @@ }, "TagColumnOperation": { "$ref": "#/definitions/AWS::QuickSight::DataSet.TagColumnOperation" + }, + "UntagColumnOperation": { + "$ref": "#/definitions/AWS::QuickSight::DataSet.UntagColumnOperation" } }, "type": "object" }, + "AWS::QuickSight::DataSet.UntagColumnOperation": { + "additionalProperties": false, + "properties": { + "ColumnName": { + "type": "string" + }, + "TagNames": { + "items": { + "type": "string" + }, + "type": "array" + } + }, + "required": [ + "ColumnName", + "TagNames" + ], + "type": "object" + }, "AWS::QuickSight::DataSet.UploadSettings": { "additionalProperties": false, "properties": { @@ -167791,6 +170143,10 @@ "$ref": "#/definitions/AWS::QuickSight::DataSource.VpcConnectionProperties" } }, + "required": [ + "Name", + "Type" + ], "type": "object" }, "Type": { @@ -167809,7 +170165,8 @@ } }, "required": [ - "Type" + "Type", + "Properties" ], "type": "object" }, @@ -168024,6 +170381,15 @@ ], "type": "object" }, + "AWS::QuickSight::DataSource.IdentityCenterConfiguration": { + "additionalProperties": false, + "properties": { + "EnableIdentityPropagation": { + "type": "boolean" + } + }, + "type": "object" + }, "AWS::QuickSight::DataSource.ManifestFileLocation": { "additionalProperties": false, "properties": { @@ -168156,6 +170522,30 @@ ], "type": "object" }, + "AWS::QuickSight::DataSource.RedshiftIAMParameters": { + "additionalProperties": false, + "properties": { + "AutoCreateDatabaseUser": { + "type": "boolean" + }, + "DatabaseGroups": { + "items": { + "type": "string" + }, + "type": "array" + }, + "DatabaseUser": { + "type": "string" + }, + "RoleArn": { + "type": "string" + } + }, + "required": [ + "RoleArn" + ], + "type": "object" + }, "AWS::QuickSight::DataSource.RedshiftParameters": { "additionalProperties": false, "properties": { @@ -168168,6 +170558,12 @@ "Host": { "type": "string" }, + "IAMParameters": { + "$ref": "#/definitions/AWS::QuickSight::DataSource.RedshiftIAMParameters" + }, + "IdentityCenterConfiguration": { + "$ref": "#/definitions/AWS::QuickSight::DataSource.IdentityCenterConfiguration" + }, "Port": { "type": "number" } @@ -168188,6 +170584,9 @@ }, "Principal": { "type": "string" + }, + "Resource": { + "type": "string" } }, "required": [ @@ -177297,6 +179696,15 @@ }, "type": "object" }, + "AWS::QuickSight::Template.WaterfallChartColorConfiguration": { + "additionalProperties": false, + "properties": { + "GroupColorConfiguration": { + "$ref": "#/definitions/AWS::QuickSight::Template.WaterfallChartGroupColorConfiguration" + } + }, + "type": "object" + }, "AWS::QuickSight::Template.WaterfallChartConfiguration": { "additionalProperties": false, "properties": { @@ -177306,6 +179714,9 @@ "CategoryAxisLabelOptions": { "$ref": "#/definitions/AWS::QuickSight::Template.ChartAxisLabelOptions" }, + "ColorConfiguration": { + "$ref": "#/definitions/AWS::QuickSight::Template.WaterfallChartColorConfiguration" + }, "DataLabels": { "$ref": "#/definitions/AWS::QuickSight::Template.DataLabelOptions" }, @@ -177342,6 +179753,21 @@ }, "type": "object" }, + "AWS::QuickSight::Template.WaterfallChartGroupColorConfiguration": { + "additionalProperties": false, + "properties": { + "NegativeBarColor": { + "type": "string" + }, + "PositiveBarColor": { + "type": "string" + }, + "TotalBarColor": { + "type": "string" + } + }, + "type": "object" + }, "AWS::QuickSight::Template.WaterfallChartOptions": { "additionalProperties": false, "properties": { @@ -178283,6 +180709,9 @@ "DefaultFormatting": { "$ref": "#/definitions/AWS::QuickSight::Topic.DefaultFormatting" }, + "DisableIndexing": { + "type": "boolean" + }, "Expression": { "type": "string" }, @@ -178389,6 +180818,9 @@ "DefaultFormatting": { "$ref": "#/definitions/AWS::QuickSight::Topic.DefaultFormatting" }, + "DisableIndexing": { + "type": "boolean" + }, "IsIncludedInTopic": { "type": "boolean" }, @@ -184702,6 +187134,12 @@ "Properties": { "additionalProperties": false, "properties": { + "AttributeMappings": { + "items": { + "$ref": "#/definitions/AWS::RolesAnywhere::Profile.AttributeMapping" + }, + "type": "array" + }, "DurationSeconds": { "type": "number" }, @@ -184763,6 +187201,37 @@ ], "type": "object" }, + "AWS::RolesAnywhere::Profile.AttributeMapping": { + "additionalProperties": false, + "properties": { + "CertificateField": { + "type": "string" + }, + "MappingRules": { + "items": { + "$ref": "#/definitions/AWS::RolesAnywhere::Profile.MappingRule" + }, + "type": "array" + } + }, + "required": [ + "CertificateField", + "MappingRules" + ], + "type": "object" + }, + "AWS::RolesAnywhere::Profile.MappingRule": { + "additionalProperties": false, + "properties": { + "Specifier": { + "type": "string" + } + }, + "required": [ + "Specifier" + ], + "type": "object" + }, "AWS::RolesAnywhere::TrustAnchor": { "additionalProperties": false, "properties": { @@ -186994,6 +189463,9 @@ "FirewallDomainListId": { "type": "string" }, + "FirewallDomainRedirectionAction": { + "type": "string" + }, "Priority": { "type": "number" }, @@ -195016,6 +197488,194 @@ ], "type": "object" }, + "AWS::SSO::Application": { + "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": { + "ApplicationProviderArn": { + "type": "string" + }, + "Description": { + "type": "string" + }, + "InstanceArn": { + "type": "string" + }, + "Name": { + "type": "string" + }, + "PortalOptions": { + "$ref": "#/definitions/AWS::SSO::Application.PortalOptionsConfiguration" + }, + "Status": { + "type": "string" + }, + "Tags": { + "items": { + "$ref": "#/definitions/Tag" + }, + "type": "array" + } + }, + "required": [ + "ApplicationProviderArn", + "InstanceArn", + "Name" + ], + "type": "object" + }, + "Type": { + "enum": [ + "AWS::SSO::Application" + ], + "type": "string" + }, + "UpdateReplacePolicy": { + "enum": [ + "Delete", + "Retain", + "Snapshot" + ], + "type": "string" + } + }, + "required": [ + "Type", + "Properties" + ], + "type": "object" + }, + "AWS::SSO::Application.PortalOptionsConfiguration": { + "additionalProperties": false, + "properties": { + "SignInOptions": { + "$ref": "#/definitions/AWS::SSO::Application.SignInOptions" + }, + "Visibility": { + "type": "string" + } + }, + "type": "object" + }, + "AWS::SSO::Application.SignInOptions": { + "additionalProperties": false, + "properties": { + "ApplicationUrl": { + "type": "string" + }, + "Origin": { + "type": "string" + } + }, + "required": [ + "Origin" + ], + "type": "object" + }, + "AWS::SSO::ApplicationAssignment": { + "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": { + "ApplicationArn": { + "type": "string" + }, + "PrincipalId": { + "type": "string" + }, + "PrincipalType": { + "type": "string" + } + }, + "required": [ + "ApplicationArn", + "PrincipalId", + "PrincipalType" + ], + "type": "object" + }, + "Type": { + "enum": [ + "AWS::SSO::ApplicationAssignment" + ], + "type": "string" + }, + "UpdateReplacePolicy": { + "enum": [ + "Delete", + "Retain", + "Snapshot" + ], + "type": "string" + } + }, + "required": [ + "Type", + "Properties" + ], + "type": "object" + }, "AWS::SSO::Assignment": { "additionalProperties": false, "properties": { @@ -195051,38 +197711,106 @@ "Properties": { "additionalProperties": false, "properties": { - "InstanceArn": { - "type": "string" - }, - "PermissionSetArn": { - "type": "string" - }, - "PrincipalId": { - "type": "string" - }, - "PrincipalType": { - "type": "string" - }, - "TargetId": { + "InstanceArn": { + "type": "string" + }, + "PermissionSetArn": { + "type": "string" + }, + "PrincipalId": { + "type": "string" + }, + "PrincipalType": { + "type": "string" + }, + "TargetId": { + "type": "string" + }, + "TargetType": { + "type": "string" + } + }, + "required": [ + "InstanceArn", + "PermissionSetArn", + "PrincipalId", + "PrincipalType", + "TargetId", + "TargetType" + ], + "type": "object" + }, + "Type": { + "enum": [ + "AWS::SSO::Assignment" + ], + "type": "string" + }, + "UpdateReplacePolicy": { + "enum": [ + "Delete", + "Retain", + "Snapshot" + ], + "type": "string" + } + }, + "required": [ + "Type", + "Properties" + ], + "type": "object" + }, + "AWS::SSO::Instance": { + "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": { + "Name": { "type": "string" }, - "TargetType": { - "type": "string" + "Tags": { + "items": { + "$ref": "#/definitions/Tag" + }, + "type": "array" } }, - "required": [ - "InstanceArn", - "PermissionSetArn", - "PrincipalId", - "PrincipalType", - "TargetId", - "TargetType" - ], "type": "object" }, "Type": { "enum": [ - "AWS::SSO::Assignment" + "AWS::SSO::Instance" ], "type": "string" }, @@ -195096,8 +197824,7 @@ } }, "required": [ - "Type", - "Properties" + "Type" ], "type": "object" }, @@ -196507,9 +199234,21 @@ "AWS::SageMaker::Domain.DefaultSpaceSettings": { "additionalProperties": false, "properties": { + "CustomFileSystemConfigs": { + "items": { + "$ref": "#/definitions/AWS::SageMaker::Domain.CustomFileSystemConfig" + }, + "type": "array" + }, + "CustomPosixUserConfig": { + "$ref": "#/definitions/AWS::SageMaker::Domain.CustomPosixUserConfig" + }, "ExecutionRole": { "type": "string" }, + "JupyterLabAppSettings": { + "$ref": "#/definitions/AWS::SageMaker::Domain.JupyterLabAppSettings" + }, "JupyterServerAppSettings": { "$ref": "#/definitions/AWS::SageMaker::Domain.JupyterServerAppSettings" }, @@ -196521,6 +199260,9 @@ "type": "string" }, "type": "array" + }, + "SpaceStorageSettings": { + "$ref": "#/definitions/AWS::SageMaker::Domain.DefaultSpaceStorageSettings" } }, "required": [ @@ -204306,6 +207048,210 @@ ], "type": "object" }, + "AWS::SecurityHub::ConfigurationPolicy": { + "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": { + "ConfigurationPolicy": { + "$ref": "#/definitions/AWS::SecurityHub::ConfigurationPolicy.Policy" + }, + "Description": { + "type": "string" + }, + "Name": { + "type": "string" + }, + "Tags": { + "additionalProperties": true, + "patternProperties": { + "^[a-zA-Z0-9]+$": { + "type": "string" + } + }, + "type": "object" + } + }, + "required": [ + "ConfigurationPolicy", + "Name" + ], + "type": "object" + }, + "Type": { + "enum": [ + "AWS::SecurityHub::ConfigurationPolicy" + ], + "type": "string" + }, + "UpdateReplacePolicy": { + "enum": [ + "Delete", + "Retain", + "Snapshot" + ], + "type": "string" + } + }, + "required": [ + "Type", + "Properties" + ], + "type": "object" + }, + "AWS::SecurityHub::ConfigurationPolicy.ParameterConfiguration": { + "additionalProperties": false, + "properties": { + "Value": { + "$ref": "#/definitions/AWS::SecurityHub::ConfigurationPolicy.ParameterValue" + }, + "ValueType": { + "type": "string" + } + }, + "required": [ + "ValueType" + ], + "type": "object" + }, + "AWS::SecurityHub::ConfigurationPolicy.ParameterValue": { + "additionalProperties": false, + "properties": { + "Boolean": { + "type": "boolean" + }, + "Double": { + "type": "number" + }, + "Enum": { + "type": "string" + }, + "EnumList": { + "items": { + "type": "string" + }, + "type": "array" + }, + "Integer": { + "type": "number" + }, + "IntegerList": { + "items": { + "type": "number" + }, + "type": "array" + }, + "String": { + "type": "string" + }, + "StringList": { + "items": { + "type": "string" + }, + "type": "array" + } + }, + "type": "object" + }, + "AWS::SecurityHub::ConfigurationPolicy.Policy": { + "additionalProperties": false, + "properties": { + "SecurityHub": { + "$ref": "#/definitions/AWS::SecurityHub::ConfigurationPolicy.SecurityHubPolicy" + } + }, + "type": "object" + }, + "AWS::SecurityHub::ConfigurationPolicy.SecurityControlCustomParameter": { + "additionalProperties": false, + "properties": { + "Parameters": { + "additionalProperties": false, + "patternProperties": { + "^[a-zA-Z0-9]+$": { + "$ref": "#/definitions/AWS::SecurityHub::ConfigurationPolicy.ParameterConfiguration" + } + }, + "type": "object" + }, + "SecurityControlId": { + "type": "string" + } + }, + "type": "object" + }, + "AWS::SecurityHub::ConfigurationPolicy.SecurityControlsConfiguration": { + "additionalProperties": false, + "properties": { + "DisabledSecurityControlIdentifiers": { + "items": { + "type": "string" + }, + "type": "array" + }, + "EnabledSecurityControlIdentifiers": { + "items": { + "type": "string" + }, + "type": "array" + }, + "SecurityControlCustomParameters": { + "items": { + "$ref": "#/definitions/AWS::SecurityHub::ConfigurationPolicy.SecurityControlCustomParameter" + }, + "type": "array" + } + }, + "type": "object" + }, + "AWS::SecurityHub::ConfigurationPolicy.SecurityHubPolicy": { + "additionalProperties": false, + "properties": { + "EnabledStandardIdentifiers": { + "items": { + "type": "string" + }, + "type": "array" + }, + "SecurityControlsConfiguration": { + "$ref": "#/definitions/AWS::SecurityHub::ConfigurationPolicy.SecurityControlsConfiguration" + }, + "ServiceEnabled": { + "type": "boolean" + } + }, + "type": "object" + }, "AWS::SecurityHub::DelegatedAdmin": { "additionalProperties": false, "properties": { @@ -204371,6 +207317,77 @@ ], "type": "object" }, + "AWS::SecurityHub::FindingAggregator": { + "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": { + "RegionLinkingMode": { + "type": "string" + }, + "Regions": { + "items": { + "type": "string" + }, + "type": "array" + } + }, + "required": [ + "RegionLinkingMode" + ], + "type": "object" + }, + "Type": { + "enum": [ + "AWS::SecurityHub::FindingAggregator" + ], + "type": "string" + }, + "UpdateReplacePolicy": { + "enum": [ + "Delete", + "Retain", + "Snapshot" + ], + "type": "string" + } + }, + "required": [ + "Type", + "Properties" + ], + "type": "object" + }, "AWS::SecurityHub::Hub": { "additionalProperties": false, "properties": { @@ -205232,6 +208249,150 @@ ], "type": "object" }, + "AWS::SecurityHub::OrganizationConfiguration": { + "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": { + "AutoEnable": { + "type": "boolean" + }, + "AutoEnableStandards": { + "type": "string" + }, + "ConfigurationType": { + "type": "string" + } + }, + "required": [ + "AutoEnable" + ], + "type": "object" + }, + "Type": { + "enum": [ + "AWS::SecurityHub::OrganizationConfiguration" + ], + "type": "string" + }, + "UpdateReplacePolicy": { + "enum": [ + "Delete", + "Retain", + "Snapshot" + ], + "type": "string" + } + }, + "required": [ + "Type", + "Properties" + ], + "type": "object" + }, + "AWS::SecurityHub::PolicyAssociation": { + "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": { + "ConfigurationPolicyId": { + "type": "string" + }, + "TargetId": { + "type": "string" + }, + "TargetType": { + "type": "string" + } + }, + "required": [ + "ConfigurationPolicyId", + "TargetId", + "TargetType" + ], + "type": "object" + }, + "Type": { + "enum": [ + "AWS::SecurityHub::PolicyAssociation" + ], + "type": "string" + }, + "UpdateReplacePolicy": { + "enum": [ + "Delete", + "Retain", + "Snapshot" + ], + "type": "string" + } + }, + "required": [ + "Type", + "Properties" + ], + "type": "object" + }, "AWS::SecurityHub::ProductSubscription": { "additionalProperties": false, "properties": { @@ -205297,6 +208458,140 @@ ], "type": "object" }, + "AWS::SecurityHub::SecurityControl": { + "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": { + "LastUpdateReason": { + "type": "string" + }, + "Parameters": { + "additionalProperties": false, + "patternProperties": { + "^[a-zA-Z0-9]+$": { + "$ref": "#/definitions/AWS::SecurityHub::SecurityControl.ParameterConfiguration" + } + }, + "type": "object" + }, + "SecurityControlArn": { + "type": "string" + }, + "SecurityControlId": { + "type": "string" + } + }, + "required": [ + "Parameters" + ], + "type": "object" + }, + "Type": { + "enum": [ + "AWS::SecurityHub::SecurityControl" + ], + "type": "string" + }, + "UpdateReplacePolicy": { + "enum": [ + "Delete", + "Retain", + "Snapshot" + ], + "type": "string" + } + }, + "required": [ + "Type", + "Properties" + ], + "type": "object" + }, + "AWS::SecurityHub::SecurityControl.ParameterConfiguration": { + "additionalProperties": false, + "properties": { + "Value": { + "$ref": "#/definitions/AWS::SecurityHub::SecurityControl.ParameterValue" + }, + "ValueType": { + "type": "string" + } + }, + "required": [ + "ValueType" + ], + "type": "object" + }, + "AWS::SecurityHub::SecurityControl.ParameterValue": { + "additionalProperties": false, + "properties": { + "Boolean": { + "type": "boolean" + }, + "Double": { + "type": "number" + }, + "Enum": { + "type": "string" + }, + "EnumList": { + "items": { + "type": "string" + }, + "type": "array" + }, + "Integer": { + "type": "number" + }, + "IntegerList": { + "items": { + "type": "number" + }, + "type": "array" + }, + "String": { + "type": "string" + }, + "StringList": { + "items": { + "type": "string" + }, + "type": "array" + } + }, + "type": "object" + }, "AWS::SecurityHub::Standard": { "additionalProperties": false, "properties": { @@ -205418,7 +208713,222 @@ "Properties": { "additionalProperties": false, "properties": { - "Accounts": { + "Accounts": { + "items": { + "type": "string" + }, + "type": "array" + }, + "DataLakeArn": { + "type": "string" + }, + "SourceName": { + "type": "string" + }, + "SourceVersion": { + "type": "string" + } + }, + "required": [ + "DataLakeArn", + "SourceName", + "SourceVersion" + ], + "type": "object" + }, + "Type": { + "enum": [ + "AWS::SecurityLake::AwsLogSource" + ], + "type": "string" + }, + "UpdateReplacePolicy": { + "enum": [ + "Delete", + "Retain", + "Snapshot" + ], + "type": "string" + } + }, + "required": [ + "Type", + "Properties" + ], + "type": "object" + }, + "AWS::SecurityLake::DataLake": { + "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": { + "EncryptionConfiguration": { + "$ref": "#/definitions/AWS::SecurityLake::DataLake.EncryptionConfiguration" + }, + "LifecycleConfiguration": { + "$ref": "#/definitions/AWS::SecurityLake::DataLake.LifecycleConfiguration" + }, + "MetaStoreManagerRoleArn": { + "type": "string" + }, + "ReplicationConfiguration": { + "$ref": "#/definitions/AWS::SecurityLake::DataLake.ReplicationConfiguration" + }, + "Tags": { + "items": { + "$ref": "#/definitions/Tag" + }, + "type": "array" + } + }, + "type": "object" + }, + "Type": { + "enum": [ + "AWS::SecurityLake::DataLake" + ], + "type": "string" + }, + "UpdateReplacePolicy": { + "enum": [ + "Delete", + "Retain", + "Snapshot" + ], + "type": "string" + } + }, + "required": [ + "Type" + ], + "type": "object" + }, + "AWS::SecurityLake::DataLake.EncryptionConfiguration": { + "additionalProperties": false, + "properties": { + "KmsKeyId": { + "type": "string" + } + }, + "type": "object" + }, + "AWS::SecurityLake::DataLake.Expiration": { + "additionalProperties": false, + "properties": { + "Days": { + "type": "number" + } + }, + "type": "object" + }, + "AWS::SecurityLake::DataLake.LifecycleConfiguration": { + "additionalProperties": false, + "properties": { + "Expiration": { + "$ref": "#/definitions/AWS::SecurityLake::DataLake.Expiration" + }, + "Transitions": { + "items": { + "$ref": "#/definitions/AWS::SecurityLake::DataLake.Transitions" + }, + "type": "array" + } + }, + "type": "object" + }, + "AWS::SecurityLake::DataLake.ReplicationConfiguration": { + "additionalProperties": false, + "properties": { + "Regions": { + "items": { + "type": "string" + }, + "type": "array" + }, + "RoleArn": { + "type": "string" + } + }, + "type": "object" + }, + "AWS::SecurityLake::DataLake.Transitions": { + "additionalProperties": false, + "properties": { + "Days": { + "type": "number" + }, + "StorageClass": { + "type": "string" + } + }, + "type": "object" + }, + "AWS::SecurityLake::Subscriber": { + "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": { + "AccessTypes": { "items": { "type": "string" }, @@ -205427,87 +208937,20 @@ "DataLakeArn": { "type": "string" }, - "SourceName": { - "type": "string" - }, - "SourceVersion": { - "type": "string" - } - }, - "required": [ - "DataLakeArn", - "SourceName", - "SourceVersion" - ], - "type": "object" - }, - "Type": { - "enum": [ - "AWS::SecurityLake::AwsLogSource" - ], - "type": "string" - }, - "UpdateReplacePolicy": { - "enum": [ - "Delete", - "Retain", - "Snapshot" - ], - "type": "string" - } - }, - "required": [ - "Type", - "Properties" - ], - "type": "object" - }, - "AWS::SecurityLake::DataLake": { - "additionalProperties": false, - "properties": { - "Condition": { - "type": "string" - }, - "DeletionPolicy": { - "enum": [ - "Delete", - "Retain", - "Snapshot" - ], - "type": "string" - }, - "DependsOn": { - "anyOf": [ - { - "pattern": "^[a-zA-Z0-9]+$", - "type": "string" - }, - { + "Sources": { "items": { - "pattern": "^[a-zA-Z0-9]+$", - "type": "string" + "$ref": "#/definitions/AWS::SecurityLake::Subscriber.Source" }, "type": "array" - } - ] - }, - "Metadata": { - "type": "object" - }, - "Properties": { - "additionalProperties": false, - "properties": { - "EncryptionConfiguration": { - "$ref": "#/definitions/AWS::SecurityLake::DataLake.EncryptionConfiguration" }, - "LifecycleConfiguration": { - "$ref": "#/definitions/AWS::SecurityLake::DataLake.LifecycleConfiguration" - }, - "MetaStoreManagerRoleArn": { + "SubscriberDescription": { "type": "string" }, - "ReplicationConfiguration": { - "$ref": "#/definitions/AWS::SecurityLake::DataLake.ReplicationConfiguration" + "SubscriberIdentity": { + "$ref": "#/definitions/AWS::SecurityLake::Subscriber.SubscriberIdentity" + }, + "SubscriberName": { + "type": "string" }, "Tags": { "items": { @@ -205516,11 +208959,18 @@ "type": "array" } }, + "required": [ + "AccessTypes", + "DataLakeArn", + "Sources", + "SubscriberIdentity", + "SubscriberName" + ], "type": "object" }, "Type": { "enum": [ - "AWS::SecurityLake::DataLake" + "AWS::SecurityLake::Subscriber" ], "type": "string" }, @@ -205534,71 +208984,64 @@ } }, "required": [ - "Type" + "Type", + "Properties" ], "type": "object" }, - "AWS::SecurityLake::DataLake.EncryptionConfiguration": { + "AWS::SecurityLake::Subscriber.AwsLogSource": { "additionalProperties": false, "properties": { - "KmsKeyId": { + "SourceName": { + "type": "string" + }, + "SourceVersion": { "type": "string" } }, "type": "object" }, - "AWS::SecurityLake::DataLake.Expiration": { - "additionalProperties": false, - "properties": { - "Days": { - "type": "number" - } - }, - "type": "object" - }, - "AWS::SecurityLake::DataLake.LifecycleConfiguration": { + "AWS::SecurityLake::Subscriber.CustomLogSource": { "additionalProperties": false, "properties": { - "Expiration": { - "$ref": "#/definitions/AWS::SecurityLake::DataLake.Expiration" + "SourceName": { + "type": "string" }, - "Transitions": { - "items": { - "$ref": "#/definitions/AWS::SecurityLake::DataLake.Transitions" - }, - "type": "array" + "SourceVersion": { + "type": "string" } }, "type": "object" }, - "AWS::SecurityLake::DataLake.ReplicationConfiguration": { + "AWS::SecurityLake::Subscriber.Source": { "additionalProperties": false, "properties": { - "Regions": { - "items": { - "type": "string" - }, - "type": "array" + "AwsLogSource": { + "$ref": "#/definitions/AWS::SecurityLake::Subscriber.AwsLogSource" }, - "RoleArn": { - "type": "string" + "CustomLogSource": { + "$ref": "#/definitions/AWS::SecurityLake::Subscriber.CustomLogSource" } }, "type": "object" }, - "AWS::SecurityLake::DataLake.Transitions": { + "AWS::SecurityLake::Subscriber.SubscriberIdentity": { "additionalProperties": false, "properties": { - "Days": { - "type": "number" + "ExternalId": { + "type": "string" }, - "StorageClass": { + "Principal": { "type": "string" } }, + "required": [ + "ExternalId", + "Principal" + ], "type": "object" }, - "AWS::SecurityLake::Subscriber": { + "AWS::SecurityLake::SubscriberNotification": { "additionalProperties": false, "properties": { "Condition": { @@ -205633,49 +209076,22 @@ "Properties": { "additionalProperties": false, "properties": { - "AccessTypes": { - "items": { - "type": "string" - }, - "type": "array" - }, - "DataLakeArn": { - "type": "string" - }, - "Sources": { - "items": { - "$ref": "#/definitions/AWS::SecurityLake::Subscriber.Source" - }, - "type": "array" - }, - "SubscriberDescription": { - "type": "string" - }, - "SubscriberIdentity": { - "$ref": "#/definitions/AWS::SecurityLake::Subscriber.SubscriberIdentity" + "NotificationConfiguration": { + "$ref": "#/definitions/AWS::SecurityLake::SubscriberNotification.NotificationConfiguration" }, - "SubscriberName": { + "SubscriberArn": { "type": "string" - }, - "Tags": { - "items": { - "$ref": "#/definitions/Tag" - }, - "type": "array" } }, "required": [ - "AccessTypes", - "DataLakeArn", - "Sources", - "SubscriberIdentity", - "SubscriberName" + "NotificationConfiguration", + "SubscriberArn" ], "type": "object" }, "Type": { "enum": [ - "AWS::SecurityLake::Subscriber" + "AWS::SecurityLake::SubscriberNotification" ], "type": "string" }, @@ -205694,56 +209110,41 @@ ], "type": "object" }, - "AWS::SecurityLake::Subscriber.AwsLogSource": { + "AWS::SecurityLake::SubscriberNotification.HttpsNotificationConfiguration": { "additionalProperties": false, "properties": { - "SourceName": { + "AuthorizationApiKeyName": { "type": "string" }, - "SourceVersion": { + "AuthorizationApiKeyValue": { "type": "string" - } - }, - "type": "object" - }, - "AWS::SecurityLake::Subscriber.CustomLogSource": { - "additionalProperties": false, - "properties": { - "SourceName": { + }, + "Endpoint": { "type": "string" }, - "SourceVersion": { + "HttpMethod": { "type": "string" - } - }, - "type": "object" - }, - "AWS::SecurityLake::Subscriber.Source": { - "additionalProperties": false, - "properties": { - "AwsLogSource": { - "$ref": "#/definitions/AWS::SecurityLake::Subscriber.AwsLogSource" }, - "CustomLogSource": { - "$ref": "#/definitions/AWS::SecurityLake::Subscriber.CustomLogSource" + "TargetRoleArn": { + "type": "string" } }, + "required": [ + "Endpoint", + "TargetRoleArn" + ], "type": "object" }, - "AWS::SecurityLake::Subscriber.SubscriberIdentity": { + "AWS::SecurityLake::SubscriberNotification.NotificationConfiguration": { "additionalProperties": false, "properties": { - "ExternalId": { - "type": "string" + "HttpsNotificationConfiguration": { + "$ref": "#/definitions/AWS::SecurityLake::SubscriberNotification.HttpsNotificationConfiguration" }, - "Principal": { - "type": "string" + "SqsNotificationConfiguration": { + "type": "object" } }, - "required": [ - "ExternalId", - "Principal" - ], "type": "object" }, "AWS::ServiceCatalog::AcceptedPortfolioShare": { @@ -210644,6 +214045,9 @@ "LoggingRole": { "type": "string" }, + "SecurityPolicyName": { + "type": "string" + }, "SftpConfig": { "$ref": "#/definitions/AWS::Transfer::Connector.SftpConfig" }, @@ -211345,6 +214749,10 @@ "type": "string" } }, + "required": [ + "DestinationFileLocation", + "Type" + ], "type": "object" }, "AWS::Transfer::Workflow.DeleteStepDetails": { @@ -220168,6 +223576,9 @@ { "$ref": "#/definitions/AWS::Bedrock::Guardrail" }, + { + "$ref": "#/definitions/AWS::Bedrock::GuardrailVersion" + }, { "$ref": "#/definitions/AWS::Bedrock::KnowledgeBase" }, @@ -220726,12 +224137,21 @@ { "$ref": "#/definitions/AWS::DataZone::EnvironmentProfile" }, + { + "$ref": "#/definitions/AWS::DataZone::GroupProfile" + }, { "$ref": "#/definitions/AWS::DataZone::Project" }, + { + "$ref": "#/definitions/AWS::DataZone::ProjectMembership" + }, { "$ref": "#/definitions/AWS::DataZone::SubscriptionTarget" }, + { + "$ref": "#/definitions/AWS::DataZone::UserProfile" + }, { "$ref": "#/definitions/AWS::Deadline::Farm" }, @@ -222325,6 +225745,9 @@ { "$ref": "#/definitions/AWS::Neptune::DBSubnetGroup" }, + { + "$ref": "#/definitions/AWS::Neptune::EventSubscription" + }, { "$ref": "#/definitions/AWS::NeptuneGraph::Graph" }, @@ -222610,6 +226033,24 @@ { "$ref": "#/definitions/AWS::Proton::ServiceTemplate" }, + { + "$ref": "#/definitions/AWS::QBusiness::Application" + }, + { + "$ref": "#/definitions/AWS::QBusiness::DataSource" + }, + { + "$ref": "#/definitions/AWS::QBusiness::Index" + }, + { + "$ref": "#/definitions/AWS::QBusiness::Plugin" + }, + { + "$ref": "#/definitions/AWS::QBusiness::Retriever" + }, + { + "$ref": "#/definitions/AWS::QBusiness::WebExperience" + }, { "$ref": "#/definitions/AWS::QLDB::Ledger" }, @@ -223036,9 +226477,18 @@ { "$ref": "#/definitions/AWS::SSMIncidents::ResponsePlan" }, + { + "$ref": "#/definitions/AWS::SSO::Application" + }, + { + "$ref": "#/definitions/AWS::SSO::ApplicationAssignment" + }, { "$ref": "#/definitions/AWS::SSO::Assignment" }, + { + "$ref": "#/definitions/AWS::SSO::Instance" + }, { "$ref": "#/definitions/AWS::SSO::InstanceAccessControlAttributeConfiguration" }, @@ -223153,18 +226603,33 @@ { "$ref": "#/definitions/AWS::SecurityHub::AutomationRule" }, + { + "$ref": "#/definitions/AWS::SecurityHub::ConfigurationPolicy" + }, { "$ref": "#/definitions/AWS::SecurityHub::DelegatedAdmin" }, + { + "$ref": "#/definitions/AWS::SecurityHub::FindingAggregator" + }, { "$ref": "#/definitions/AWS::SecurityHub::Hub" }, { "$ref": "#/definitions/AWS::SecurityHub::Insight" }, + { + "$ref": "#/definitions/AWS::SecurityHub::OrganizationConfiguration" + }, + { + "$ref": "#/definitions/AWS::SecurityHub::PolicyAssociation" + }, { "$ref": "#/definitions/AWS::SecurityHub::ProductSubscription" }, + { + "$ref": "#/definitions/AWS::SecurityHub::SecurityControl" + }, { "$ref": "#/definitions/AWS::SecurityHub::Standard" }, @@ -223177,6 +226642,9 @@ { "$ref": "#/definitions/AWS::SecurityLake::Subscriber" }, + { + "$ref": "#/definitions/AWS::SecurityLake::SubscriberNotification" + }, { "$ref": "#/definitions/AWS::ServiceCatalog::AcceptedPortfolioShare" }, diff --git a/schema/cloudformation.go b/schema/cloudformation.go index 9e9c4e9be4..37251301e7 100644 --- a/schema/cloudformation.go +++ b/schema/cloudformation.go @@ -541,6 +541,9 @@ var CloudformationSchema = `{ "type": "string" } }, + "required": [ + "Enabled" + ], "type": "object" }, "AWS::ACMPCA::CertificateAuthority.CrlDistributionPointExtensionConfiguration": { @@ -597,7 +600,6 @@ var CloudformationSchema = `{ } }, "required": [ - "NameAssigner", "PartyName" ], "type": "object" @@ -675,6 +677,9 @@ var CloudformationSchema = `{ "type": "string" } }, + "required": [ + "Enabled" + ], "type": "object" }, "AWS::ACMPCA::CertificateAuthority.OtherName": { @@ -19184,6 +19189,12 @@ var CloudformationSchema = `{ "MetricName": { "type": "string" }, + "Metrics": { + "items": { + "$ref": "#/definitions/AWS::AutoScaling::ScalingPolicy.TargetTrackingMetricDataQuery" + }, + "type": "array" + }, "Namespace": { "type": "string" }, @@ -19194,11 +19205,6 @@ var CloudformationSchema = `{ "type": "string" } }, - "required": [ - "MetricName", - "Namespace", - "Statistic" - ], "type": "object" }, "AWS::AutoScaling::ScalingPolicy.Metric": { @@ -19483,6 +19489,49 @@ var CloudformationSchema = `{ ], "type": "object" }, + "AWS::AutoScaling::ScalingPolicy.TargetTrackingMetricDataQuery": { + "additionalProperties": false, + "properties": { + "Expression": { + "type": "string" + }, + "Id": { + "type": "string" + }, + "Label": { + "type": "string" + }, + "MetricStat": { + "$ref": "#/definitions/AWS::AutoScaling::ScalingPolicy.TargetTrackingMetricStat" + }, + "ReturnData": { + "type": "boolean" + } + }, + "required": [ + "Id" + ], + "type": "object" + }, + "AWS::AutoScaling::ScalingPolicy.TargetTrackingMetricStat": { + "additionalProperties": false, + "properties": { + "Metric": { + "$ref": "#/definitions/AWS::AutoScaling::ScalingPolicy.Metric" + }, + "Stat": { + "type": "string" + }, + "Unit": { + "type": "string" + } + }, + "required": [ + "Metric", + "Stat" + ], + "type": "object" + }, "AWS::AutoScaling::ScheduledAction": { "additionalProperties": false, "properties": { @@ -22618,6 +22667,9 @@ var CloudformationSchema = `{ "EcsProperties": { "$ref": "#/definitions/AWS::Batch::JobDefinition.EcsProperties" }, + "EksProperties": { + "$ref": "#/definitions/AWS::Batch::JobDefinition.EksProperties" + }, "InstanceTypes": { "items": { "type": "string" @@ -23290,13 +23342,13 @@ var CloudformationSchema = `{ "AWS::Bedrock::Agent.ActionGroupExecutor": { "additionalProperties": false, "properties": { + "CustomControl": { + "type": "string" + }, "Lambda": { "type": "string" } }, - "required": [ - "Lambda" - ], "type": "object" }, "AWS::Bedrock::Agent.AgentActionGroup": { @@ -23317,6 +23369,9 @@ var CloudformationSchema = `{ "Description": { "type": "string" }, + "FunctionSchema": { + "$ref": "#/definitions/AWS::Bedrock::Agent.FunctionSchema" + }, "ParentActionGroupSignature": { "type": "string" }, @@ -23348,6 +23403,45 @@ var CloudformationSchema = `{ ], "type": "object" }, + "AWS::Bedrock::Agent.Function": { + "additionalProperties": false, + "properties": { + "Description": { + "type": "string" + }, + "Name": { + "type": "string" + }, + "Parameters": { + "additionalProperties": false, + "patternProperties": { + "^[a-zA-Z0-9]+$": { + "$ref": "#/definitions/AWS::Bedrock::Agent.ParameterDetail" + } + }, + "type": "object" + } + }, + "required": [ + "Name" + ], + "type": "object" + }, + "AWS::Bedrock::Agent.FunctionSchema": { + "additionalProperties": false, + "properties": { + "Functions": { + "items": { + "$ref": "#/definitions/AWS::Bedrock::Agent.Function" + }, + "type": "array" + } + }, + "required": [ + "Functions" + ], + "type": "object" + }, "AWS::Bedrock::Agent.InferenceConfiguration": { "additionalProperties": false, "properties": { @@ -23372,6 +23466,24 @@ var CloudformationSchema = `{ }, "type": "object" }, + "AWS::Bedrock::Agent.ParameterDetail": { + "additionalProperties": false, + "properties": { + "Description": { + "type": "string" + }, + "Required": { + "type": "boolean" + }, + "Type": { + "type": "string" + } + }, + "required": [ + "Type" + ], + "type": "object" + }, "AWS::Bedrock::Agent.PromptConfiguration": { "additionalProperties": false, "properties": { @@ -23578,6 +23690,9 @@ var CloudformationSchema = `{ "Properties": { "additionalProperties": false, "properties": { + "DataDeletionPolicy": { + "type": "string" + }, "DataSourceConfiguration": { "$ref": "#/definitions/AWS::Bedrock::DataSource.DataSourceConfiguration" }, @@ -23678,6 +23793,9 @@ var CloudformationSchema = `{ "BucketArn": { "type": "string" }, + "BucketOwnerAccountId": { + "type": "string" + }, "InclusionPrefixes": { "items": { "type": "string" @@ -23980,6 +24098,74 @@ var CloudformationSchema = `{ }, "type": "object" }, + "AWS::Bedrock::GuardrailVersion": { + "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" + }, + "GuardrailIdentifier": { + "type": "string" + } + }, + "required": [ + "GuardrailIdentifier" + ], + "type": "object" + }, + "Type": { + "enum": [ + "AWS::Bedrock::GuardrailVersion" + ], + "type": "string" + }, + "UpdateReplacePolicy": { + "enum": [ + "Delete", + "Retain", + "Snapshot" + ], + "type": "string" + } + }, + "required": [ + "Type", + "Properties" + ], + "type": "object" + }, "AWS::Bedrock::KnowledgeBase": { "additionalProperties": false, "properties": { @@ -24785,6 +24971,12 @@ var CloudformationSchema = `{ "$ref": "#/definitions/AWS::Budgets::Budget.NotificationWithSubscribers" }, "type": "array" + }, + "ResourceTags": { + "items": { + "$ref": "#/definitions/AWS::Budgets::Budget.ResourceTag" + }, + "type": "array" } }, "required": [ @@ -24958,6 +25150,21 @@ var CloudformationSchema = `{ ], "type": "object" }, + "AWS::Budgets::Budget.ResourceTag": { + "additionalProperties": false, + "properties": { + "Key": { + "type": "string" + }, + "Value": { + "type": "string" + } + }, + "required": [ + "Key" + ], + "type": "object" + }, "AWS::Budgets::Budget.Spend": { "additionalProperties": false, "properties": { @@ -25058,6 +25265,12 @@ var CloudformationSchema = `{ "NotificationType": { "type": "string" }, + "ResourceTags": { + "items": { + "$ref": "#/definitions/AWS::Budgets::BudgetsAction.ResourceTag" + }, + "type": "array" + }, "Subscribers": { "items": { "$ref": "#/definitions/AWS::Budgets::BudgetsAction.Subscriber" @@ -25158,6 +25371,22 @@ var CloudformationSchema = `{ ], "type": "object" }, + "AWS::Budgets::BudgetsAction.ResourceTag": { + "additionalProperties": false, + "properties": { + "Key": { + "type": "string" + }, + "Value": { + "type": "string" + } + }, + "required": [ + "Key", + "Value" + ], + "type": "object" + }, "AWS::Budgets::BudgetsAction.ScpActionDefinition": { "additionalProperties": false, "properties": { @@ -26234,6 +26463,12 @@ var CloudformationSchema = `{ }, "type": "array" }, + "Tags": { + "items": { + "$ref": "#/definitions/Tag" + }, + "type": "array" + }, "TeamId": { "type": "string" }, @@ -26339,6 +26574,12 @@ var CloudformationSchema = `{ }, "type": "array" }, + "Tags": { + "items": { + "$ref": "#/definitions/Tag" + }, + "type": "array" + }, "UserRoleRequired": { "type": "boolean" } @@ -33413,9 +33654,18 @@ var CloudformationSchema = `{ "EnvironmentType": { "type": "string" }, + "FleetServiceRole": { + "type": "string" + }, + "FleetVpcConfig": { + "$ref": "#/definitions/AWS::CodeBuild::Fleet.VpcConfig" + }, "Name": { "type": "string" }, + "OverflowBehavior": { + "type": "string" + }, "Tags": { "items": { "$ref": "#/definitions/Tag" @@ -33445,6 +33695,27 @@ var CloudformationSchema = `{ ], "type": "object" }, + "AWS::CodeBuild::Fleet.VpcConfig": { + "additionalProperties": false, + "properties": { + "SecurityGroupIds": { + "items": { + "type": "string" + }, + "type": "array" + }, + "Subnets": { + "items": { + "type": "string" + }, + "type": "array" + }, + "VpcId": { + "type": "string" + } + }, + "type": "object" + }, "AWS::CodeBuild::Project": { "additionalProperties": false, "properties": { @@ -35789,6 +36060,18 @@ var CloudformationSchema = `{ ], "type": "object" }, + "AWS::CodePipeline::Pipeline.FailureConditions": { + "additionalProperties": false, + "properties": { + "Result": { + "type": "string" + } + }, + "required": [ + "Result" + ], + "type": "object" + }, "AWS::CodePipeline::Pipeline.GitBranchFilterCriteria": { "additionalProperties": false, "properties": { @@ -35956,6 +36239,9 @@ var CloudformationSchema = `{ }, "Name": { "type": "string" + }, + "OnFailure": { + "$ref": "#/definitions/AWS::CodePipeline::Pipeline.FailureConditions" } }, "required": [ @@ -42154,6 +42440,12 @@ var CloudformationSchema = `{ }, "type": "array" }, + "SubmitAutoEvaluationActions": { + "items": { + "$ref": "#/definitions/AWS::Connect::Rule.SubmitAutoEvaluationAction" + }, + "type": "array" + }, "TaskActions": { "items": { "$ref": "#/definitions/AWS::Connect::Rule.TaskAction" @@ -42313,6 +42605,18 @@ var CloudformationSchema = `{ ], "type": "object" }, + "AWS::Connect::Rule.SubmitAutoEvaluationAction": { + "additionalProperties": false, + "properties": { + "EvaluationFormArn": { + "type": "string" + } + }, + "required": [ + "EvaluationFormArn" + ], + "type": "object" + }, "AWS::Connect::Rule.TaskAction": { "additionalProperties": false, "properties": { @@ -51963,6 +52267,78 @@ var CloudformationSchema = `{ }, "type": "object" }, + "AWS::DataZone::GroupProfile": { + "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": { + "DomainIdentifier": { + "type": "string" + }, + "GroupIdentifier": { + "type": "string" + }, + "Status": { + "type": "string" + } + }, + "required": [ + "DomainIdentifier", + "GroupIdentifier" + ], + "type": "object" + }, + "Type": { + "enum": [ + "AWS::DataZone::GroupProfile" + ], + "type": "string" + }, + "UpdateReplacePolicy": { + "enum": [ + "Delete", + "Retain", + "Snapshot" + ], + "type": "string" + } + }, + "required": [ + "Type", + "Properties" + ], + "type": "object" + }, "AWS::DataZone::Project": { "additionalProperties": false, "properties": { @@ -52041,6 +52417,95 @@ var CloudformationSchema = `{ ], "type": "object" }, + "AWS::DataZone::ProjectMembership": { + "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": { + "Designation": { + "type": "string" + }, + "DomainIdentifier": { + "type": "string" + }, + "Member": { + "$ref": "#/definitions/AWS::DataZone::ProjectMembership.Member" + }, + "ProjectIdentifier": { + "type": "string" + } + }, + "required": [ + "Designation", + "DomainIdentifier", + "Member", + "ProjectIdentifier" + ], + "type": "object" + }, + "Type": { + "enum": [ + "AWS::DataZone::ProjectMembership" + ], + "type": "string" + }, + "UpdateReplacePolicy": { + "enum": [ + "Delete", + "Retain", + "Snapshot" + ], + "type": "string" + } + }, + "required": [ + "Type", + "Properties" + ], + "type": "object" + }, + "AWS::DataZone::ProjectMembership.Member": { + "additionalProperties": false, + "properties": { + "GroupIdentifier": { + "type": "string" + }, + "UserIdentifier": { + "type": "string" + } + }, + "type": "object" + }, "AWS::DataZone::SubscriptionTarget": { "additionalProperties": false, "properties": { @@ -52162,6 +52627,117 @@ var CloudformationSchema = `{ ], "type": "object" }, + "AWS::DataZone::UserProfile": { + "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": { + "DomainIdentifier": { + "type": "string" + }, + "Status": { + "type": "string" + }, + "UserIdentifier": { + "type": "string" + }, + "UserType": { + "type": "string" + } + }, + "required": [ + "DomainIdentifier", + "UserIdentifier" + ], + "type": "object" + }, + "Type": { + "enum": [ + "AWS::DataZone::UserProfile" + ], + "type": "string" + }, + "UpdateReplacePolicy": { + "enum": [ + "Delete", + "Retain", + "Snapshot" + ], + "type": "string" + } + }, + "required": [ + "Type", + "Properties" + ], + "type": "object" + }, + "AWS::DataZone::UserProfile.IamUserProfileDetails": { + "additionalProperties": false, + "properties": { + "Arn": { + "type": "string" + } + }, + "type": "object" + }, + "AWS::DataZone::UserProfile.SsoUserProfileDetails": { + "additionalProperties": false, + "properties": { + "FirstName": { + "type": "string" + }, + "LastName": { + "type": "string" + }, + "Username": { + "type": "string" + } + }, + "type": "object" + }, + "AWS::DataZone::UserProfile.UserProfileDetails": { + "additionalProperties": false, + "properties": { + "Iam": { + "$ref": "#/definitions/AWS::DataZone::UserProfile.IamUserProfileDetails" + }, + "Sso": { + "$ref": "#/definitions/AWS::DataZone::UserProfile.SsoUserProfileDetails" + } + }, + "type": "object" + }, "AWS::Deadline::Farm": { "additionalProperties": false, "properties": { @@ -54547,6 +55123,9 @@ var CloudformationSchema = `{ "TimeToLiveSpecification": { "$ref": "#/definitions/AWS::DynamoDB::GlobalTable.TimeToLiveSpecification" }, + "WriteOnDemandThroughputSettings": { + "$ref": "#/definitions/AWS::DynamoDB::GlobalTable.WriteOnDemandThroughputSettings" + }, "WriteProvisionedThroughputSettings": { "$ref": "#/definitions/AWS::DynamoDB::GlobalTable.WriteProvisionedThroughputSettings" } @@ -54645,6 +55224,9 @@ var CloudformationSchema = `{ "Projection": { "$ref": "#/definitions/AWS::DynamoDB::GlobalTable.Projection" }, + "WriteOnDemandThroughputSettings": { + "$ref": "#/definitions/AWS::DynamoDB::GlobalTable.WriteOnDemandThroughputSettings" + }, "WriteProvisionedThroughputSettings": { "$ref": "#/definitions/AWS::DynamoDB::GlobalTable.WriteProvisionedThroughputSettings" } @@ -54734,6 +55316,15 @@ var CloudformationSchema = `{ }, "type": "object" }, + "AWS::DynamoDB::GlobalTable.ReadOnDemandThroughputSettings": { + "additionalProperties": false, + "properties": { + "MaxReadRequestUnits": { + "type": "number" + } + }, + "type": "object" + }, "AWS::DynamoDB::GlobalTable.ReadProvisionedThroughputSettings": { "additionalProperties": false, "properties": { @@ -54755,6 +55346,9 @@ var CloudformationSchema = `{ "IndexName": { "type": "string" }, + "ReadOnDemandThroughputSettings": { + "$ref": "#/definitions/AWS::DynamoDB::GlobalTable.ReadOnDemandThroughputSettings" + }, "ReadProvisionedThroughputSettings": { "$ref": "#/definitions/AWS::DynamoDB::GlobalTable.ReadProvisionedThroughputSettings" } @@ -54797,6 +55391,9 @@ var CloudformationSchema = `{ "PointInTimeRecoverySpecification": { "$ref": "#/definitions/AWS::DynamoDB::GlobalTable.PointInTimeRecoverySpecification" }, + "ReadOnDemandThroughputSettings": { + "$ref": "#/definitions/AWS::DynamoDB::GlobalTable.ReadOnDemandThroughputSettings" + }, "ReadProvisionedThroughputSettings": { "$ref": "#/definitions/AWS::DynamoDB::GlobalTable.ReadProvisionedThroughputSettings" }, @@ -54914,6 +55511,15 @@ var CloudformationSchema = `{ ], "type": "object" }, + "AWS::DynamoDB::GlobalTable.WriteOnDemandThroughputSettings": { + "additionalProperties": false, + "properties": { + "MaxWriteRequestUnits": { + "type": "number" + } + }, + "type": "object" + }, "AWS::DynamoDB::GlobalTable.WriteProvisionedThroughputSettings": { "additionalProperties": false, "properties": { @@ -54997,6 +55603,9 @@ var CloudformationSchema = `{ }, "type": "array" }, + "OnDemandThroughput": { + "$ref": "#/definitions/AWS::DynamoDB::Table.OnDemandThroughput" + }, "PointInTimeRecoverySpecification": { "$ref": "#/definitions/AWS::DynamoDB::Table.PointInTimeRecoverySpecification" }, @@ -55112,6 +55721,9 @@ var CloudformationSchema = `{ }, "type": "array" }, + "OnDemandThroughput": { + "$ref": "#/definitions/AWS::DynamoDB::Table.OnDemandThroughput" + }, "Projection": { "$ref": "#/definitions/AWS::DynamoDB::Table.Projection" }, @@ -55211,6 +55823,18 @@ var CloudformationSchema = `{ ], "type": "object" }, + "AWS::DynamoDB::Table.OnDemandThroughput": { + "additionalProperties": false, + "properties": { + "MaxReadRequestUnits": { + "type": "number" + }, + "MaxWriteRequestUnits": { + "type": "number" + } + }, + "type": "object" + }, "AWS::DynamoDB::Table.PointInTimeRecoverySpecification": { "additionalProperties": false, "properties": { @@ -56168,6 +56792,9 @@ var CloudformationSchema = `{ "BgpAsn": { "type": "number" }, + "BgpAsnExtended": { + "type": "number" + }, "CertificateArn": { "type": "string" }, @@ -58514,6 +59141,18 @@ var CloudformationSchema = `{ ], "type": "object" }, + "AWS::EC2::Instance.State": { + "additionalProperties": false, + "properties": { + "Code": { + "type": "string" + }, + "Name": { + "type": "string" + } + }, + "type": "object" + }, "AWS::EC2::Instance.Volume": { "additionalProperties": false, "properties": { @@ -64570,6 +65209,7 @@ var CloudformationSchema = `{ } }, "required": [ + "DestinationCidrBlock", "TransitGatewayRouteTableId" ], "type": "object" @@ -67520,6 +68160,9 @@ var CloudformationSchema = `{ "properties": { "ExecuteCommandConfiguration": { "$ref": "#/definitions/AWS::ECS::Cluster.ExecuteCommandConfiguration" + }, + "ManagedStorageConfiguration": { + "$ref": "#/definitions/AWS::ECS::Cluster.ManagedStorageConfiguration" } }, "type": "object" @@ -67572,6 +68215,18 @@ var CloudformationSchema = `{ }, "type": "object" }, + "AWS::ECS::Cluster.ManagedStorageConfiguration": { + "additionalProperties": false, + "properties": { + "FargateEphemeralStorageKmsKeyId": { + "type": "string" + }, + "KmsKeyId": { + "type": "string" + } + }, + "type": "object" + }, "AWS::ECS::Cluster.ServiceConnectDefaults": { "additionalProperties": false, "properties": { @@ -69924,6 +70579,12 @@ var CloudformationSchema = `{ "ConfigurationValues": { "type": "string" }, + "PodIdentityAssociations": { + "items": { + "$ref": "#/definitions/AWS::EKS::Addon.PodIdentityAssociation" + }, + "type": "array" + }, "PreserveOnDelete": { "type": "boolean" }, @@ -69967,251 +70628,267 @@ var CloudformationSchema = `{ ], "type": "object" }, - "AWS::EKS::Cluster": { + "AWS::EKS::Addon.PodIdentityAssociation": { "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": { - "AccessConfig": { - "$ref": "#/definitions/AWS::EKS::Cluster.AccessConfig" - }, - "EncryptionConfig": { - "items": { - "$ref": "#/definitions/AWS::EKS::Cluster.EncryptionConfig" - }, - "type": "array" - }, - "KubernetesNetworkConfig": { - "$ref": "#/definitions/AWS::EKS::Cluster.KubernetesNetworkConfig" - }, - "Logging": { - "$ref": "#/definitions/AWS::EKS::Cluster.Logging" - }, - "Name": { - "type": "string" - }, - "OutpostConfig": { - "$ref": "#/definitions/AWS::EKS::Cluster.OutpostConfig" - }, - "ResourcesVpcConfig": { - "$ref": "#/definitions/AWS::EKS::Cluster.ResourcesVpcConfig" - }, - "RoleArn": { - "type": "string" - }, - "Tags": { - "items": { - "$ref": "#/definitions/Tag" - }, - "type": "array" - }, - "Version": { - "type": "string" - } - }, - "required": [ - "ResourcesVpcConfig", - "RoleArn" - ], - "type": "object" - }, - "Type": { - "enum": [ - "AWS::EKS::Cluster" - ], - "type": "string" - }, - "UpdateReplacePolicy": { - "enum": [ - "Delete", - "Retain", - "Snapshot" - ], - "type": "string" - } - }, - "required": [ - "Type", - "Properties" - ], - "type": "object" - }, - "AWS::EKS::Cluster.AccessConfig": { - "additionalProperties": false, - "properties": { - "AuthenticationMode": { - "type": "string" - }, - "BootstrapClusterCreatorAdminPermissions": { - "type": "boolean" - } - }, - "type": "object" - }, - "AWS::EKS::Cluster.ClusterLogging": { - "additionalProperties": false, - "properties": { - "EnabledTypes": { - "items": { - "$ref": "#/definitions/AWS::EKS::Cluster.LoggingTypeConfig" - }, - "type": "array" - } - }, - "type": "object" - }, - "AWS::EKS::Cluster.ControlPlanePlacement": { - "additionalProperties": false, - "properties": { - "GroupName": { - "type": "string" - } - }, - "type": "object" - }, - "AWS::EKS::Cluster.EncryptionConfig": { - "additionalProperties": false, - "properties": { - "Provider": { - "$ref": "#/definitions/AWS::EKS::Cluster.Provider" - }, - "Resources": { - "items": { - "type": "string" - }, - "type": "array" - } - }, - "type": "object" - }, - "AWS::EKS::Cluster.KubernetesNetworkConfig": { - "additionalProperties": false, - "properties": { - "IpFamily": { - "type": "string" - }, - "ServiceIpv4Cidr": { - "type": "string" - }, - "ServiceIpv6Cidr": { - "type": "string" - } - }, - "type": "object" - }, - "AWS::EKS::Cluster.Logging": { - "additionalProperties": false, - "properties": { - "ClusterLogging": { - "$ref": "#/definitions/AWS::EKS::Cluster.ClusterLogging" - } - }, - "type": "object" - }, - "AWS::EKS::Cluster.LoggingTypeConfig": { - "additionalProperties": false, - "properties": { - "Type": { - "type": "string" - } - }, - "type": "object" - }, - "AWS::EKS::Cluster.OutpostConfig": { - "additionalProperties": false, - "properties": { - "ControlPlaneInstanceType": { + "RoleArn": { "type": "string" }, - "ControlPlanePlacement": { - "$ref": "#/definitions/AWS::EKS::Cluster.ControlPlanePlacement" - }, - "OutpostArns": { - "items": { - "type": "string" - }, - "type": "array" - } - }, - "required": [ - "ControlPlaneInstanceType", - "OutpostArns" - ], - "type": "object" - }, - "AWS::EKS::Cluster.Provider": { - "additionalProperties": false, - "properties": { - "KeyArn": { + "ServiceAccount": { "type": "string" } }, - "type": "object" - }, - "AWS::EKS::Cluster.ResourcesVpcConfig": { - "additionalProperties": false, - "properties": { - "EndpointPrivateAccess": { - "type": "boolean" - }, - "EndpointPublicAccess": { - "type": "boolean" - }, - "PublicAccessCidrs": { - "items": { - "type": "string" - }, - "type": "array" - }, - "SecurityGroupIds": { - "items": { - "type": "string" - }, - "type": "array" - }, - "SubnetIds": { - "items": { - "type": "string" - }, - "type": "array" - } - }, "required": [ - "SubnetIds" + "RoleArn", + "ServiceAccount" ], "type": "object" }, - "AWS::EKS::FargateProfile": { + "AWS::EKS::Cluster": { + "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": { + "AccessConfig": { + "$ref": "#/definitions/AWS::EKS::Cluster.AccessConfig" + }, + "EncryptionConfig": { + "items": { + "$ref": "#/definitions/AWS::EKS::Cluster.EncryptionConfig" + }, + "type": "array" + }, + "KubernetesNetworkConfig": { + "$ref": "#/definitions/AWS::EKS::Cluster.KubernetesNetworkConfig" + }, + "Logging": { + "$ref": "#/definitions/AWS::EKS::Cluster.Logging" + }, + "Name": { + "type": "string" + }, + "OutpostConfig": { + "$ref": "#/definitions/AWS::EKS::Cluster.OutpostConfig" + }, + "ResourcesVpcConfig": { + "$ref": "#/definitions/AWS::EKS::Cluster.ResourcesVpcConfig" + }, + "RoleArn": { + "type": "string" + }, + "Tags": { + "items": { + "$ref": "#/definitions/Tag" + }, + "type": "array" + }, + "Version": { + "type": "string" + } + }, + "required": [ + "ResourcesVpcConfig", + "RoleArn" + ], + "type": "object" + }, + "Type": { + "enum": [ + "AWS::EKS::Cluster" + ], + "type": "string" + }, + "UpdateReplacePolicy": { + "enum": [ + "Delete", + "Retain", + "Snapshot" + ], + "type": "string" + } + }, + "required": [ + "Type", + "Properties" + ], + "type": "object" + }, + "AWS::EKS::Cluster.AccessConfig": { + "additionalProperties": false, + "properties": { + "AuthenticationMode": { + "type": "string" + }, + "BootstrapClusterCreatorAdminPermissions": { + "type": "boolean" + } + }, + "type": "object" + }, + "AWS::EKS::Cluster.ClusterLogging": { + "additionalProperties": false, + "properties": { + "EnabledTypes": { + "items": { + "$ref": "#/definitions/AWS::EKS::Cluster.LoggingTypeConfig" + }, + "type": "array" + } + }, + "type": "object" + }, + "AWS::EKS::Cluster.ControlPlanePlacement": { + "additionalProperties": false, + "properties": { + "GroupName": { + "type": "string" + } + }, + "type": "object" + }, + "AWS::EKS::Cluster.EncryptionConfig": { + "additionalProperties": false, + "properties": { + "Provider": { + "$ref": "#/definitions/AWS::EKS::Cluster.Provider" + }, + "Resources": { + "items": { + "type": "string" + }, + "type": "array" + } + }, + "type": "object" + }, + "AWS::EKS::Cluster.KubernetesNetworkConfig": { + "additionalProperties": false, + "properties": { + "IpFamily": { + "type": "string" + }, + "ServiceIpv4Cidr": { + "type": "string" + }, + "ServiceIpv6Cidr": { + "type": "string" + } + }, + "type": "object" + }, + "AWS::EKS::Cluster.Logging": { + "additionalProperties": false, + "properties": { + "ClusterLogging": { + "$ref": "#/definitions/AWS::EKS::Cluster.ClusterLogging" + } + }, + "type": "object" + }, + "AWS::EKS::Cluster.LoggingTypeConfig": { + "additionalProperties": false, + "properties": { + "Type": { + "type": "string" + } + }, + "type": "object" + }, + "AWS::EKS::Cluster.OutpostConfig": { + "additionalProperties": false, + "properties": { + "ControlPlaneInstanceType": { + "type": "string" + }, + "ControlPlanePlacement": { + "$ref": "#/definitions/AWS::EKS::Cluster.ControlPlanePlacement" + }, + "OutpostArns": { + "items": { + "type": "string" + }, + "type": "array" + } + }, + "required": [ + "ControlPlaneInstanceType", + "OutpostArns" + ], + "type": "object" + }, + "AWS::EKS::Cluster.Provider": { + "additionalProperties": false, + "properties": { + "KeyArn": { + "type": "string" + } + }, + "type": "object" + }, + "AWS::EKS::Cluster.ResourcesVpcConfig": { + "additionalProperties": false, + "properties": { + "EndpointPrivateAccess": { + "type": "boolean" + }, + "EndpointPublicAccess": { + "type": "boolean" + }, + "PublicAccessCidrs": { + "items": { + "type": "string" + }, + "type": "array" + }, + "SecurityGroupIds": { + "items": { + "type": "string" + }, + "type": "array" + }, + "SubnetIds": { + "items": { + "type": "string" + }, + "type": "array" + } + }, + "required": [ + "SubnetIds" + ], + "type": "object" + }, + "AWS::EKS::FargateProfile": { "additionalProperties": false, "properties": { "Condition": { @@ -78519,9 +79196,18 @@ var CloudformationSchema = `{ "Properties": { "additionalProperties": false, "properties": { + "DeadLetterConfig": { + "$ref": "#/definitions/AWS::Events::EventBus.DeadLetterConfig" + }, + "Description": { + "type": "string" + }, "EventSourceName": { "type": "string" }, + "KmsKeyIdentifier": { + "type": "string" + }, "Name": { "type": "string" }, @@ -78561,6 +79247,15 @@ var CloudformationSchema = `{ ], "type": "object" }, + "AWS::Events::EventBus.DeadLetterConfig": { + "additionalProperties": false, + "properties": { + "Arn": { + "type": "string" + } + }, + "type": "object" + }, "AWS::Events::EventBusPolicy": { "additionalProperties": false, "properties": { @@ -80536,6 +81231,94 @@ var CloudformationSchema = `{ }, "type": "object" }, + "AWS::FMS::Policy.IcmpTypeCode": { + "additionalProperties": false, + "properties": { + "Code": { + "type": "number" + }, + "Type": { + "type": "number" + } + }, + "required": [ + "Code", + "Type" + ], + "type": "object" + }, + "AWS::FMS::Policy.NetworkAclCommonPolicy": { + "additionalProperties": false, + "properties": { + "NetworkAclEntrySet": { + "$ref": "#/definitions/AWS::FMS::Policy.NetworkAclEntrySet" + } + }, + "required": [ + "NetworkAclEntrySet" + ], + "type": "object" + }, + "AWS::FMS::Policy.NetworkAclEntry": { + "additionalProperties": false, + "properties": { + "CidrBlock": { + "type": "string" + }, + "Egress": { + "type": "boolean" + }, + "IcmpTypeCode": { + "$ref": "#/definitions/AWS::FMS::Policy.IcmpTypeCode" + }, + "Ipv6CidrBlock": { + "type": "string" + }, + "PortRange": { + "$ref": "#/definitions/AWS::FMS::Policy.PortRange" + }, + "Protocol": { + "type": "string" + }, + "RuleAction": { + "type": "string" + } + }, + "required": [ + "Egress", + "Protocol", + "RuleAction" + ], + "type": "object" + }, + "AWS::FMS::Policy.NetworkAclEntrySet": { + "additionalProperties": false, + "properties": { + "FirstEntries": { + "items": { + "$ref": "#/definitions/AWS::FMS::Policy.NetworkAclEntry" + }, + "type": "array" + }, + "ForceRemediateForFirstEntries": { + "type": "boolean" + }, + "ForceRemediateForLastEntries": { + "type": "boolean" + }, + "LastEntries": { + "items": { + "$ref": "#/definitions/AWS::FMS::Policy.NetworkAclEntry" + }, + "type": "array" + } + }, + "required": [ + "ForceRemediateForFirstEntries", + "ForceRemediateForLastEntries" + ], + "type": "object" + }, "AWS::FMS::Policy.NetworkFirewallPolicy": { "additionalProperties": false, "properties": { @@ -80551,6 +81334,9 @@ var CloudformationSchema = `{ "AWS::FMS::Policy.PolicyOption": { "additionalProperties": false, "properties": { + "NetworkAclCommonPolicy": { + "$ref": "#/definitions/AWS::FMS::Policy.NetworkAclCommonPolicy" + }, "NetworkFirewallPolicy": { "$ref": "#/definitions/AWS::FMS::Policy.NetworkFirewallPolicy" }, @@ -80576,6 +81362,22 @@ var CloudformationSchema = `{ ], "type": "object" }, + "AWS::FMS::Policy.PortRange": { + "additionalProperties": false, + "properties": { + "From": { + "type": "number" + }, + "To": { + "type": "number" + } + }, + "required": [ + "From", + "To" + ], + "type": "object" + }, "AWS::FMS::Policy.ResourceTag": { "additionalProperties": false, "properties": { @@ -81028,6 +81830,9 @@ var CloudformationSchema = `{ "ImportedFileChunkSize": { "type": "number" }, + "MetadataConfiguration": { + "$ref": "#/definitions/AWS::FSx::FileSystem.MetadataConfiguration" + }, "PerUnitStorageThroughput": { "type": "number" }, @@ -81037,6 +81842,18 @@ var CloudformationSchema = `{ }, "type": "object" }, + "AWS::FSx::FileSystem.MetadataConfiguration": { + "additionalProperties": false, + "properties": { + "Iops": { + "type": "number" + }, + "Mode": { + "type": "string" + } + }, + "type": "object" + }, "AWS::FSx::FileSystem.NfsExports": { "additionalProperties": false, "properties": { @@ -85532,6 +86349,12 @@ var CloudformationSchema = `{ "ConnectionName": { "type": "string" }, + "EnableAdditionalMetadata": { + "items": { + "type": "string" + }, + "type": "array" + }, "Exclusions": { "items": { "type": "string" @@ -86267,6 +87090,9 @@ var CloudformationSchema = `{ "LogUri": { "type": "string" }, + "MaintenanceWindow": { + "type": "string" + }, "MaxCapacity": { "type": "number" }, @@ -116643,6 +117469,9 @@ var CloudformationSchema = `{ "FunctionName": { "type": "string" }, + "Policy": { + "type": "object" + }, "ProvisionedConcurrencyConfig": { "$ref": "#/definitions/AWS::Lambda::Version.ProvisionedConcurrencyConfiguration" }, @@ -124538,9 +125367,15 @@ var CloudformationSchema = `{ "LoggingConfiguration": { "$ref": "#/definitions/AWS::MWAA::Environment.LoggingConfiguration" }, + "MaxWebservers": { + "type": "number" + }, "MaxWorkers": { "type": "number" }, + "MinWebservers": { + "type": "number" + }, "MinWorkers": { "type": "number" }, @@ -125927,6 +126762,15 @@ var CloudformationSchema = `{ "AvailabilityZone": { "type": "string" }, + "Maintenance": { + "$ref": "#/definitions/AWS::MediaConnect::Flow.Maintenance" + }, + "MediaStreams": { + "items": { + "$ref": "#/definitions/AWS::MediaConnect::Flow.MediaStream" + }, + "type": "array" + }, "Name": { "type": "string" }, @@ -125935,6 +126779,12 @@ var CloudformationSchema = `{ }, "SourceFailoverConfig": { "$ref": "#/definitions/AWS::MediaConnect::Flow.FailoverConfig" + }, + "VpcInterfaces": { + "items": { + "$ref": "#/definitions/AWS::MediaConnect::Flow.VpcInterface" + }, + "type": "array" } }, "required": [ @@ -126018,6 +126868,33 @@ var CloudformationSchema = `{ }, "type": "object" }, + "AWS::MediaConnect::Flow.Fmtp": { + "additionalProperties": false, + "properties": { + "ChannelOrder": { + "type": "string" + }, + "Colorimetry": { + "type": "string" + }, + "ExactFramerate": { + "type": "string" + }, + "Par": { + "type": "string" + }, + "Range": { + "type": "string" + }, + "ScanMode": { + "type": "string" + }, + "Tcs": { + "type": "string" + } + }, + "type": "object" + }, "AWS::MediaConnect::Flow.GatewayBridgeSource": { "additionalProperties": false, "properties": { @@ -126033,6 +126910,119 @@ var CloudformationSchema = `{ ], "type": "object" }, + "AWS::MediaConnect::Flow.InputConfiguration": { + "additionalProperties": false, + "properties": { + "InputPort": { + "type": "number" + }, + "Interface": { + "$ref": "#/definitions/AWS::MediaConnect::Flow.Interface" + } + }, + "required": [ + "InputPort", + "Interface" + ], + "type": "object" + }, + "AWS::MediaConnect::Flow.Interface": { + "additionalProperties": false, + "properties": { + "Name": { + "type": "string" + } + }, + "required": [ + "Name" + ], + "type": "object" + }, + "AWS::MediaConnect::Flow.Maintenance": { + "additionalProperties": false, + "properties": { + "MaintenanceDay": { + "type": "string" + }, + "MaintenanceStartHour": { + "type": "string" + } + }, + "required": [ + "MaintenanceDay", + "MaintenanceStartHour" + ], + "type": "object" + }, + "AWS::MediaConnect::Flow.MediaStream": { + "additionalProperties": false, + "properties": { + "Attributes": { + "$ref": "#/definitions/AWS::MediaConnect::Flow.MediaStreamAttributes" + }, + "ClockRate": { + "type": "number" + }, + "Description": { + "type": "string" + }, + "Fmt": { + "type": "number" + }, + "MediaStreamId": { + "type": "number" + }, + "MediaStreamName": { + "type": "string" + }, + "MediaStreamType": { + "type": "string" + }, + "VideoFormat": { + "type": "string" + } + }, + "required": [ + "MediaStreamId", + "MediaStreamName", + "MediaStreamType" + ], + "type": "object" + }, + "AWS::MediaConnect::Flow.MediaStreamAttributes": { + "additionalProperties": false, + "properties": { + "Fmtp": { + "$ref": "#/definitions/AWS::MediaConnect::Flow.Fmtp" + }, + "Lang": { + "type": "string" + } + }, + "type": "object" + }, + "AWS::MediaConnect::Flow.MediaStreamSourceConfiguration": { + "additionalProperties": false, + "properties": { + "EncodingName": { + "type": "string" + }, + "InputConfigurations": { + "items": { + "$ref": "#/definitions/AWS::MediaConnect::Flow.InputConfiguration" + }, + "type": "array" + }, + "MediaStreamName": { + "type": "string" + } + }, + "required": [ + "EncodingName", + "MediaStreamName" + ], + "type": "object" + }, "AWS::MediaConnect::Flow.Source": { "additionalProperties": false, "properties": { @@ -126060,6 +127050,15 @@ var CloudformationSchema = `{ "MaxLatency": { "type": "number" }, + "MaxSyncBuffer": { + "type": "number" + }, + "MediaStreamSourceConfigurations": { + "items": { + "$ref": "#/definitions/AWS::MediaConnect::Flow.MediaStreamSourceConfiguration" + }, + "type": "array" + }, "MinLatency": { "type": "number" }, @@ -126111,6 +127110,42 @@ var CloudformationSchema = `{ ], "type": "object" }, + "AWS::MediaConnect::Flow.VpcInterface": { + "additionalProperties": false, + "properties": { + "Name": { + "type": "string" + }, + "NetworkInterfaceIds": { + "items": { + "type": "string" + }, + "type": "array" + }, + "NetworkInterfaceType": { + "type": "string" + }, + "RoleArn": { + "type": "string" + }, + "SecurityGroupIds": { + "items": { + "type": "string" + }, + "type": "array" + }, + "SubnetId": { + "type": "string" + } + }, + "required": [ + "Name", + "RoleArn", + "SecurityGroupIds", + "SubnetId" + ], + "type": "object" + }, "AWS::MediaConnect::Flow.VpcInterfaceAttachment": { "additionalProperties": false, "properties": { @@ -126302,6 +127337,12 @@ var CloudformationSchema = `{ "MaxLatency": { "type": "number" }, + "MediaStreamOutputConfigurations": { + "items": { + "$ref": "#/definitions/AWS::MediaConnect::FlowOutput.MediaStreamOutputConfiguration" + }, + "type": "array" + }, "MinLatency": { "type": "number" }, @@ -126354,6 +127395,41 @@ var CloudformationSchema = `{ ], "type": "object" }, + "AWS::MediaConnect::FlowOutput.DestinationConfiguration": { + "additionalProperties": false, + "properties": { + "DestinationIp": { + "type": "string" + }, + "DestinationPort": { + "type": "number" + }, + "Interface": { + "$ref": "#/definitions/AWS::MediaConnect::FlowOutput.Interface" + } + }, + "required": [ + "DestinationIp", + "DestinationPort", + "Interface" + ], + "type": "object" + }, + "AWS::MediaConnect::FlowOutput.EncodingParameters": { + "additionalProperties": false, + "properties": { + "CompressionFactor": { + "type": "number" + }, + "EncoderProfile": { + "type": "string" + } + }, + "required": [ + "CompressionFactor" + ], + "type": "object" + }, "AWS::MediaConnect::FlowOutput.Encryption": { "additionalProperties": false, "properties": { @@ -126376,6 +127452,43 @@ var CloudformationSchema = `{ ], "type": "object" }, + "AWS::MediaConnect::FlowOutput.Interface": { + "additionalProperties": false, + "properties": { + "Name": { + "type": "string" + } + }, + "required": [ + "Name" + ], + "type": "object" + }, + "AWS::MediaConnect::FlowOutput.MediaStreamOutputConfiguration": { + "additionalProperties": false, + "properties": { + "DestinationConfigurations": { + "items": { + "$ref": "#/definitions/AWS::MediaConnect::FlowOutput.DestinationConfiguration" + }, + "type": "array" + }, + "EncodingName": { + "type": "string" + }, + "EncodingParameters": { + "$ref": "#/definitions/AWS::MediaConnect::FlowOutput.EncodingParameters" + }, + "MediaStreamName": { + "type": "string" + } + }, + "required": [ + "EncodingName", + "MediaStreamName" + ], + "type": "object" + }, "AWS::MediaConnect::FlowOutput.VpcInterfaceAttachment": { "additionalProperties": false, "properties": { @@ -127533,6 +128646,9 @@ var CloudformationSchema = `{ "properties": { "AvailSettings": { "$ref": "#/definitions/AWS::MediaLive::Channel.AvailSettings" + }, + "Scte35SegmentationScope": { + "type": "string" } }, "type": "object" @@ -132344,6 +133460,12 @@ var CloudformationSchema = `{ "ContainerType": { "type": "string" }, + "DashManifests": { + "items": { + "$ref": "#/definitions/AWS::MediaPackageV2::OriginEndpoint.DashManifestConfiguration" + }, + "type": "array" + }, "Description": { "type": "string" }, @@ -132403,6 +133525,63 @@ var CloudformationSchema = `{ ], "type": "object" }, + "AWS::MediaPackageV2::OriginEndpoint.DashManifestConfiguration": { + "additionalProperties": false, + "properties": { + "DrmSignaling": { + "type": "string" + }, + "FilterConfiguration": { + "$ref": "#/definitions/AWS::MediaPackageV2::OriginEndpoint.FilterConfiguration" + }, + "ManifestName": { + "type": "string" + }, + "ManifestWindowSeconds": { + "type": "number" + }, + "MinBufferTimeSeconds": { + "type": "number" + }, + "MinUpdatePeriodSeconds": { + "type": "number" + }, + "PeriodTriggers": { + "items": { + "type": "string" + }, + "type": "array" + }, + "ScteDash": { + "$ref": "#/definitions/AWS::MediaPackageV2::OriginEndpoint.ScteDash" + }, + "SegmentTemplateFormat": { + "type": "string" + }, + "SuggestedPresentationDelaySeconds": { + "type": "number" + }, + "UtcTiming": { + "$ref": "#/definitions/AWS::MediaPackageV2::OriginEndpoint.DashUtcTiming" + } + }, + "required": [ + "ManifestName" + ], + "type": "object" + }, + "AWS::MediaPackageV2::OriginEndpoint.DashUtcTiming": { + "additionalProperties": false, + "properties": { + "TimingMode": { + "type": "string" + }, + "TimingSource": { + "type": "string" + } + }, + "type": "object" + }, "AWS::MediaPackageV2::OriginEndpoint.Encryption": { "additionalProperties": false, "properties": { @@ -132543,6 +133722,15 @@ var CloudformationSchema = `{ }, "type": "object" }, + "AWS::MediaPackageV2::OriginEndpoint.ScteDash": { + "additionalProperties": false, + "properties": { + "AdMarkerDash": { + "type": "string" + } + }, + "type": "object" + }, "AWS::MediaPackageV2::OriginEndpoint.ScteHls": { "additionalProperties": false, "properties": { @@ -133335,6 +134523,9 @@ var CloudformationSchema = `{ "AWS::MediaTailor::PlaybackConfiguration.AvailSuppression": { "additionalProperties": false, "properties": { + "FillPolicy": { + "type": "string" + }, "Mode": { "type": "string" }, @@ -134675,7 +135866,7 @@ var CloudformationSchema = `{ ], "type": "object" }, - "AWS::NeptuneGraph::Graph": { + "AWS::Neptune::EventSubscription": { "additionalProperties": false, "properties": { "Condition": { @@ -134710,39 +135901,33 @@ var CloudformationSchema = `{ "Properties": { "additionalProperties": false, "properties": { - "DeletionProtection": { + "Enabled": { "type": "boolean" }, - "GraphName": { - "type": "string" - }, - "ProvisionedMemory": { - "type": "number" - }, - "PublicConnectivity": { - "type": "boolean" + "EventCategories": { + "items": { + "type": "string" + }, + "type": "array" }, - "ReplicaCount": { - "type": "number" + "SnsTopicArn": { + "type": "string" }, - "Tags": { + "SourceIds": { "items": { - "$ref": "#/definitions/Tag" + "type": "string" }, "type": "array" }, - "VectorSearchConfiguration": { - "$ref": "#/definitions/AWS::NeptuneGraph::Graph.VectorSearchConfiguration" + "SourceType": { + "type": "string" } }, - "required": [ - "ProvisionedMemory" - ], "type": "object" }, "Type": { "enum": [ - "AWS::NeptuneGraph::Graph" + "AWS::Neptune::EventSubscription" ], "type": "string" }, @@ -134756,24 +135941,11 @@ var CloudformationSchema = `{ } }, "required": [ - "Type", - "Properties" - ], - "type": "object" - }, - "AWS::NeptuneGraph::Graph.VectorSearchConfiguration": { - "additionalProperties": false, - "properties": { - "VectorSearchDimension": { - "type": "number" - } - }, - "required": [ - "VectorSearchDimension" + "Type" ], "type": "object" }, - "AWS::NeptuneGraph::PrivateGraphEndpoint": { + "AWS::NeptuneGraph::Graph": { "additionalProperties": false, "properties": { "Condition": { @@ -134808,34 +135980,39 @@ var CloudformationSchema = `{ "Properties": { "additionalProperties": false, "properties": { - "GraphIdentifier": { + "DeletionProtection": { + "type": "boolean" + }, + "GraphName": { "type": "string" }, - "SecurityGroupIds": { - "items": { - "type": "string" - }, - "type": "array" + "ProvisionedMemory": { + "type": "number" }, - "SubnetIds": { + "PublicConnectivity": { + "type": "boolean" + }, + "ReplicaCount": { + "type": "number" + }, + "Tags": { "items": { - "type": "string" + "$ref": "#/definitions/Tag" }, "type": "array" }, - "VpcId": { - "type": "string" + "VectorSearchConfiguration": { + "$ref": "#/definitions/AWS::NeptuneGraph::Graph.VectorSearchConfiguration" } }, "required": [ - "GraphIdentifier", - "VpcId" + "ProvisionedMemory" ], "type": "object" }, "Type": { "enum": [ - "AWS::NeptuneGraph::PrivateGraphEndpoint" + "AWS::NeptuneGraph::Graph" ], "type": "string" }, @@ -134854,7 +136031,19 @@ var CloudformationSchema = `{ ], "type": "object" }, - "AWS::NetworkFirewall::Firewall": { + "AWS::NeptuneGraph::Graph.VectorSearchConfiguration": { + "additionalProperties": false, + "properties": { + "VectorSearchDimension": { + "type": "number" + } + }, + "required": [ + "VectorSearchDimension" + ], + "type": "object" + }, + "AWS::NeptuneGraph::PrivateGraphEndpoint": { "additionalProperties": false, "properties": { "Condition": { @@ -134889,33 +136078,18 @@ var CloudformationSchema = `{ "Properties": { "additionalProperties": false, "properties": { - "DeleteProtection": { - "type": "boolean" - }, - "Description": { - "type": "string" - }, - "FirewallName": { - "type": "string" - }, - "FirewallPolicyArn": { + "GraphIdentifier": { "type": "string" }, - "FirewallPolicyChangeProtection": { - "type": "boolean" - }, - "SubnetChangeProtection": { - "type": "boolean" - }, - "SubnetMappings": { + "SecurityGroupIds": { "items": { - "$ref": "#/definitions/AWS::NetworkFirewall::Firewall.SubnetMapping" + "type": "string" }, "type": "array" }, - "Tags": { + "SubnetIds": { "items": { - "$ref": "#/definitions/Tag" + "type": "string" }, "type": "array" }, @@ -134924,16 +136098,14 @@ var CloudformationSchema = `{ } }, "required": [ - "FirewallName", - "FirewallPolicyArn", - "SubnetMappings", + "GraphIdentifier", "VpcId" ], "type": "object" }, "Type": { "enum": [ - "AWS::NetworkFirewall::Firewall" + "AWS::NeptuneGraph::PrivateGraphEndpoint" ], "type": "string" }, @@ -134952,22 +136124,120 @@ var CloudformationSchema = `{ ], "type": "object" }, - "AWS::NetworkFirewall::Firewall.SubnetMapping": { - "additionalProperties": false, - "properties": { - "IPAddressType": { - "type": "string" - }, - "SubnetId": { - "type": "string" - } - }, - "required": [ - "SubnetId" - ], - "type": "object" - }, - "AWS::NetworkFirewall::FirewallPolicy": { + "AWS::NetworkFirewall::Firewall": { + "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": { + "DeleteProtection": { + "type": "boolean" + }, + "Description": { + "type": "string" + }, + "FirewallName": { + "type": "string" + }, + "FirewallPolicyArn": { + "type": "string" + }, + "FirewallPolicyChangeProtection": { + "type": "boolean" + }, + "SubnetChangeProtection": { + "type": "boolean" + }, + "SubnetMappings": { + "items": { + "$ref": "#/definitions/AWS::NetworkFirewall::Firewall.SubnetMapping" + }, + "type": "array" + }, + "Tags": { + "items": { + "$ref": "#/definitions/Tag" + }, + "type": "array" + }, + "VpcId": { + "type": "string" + } + }, + "required": [ + "FirewallName", + "FirewallPolicyArn", + "SubnetMappings", + "VpcId" + ], + "type": "object" + }, + "Type": { + "enum": [ + "AWS::NetworkFirewall::Firewall" + ], + "type": "string" + }, + "UpdateReplacePolicy": { + "enum": [ + "Delete", + "Retain", + "Snapshot" + ], + "type": "string" + } + }, + "required": [ + "Type", + "Properties" + ], + "type": "object" + }, + "AWS::NetworkFirewall::Firewall.SubnetMapping": { + "additionalProperties": false, + "properties": { + "IPAddressType": { + "type": "string" + }, + "SubnetId": { + "type": "string" + } + }, + "required": [ + "SubnetId" + ], + "type": "object" + }, + "AWS::NetworkFirewall::FirewallPolicy": { "additionalProperties": false, "properties": { "Condition": { @@ -146975,6 +148245,26 @@ var CloudformationSchema = `{ }, "type": "object" }, + "AWS::Pipes::Pipe.DimensionMapping": { + "additionalProperties": false, + "properties": { + "DimensionName": { + "type": "string" + }, + "DimensionValue": { + "type": "string" + }, + "DimensionValueType": { + "type": "string" + } + }, + "required": [ + "DimensionName", + "DimensionValue", + "DimensionValueType" + ], + "type": "object" + }, "AWS::Pipes::Pipe.EcsContainerOverride": { "additionalProperties": false, "properties": { @@ -147172,6 +148462,45 @@ var CloudformationSchema = `{ }, "type": "object" }, + "AWS::Pipes::Pipe.MultiMeasureAttributeMapping": { + "additionalProperties": false, + "properties": { + "MeasureValue": { + "type": "string" + }, + "MeasureValueType": { + "type": "string" + }, + "MultiMeasureAttributeName": { + "type": "string" + } + }, + "required": [ + "MeasureValue", + "MeasureValueType", + "MultiMeasureAttributeName" + ], + "type": "object" + }, + "AWS::Pipes::Pipe.MultiMeasureMapping": { + "additionalProperties": false, + "properties": { + "MultiMeasureAttributeMappings": { + "items": { + "$ref": "#/definitions/AWS::Pipes::Pipe.MultiMeasureAttributeMapping" + }, + "type": "array" + }, + "MultiMeasureName": { + "type": "string" + } + }, + "required": [ + "MultiMeasureAttributeMappings", + "MultiMeasureName" + ], + "type": "object" + }, "AWS::Pipes::Pipe.NetworkConfiguration": { "additionalProperties": false, "properties": { @@ -147702,6 +149031,9 @@ var CloudformationSchema = `{ }, "StepFunctionStateMachineParameters": { "$ref": "#/definitions/AWS::Pipes::Pipe.PipeTargetStateMachineParameters" + }, + "TimestreamParameters": { + "$ref": "#/definitions/AWS::Pipes::Pipe.PipeTargetTimestreamParameters" } }, "type": "object" @@ -147770,6 +149102,50 @@ var CloudformationSchema = `{ }, "type": "object" }, + "AWS::Pipes::Pipe.PipeTargetTimestreamParameters": { + "additionalProperties": false, + "properties": { + "DimensionMappings": { + "items": { + "$ref": "#/definitions/AWS::Pipes::Pipe.DimensionMapping" + }, + "type": "array" + }, + "EpochTimeUnit": { + "type": "string" + }, + "MultiMeasureMappings": { + "items": { + "$ref": "#/definitions/AWS::Pipes::Pipe.MultiMeasureMapping" + }, + "type": "array" + }, + "SingleMeasureMappings": { + "items": { + "$ref": "#/definitions/AWS::Pipes::Pipe.SingleMeasureMapping" + }, + "type": "array" + }, + "TimeFieldType": { + "type": "string" + }, + "TimeValue": { + "type": "string" + }, + "TimestampFormat": { + "type": "string" + }, + "VersionValue": { + "type": "string" + } + }, + "required": [ + "DimensionMappings", + "TimeValue", + "VersionValue" + ], + "type": "object" + }, "AWS::Pipes::Pipe.PlacementConstraint": { "additionalProperties": false, "properties": { @@ -147864,89 +149240,109 @@ var CloudformationSchema = `{ }, "type": "object" }, - "AWS::Proton::EnvironmentAccountConnection": { + "AWS::Pipes::Pipe.SingleMeasureMapping": { "additionalProperties": false, "properties": { - "Condition": { - "type": "string" - }, - "DeletionPolicy": { - "enum": [ - "Delete", - "Retain", - "Snapshot" - ], + "MeasureName": { "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": { - "CodebuildRoleArn": { - "type": "string" - }, - "ComponentRoleArn": { - "type": "string" - }, - "EnvironmentAccountId": { - "type": "string" - }, - "EnvironmentName": { - "type": "string" - }, - "ManagementAccountId": { - "type": "string" - }, - "RoleArn": { - "type": "string" - }, - "Tags": { - "items": { - "$ref": "#/definitions/Tag" - }, - "type": "array" - } - }, - "type": "object" - }, - "Type": { - "enum": [ - "AWS::Proton::EnvironmentAccountConnection" - ], + "MeasureValue": { "type": "string" }, - "UpdateReplacePolicy": { - "enum": [ - "Delete", - "Retain", - "Snapshot" - ], + "MeasureValueType": { "type": "string" } }, "required": [ - "Type" + "MeasureName", + "MeasureValue", + "MeasureValueType" ], "type": "object" }, - "AWS::Proton::EnvironmentTemplate": { + "AWS::Proton::EnvironmentAccountConnection": { + "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": { + "CodebuildRoleArn": { + "type": "string" + }, + "ComponentRoleArn": { + "type": "string" + }, + "EnvironmentAccountId": { + "type": "string" + }, + "EnvironmentName": { + "type": "string" + }, + "ManagementAccountId": { + "type": "string" + }, + "RoleArn": { + "type": "string" + }, + "Tags": { + "items": { + "$ref": "#/definitions/Tag" + }, + "type": "array" + } + }, + "type": "object" + }, + "Type": { + "enum": [ + "AWS::Proton::EnvironmentAccountConnection" + ], + "type": "string" + }, + "UpdateReplacePolicy": { + "enum": [ + "Delete", + "Retain", + "Snapshot" + ], + "type": "string" + } + }, + "required": [ + "Type" + ], + "type": "object" + }, + "AWS::Proton::EnvironmentTemplate": { "additionalProperties": false, "properties": { "Condition": { @@ -148060,19 +149456,875 @@ var CloudformationSchema = `{ "Properties": { "additionalProperties": false, "properties": { - "Description": { + "Description": { + "type": "string" + }, + "DisplayName": { + "type": "string" + }, + "EncryptionKey": { + "type": "string" + }, + "Name": { + "type": "string" + }, + "PipelineProvisioning": { + "type": "string" + }, + "Tags": { + "items": { + "$ref": "#/definitions/Tag" + }, + "type": "array" + } + }, + "type": "object" + }, + "Type": { + "enum": [ + "AWS::Proton::ServiceTemplate" + ], + "type": "string" + }, + "UpdateReplacePolicy": { + "enum": [ + "Delete", + "Retain", + "Snapshot" + ], + "type": "string" + } + }, + "required": [ + "Type" + ], + "type": "object" + }, + "AWS::QBusiness::Application": { + "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": { + "AttachmentsConfiguration": { + "$ref": "#/definitions/AWS::QBusiness::Application.AttachmentsConfiguration" + }, + "Description": { + "type": "string" + }, + "DisplayName": { + "type": "string" + }, + "EncryptionConfiguration": { + "$ref": "#/definitions/AWS::QBusiness::Application.EncryptionConfiguration" + }, + "IdentityCenterInstanceArn": { + "type": "string" + }, + "RoleArn": { + "type": "string" + }, + "Tags": { + "items": { + "$ref": "#/definitions/Tag" + }, + "type": "array" + } + }, + "required": [ + "DisplayName" + ], + "type": "object" + }, + "Type": { + "enum": [ + "AWS::QBusiness::Application" + ], + "type": "string" + }, + "UpdateReplacePolicy": { + "enum": [ + "Delete", + "Retain", + "Snapshot" + ], + "type": "string" + } + }, + "required": [ + "Type", + "Properties" + ], + "type": "object" + }, + "AWS::QBusiness::Application.AttachmentsConfiguration": { + "additionalProperties": false, + "properties": { + "AttachmentsControlMode": { + "type": "string" + } + }, + "required": [ + "AttachmentsControlMode" + ], + "type": "object" + }, + "AWS::QBusiness::Application.EncryptionConfiguration": { + "additionalProperties": false, + "properties": { + "KmsKeyId": { + "type": "string" + } + }, + "type": "object" + }, + "AWS::QBusiness::DataSource": { + "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": { + "ApplicationId": { + "type": "string" + }, + "Configuration": { + "type": "object" + }, + "Description": { + "type": "string" + }, + "DisplayName": { + "type": "string" + }, + "DocumentEnrichmentConfiguration": { + "$ref": "#/definitions/AWS::QBusiness::DataSource.DocumentEnrichmentConfiguration" + }, + "IndexId": { + "type": "string" + }, + "RoleArn": { + "type": "string" + }, + "SyncSchedule": { + "type": "string" + }, + "Tags": { + "items": { + "$ref": "#/definitions/Tag" + }, + "type": "array" + }, + "VpcConfiguration": { + "$ref": "#/definitions/AWS::QBusiness::DataSource.DataSourceVpcConfiguration" + } + }, + "required": [ + "ApplicationId", + "Configuration", + "DisplayName", + "IndexId" + ], + "type": "object" + }, + "Type": { + "enum": [ + "AWS::QBusiness::DataSource" + ], + "type": "string" + }, + "UpdateReplacePolicy": { + "enum": [ + "Delete", + "Retain", + "Snapshot" + ], + "type": "string" + } + }, + "required": [ + "Type", + "Properties" + ], + "type": "object" + }, + "AWS::QBusiness::DataSource.DataSourceVpcConfiguration": { + "additionalProperties": false, + "properties": { + "SecurityGroupIds": { + "items": { + "type": "string" + }, + "type": "array" + }, + "SubnetIds": { + "items": { + "type": "string" + }, + "type": "array" + } + }, + "required": [ + "SecurityGroupIds", + "SubnetIds" + ], + "type": "object" + }, + "AWS::QBusiness::DataSource.DocumentAttributeCondition": { + "additionalProperties": false, + "properties": { + "Key": { + "type": "string" + }, + "Operator": { + "type": "string" + }, + "Value": { + "$ref": "#/definitions/AWS::QBusiness::DataSource.DocumentAttributeValue" + } + }, + "required": [ + "Key", + "Operator" + ], + "type": "object" + }, + "AWS::QBusiness::DataSource.DocumentAttributeTarget": { + "additionalProperties": false, + "properties": { + "AttributeValueOperator": { + "type": "string" + }, + "Key": { + "type": "string" + }, + "Value": { + "$ref": "#/definitions/AWS::QBusiness::DataSource.DocumentAttributeValue" + } + }, + "required": [ + "Key" + ], + "type": "object" + }, + "AWS::QBusiness::DataSource.DocumentAttributeValue": { + "additionalProperties": false, + "properties": { + "DateValue": { + "type": "string" + }, + "LongValue": { + "type": "number" + }, + "StringListValue": { + "items": { + "type": "string" + }, + "type": "array" + }, + "StringValue": { + "type": "string" + } + }, + "type": "object" + }, + "AWS::QBusiness::DataSource.DocumentEnrichmentConfiguration": { + "additionalProperties": false, + "properties": { + "InlineConfigurations": { + "items": { + "$ref": "#/definitions/AWS::QBusiness::DataSource.InlineDocumentEnrichmentConfiguration" + }, + "type": "array" + }, + "PostExtractionHookConfiguration": { + "$ref": "#/definitions/AWS::QBusiness::DataSource.HookConfiguration" + }, + "PreExtractionHookConfiguration": { + "$ref": "#/definitions/AWS::QBusiness::DataSource.HookConfiguration" + } + }, + "type": "object" + }, + "AWS::QBusiness::DataSource.HookConfiguration": { + "additionalProperties": false, + "properties": { + "InvocationCondition": { + "$ref": "#/definitions/AWS::QBusiness::DataSource.DocumentAttributeCondition" + }, + "LambdaArn": { + "type": "string" + }, + "RoleArn": { + "type": "string" + }, + "S3BucketName": { + "type": "string" + } + }, + "type": "object" + }, + "AWS::QBusiness::DataSource.InlineDocumentEnrichmentConfiguration": { + "additionalProperties": false, + "properties": { + "Condition": { + "$ref": "#/definitions/AWS::QBusiness::DataSource.DocumentAttributeCondition" + }, + "DocumentContentOperator": { + "type": "string" + }, + "Target": { + "$ref": "#/definitions/AWS::QBusiness::DataSource.DocumentAttributeTarget" + } + }, + "type": "object" + }, + "AWS::QBusiness::Index": { + "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": { + "ApplicationId": { + "type": "string" + }, + "CapacityConfiguration": { + "$ref": "#/definitions/AWS::QBusiness::Index.IndexCapacityConfiguration" + }, + "Description": { + "type": "string" + }, + "DisplayName": { + "type": "string" + }, + "DocumentAttributeConfigurations": { + "items": { + "$ref": "#/definitions/AWS::QBusiness::Index.DocumentAttributeConfiguration" + }, + "type": "array" + }, + "Tags": { + "items": { + "$ref": "#/definitions/Tag" + }, + "type": "array" + }, + "Type": { + "type": "string" + } + }, + "required": [ + "ApplicationId", + "DisplayName" + ], + "type": "object" + }, + "Type": { + "enum": [ + "AWS::QBusiness::Index" + ], + "type": "string" + }, + "UpdateReplacePolicy": { + "enum": [ + "Delete", + "Retain", + "Snapshot" + ], + "type": "string" + } + }, + "required": [ + "Type", + "Properties" + ], + "type": "object" + }, + "AWS::QBusiness::Index.DocumentAttributeConfiguration": { + "additionalProperties": false, + "properties": { + "Name": { + "type": "string" + }, + "Search": { + "type": "string" + }, + "Type": { + "type": "string" + } + }, + "type": "object" + }, + "AWS::QBusiness::Index.IndexCapacityConfiguration": { + "additionalProperties": false, + "properties": { + "Units": { + "type": "number" + } + }, + "type": "object" + }, + "AWS::QBusiness::Index.IndexStatistics": { + "additionalProperties": false, + "properties": { + "TextDocumentStatistics": { + "$ref": "#/definitions/AWS::QBusiness::Index.TextDocumentStatistics" + } + }, + "type": "object" + }, + "AWS::QBusiness::Index.TextDocumentStatistics": { + "additionalProperties": false, + "properties": { + "IndexedTextBytes": { + "type": "number" + }, + "IndexedTextDocumentCount": { + "type": "number" + } + }, + "type": "object" + }, + "AWS::QBusiness::Plugin": { + "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": { + "ApplicationId": { + "type": "string" + }, + "AuthConfiguration": { + "$ref": "#/definitions/AWS::QBusiness::Plugin.PluginAuthConfiguration" + }, + "CustomPluginConfiguration": { + "$ref": "#/definitions/AWS::QBusiness::Plugin.CustomPluginConfiguration" + }, + "DisplayName": { + "type": "string" + }, + "ServerUrl": { + "type": "string" + }, + "State": { + "type": "string" + }, + "Tags": { + "items": { + "$ref": "#/definitions/Tag" + }, + "type": "array" + }, + "Type": { + "type": "string" + } + }, + "required": [ + "ApplicationId", + "AuthConfiguration", + "DisplayName", + "Type" + ], + "type": "object" + }, + "Type": { + "enum": [ + "AWS::QBusiness::Plugin" + ], + "type": "string" + }, + "UpdateReplacePolicy": { + "enum": [ + "Delete", + "Retain", + "Snapshot" + ], + "type": "string" + } + }, + "required": [ + "Type", + "Properties" + ], + "type": "object" + }, + "AWS::QBusiness::Plugin.APISchema": { + "additionalProperties": false, + "properties": { + "Payload": { + "type": "string" + }, + "S3": { + "$ref": "#/definitions/AWS::QBusiness::Plugin.S3" + } + }, + "type": "object" + }, + "AWS::QBusiness::Plugin.BasicAuthConfiguration": { + "additionalProperties": false, + "properties": { + "RoleArn": { + "type": "string" + }, + "SecretArn": { + "type": "string" + } + }, + "required": [ + "RoleArn", + "SecretArn" + ], + "type": "object" + }, + "AWS::QBusiness::Plugin.CustomPluginConfiguration": { + "additionalProperties": false, + "properties": { + "ApiSchema": { + "$ref": "#/definitions/AWS::QBusiness::Plugin.APISchema" + }, + "ApiSchemaType": { + "type": "string" + }, + "Description": { + "type": "string" + } + }, + "required": [ + "ApiSchema", + "ApiSchemaType", + "Description" + ], + "type": "object" + }, + "AWS::QBusiness::Plugin.OAuth2ClientCredentialConfiguration": { + "additionalProperties": false, + "properties": { + "RoleArn": { + "type": "string" + }, + "SecretArn": { + "type": "string" + } + }, + "required": [ + "RoleArn", + "SecretArn" + ], + "type": "object" + }, + "AWS::QBusiness::Plugin.PluginAuthConfiguration": { + "additionalProperties": false, + "properties": { + "BasicAuthConfiguration": { + "$ref": "#/definitions/AWS::QBusiness::Plugin.BasicAuthConfiguration" + }, + "NoAuthConfiguration": { + "type": "object" + }, + "OAuth2ClientCredentialConfiguration": { + "$ref": "#/definitions/AWS::QBusiness::Plugin.OAuth2ClientCredentialConfiguration" + } + }, + "type": "object" + }, + "AWS::QBusiness::Plugin.S3": { + "additionalProperties": false, + "properties": { + "Bucket": { + "type": "string" + }, + "Key": { + "type": "string" + } + }, + "required": [ + "Bucket", + "Key" + ], + "type": "object" + }, + "AWS::QBusiness::Retriever": { + "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": { + "ApplicationId": { "type": "string" }, + "Configuration": { + "$ref": "#/definitions/AWS::QBusiness::Retriever.RetrieverConfiguration" + }, "DisplayName": { "type": "string" }, - "EncryptionKey": { + "RoleArn": { "type": "string" }, - "Name": { + "Tags": { + "items": { + "$ref": "#/definitions/Tag" + }, + "type": "array" + }, + "Type": { + "type": "string" + } + }, + "required": [ + "ApplicationId", + "Configuration", + "DisplayName", + "Type" + ], + "type": "object" + }, + "Type": { + "enum": [ + "AWS::QBusiness::Retriever" + ], + "type": "string" + }, + "UpdateReplacePolicy": { + "enum": [ + "Delete", + "Retain", + "Snapshot" + ], + "type": "string" + } + }, + "required": [ + "Type", + "Properties" + ], + "type": "object" + }, + "AWS::QBusiness::Retriever.KendraIndexConfiguration": { + "additionalProperties": false, + "properties": { + "IndexId": { + "type": "string" + } + }, + "required": [ + "IndexId" + ], + "type": "object" + }, + "AWS::QBusiness::Retriever.NativeIndexConfiguration": { + "additionalProperties": false, + "properties": { + "IndexId": { + "type": "string" + } + }, + "required": [ + "IndexId" + ], + "type": "object" + }, + "AWS::QBusiness::Retriever.RetrieverConfiguration": { + "additionalProperties": false, + "properties": { + "KendraIndexConfiguration": { + "$ref": "#/definitions/AWS::QBusiness::Retriever.KendraIndexConfiguration" + }, + "NativeIndexConfiguration": { + "$ref": "#/definitions/AWS::QBusiness::Retriever.NativeIndexConfiguration" + } + }, + "type": "object" + }, + "AWS::QBusiness::WebExperience": { + "additionalProperties": false, + "properties": { + "Condition": { + "type": "string" + }, + "DeletionPolicy": { + "enum": [ + "Delete", + "Retain", + "Snapshot" + ], + "type": "string" + }, + "DependsOn": { + "anyOf": [ + { + "pattern": "^[a-zA-Z0-9]+$", "type": "string" }, - "PipelineProvisioning": { + { + "items": { + "pattern": "^[a-zA-Z0-9]+$", + "type": "string" + }, + "type": "array" + } + ] + }, + "Metadata": { + "type": "object" + }, + "Properties": { + "additionalProperties": false, + "properties": { + "ApplicationId": { + "type": "string" + }, + "RoleArn": { + "type": "string" + }, + "SamplePromptsControlMode": { + "type": "string" + }, + "Subtitle": { "type": "string" }, "Tags": { @@ -148080,13 +150332,22 @@ var CloudformationSchema = `{ "$ref": "#/definitions/Tag" }, "type": "array" + }, + "Title": { + "type": "string" + }, + "WelcomeMessage": { + "type": "string" } }, + "required": [ + "ApplicationId" + ], "type": "object" }, "Type": { "enum": [ - "AWS::Proton::ServiceTemplate" + "AWS::QBusiness::WebExperience" ], "type": "string" }, @@ -148100,7 +150361,8 @@ var CloudformationSchema = `{ } }, "required": [ - "Type" + "Type", + "Properties" ], "type": "object" }, @@ -157132,6 +159394,15 @@ var CloudformationSchema = `{ }, "type": "object" }, + "AWS::QuickSight::Analysis.WaterfallChartColorConfiguration": { + "additionalProperties": false, + "properties": { + "GroupColorConfiguration": { + "$ref": "#/definitions/AWS::QuickSight::Analysis.WaterfallChartGroupColorConfiguration" + } + }, + "type": "object" + }, "AWS::QuickSight::Analysis.WaterfallChartConfiguration": { "additionalProperties": false, "properties": { @@ -157141,6 +159412,9 @@ var CloudformationSchema = `{ "CategoryAxisLabelOptions": { "$ref": "#/definitions/AWS::QuickSight::Analysis.ChartAxisLabelOptions" }, + "ColorConfiguration": { + "$ref": "#/definitions/AWS::QuickSight::Analysis.WaterfallChartColorConfiguration" + }, "DataLabels": { "$ref": "#/definitions/AWS::QuickSight::Analysis.DataLabelOptions" }, @@ -157177,6 +159451,21 @@ var CloudformationSchema = `{ }, "type": "object" }, + "AWS::QuickSight::Analysis.WaterfallChartGroupColorConfiguration": { + "additionalProperties": false, + "properties": { + "NegativeBarColor": { + "type": "string" + }, + "PositiveBarColor": { + "type": "string" + }, + "TotalBarColor": { + "type": "string" + } + }, + "type": "object" + }, "AWS::QuickSight::Analysis.WaterfallChartOptions": { "additionalProperties": false, "properties": { @@ -166437,6 +168726,15 @@ var CloudformationSchema = `{ }, "type": "object" }, + "AWS::QuickSight::Dashboard.WaterfallChartColorConfiguration": { + "additionalProperties": false, + "properties": { + "GroupColorConfiguration": { + "$ref": "#/definitions/AWS::QuickSight::Dashboard.WaterfallChartGroupColorConfiguration" + } + }, + "type": "object" + }, "AWS::QuickSight::Dashboard.WaterfallChartConfiguration": { "additionalProperties": false, "properties": { @@ -166446,6 +168744,9 @@ var CloudformationSchema = `{ "CategoryAxisLabelOptions": { "$ref": "#/definitions/AWS::QuickSight::Dashboard.ChartAxisLabelOptions" }, + "ColorConfiguration": { + "$ref": "#/definitions/AWS::QuickSight::Dashboard.WaterfallChartColorConfiguration" + }, "DataLabels": { "$ref": "#/definitions/AWS::QuickSight::Dashboard.DataLabelOptions" }, @@ -166482,6 +168783,21 @@ var CloudformationSchema = `{ }, "type": "object" }, + "AWS::QuickSight::Dashboard.WaterfallChartGroupColorConfiguration": { + "additionalProperties": false, + "properties": { + "NegativeBarColor": { + "type": "string" + }, + "PositiveBarColor": { + "type": "string" + }, + "TotalBarColor": { + "type": "string" + } + }, + "type": "object" + }, "AWS::QuickSight::Dashboard.WaterfallChartOptions": { "additionalProperties": false, "properties": { @@ -166973,6 +169289,9 @@ var CloudformationSchema = `{ "$ref": "#/definitions/AWS::QuickSight::DataSet.RefreshConfiguration" } }, + "required": [ + "RefreshConfiguration" + ], "type": "object" }, "AWS::QuickSight::DataSet.DataSetUsageConfiguration": { @@ -167134,6 +169453,9 @@ var CloudformationSchema = `{ "$ref": "#/definitions/AWS::QuickSight::DataSet.LookbackWindow" } }, + "required": [ + "LookbackWindow" + ], "type": "object" }, "AWS::QuickSight::DataSet.IngestionWaitPolicy": { @@ -167291,6 +169613,11 @@ var CloudformationSchema = `{ "type": "string" } }, + "required": [ + "ColumnName", + "Size", + "SizeUnit" + ], "type": "object" }, "AWS::QuickSight::DataSet.NewDefaultValues": { @@ -167396,6 +169723,9 @@ var CloudformationSchema = `{ "$ref": "#/definitions/AWS::QuickSight::DataSet.IncrementalRefresh" } }, + "required": [ + "IncrementalRefresh" + ], "type": "object" }, "AWS::QuickSight::DataSet.RelationalTable": { @@ -167629,10 +169959,32 @@ var CloudformationSchema = `{ }, "TagColumnOperation": { "$ref": "#/definitions/AWS::QuickSight::DataSet.TagColumnOperation" + }, + "UntagColumnOperation": { + "$ref": "#/definitions/AWS::QuickSight::DataSet.UntagColumnOperation" } }, "type": "object" }, + "AWS::QuickSight::DataSet.UntagColumnOperation": { + "additionalProperties": false, + "properties": { + "ColumnName": { + "type": "string" + }, + "TagNames": { + "items": { + "type": "string" + }, + "type": "array" + } + }, + "required": [ + "ColumnName", + "TagNames" + ], + "type": "object" + }, "AWS::QuickSight::DataSet.UploadSettings": { "additionalProperties": false, "properties": { @@ -167735,6 +170087,10 @@ var CloudformationSchema = `{ "$ref": "#/definitions/AWS::QuickSight::DataSource.VpcConnectionProperties" } }, + "required": [ + "Name", + "Type" + ], "type": "object" }, "Type": { @@ -167753,7 +170109,8 @@ var CloudformationSchema = `{ } }, "required": [ - "Type" + "Type", + "Properties" ], "type": "object" }, @@ -167968,6 +170325,15 @@ var CloudformationSchema = `{ ], "type": "object" }, + "AWS::QuickSight::DataSource.IdentityCenterConfiguration": { + "additionalProperties": false, + "properties": { + "EnableIdentityPropagation": { + "type": "boolean" + } + }, + "type": "object" + }, "AWS::QuickSight::DataSource.ManifestFileLocation": { "additionalProperties": false, "properties": { @@ -168100,6 +170466,30 @@ var CloudformationSchema = `{ ], "type": "object" }, + "AWS::QuickSight::DataSource.RedshiftIAMParameters": { + "additionalProperties": false, + "properties": { + "AutoCreateDatabaseUser": { + "type": "boolean" + }, + "DatabaseGroups": { + "items": { + "type": "string" + }, + "type": "array" + }, + "DatabaseUser": { + "type": "string" + }, + "RoleArn": { + "type": "string" + } + }, + "required": [ + "RoleArn" + ], + "type": "object" + }, "AWS::QuickSight::DataSource.RedshiftParameters": { "additionalProperties": false, "properties": { @@ -168112,6 +170502,12 @@ var CloudformationSchema = `{ "Host": { "type": "string" }, + "IAMParameters": { + "$ref": "#/definitions/AWS::QuickSight::DataSource.RedshiftIAMParameters" + }, + "IdentityCenterConfiguration": { + "$ref": "#/definitions/AWS::QuickSight::DataSource.IdentityCenterConfiguration" + }, "Port": { "type": "number" } @@ -168132,6 +170528,9 @@ var CloudformationSchema = `{ }, "Principal": { "type": "string" + }, + "Resource": { + "type": "string" } }, "required": [ @@ -177241,6 +179640,15 @@ var CloudformationSchema = `{ }, "type": "object" }, + "AWS::QuickSight::Template.WaterfallChartColorConfiguration": { + "additionalProperties": false, + "properties": { + "GroupColorConfiguration": { + "$ref": "#/definitions/AWS::QuickSight::Template.WaterfallChartGroupColorConfiguration" + } + }, + "type": "object" + }, "AWS::QuickSight::Template.WaterfallChartConfiguration": { "additionalProperties": false, "properties": { @@ -177250,6 +179658,9 @@ var CloudformationSchema = `{ "CategoryAxisLabelOptions": { "$ref": "#/definitions/AWS::QuickSight::Template.ChartAxisLabelOptions" }, + "ColorConfiguration": { + "$ref": "#/definitions/AWS::QuickSight::Template.WaterfallChartColorConfiguration" + }, "DataLabels": { "$ref": "#/definitions/AWS::QuickSight::Template.DataLabelOptions" }, @@ -177286,6 +179697,21 @@ var CloudformationSchema = `{ }, "type": "object" }, + "AWS::QuickSight::Template.WaterfallChartGroupColorConfiguration": { + "additionalProperties": false, + "properties": { + "NegativeBarColor": { + "type": "string" + }, + "PositiveBarColor": { + "type": "string" + }, + "TotalBarColor": { + "type": "string" + } + }, + "type": "object" + }, "AWS::QuickSight::Template.WaterfallChartOptions": { "additionalProperties": false, "properties": { @@ -178227,6 +180653,9 @@ var CloudformationSchema = `{ "DefaultFormatting": { "$ref": "#/definitions/AWS::QuickSight::Topic.DefaultFormatting" }, + "DisableIndexing": { + "type": "boolean" + }, "Expression": { "type": "string" }, @@ -178333,6 +180762,9 @@ var CloudformationSchema = `{ "DefaultFormatting": { "$ref": "#/definitions/AWS::QuickSight::Topic.DefaultFormatting" }, + "DisableIndexing": { + "type": "boolean" + }, "IsIncludedInTopic": { "type": "boolean" }, @@ -184646,6 +187078,12 @@ var CloudformationSchema = `{ "Properties": { "additionalProperties": false, "properties": { + "AttributeMappings": { + "items": { + "$ref": "#/definitions/AWS::RolesAnywhere::Profile.AttributeMapping" + }, + "type": "array" + }, "DurationSeconds": { "type": "number" }, @@ -184707,6 +187145,37 @@ var CloudformationSchema = `{ ], "type": "object" }, + "AWS::RolesAnywhere::Profile.AttributeMapping": { + "additionalProperties": false, + "properties": { + "CertificateField": { + "type": "string" + }, + "MappingRules": { + "items": { + "$ref": "#/definitions/AWS::RolesAnywhere::Profile.MappingRule" + }, + "type": "array" + } + }, + "required": [ + "CertificateField", + "MappingRules" + ], + "type": "object" + }, + "AWS::RolesAnywhere::Profile.MappingRule": { + "additionalProperties": false, + "properties": { + "Specifier": { + "type": "string" + } + }, + "required": [ + "Specifier" + ], + "type": "object" + }, "AWS::RolesAnywhere::TrustAnchor": { "additionalProperties": false, "properties": { @@ -186938,6 +189407,9 @@ var CloudformationSchema = `{ "FirewallDomainListId": { "type": "string" }, + "FirewallDomainRedirectionAction": { + "type": "string" + }, "Priority": { "type": "number" }, @@ -194960,6 +197432,194 @@ var CloudformationSchema = `{ ], "type": "object" }, + "AWS::SSO::Application": { + "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": { + "ApplicationProviderArn": { + "type": "string" + }, + "Description": { + "type": "string" + }, + "InstanceArn": { + "type": "string" + }, + "Name": { + "type": "string" + }, + "PortalOptions": { + "$ref": "#/definitions/AWS::SSO::Application.PortalOptionsConfiguration" + }, + "Status": { + "type": "string" + }, + "Tags": { + "items": { + "$ref": "#/definitions/Tag" + }, + "type": "array" + } + }, + "required": [ + "ApplicationProviderArn", + "InstanceArn", + "Name" + ], + "type": "object" + }, + "Type": { + "enum": [ + "AWS::SSO::Application" + ], + "type": "string" + }, + "UpdateReplacePolicy": { + "enum": [ + "Delete", + "Retain", + "Snapshot" + ], + "type": "string" + } + }, + "required": [ + "Type", + "Properties" + ], + "type": "object" + }, + "AWS::SSO::Application.PortalOptionsConfiguration": { + "additionalProperties": false, + "properties": { + "SignInOptions": { + "$ref": "#/definitions/AWS::SSO::Application.SignInOptions" + }, + "Visibility": { + "type": "string" + } + }, + "type": "object" + }, + "AWS::SSO::Application.SignInOptions": { + "additionalProperties": false, + "properties": { + "ApplicationUrl": { + "type": "string" + }, + "Origin": { + "type": "string" + } + }, + "required": [ + "Origin" + ], + "type": "object" + }, + "AWS::SSO::ApplicationAssignment": { + "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": { + "ApplicationArn": { + "type": "string" + }, + "PrincipalId": { + "type": "string" + }, + "PrincipalType": { + "type": "string" + } + }, + "required": [ + "ApplicationArn", + "PrincipalId", + "PrincipalType" + ], + "type": "object" + }, + "Type": { + "enum": [ + "AWS::SSO::ApplicationAssignment" + ], + "type": "string" + }, + "UpdateReplacePolicy": { + "enum": [ + "Delete", + "Retain", + "Snapshot" + ], + "type": "string" + } + }, + "required": [ + "Type", + "Properties" + ], + "type": "object" + }, "AWS::SSO::Assignment": { "additionalProperties": false, "properties": { @@ -194995,38 +197655,106 @@ var CloudformationSchema = `{ "Properties": { "additionalProperties": false, "properties": { - "InstanceArn": { - "type": "string" - }, - "PermissionSetArn": { - "type": "string" - }, - "PrincipalId": { - "type": "string" - }, - "PrincipalType": { - "type": "string" - }, - "TargetId": { + "InstanceArn": { + "type": "string" + }, + "PermissionSetArn": { + "type": "string" + }, + "PrincipalId": { + "type": "string" + }, + "PrincipalType": { + "type": "string" + }, + "TargetId": { + "type": "string" + }, + "TargetType": { + "type": "string" + } + }, + "required": [ + "InstanceArn", + "PermissionSetArn", + "PrincipalId", + "PrincipalType", + "TargetId", + "TargetType" + ], + "type": "object" + }, + "Type": { + "enum": [ + "AWS::SSO::Assignment" + ], + "type": "string" + }, + "UpdateReplacePolicy": { + "enum": [ + "Delete", + "Retain", + "Snapshot" + ], + "type": "string" + } + }, + "required": [ + "Type", + "Properties" + ], + "type": "object" + }, + "AWS::SSO::Instance": { + "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": { + "Name": { "type": "string" }, - "TargetType": { - "type": "string" + "Tags": { + "items": { + "$ref": "#/definitions/Tag" + }, + "type": "array" } }, - "required": [ - "InstanceArn", - "PermissionSetArn", - "PrincipalId", - "PrincipalType", - "TargetId", - "TargetType" - ], "type": "object" }, "Type": { "enum": [ - "AWS::SSO::Assignment" + "AWS::SSO::Instance" ], "type": "string" }, @@ -195040,8 +197768,7 @@ var CloudformationSchema = `{ } }, "required": [ - "Type", - "Properties" + "Type" ], "type": "object" }, @@ -196451,9 +199178,21 @@ var CloudformationSchema = `{ "AWS::SageMaker::Domain.DefaultSpaceSettings": { "additionalProperties": false, "properties": { + "CustomFileSystemConfigs": { + "items": { + "$ref": "#/definitions/AWS::SageMaker::Domain.CustomFileSystemConfig" + }, + "type": "array" + }, + "CustomPosixUserConfig": { + "$ref": "#/definitions/AWS::SageMaker::Domain.CustomPosixUserConfig" + }, "ExecutionRole": { "type": "string" }, + "JupyterLabAppSettings": { + "$ref": "#/definitions/AWS::SageMaker::Domain.JupyterLabAppSettings" + }, "JupyterServerAppSettings": { "$ref": "#/definitions/AWS::SageMaker::Domain.JupyterServerAppSettings" }, @@ -196465,6 +199204,9 @@ var CloudformationSchema = `{ "type": "string" }, "type": "array" + }, + "SpaceStorageSettings": { + "$ref": "#/definitions/AWS::SageMaker::Domain.DefaultSpaceStorageSettings" } }, "required": [ @@ -204250,6 +206992,210 @@ var CloudformationSchema = `{ ], "type": "object" }, + "AWS::SecurityHub::ConfigurationPolicy": { + "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": { + "ConfigurationPolicy": { + "$ref": "#/definitions/AWS::SecurityHub::ConfigurationPolicy.Policy" + }, + "Description": { + "type": "string" + }, + "Name": { + "type": "string" + }, + "Tags": { + "additionalProperties": true, + "patternProperties": { + "^[a-zA-Z0-9]+$": { + "type": "string" + } + }, + "type": "object" + } + }, + "required": [ + "ConfigurationPolicy", + "Name" + ], + "type": "object" + }, + "Type": { + "enum": [ + "AWS::SecurityHub::ConfigurationPolicy" + ], + "type": "string" + }, + "UpdateReplacePolicy": { + "enum": [ + "Delete", + "Retain", + "Snapshot" + ], + "type": "string" + } + }, + "required": [ + "Type", + "Properties" + ], + "type": "object" + }, + "AWS::SecurityHub::ConfigurationPolicy.ParameterConfiguration": { + "additionalProperties": false, + "properties": { + "Value": { + "$ref": "#/definitions/AWS::SecurityHub::ConfigurationPolicy.ParameterValue" + }, + "ValueType": { + "type": "string" + } + }, + "required": [ + "ValueType" + ], + "type": "object" + }, + "AWS::SecurityHub::ConfigurationPolicy.ParameterValue": { + "additionalProperties": false, + "properties": { + "Boolean": { + "type": "boolean" + }, + "Double": { + "type": "number" + }, + "Enum": { + "type": "string" + }, + "EnumList": { + "items": { + "type": "string" + }, + "type": "array" + }, + "Integer": { + "type": "number" + }, + "IntegerList": { + "items": { + "type": "number" + }, + "type": "array" + }, + "String": { + "type": "string" + }, + "StringList": { + "items": { + "type": "string" + }, + "type": "array" + } + }, + "type": "object" + }, + "AWS::SecurityHub::ConfigurationPolicy.Policy": { + "additionalProperties": false, + "properties": { + "SecurityHub": { + "$ref": "#/definitions/AWS::SecurityHub::ConfigurationPolicy.SecurityHubPolicy" + } + }, + "type": "object" + }, + "AWS::SecurityHub::ConfigurationPolicy.SecurityControlCustomParameter": { + "additionalProperties": false, + "properties": { + "Parameters": { + "additionalProperties": false, + "patternProperties": { + "^[a-zA-Z0-9]+$": { + "$ref": "#/definitions/AWS::SecurityHub::ConfigurationPolicy.ParameterConfiguration" + } + }, + "type": "object" + }, + "SecurityControlId": { + "type": "string" + } + }, + "type": "object" + }, + "AWS::SecurityHub::ConfigurationPolicy.SecurityControlsConfiguration": { + "additionalProperties": false, + "properties": { + "DisabledSecurityControlIdentifiers": { + "items": { + "type": "string" + }, + "type": "array" + }, + "EnabledSecurityControlIdentifiers": { + "items": { + "type": "string" + }, + "type": "array" + }, + "SecurityControlCustomParameters": { + "items": { + "$ref": "#/definitions/AWS::SecurityHub::ConfigurationPolicy.SecurityControlCustomParameter" + }, + "type": "array" + } + }, + "type": "object" + }, + "AWS::SecurityHub::ConfigurationPolicy.SecurityHubPolicy": { + "additionalProperties": false, + "properties": { + "EnabledStandardIdentifiers": { + "items": { + "type": "string" + }, + "type": "array" + }, + "SecurityControlsConfiguration": { + "$ref": "#/definitions/AWS::SecurityHub::ConfigurationPolicy.SecurityControlsConfiguration" + }, + "ServiceEnabled": { + "type": "boolean" + } + }, + "type": "object" + }, "AWS::SecurityHub::DelegatedAdmin": { "additionalProperties": false, "properties": { @@ -204315,6 +207261,77 @@ var CloudformationSchema = `{ ], "type": "object" }, + "AWS::SecurityHub::FindingAggregator": { + "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": { + "RegionLinkingMode": { + "type": "string" + }, + "Regions": { + "items": { + "type": "string" + }, + "type": "array" + } + }, + "required": [ + "RegionLinkingMode" + ], + "type": "object" + }, + "Type": { + "enum": [ + "AWS::SecurityHub::FindingAggregator" + ], + "type": "string" + }, + "UpdateReplacePolicy": { + "enum": [ + "Delete", + "Retain", + "Snapshot" + ], + "type": "string" + } + }, + "required": [ + "Type", + "Properties" + ], + "type": "object" + }, "AWS::SecurityHub::Hub": { "additionalProperties": false, "properties": { @@ -205176,6 +208193,150 @@ var CloudformationSchema = `{ ], "type": "object" }, + "AWS::SecurityHub::OrganizationConfiguration": { + "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": { + "AutoEnable": { + "type": "boolean" + }, + "AutoEnableStandards": { + "type": "string" + }, + "ConfigurationType": { + "type": "string" + } + }, + "required": [ + "AutoEnable" + ], + "type": "object" + }, + "Type": { + "enum": [ + "AWS::SecurityHub::OrganizationConfiguration" + ], + "type": "string" + }, + "UpdateReplacePolicy": { + "enum": [ + "Delete", + "Retain", + "Snapshot" + ], + "type": "string" + } + }, + "required": [ + "Type", + "Properties" + ], + "type": "object" + }, + "AWS::SecurityHub::PolicyAssociation": { + "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": { + "ConfigurationPolicyId": { + "type": "string" + }, + "TargetId": { + "type": "string" + }, + "TargetType": { + "type": "string" + } + }, + "required": [ + "ConfigurationPolicyId", + "TargetId", + "TargetType" + ], + "type": "object" + }, + "Type": { + "enum": [ + "AWS::SecurityHub::PolicyAssociation" + ], + "type": "string" + }, + "UpdateReplacePolicy": { + "enum": [ + "Delete", + "Retain", + "Snapshot" + ], + "type": "string" + } + }, + "required": [ + "Type", + "Properties" + ], + "type": "object" + }, "AWS::SecurityHub::ProductSubscription": { "additionalProperties": false, "properties": { @@ -205241,6 +208402,140 @@ var CloudformationSchema = `{ ], "type": "object" }, + "AWS::SecurityHub::SecurityControl": { + "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": { + "LastUpdateReason": { + "type": "string" + }, + "Parameters": { + "additionalProperties": false, + "patternProperties": { + "^[a-zA-Z0-9]+$": { + "$ref": "#/definitions/AWS::SecurityHub::SecurityControl.ParameterConfiguration" + } + }, + "type": "object" + }, + "SecurityControlArn": { + "type": "string" + }, + "SecurityControlId": { + "type": "string" + } + }, + "required": [ + "Parameters" + ], + "type": "object" + }, + "Type": { + "enum": [ + "AWS::SecurityHub::SecurityControl" + ], + "type": "string" + }, + "UpdateReplacePolicy": { + "enum": [ + "Delete", + "Retain", + "Snapshot" + ], + "type": "string" + } + }, + "required": [ + "Type", + "Properties" + ], + "type": "object" + }, + "AWS::SecurityHub::SecurityControl.ParameterConfiguration": { + "additionalProperties": false, + "properties": { + "Value": { + "$ref": "#/definitions/AWS::SecurityHub::SecurityControl.ParameterValue" + }, + "ValueType": { + "type": "string" + } + }, + "required": [ + "ValueType" + ], + "type": "object" + }, + "AWS::SecurityHub::SecurityControl.ParameterValue": { + "additionalProperties": false, + "properties": { + "Boolean": { + "type": "boolean" + }, + "Double": { + "type": "number" + }, + "Enum": { + "type": "string" + }, + "EnumList": { + "items": { + "type": "string" + }, + "type": "array" + }, + "Integer": { + "type": "number" + }, + "IntegerList": { + "items": { + "type": "number" + }, + "type": "array" + }, + "String": { + "type": "string" + }, + "StringList": { + "items": { + "type": "string" + }, + "type": "array" + } + }, + "type": "object" + }, "AWS::SecurityHub::Standard": { "additionalProperties": false, "properties": { @@ -205362,7 +208657,222 @@ var CloudformationSchema = `{ "Properties": { "additionalProperties": false, "properties": { - "Accounts": { + "Accounts": { + "items": { + "type": "string" + }, + "type": "array" + }, + "DataLakeArn": { + "type": "string" + }, + "SourceName": { + "type": "string" + }, + "SourceVersion": { + "type": "string" + } + }, + "required": [ + "DataLakeArn", + "SourceName", + "SourceVersion" + ], + "type": "object" + }, + "Type": { + "enum": [ + "AWS::SecurityLake::AwsLogSource" + ], + "type": "string" + }, + "UpdateReplacePolicy": { + "enum": [ + "Delete", + "Retain", + "Snapshot" + ], + "type": "string" + } + }, + "required": [ + "Type", + "Properties" + ], + "type": "object" + }, + "AWS::SecurityLake::DataLake": { + "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": { + "EncryptionConfiguration": { + "$ref": "#/definitions/AWS::SecurityLake::DataLake.EncryptionConfiguration" + }, + "LifecycleConfiguration": { + "$ref": "#/definitions/AWS::SecurityLake::DataLake.LifecycleConfiguration" + }, + "MetaStoreManagerRoleArn": { + "type": "string" + }, + "ReplicationConfiguration": { + "$ref": "#/definitions/AWS::SecurityLake::DataLake.ReplicationConfiguration" + }, + "Tags": { + "items": { + "$ref": "#/definitions/Tag" + }, + "type": "array" + } + }, + "type": "object" + }, + "Type": { + "enum": [ + "AWS::SecurityLake::DataLake" + ], + "type": "string" + }, + "UpdateReplacePolicy": { + "enum": [ + "Delete", + "Retain", + "Snapshot" + ], + "type": "string" + } + }, + "required": [ + "Type" + ], + "type": "object" + }, + "AWS::SecurityLake::DataLake.EncryptionConfiguration": { + "additionalProperties": false, + "properties": { + "KmsKeyId": { + "type": "string" + } + }, + "type": "object" + }, + "AWS::SecurityLake::DataLake.Expiration": { + "additionalProperties": false, + "properties": { + "Days": { + "type": "number" + } + }, + "type": "object" + }, + "AWS::SecurityLake::DataLake.LifecycleConfiguration": { + "additionalProperties": false, + "properties": { + "Expiration": { + "$ref": "#/definitions/AWS::SecurityLake::DataLake.Expiration" + }, + "Transitions": { + "items": { + "$ref": "#/definitions/AWS::SecurityLake::DataLake.Transitions" + }, + "type": "array" + } + }, + "type": "object" + }, + "AWS::SecurityLake::DataLake.ReplicationConfiguration": { + "additionalProperties": false, + "properties": { + "Regions": { + "items": { + "type": "string" + }, + "type": "array" + }, + "RoleArn": { + "type": "string" + } + }, + "type": "object" + }, + "AWS::SecurityLake::DataLake.Transitions": { + "additionalProperties": false, + "properties": { + "Days": { + "type": "number" + }, + "StorageClass": { + "type": "string" + } + }, + "type": "object" + }, + "AWS::SecurityLake::Subscriber": { + "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": { + "AccessTypes": { "items": { "type": "string" }, @@ -205371,87 +208881,20 @@ var CloudformationSchema = `{ "DataLakeArn": { "type": "string" }, - "SourceName": { - "type": "string" - }, - "SourceVersion": { - "type": "string" - } - }, - "required": [ - "DataLakeArn", - "SourceName", - "SourceVersion" - ], - "type": "object" - }, - "Type": { - "enum": [ - "AWS::SecurityLake::AwsLogSource" - ], - "type": "string" - }, - "UpdateReplacePolicy": { - "enum": [ - "Delete", - "Retain", - "Snapshot" - ], - "type": "string" - } - }, - "required": [ - "Type", - "Properties" - ], - "type": "object" - }, - "AWS::SecurityLake::DataLake": { - "additionalProperties": false, - "properties": { - "Condition": { - "type": "string" - }, - "DeletionPolicy": { - "enum": [ - "Delete", - "Retain", - "Snapshot" - ], - "type": "string" - }, - "DependsOn": { - "anyOf": [ - { - "pattern": "^[a-zA-Z0-9]+$", - "type": "string" - }, - { + "Sources": { "items": { - "pattern": "^[a-zA-Z0-9]+$", - "type": "string" + "$ref": "#/definitions/AWS::SecurityLake::Subscriber.Source" }, "type": "array" - } - ] - }, - "Metadata": { - "type": "object" - }, - "Properties": { - "additionalProperties": false, - "properties": { - "EncryptionConfiguration": { - "$ref": "#/definitions/AWS::SecurityLake::DataLake.EncryptionConfiguration" }, - "LifecycleConfiguration": { - "$ref": "#/definitions/AWS::SecurityLake::DataLake.LifecycleConfiguration" - }, - "MetaStoreManagerRoleArn": { + "SubscriberDescription": { "type": "string" }, - "ReplicationConfiguration": { - "$ref": "#/definitions/AWS::SecurityLake::DataLake.ReplicationConfiguration" + "SubscriberIdentity": { + "$ref": "#/definitions/AWS::SecurityLake::Subscriber.SubscriberIdentity" + }, + "SubscriberName": { + "type": "string" }, "Tags": { "items": { @@ -205460,11 +208903,18 @@ var CloudformationSchema = `{ "type": "array" } }, + "required": [ + "AccessTypes", + "DataLakeArn", + "Sources", + "SubscriberIdentity", + "SubscriberName" + ], "type": "object" }, "Type": { "enum": [ - "AWS::SecurityLake::DataLake" + "AWS::SecurityLake::Subscriber" ], "type": "string" }, @@ -205478,71 +208928,64 @@ var CloudformationSchema = `{ } }, "required": [ - "Type" + "Type", + "Properties" ], "type": "object" }, - "AWS::SecurityLake::DataLake.EncryptionConfiguration": { + "AWS::SecurityLake::Subscriber.AwsLogSource": { "additionalProperties": false, "properties": { - "KmsKeyId": { + "SourceName": { + "type": "string" + }, + "SourceVersion": { "type": "string" } }, "type": "object" }, - "AWS::SecurityLake::DataLake.Expiration": { - "additionalProperties": false, - "properties": { - "Days": { - "type": "number" - } - }, - "type": "object" - }, - "AWS::SecurityLake::DataLake.LifecycleConfiguration": { + "AWS::SecurityLake::Subscriber.CustomLogSource": { "additionalProperties": false, "properties": { - "Expiration": { - "$ref": "#/definitions/AWS::SecurityLake::DataLake.Expiration" + "SourceName": { + "type": "string" }, - "Transitions": { - "items": { - "$ref": "#/definitions/AWS::SecurityLake::DataLake.Transitions" - }, - "type": "array" + "SourceVersion": { + "type": "string" } }, "type": "object" }, - "AWS::SecurityLake::DataLake.ReplicationConfiguration": { + "AWS::SecurityLake::Subscriber.Source": { "additionalProperties": false, "properties": { - "Regions": { - "items": { - "type": "string" - }, - "type": "array" + "AwsLogSource": { + "$ref": "#/definitions/AWS::SecurityLake::Subscriber.AwsLogSource" }, - "RoleArn": { - "type": "string" + "CustomLogSource": { + "$ref": "#/definitions/AWS::SecurityLake::Subscriber.CustomLogSource" } }, "type": "object" }, - "AWS::SecurityLake::DataLake.Transitions": { + "AWS::SecurityLake::Subscriber.SubscriberIdentity": { "additionalProperties": false, "properties": { - "Days": { - "type": "number" + "ExternalId": { + "type": "string" }, - "StorageClass": { + "Principal": { "type": "string" } }, + "required": [ + "ExternalId", + "Principal" + ], "type": "object" }, - "AWS::SecurityLake::Subscriber": { + "AWS::SecurityLake::SubscriberNotification": { "additionalProperties": false, "properties": { "Condition": { @@ -205577,49 +209020,22 @@ var CloudformationSchema = `{ "Properties": { "additionalProperties": false, "properties": { - "AccessTypes": { - "items": { - "type": "string" - }, - "type": "array" - }, - "DataLakeArn": { - "type": "string" - }, - "Sources": { - "items": { - "$ref": "#/definitions/AWS::SecurityLake::Subscriber.Source" - }, - "type": "array" - }, - "SubscriberDescription": { - "type": "string" - }, - "SubscriberIdentity": { - "$ref": "#/definitions/AWS::SecurityLake::Subscriber.SubscriberIdentity" + "NotificationConfiguration": { + "$ref": "#/definitions/AWS::SecurityLake::SubscriberNotification.NotificationConfiguration" }, - "SubscriberName": { + "SubscriberArn": { "type": "string" - }, - "Tags": { - "items": { - "$ref": "#/definitions/Tag" - }, - "type": "array" } }, "required": [ - "AccessTypes", - "DataLakeArn", - "Sources", - "SubscriberIdentity", - "SubscriberName" + "NotificationConfiguration", + "SubscriberArn" ], "type": "object" }, "Type": { "enum": [ - "AWS::SecurityLake::Subscriber" + "AWS::SecurityLake::SubscriberNotification" ], "type": "string" }, @@ -205638,56 +209054,41 @@ var CloudformationSchema = `{ ], "type": "object" }, - "AWS::SecurityLake::Subscriber.AwsLogSource": { + "AWS::SecurityLake::SubscriberNotification.HttpsNotificationConfiguration": { "additionalProperties": false, "properties": { - "SourceName": { + "AuthorizationApiKeyName": { "type": "string" }, - "SourceVersion": { + "AuthorizationApiKeyValue": { "type": "string" - } - }, - "type": "object" - }, - "AWS::SecurityLake::Subscriber.CustomLogSource": { - "additionalProperties": false, - "properties": { - "SourceName": { + }, + "Endpoint": { "type": "string" }, - "SourceVersion": { + "HttpMethod": { "type": "string" - } - }, - "type": "object" - }, - "AWS::SecurityLake::Subscriber.Source": { - "additionalProperties": false, - "properties": { - "AwsLogSource": { - "$ref": "#/definitions/AWS::SecurityLake::Subscriber.AwsLogSource" }, - "CustomLogSource": { - "$ref": "#/definitions/AWS::SecurityLake::Subscriber.CustomLogSource" + "TargetRoleArn": { + "type": "string" } }, + "required": [ + "Endpoint", + "TargetRoleArn" + ], "type": "object" }, - "AWS::SecurityLake::Subscriber.SubscriberIdentity": { + "AWS::SecurityLake::SubscriberNotification.NotificationConfiguration": { "additionalProperties": false, "properties": { - "ExternalId": { - "type": "string" + "HttpsNotificationConfiguration": { + "$ref": "#/definitions/AWS::SecurityLake::SubscriberNotification.HttpsNotificationConfiguration" }, - "Principal": { - "type": "string" + "SqsNotificationConfiguration": { + "type": "object" } }, - "required": [ - "ExternalId", - "Principal" - ], "type": "object" }, "AWS::ServiceCatalog::AcceptedPortfolioShare": { @@ -210588,6 +213989,9 @@ var CloudformationSchema = `{ "LoggingRole": { "type": "string" }, + "SecurityPolicyName": { + "type": "string" + }, "SftpConfig": { "$ref": "#/definitions/AWS::Transfer::Connector.SftpConfig" }, @@ -211289,6 +214693,10 @@ var CloudformationSchema = `{ "type": "string" } }, + "required": [ + "DestinationFileLocation", + "Type" + ], "type": "object" }, "AWS::Transfer::Workflow.DeleteStepDetails": { @@ -220112,6 +223520,9 @@ var CloudformationSchema = `{ { "$ref": "#/definitions/AWS::Bedrock::Guardrail" }, + { + "$ref": "#/definitions/AWS::Bedrock::GuardrailVersion" + }, { "$ref": "#/definitions/AWS::Bedrock::KnowledgeBase" }, @@ -220667,12 +224078,21 @@ var CloudformationSchema = `{ { "$ref": "#/definitions/AWS::DataZone::EnvironmentProfile" }, + { + "$ref": "#/definitions/AWS::DataZone::GroupProfile" + }, { "$ref": "#/definitions/AWS::DataZone::Project" }, + { + "$ref": "#/definitions/AWS::DataZone::ProjectMembership" + }, { "$ref": "#/definitions/AWS::DataZone::SubscriptionTarget" }, + { + "$ref": "#/definitions/AWS::DataZone::UserProfile" + }, { "$ref": "#/definitions/AWS::Deadline::Farm" }, @@ -222266,6 +225686,9 @@ var CloudformationSchema = `{ { "$ref": "#/definitions/AWS::Neptune::DBSubnetGroup" }, + { + "$ref": "#/definitions/AWS::Neptune::EventSubscription" + }, { "$ref": "#/definitions/AWS::NeptuneGraph::Graph" }, @@ -222551,6 +225974,24 @@ var CloudformationSchema = `{ { "$ref": "#/definitions/AWS::Proton::ServiceTemplate" }, + { + "$ref": "#/definitions/AWS::QBusiness::Application" + }, + { + "$ref": "#/definitions/AWS::QBusiness::DataSource" + }, + { + "$ref": "#/definitions/AWS::QBusiness::Index" + }, + { + "$ref": "#/definitions/AWS::QBusiness::Plugin" + }, + { + "$ref": "#/definitions/AWS::QBusiness::Retriever" + }, + { + "$ref": "#/definitions/AWS::QBusiness::WebExperience" + }, { "$ref": "#/definitions/AWS::QLDB::Ledger" }, @@ -222977,9 +226418,18 @@ var CloudformationSchema = `{ { "$ref": "#/definitions/AWS::SSMIncidents::ResponsePlan" }, + { + "$ref": "#/definitions/AWS::SSO::Application" + }, + { + "$ref": "#/definitions/AWS::SSO::ApplicationAssignment" + }, { "$ref": "#/definitions/AWS::SSO::Assignment" }, + { + "$ref": "#/definitions/AWS::SSO::Instance" + }, { "$ref": "#/definitions/AWS::SSO::InstanceAccessControlAttributeConfiguration" }, @@ -223094,18 +226544,33 @@ var CloudformationSchema = `{ { "$ref": "#/definitions/AWS::SecurityHub::AutomationRule" }, + { + "$ref": "#/definitions/AWS::SecurityHub::ConfigurationPolicy" + }, { "$ref": "#/definitions/AWS::SecurityHub::DelegatedAdmin" }, + { + "$ref": "#/definitions/AWS::SecurityHub::FindingAggregator" + }, { "$ref": "#/definitions/AWS::SecurityHub::Hub" }, { "$ref": "#/definitions/AWS::SecurityHub::Insight" }, + { + "$ref": "#/definitions/AWS::SecurityHub::OrganizationConfiguration" + }, + { + "$ref": "#/definitions/AWS::SecurityHub::PolicyAssociation" + }, { "$ref": "#/definitions/AWS::SecurityHub::ProductSubscription" }, + { + "$ref": "#/definitions/AWS::SecurityHub::SecurityControl" + }, { "$ref": "#/definitions/AWS::SecurityHub::Standard" }, @@ -223118,6 +226583,9 @@ var CloudformationSchema = `{ { "$ref": "#/definitions/AWS::SecurityLake::Subscriber" }, + { + "$ref": "#/definitions/AWS::SecurityLake::SubscriberNotification" + }, { "$ref": "#/definitions/AWS::ServiceCatalog::AcceptedPortfolioShare" }, diff --git a/schema/cloudformation.schema.json b/schema/cloudformation.schema.json index cc354302ee..8a6f4eb515 100644 --- a/schema/cloudformation.schema.json +++ b/schema/cloudformation.schema.json @@ -536,6 +536,9 @@ "type": "string" } }, + "required": [ + "Enabled" + ], "type": "object" }, "AWS::ACMPCA::CertificateAuthority.CrlDistributionPointExtensionConfiguration": { @@ -592,7 +595,6 @@ } }, "required": [ - "NameAssigner", "PartyName" ], "type": "object" @@ -670,6 +672,9 @@ "type": "string" } }, + "required": [ + "Enabled" + ], "type": "object" }, "AWS::ACMPCA::CertificateAuthority.OtherName": { @@ -19179,6 +19184,12 @@ "MetricName": { "type": "string" }, + "Metrics": { + "items": { + "$ref": "#/definitions/AWS::AutoScaling::ScalingPolicy.TargetTrackingMetricDataQuery" + }, + "type": "array" + }, "Namespace": { "type": "string" }, @@ -19189,11 +19200,6 @@ "type": "string" } }, - "required": [ - "MetricName", - "Namespace", - "Statistic" - ], "type": "object" }, "AWS::AutoScaling::ScalingPolicy.Metric": { @@ -19478,6 +19484,49 @@ ], "type": "object" }, + "AWS::AutoScaling::ScalingPolicy.TargetTrackingMetricDataQuery": { + "additionalProperties": false, + "properties": { + "Expression": { + "type": "string" + }, + "Id": { + "type": "string" + }, + "Label": { + "type": "string" + }, + "MetricStat": { + "$ref": "#/definitions/AWS::AutoScaling::ScalingPolicy.TargetTrackingMetricStat" + }, + "ReturnData": { + "type": "boolean" + } + }, + "required": [ + "Id" + ], + "type": "object" + }, + "AWS::AutoScaling::ScalingPolicy.TargetTrackingMetricStat": { + "additionalProperties": false, + "properties": { + "Metric": { + "$ref": "#/definitions/AWS::AutoScaling::ScalingPolicy.Metric" + }, + "Stat": { + "type": "string" + }, + "Unit": { + "type": "string" + } + }, + "required": [ + "Metric", + "Stat" + ], + "type": "object" + }, "AWS::AutoScaling::ScheduledAction": { "additionalProperties": false, "properties": { @@ -22613,6 +22662,9 @@ "EcsProperties": { "$ref": "#/definitions/AWS::Batch::JobDefinition.EcsProperties" }, + "EksProperties": { + "$ref": "#/definitions/AWS::Batch::JobDefinition.EksProperties" + }, "InstanceTypes": { "items": { "type": "string" @@ -23285,13 +23337,13 @@ "AWS::Bedrock::Agent.ActionGroupExecutor": { "additionalProperties": false, "properties": { + "CustomControl": { + "type": "string" + }, "Lambda": { "type": "string" } }, - "required": [ - "Lambda" - ], "type": "object" }, "AWS::Bedrock::Agent.AgentActionGroup": { @@ -23312,6 +23364,9 @@ "Description": { "type": "string" }, + "FunctionSchema": { + "$ref": "#/definitions/AWS::Bedrock::Agent.FunctionSchema" + }, "ParentActionGroupSignature": { "type": "string" }, @@ -23343,6 +23398,45 @@ ], "type": "object" }, + "AWS::Bedrock::Agent.Function": { + "additionalProperties": false, + "properties": { + "Description": { + "type": "string" + }, + "Name": { + "type": "string" + }, + "Parameters": { + "additionalProperties": false, + "patternProperties": { + "^[a-zA-Z0-9]+$": { + "$ref": "#/definitions/AWS::Bedrock::Agent.ParameterDetail" + } + }, + "type": "object" + } + }, + "required": [ + "Name" + ], + "type": "object" + }, + "AWS::Bedrock::Agent.FunctionSchema": { + "additionalProperties": false, + "properties": { + "Functions": { + "items": { + "$ref": "#/definitions/AWS::Bedrock::Agent.Function" + }, + "type": "array" + } + }, + "required": [ + "Functions" + ], + "type": "object" + }, "AWS::Bedrock::Agent.InferenceConfiguration": { "additionalProperties": false, "properties": { @@ -23367,6 +23461,24 @@ }, "type": "object" }, + "AWS::Bedrock::Agent.ParameterDetail": { + "additionalProperties": false, + "properties": { + "Description": { + "type": "string" + }, + "Required": { + "type": "boolean" + }, + "Type": { + "type": "string" + } + }, + "required": [ + "Type" + ], + "type": "object" + }, "AWS::Bedrock::Agent.PromptConfiguration": { "additionalProperties": false, "properties": { @@ -23573,6 +23685,9 @@ "Properties": { "additionalProperties": false, "properties": { + "DataDeletionPolicy": { + "type": "string" + }, "DataSourceConfiguration": { "$ref": "#/definitions/AWS::Bedrock::DataSource.DataSourceConfiguration" }, @@ -23673,6 +23788,9 @@ "BucketArn": { "type": "string" }, + "BucketOwnerAccountId": { + "type": "string" + }, "InclusionPrefixes": { "items": { "type": "string" @@ -23975,6 +24093,74 @@ }, "type": "object" }, + "AWS::Bedrock::GuardrailVersion": { + "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" + }, + "GuardrailIdentifier": { + "type": "string" + } + }, + "required": [ + "GuardrailIdentifier" + ], + "type": "object" + }, + "Type": { + "enum": [ + "AWS::Bedrock::GuardrailVersion" + ], + "type": "string" + }, + "UpdateReplacePolicy": { + "enum": [ + "Delete", + "Retain", + "Snapshot" + ], + "type": "string" + } + }, + "required": [ + "Type", + "Properties" + ], + "type": "object" + }, "AWS::Bedrock::KnowledgeBase": { "additionalProperties": false, "properties": { @@ -24780,6 +24966,12 @@ "$ref": "#/definitions/AWS::Budgets::Budget.NotificationWithSubscribers" }, "type": "array" + }, + "ResourceTags": { + "items": { + "$ref": "#/definitions/AWS::Budgets::Budget.ResourceTag" + }, + "type": "array" } }, "required": [ @@ -24953,6 +25145,21 @@ ], "type": "object" }, + "AWS::Budgets::Budget.ResourceTag": { + "additionalProperties": false, + "properties": { + "Key": { + "type": "string" + }, + "Value": { + "type": "string" + } + }, + "required": [ + "Key" + ], + "type": "object" + }, "AWS::Budgets::Budget.Spend": { "additionalProperties": false, "properties": { @@ -25053,6 +25260,12 @@ "NotificationType": { "type": "string" }, + "ResourceTags": { + "items": { + "$ref": "#/definitions/AWS::Budgets::BudgetsAction.ResourceTag" + }, + "type": "array" + }, "Subscribers": { "items": { "$ref": "#/definitions/AWS::Budgets::BudgetsAction.Subscriber" @@ -25153,6 +25366,22 @@ ], "type": "object" }, + "AWS::Budgets::BudgetsAction.ResourceTag": { + "additionalProperties": false, + "properties": { + "Key": { + "type": "string" + }, + "Value": { + "type": "string" + } + }, + "required": [ + "Key", + "Value" + ], + "type": "object" + }, "AWS::Budgets::BudgetsAction.ScpActionDefinition": { "additionalProperties": false, "properties": { @@ -26229,6 +26458,12 @@ }, "type": "array" }, + "Tags": { + "items": { + "$ref": "#/definitions/Tag" + }, + "type": "array" + }, "TeamId": { "type": "string" }, @@ -26334,6 +26569,12 @@ }, "type": "array" }, + "Tags": { + "items": { + "$ref": "#/definitions/Tag" + }, + "type": "array" + }, "UserRoleRequired": { "type": "boolean" } @@ -33408,9 +33649,18 @@ "EnvironmentType": { "type": "string" }, + "FleetServiceRole": { + "type": "string" + }, + "FleetVpcConfig": { + "$ref": "#/definitions/AWS::CodeBuild::Fleet.VpcConfig" + }, "Name": { "type": "string" }, + "OverflowBehavior": { + "type": "string" + }, "Tags": { "items": { "$ref": "#/definitions/Tag" @@ -33440,6 +33690,27 @@ ], "type": "object" }, + "AWS::CodeBuild::Fleet.VpcConfig": { + "additionalProperties": false, + "properties": { + "SecurityGroupIds": { + "items": { + "type": "string" + }, + "type": "array" + }, + "Subnets": { + "items": { + "type": "string" + }, + "type": "array" + }, + "VpcId": { + "type": "string" + } + }, + "type": "object" + }, "AWS::CodeBuild::Project": { "additionalProperties": false, "properties": { @@ -35784,6 +36055,18 @@ ], "type": "object" }, + "AWS::CodePipeline::Pipeline.FailureConditions": { + "additionalProperties": false, + "properties": { + "Result": { + "type": "string" + } + }, + "required": [ + "Result" + ], + "type": "object" + }, "AWS::CodePipeline::Pipeline.GitBranchFilterCriteria": { "additionalProperties": false, "properties": { @@ -35951,6 +36234,9 @@ }, "Name": { "type": "string" + }, + "OnFailure": { + "$ref": "#/definitions/AWS::CodePipeline::Pipeline.FailureConditions" } }, "required": [ @@ -42149,6 +42435,12 @@ }, "type": "array" }, + "SubmitAutoEvaluationActions": { + "items": { + "$ref": "#/definitions/AWS::Connect::Rule.SubmitAutoEvaluationAction" + }, + "type": "array" + }, "TaskActions": { "items": { "$ref": "#/definitions/AWS::Connect::Rule.TaskAction" @@ -42308,6 +42600,18 @@ ], "type": "object" }, + "AWS::Connect::Rule.SubmitAutoEvaluationAction": { + "additionalProperties": false, + "properties": { + "EvaluationFormArn": { + "type": "string" + } + }, + "required": [ + "EvaluationFormArn" + ], + "type": "object" + }, "AWS::Connect::Rule.TaskAction": { "additionalProperties": false, "properties": { @@ -51958,6 +52262,78 @@ }, "type": "object" }, + "AWS::DataZone::GroupProfile": { + "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": { + "DomainIdentifier": { + "type": "string" + }, + "GroupIdentifier": { + "type": "string" + }, + "Status": { + "type": "string" + } + }, + "required": [ + "DomainIdentifier", + "GroupIdentifier" + ], + "type": "object" + }, + "Type": { + "enum": [ + "AWS::DataZone::GroupProfile" + ], + "type": "string" + }, + "UpdateReplacePolicy": { + "enum": [ + "Delete", + "Retain", + "Snapshot" + ], + "type": "string" + } + }, + "required": [ + "Type", + "Properties" + ], + "type": "object" + }, "AWS::DataZone::Project": { "additionalProperties": false, "properties": { @@ -52036,6 +52412,95 @@ ], "type": "object" }, + "AWS::DataZone::ProjectMembership": { + "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": { + "Designation": { + "type": "string" + }, + "DomainIdentifier": { + "type": "string" + }, + "Member": { + "$ref": "#/definitions/AWS::DataZone::ProjectMembership.Member" + }, + "ProjectIdentifier": { + "type": "string" + } + }, + "required": [ + "Designation", + "DomainIdentifier", + "Member", + "ProjectIdentifier" + ], + "type": "object" + }, + "Type": { + "enum": [ + "AWS::DataZone::ProjectMembership" + ], + "type": "string" + }, + "UpdateReplacePolicy": { + "enum": [ + "Delete", + "Retain", + "Snapshot" + ], + "type": "string" + } + }, + "required": [ + "Type", + "Properties" + ], + "type": "object" + }, + "AWS::DataZone::ProjectMembership.Member": { + "additionalProperties": false, + "properties": { + "GroupIdentifier": { + "type": "string" + }, + "UserIdentifier": { + "type": "string" + } + }, + "type": "object" + }, "AWS::DataZone::SubscriptionTarget": { "additionalProperties": false, "properties": { @@ -52157,6 +52622,117 @@ ], "type": "object" }, + "AWS::DataZone::UserProfile": { + "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": { + "DomainIdentifier": { + "type": "string" + }, + "Status": { + "type": "string" + }, + "UserIdentifier": { + "type": "string" + }, + "UserType": { + "type": "string" + } + }, + "required": [ + "DomainIdentifier", + "UserIdentifier" + ], + "type": "object" + }, + "Type": { + "enum": [ + "AWS::DataZone::UserProfile" + ], + "type": "string" + }, + "UpdateReplacePolicy": { + "enum": [ + "Delete", + "Retain", + "Snapshot" + ], + "type": "string" + } + }, + "required": [ + "Type", + "Properties" + ], + "type": "object" + }, + "AWS::DataZone::UserProfile.IamUserProfileDetails": { + "additionalProperties": false, + "properties": { + "Arn": { + "type": "string" + } + }, + "type": "object" + }, + "AWS::DataZone::UserProfile.SsoUserProfileDetails": { + "additionalProperties": false, + "properties": { + "FirstName": { + "type": "string" + }, + "LastName": { + "type": "string" + }, + "Username": { + "type": "string" + } + }, + "type": "object" + }, + "AWS::DataZone::UserProfile.UserProfileDetails": { + "additionalProperties": false, + "properties": { + "Iam": { + "$ref": "#/definitions/AWS::DataZone::UserProfile.IamUserProfileDetails" + }, + "Sso": { + "$ref": "#/definitions/AWS::DataZone::UserProfile.SsoUserProfileDetails" + } + }, + "type": "object" + }, "AWS::Deadline::Farm": { "additionalProperties": false, "properties": { @@ -54542,6 +55118,9 @@ "TimeToLiveSpecification": { "$ref": "#/definitions/AWS::DynamoDB::GlobalTable.TimeToLiveSpecification" }, + "WriteOnDemandThroughputSettings": { + "$ref": "#/definitions/AWS::DynamoDB::GlobalTable.WriteOnDemandThroughputSettings" + }, "WriteProvisionedThroughputSettings": { "$ref": "#/definitions/AWS::DynamoDB::GlobalTable.WriteProvisionedThroughputSettings" } @@ -54640,6 +55219,9 @@ "Projection": { "$ref": "#/definitions/AWS::DynamoDB::GlobalTable.Projection" }, + "WriteOnDemandThroughputSettings": { + "$ref": "#/definitions/AWS::DynamoDB::GlobalTable.WriteOnDemandThroughputSettings" + }, "WriteProvisionedThroughputSettings": { "$ref": "#/definitions/AWS::DynamoDB::GlobalTable.WriteProvisionedThroughputSettings" } @@ -54729,6 +55311,15 @@ }, "type": "object" }, + "AWS::DynamoDB::GlobalTable.ReadOnDemandThroughputSettings": { + "additionalProperties": false, + "properties": { + "MaxReadRequestUnits": { + "type": "number" + } + }, + "type": "object" + }, "AWS::DynamoDB::GlobalTable.ReadProvisionedThroughputSettings": { "additionalProperties": false, "properties": { @@ -54750,6 +55341,9 @@ "IndexName": { "type": "string" }, + "ReadOnDemandThroughputSettings": { + "$ref": "#/definitions/AWS::DynamoDB::GlobalTable.ReadOnDemandThroughputSettings" + }, "ReadProvisionedThroughputSettings": { "$ref": "#/definitions/AWS::DynamoDB::GlobalTable.ReadProvisionedThroughputSettings" } @@ -54792,6 +55386,9 @@ "PointInTimeRecoverySpecification": { "$ref": "#/definitions/AWS::DynamoDB::GlobalTable.PointInTimeRecoverySpecification" }, + "ReadOnDemandThroughputSettings": { + "$ref": "#/definitions/AWS::DynamoDB::GlobalTable.ReadOnDemandThroughputSettings" + }, "ReadProvisionedThroughputSettings": { "$ref": "#/definitions/AWS::DynamoDB::GlobalTable.ReadProvisionedThroughputSettings" }, @@ -54909,6 +55506,15 @@ ], "type": "object" }, + "AWS::DynamoDB::GlobalTable.WriteOnDemandThroughputSettings": { + "additionalProperties": false, + "properties": { + "MaxWriteRequestUnits": { + "type": "number" + } + }, + "type": "object" + }, "AWS::DynamoDB::GlobalTable.WriteProvisionedThroughputSettings": { "additionalProperties": false, "properties": { @@ -54992,6 +55598,9 @@ }, "type": "array" }, + "OnDemandThroughput": { + "$ref": "#/definitions/AWS::DynamoDB::Table.OnDemandThroughput" + }, "PointInTimeRecoverySpecification": { "$ref": "#/definitions/AWS::DynamoDB::Table.PointInTimeRecoverySpecification" }, @@ -55107,6 +55716,9 @@ }, "type": "array" }, + "OnDemandThroughput": { + "$ref": "#/definitions/AWS::DynamoDB::Table.OnDemandThroughput" + }, "Projection": { "$ref": "#/definitions/AWS::DynamoDB::Table.Projection" }, @@ -55206,6 +55818,18 @@ ], "type": "object" }, + "AWS::DynamoDB::Table.OnDemandThroughput": { + "additionalProperties": false, + "properties": { + "MaxReadRequestUnits": { + "type": "number" + }, + "MaxWriteRequestUnits": { + "type": "number" + } + }, + "type": "object" + }, "AWS::DynamoDB::Table.PointInTimeRecoverySpecification": { "additionalProperties": false, "properties": { @@ -56163,6 +56787,9 @@ "BgpAsn": { "type": "number" }, + "BgpAsnExtended": { + "type": "number" + }, "CertificateArn": { "type": "string" }, @@ -58509,6 +59136,18 @@ ], "type": "object" }, + "AWS::EC2::Instance.State": { + "additionalProperties": false, + "properties": { + "Code": { + "type": "string" + }, + "Name": { + "type": "string" + } + }, + "type": "object" + }, "AWS::EC2::Instance.Volume": { "additionalProperties": false, "properties": { @@ -64565,6 +65204,7 @@ } }, "required": [ + "DestinationCidrBlock", "TransitGatewayRouteTableId" ], "type": "object" @@ -67515,6 +68155,9 @@ "properties": { "ExecuteCommandConfiguration": { "$ref": "#/definitions/AWS::ECS::Cluster.ExecuteCommandConfiguration" + }, + "ManagedStorageConfiguration": { + "$ref": "#/definitions/AWS::ECS::Cluster.ManagedStorageConfiguration" } }, "type": "object" @@ -67567,6 +68210,18 @@ }, "type": "object" }, + "AWS::ECS::Cluster.ManagedStorageConfiguration": { + "additionalProperties": false, + "properties": { + "FargateEphemeralStorageKmsKeyId": { + "type": "string" + }, + "KmsKeyId": { + "type": "string" + } + }, + "type": "object" + }, "AWS::ECS::Cluster.ServiceConnectDefaults": { "additionalProperties": false, "properties": { @@ -69919,6 +70574,12 @@ "ConfigurationValues": { "type": "string" }, + "PodIdentityAssociations": { + "items": { + "$ref": "#/definitions/AWS::EKS::Addon.PodIdentityAssociation" + }, + "type": "array" + }, "PreserveOnDelete": { "type": "boolean" }, @@ -69962,251 +70623,267 @@ ], "type": "object" }, - "AWS::EKS::Cluster": { + "AWS::EKS::Addon.PodIdentityAssociation": { "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": { - "AccessConfig": { - "$ref": "#/definitions/AWS::EKS::Cluster.AccessConfig" - }, - "EncryptionConfig": { - "items": { - "$ref": "#/definitions/AWS::EKS::Cluster.EncryptionConfig" - }, - "type": "array" - }, - "KubernetesNetworkConfig": { - "$ref": "#/definitions/AWS::EKS::Cluster.KubernetesNetworkConfig" - }, - "Logging": { - "$ref": "#/definitions/AWS::EKS::Cluster.Logging" - }, - "Name": { - "type": "string" - }, - "OutpostConfig": { - "$ref": "#/definitions/AWS::EKS::Cluster.OutpostConfig" - }, - "ResourcesVpcConfig": { - "$ref": "#/definitions/AWS::EKS::Cluster.ResourcesVpcConfig" - }, - "RoleArn": { - "type": "string" - }, - "Tags": { - "items": { - "$ref": "#/definitions/Tag" - }, - "type": "array" - }, - "Version": { - "type": "string" - } - }, - "required": [ - "ResourcesVpcConfig", - "RoleArn" - ], - "type": "object" - }, - "Type": { - "enum": [ - "AWS::EKS::Cluster" - ], - "type": "string" - }, - "UpdateReplacePolicy": { - "enum": [ - "Delete", - "Retain", - "Snapshot" - ], - "type": "string" - } - }, - "required": [ - "Type", - "Properties" - ], - "type": "object" - }, - "AWS::EKS::Cluster.AccessConfig": { - "additionalProperties": false, - "properties": { - "AuthenticationMode": { - "type": "string" - }, - "BootstrapClusterCreatorAdminPermissions": { - "type": "boolean" - } - }, - "type": "object" - }, - "AWS::EKS::Cluster.ClusterLogging": { - "additionalProperties": false, - "properties": { - "EnabledTypes": { - "items": { - "$ref": "#/definitions/AWS::EKS::Cluster.LoggingTypeConfig" - }, - "type": "array" - } - }, - "type": "object" - }, - "AWS::EKS::Cluster.ControlPlanePlacement": { - "additionalProperties": false, - "properties": { - "GroupName": { - "type": "string" - } - }, - "type": "object" - }, - "AWS::EKS::Cluster.EncryptionConfig": { - "additionalProperties": false, - "properties": { - "Provider": { - "$ref": "#/definitions/AWS::EKS::Cluster.Provider" - }, - "Resources": { - "items": { - "type": "string" - }, - "type": "array" - } - }, - "type": "object" - }, - "AWS::EKS::Cluster.KubernetesNetworkConfig": { - "additionalProperties": false, - "properties": { - "IpFamily": { - "type": "string" - }, - "ServiceIpv4Cidr": { - "type": "string" - }, - "ServiceIpv6Cidr": { - "type": "string" - } - }, - "type": "object" - }, - "AWS::EKS::Cluster.Logging": { - "additionalProperties": false, - "properties": { - "ClusterLogging": { - "$ref": "#/definitions/AWS::EKS::Cluster.ClusterLogging" - } - }, - "type": "object" - }, - "AWS::EKS::Cluster.LoggingTypeConfig": { - "additionalProperties": false, - "properties": { - "Type": { - "type": "string" - } - }, - "type": "object" - }, - "AWS::EKS::Cluster.OutpostConfig": { - "additionalProperties": false, - "properties": { - "ControlPlaneInstanceType": { + "RoleArn": { "type": "string" }, - "ControlPlanePlacement": { - "$ref": "#/definitions/AWS::EKS::Cluster.ControlPlanePlacement" - }, - "OutpostArns": { - "items": { - "type": "string" - }, - "type": "array" - } - }, - "required": [ - "ControlPlaneInstanceType", - "OutpostArns" - ], - "type": "object" - }, - "AWS::EKS::Cluster.Provider": { - "additionalProperties": false, - "properties": { - "KeyArn": { + "ServiceAccount": { "type": "string" } }, - "type": "object" - }, - "AWS::EKS::Cluster.ResourcesVpcConfig": { - "additionalProperties": false, - "properties": { - "EndpointPrivateAccess": { - "type": "boolean" - }, - "EndpointPublicAccess": { - "type": "boolean" - }, - "PublicAccessCidrs": { - "items": { - "type": "string" - }, - "type": "array" - }, - "SecurityGroupIds": { - "items": { - "type": "string" - }, - "type": "array" - }, - "SubnetIds": { - "items": { - "type": "string" - }, - "type": "array" - } - }, "required": [ - "SubnetIds" + "RoleArn", + "ServiceAccount" ], "type": "object" }, - "AWS::EKS::FargateProfile": { + "AWS::EKS::Cluster": { + "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": { + "AccessConfig": { + "$ref": "#/definitions/AWS::EKS::Cluster.AccessConfig" + }, + "EncryptionConfig": { + "items": { + "$ref": "#/definitions/AWS::EKS::Cluster.EncryptionConfig" + }, + "type": "array" + }, + "KubernetesNetworkConfig": { + "$ref": "#/definitions/AWS::EKS::Cluster.KubernetesNetworkConfig" + }, + "Logging": { + "$ref": "#/definitions/AWS::EKS::Cluster.Logging" + }, + "Name": { + "type": "string" + }, + "OutpostConfig": { + "$ref": "#/definitions/AWS::EKS::Cluster.OutpostConfig" + }, + "ResourcesVpcConfig": { + "$ref": "#/definitions/AWS::EKS::Cluster.ResourcesVpcConfig" + }, + "RoleArn": { + "type": "string" + }, + "Tags": { + "items": { + "$ref": "#/definitions/Tag" + }, + "type": "array" + }, + "Version": { + "type": "string" + } + }, + "required": [ + "ResourcesVpcConfig", + "RoleArn" + ], + "type": "object" + }, + "Type": { + "enum": [ + "AWS::EKS::Cluster" + ], + "type": "string" + }, + "UpdateReplacePolicy": { + "enum": [ + "Delete", + "Retain", + "Snapshot" + ], + "type": "string" + } + }, + "required": [ + "Type", + "Properties" + ], + "type": "object" + }, + "AWS::EKS::Cluster.AccessConfig": { + "additionalProperties": false, + "properties": { + "AuthenticationMode": { + "type": "string" + }, + "BootstrapClusterCreatorAdminPermissions": { + "type": "boolean" + } + }, + "type": "object" + }, + "AWS::EKS::Cluster.ClusterLogging": { + "additionalProperties": false, + "properties": { + "EnabledTypes": { + "items": { + "$ref": "#/definitions/AWS::EKS::Cluster.LoggingTypeConfig" + }, + "type": "array" + } + }, + "type": "object" + }, + "AWS::EKS::Cluster.ControlPlanePlacement": { + "additionalProperties": false, + "properties": { + "GroupName": { + "type": "string" + } + }, + "type": "object" + }, + "AWS::EKS::Cluster.EncryptionConfig": { + "additionalProperties": false, + "properties": { + "Provider": { + "$ref": "#/definitions/AWS::EKS::Cluster.Provider" + }, + "Resources": { + "items": { + "type": "string" + }, + "type": "array" + } + }, + "type": "object" + }, + "AWS::EKS::Cluster.KubernetesNetworkConfig": { + "additionalProperties": false, + "properties": { + "IpFamily": { + "type": "string" + }, + "ServiceIpv4Cidr": { + "type": "string" + }, + "ServiceIpv6Cidr": { + "type": "string" + } + }, + "type": "object" + }, + "AWS::EKS::Cluster.Logging": { + "additionalProperties": false, + "properties": { + "ClusterLogging": { + "$ref": "#/definitions/AWS::EKS::Cluster.ClusterLogging" + } + }, + "type": "object" + }, + "AWS::EKS::Cluster.LoggingTypeConfig": { + "additionalProperties": false, + "properties": { + "Type": { + "type": "string" + } + }, + "type": "object" + }, + "AWS::EKS::Cluster.OutpostConfig": { + "additionalProperties": false, + "properties": { + "ControlPlaneInstanceType": { + "type": "string" + }, + "ControlPlanePlacement": { + "$ref": "#/definitions/AWS::EKS::Cluster.ControlPlanePlacement" + }, + "OutpostArns": { + "items": { + "type": "string" + }, + "type": "array" + } + }, + "required": [ + "ControlPlaneInstanceType", + "OutpostArns" + ], + "type": "object" + }, + "AWS::EKS::Cluster.Provider": { + "additionalProperties": false, + "properties": { + "KeyArn": { + "type": "string" + } + }, + "type": "object" + }, + "AWS::EKS::Cluster.ResourcesVpcConfig": { + "additionalProperties": false, + "properties": { + "EndpointPrivateAccess": { + "type": "boolean" + }, + "EndpointPublicAccess": { + "type": "boolean" + }, + "PublicAccessCidrs": { + "items": { + "type": "string" + }, + "type": "array" + }, + "SecurityGroupIds": { + "items": { + "type": "string" + }, + "type": "array" + }, + "SubnetIds": { + "items": { + "type": "string" + }, + "type": "array" + } + }, + "required": [ + "SubnetIds" + ], + "type": "object" + }, + "AWS::EKS::FargateProfile": { "additionalProperties": false, "properties": { "Condition": { @@ -78514,9 +79191,18 @@ "Properties": { "additionalProperties": false, "properties": { + "DeadLetterConfig": { + "$ref": "#/definitions/AWS::Events::EventBus.DeadLetterConfig" + }, + "Description": { + "type": "string" + }, "EventSourceName": { "type": "string" }, + "KmsKeyIdentifier": { + "type": "string" + }, "Name": { "type": "string" }, @@ -78556,6 +79242,15 @@ ], "type": "object" }, + "AWS::Events::EventBus.DeadLetterConfig": { + "additionalProperties": false, + "properties": { + "Arn": { + "type": "string" + } + }, + "type": "object" + }, "AWS::Events::EventBusPolicy": { "additionalProperties": false, "properties": { @@ -80531,6 +81226,94 @@ }, "type": "object" }, + "AWS::FMS::Policy.IcmpTypeCode": { + "additionalProperties": false, + "properties": { + "Code": { + "type": "number" + }, + "Type": { + "type": "number" + } + }, + "required": [ + "Code", + "Type" + ], + "type": "object" + }, + "AWS::FMS::Policy.NetworkAclCommonPolicy": { + "additionalProperties": false, + "properties": { + "NetworkAclEntrySet": { + "$ref": "#/definitions/AWS::FMS::Policy.NetworkAclEntrySet" + } + }, + "required": [ + "NetworkAclEntrySet" + ], + "type": "object" + }, + "AWS::FMS::Policy.NetworkAclEntry": { + "additionalProperties": false, + "properties": { + "CidrBlock": { + "type": "string" + }, + "Egress": { + "type": "boolean" + }, + "IcmpTypeCode": { + "$ref": "#/definitions/AWS::FMS::Policy.IcmpTypeCode" + }, + "Ipv6CidrBlock": { + "type": "string" + }, + "PortRange": { + "$ref": "#/definitions/AWS::FMS::Policy.PortRange" + }, + "Protocol": { + "type": "string" + }, + "RuleAction": { + "type": "string" + } + }, + "required": [ + "Egress", + "Protocol", + "RuleAction" + ], + "type": "object" + }, + "AWS::FMS::Policy.NetworkAclEntrySet": { + "additionalProperties": false, + "properties": { + "FirstEntries": { + "items": { + "$ref": "#/definitions/AWS::FMS::Policy.NetworkAclEntry" + }, + "type": "array" + }, + "ForceRemediateForFirstEntries": { + "type": "boolean" + }, + "ForceRemediateForLastEntries": { + "type": "boolean" + }, + "LastEntries": { + "items": { + "$ref": "#/definitions/AWS::FMS::Policy.NetworkAclEntry" + }, + "type": "array" + } + }, + "required": [ + "ForceRemediateForFirstEntries", + "ForceRemediateForLastEntries" + ], + "type": "object" + }, "AWS::FMS::Policy.NetworkFirewallPolicy": { "additionalProperties": false, "properties": { @@ -80546,6 +81329,9 @@ "AWS::FMS::Policy.PolicyOption": { "additionalProperties": false, "properties": { + "NetworkAclCommonPolicy": { + "$ref": "#/definitions/AWS::FMS::Policy.NetworkAclCommonPolicy" + }, "NetworkFirewallPolicy": { "$ref": "#/definitions/AWS::FMS::Policy.NetworkFirewallPolicy" }, @@ -80571,6 +81357,22 @@ ], "type": "object" }, + "AWS::FMS::Policy.PortRange": { + "additionalProperties": false, + "properties": { + "From": { + "type": "number" + }, + "To": { + "type": "number" + } + }, + "required": [ + "From", + "To" + ], + "type": "object" + }, "AWS::FMS::Policy.ResourceTag": { "additionalProperties": false, "properties": { @@ -81023,6 +81825,9 @@ "ImportedFileChunkSize": { "type": "number" }, + "MetadataConfiguration": { + "$ref": "#/definitions/AWS::FSx::FileSystem.MetadataConfiguration" + }, "PerUnitStorageThroughput": { "type": "number" }, @@ -81032,6 +81837,18 @@ }, "type": "object" }, + "AWS::FSx::FileSystem.MetadataConfiguration": { + "additionalProperties": false, + "properties": { + "Iops": { + "type": "number" + }, + "Mode": { + "type": "string" + } + }, + "type": "object" + }, "AWS::FSx::FileSystem.NfsExports": { "additionalProperties": false, "properties": { @@ -85527,6 +86344,12 @@ "ConnectionName": { "type": "string" }, + "EnableAdditionalMetadata": { + "items": { + "type": "string" + }, + "type": "array" + }, "Exclusions": { "items": { "type": "string" @@ -86262,6 +87085,9 @@ "LogUri": { "type": "string" }, + "MaintenanceWindow": { + "type": "string" + }, "MaxCapacity": { "type": "number" }, @@ -116638,6 +117464,9 @@ "FunctionName": { "type": "string" }, + "Policy": { + "type": "object" + }, "ProvisionedConcurrencyConfig": { "$ref": "#/definitions/AWS::Lambda::Version.ProvisionedConcurrencyConfiguration" }, @@ -124533,9 +125362,15 @@ "LoggingConfiguration": { "$ref": "#/definitions/AWS::MWAA::Environment.LoggingConfiguration" }, + "MaxWebservers": { + "type": "number" + }, "MaxWorkers": { "type": "number" }, + "MinWebservers": { + "type": "number" + }, "MinWorkers": { "type": "number" }, @@ -125922,6 +126757,15 @@ "AvailabilityZone": { "type": "string" }, + "Maintenance": { + "$ref": "#/definitions/AWS::MediaConnect::Flow.Maintenance" + }, + "MediaStreams": { + "items": { + "$ref": "#/definitions/AWS::MediaConnect::Flow.MediaStream" + }, + "type": "array" + }, "Name": { "type": "string" }, @@ -125930,6 +126774,12 @@ }, "SourceFailoverConfig": { "$ref": "#/definitions/AWS::MediaConnect::Flow.FailoverConfig" + }, + "VpcInterfaces": { + "items": { + "$ref": "#/definitions/AWS::MediaConnect::Flow.VpcInterface" + }, + "type": "array" } }, "required": [ @@ -126013,6 +126863,33 @@ }, "type": "object" }, + "AWS::MediaConnect::Flow.Fmtp": { + "additionalProperties": false, + "properties": { + "ChannelOrder": { + "type": "string" + }, + "Colorimetry": { + "type": "string" + }, + "ExactFramerate": { + "type": "string" + }, + "Par": { + "type": "string" + }, + "Range": { + "type": "string" + }, + "ScanMode": { + "type": "string" + }, + "Tcs": { + "type": "string" + } + }, + "type": "object" + }, "AWS::MediaConnect::Flow.GatewayBridgeSource": { "additionalProperties": false, "properties": { @@ -126028,6 +126905,119 @@ ], "type": "object" }, + "AWS::MediaConnect::Flow.InputConfiguration": { + "additionalProperties": false, + "properties": { + "InputPort": { + "type": "number" + }, + "Interface": { + "$ref": "#/definitions/AWS::MediaConnect::Flow.Interface" + } + }, + "required": [ + "InputPort", + "Interface" + ], + "type": "object" + }, + "AWS::MediaConnect::Flow.Interface": { + "additionalProperties": false, + "properties": { + "Name": { + "type": "string" + } + }, + "required": [ + "Name" + ], + "type": "object" + }, + "AWS::MediaConnect::Flow.Maintenance": { + "additionalProperties": false, + "properties": { + "MaintenanceDay": { + "type": "string" + }, + "MaintenanceStartHour": { + "type": "string" + } + }, + "required": [ + "MaintenanceDay", + "MaintenanceStartHour" + ], + "type": "object" + }, + "AWS::MediaConnect::Flow.MediaStream": { + "additionalProperties": false, + "properties": { + "Attributes": { + "$ref": "#/definitions/AWS::MediaConnect::Flow.MediaStreamAttributes" + }, + "ClockRate": { + "type": "number" + }, + "Description": { + "type": "string" + }, + "Fmt": { + "type": "number" + }, + "MediaStreamId": { + "type": "number" + }, + "MediaStreamName": { + "type": "string" + }, + "MediaStreamType": { + "type": "string" + }, + "VideoFormat": { + "type": "string" + } + }, + "required": [ + "MediaStreamId", + "MediaStreamName", + "MediaStreamType" + ], + "type": "object" + }, + "AWS::MediaConnect::Flow.MediaStreamAttributes": { + "additionalProperties": false, + "properties": { + "Fmtp": { + "$ref": "#/definitions/AWS::MediaConnect::Flow.Fmtp" + }, + "Lang": { + "type": "string" + } + }, + "type": "object" + }, + "AWS::MediaConnect::Flow.MediaStreamSourceConfiguration": { + "additionalProperties": false, + "properties": { + "EncodingName": { + "type": "string" + }, + "InputConfigurations": { + "items": { + "$ref": "#/definitions/AWS::MediaConnect::Flow.InputConfiguration" + }, + "type": "array" + }, + "MediaStreamName": { + "type": "string" + } + }, + "required": [ + "EncodingName", + "MediaStreamName" + ], + "type": "object" + }, "AWS::MediaConnect::Flow.Source": { "additionalProperties": false, "properties": { @@ -126055,6 +127045,15 @@ "MaxLatency": { "type": "number" }, + "MaxSyncBuffer": { + "type": "number" + }, + "MediaStreamSourceConfigurations": { + "items": { + "$ref": "#/definitions/AWS::MediaConnect::Flow.MediaStreamSourceConfiguration" + }, + "type": "array" + }, "MinLatency": { "type": "number" }, @@ -126106,6 +127105,42 @@ ], "type": "object" }, + "AWS::MediaConnect::Flow.VpcInterface": { + "additionalProperties": false, + "properties": { + "Name": { + "type": "string" + }, + "NetworkInterfaceIds": { + "items": { + "type": "string" + }, + "type": "array" + }, + "NetworkInterfaceType": { + "type": "string" + }, + "RoleArn": { + "type": "string" + }, + "SecurityGroupIds": { + "items": { + "type": "string" + }, + "type": "array" + }, + "SubnetId": { + "type": "string" + } + }, + "required": [ + "Name", + "RoleArn", + "SecurityGroupIds", + "SubnetId" + ], + "type": "object" + }, "AWS::MediaConnect::Flow.VpcInterfaceAttachment": { "additionalProperties": false, "properties": { @@ -126297,6 +127332,12 @@ "MaxLatency": { "type": "number" }, + "MediaStreamOutputConfigurations": { + "items": { + "$ref": "#/definitions/AWS::MediaConnect::FlowOutput.MediaStreamOutputConfiguration" + }, + "type": "array" + }, "MinLatency": { "type": "number" }, @@ -126349,6 +127390,41 @@ ], "type": "object" }, + "AWS::MediaConnect::FlowOutput.DestinationConfiguration": { + "additionalProperties": false, + "properties": { + "DestinationIp": { + "type": "string" + }, + "DestinationPort": { + "type": "number" + }, + "Interface": { + "$ref": "#/definitions/AWS::MediaConnect::FlowOutput.Interface" + } + }, + "required": [ + "DestinationIp", + "DestinationPort", + "Interface" + ], + "type": "object" + }, + "AWS::MediaConnect::FlowOutput.EncodingParameters": { + "additionalProperties": false, + "properties": { + "CompressionFactor": { + "type": "number" + }, + "EncoderProfile": { + "type": "string" + } + }, + "required": [ + "CompressionFactor" + ], + "type": "object" + }, "AWS::MediaConnect::FlowOutput.Encryption": { "additionalProperties": false, "properties": { @@ -126371,6 +127447,43 @@ ], "type": "object" }, + "AWS::MediaConnect::FlowOutput.Interface": { + "additionalProperties": false, + "properties": { + "Name": { + "type": "string" + } + }, + "required": [ + "Name" + ], + "type": "object" + }, + "AWS::MediaConnect::FlowOutput.MediaStreamOutputConfiguration": { + "additionalProperties": false, + "properties": { + "DestinationConfigurations": { + "items": { + "$ref": "#/definitions/AWS::MediaConnect::FlowOutput.DestinationConfiguration" + }, + "type": "array" + }, + "EncodingName": { + "type": "string" + }, + "EncodingParameters": { + "$ref": "#/definitions/AWS::MediaConnect::FlowOutput.EncodingParameters" + }, + "MediaStreamName": { + "type": "string" + } + }, + "required": [ + "EncodingName", + "MediaStreamName" + ], + "type": "object" + }, "AWS::MediaConnect::FlowOutput.VpcInterfaceAttachment": { "additionalProperties": false, "properties": { @@ -127528,6 +128641,9 @@ "properties": { "AvailSettings": { "$ref": "#/definitions/AWS::MediaLive::Channel.AvailSettings" + }, + "Scte35SegmentationScope": { + "type": "string" } }, "type": "object" @@ -132339,6 +133455,12 @@ "ContainerType": { "type": "string" }, + "DashManifests": { + "items": { + "$ref": "#/definitions/AWS::MediaPackageV2::OriginEndpoint.DashManifestConfiguration" + }, + "type": "array" + }, "Description": { "type": "string" }, @@ -132398,6 +133520,63 @@ ], "type": "object" }, + "AWS::MediaPackageV2::OriginEndpoint.DashManifestConfiguration": { + "additionalProperties": false, + "properties": { + "DrmSignaling": { + "type": "string" + }, + "FilterConfiguration": { + "$ref": "#/definitions/AWS::MediaPackageV2::OriginEndpoint.FilterConfiguration" + }, + "ManifestName": { + "type": "string" + }, + "ManifestWindowSeconds": { + "type": "number" + }, + "MinBufferTimeSeconds": { + "type": "number" + }, + "MinUpdatePeriodSeconds": { + "type": "number" + }, + "PeriodTriggers": { + "items": { + "type": "string" + }, + "type": "array" + }, + "ScteDash": { + "$ref": "#/definitions/AWS::MediaPackageV2::OriginEndpoint.ScteDash" + }, + "SegmentTemplateFormat": { + "type": "string" + }, + "SuggestedPresentationDelaySeconds": { + "type": "number" + }, + "UtcTiming": { + "$ref": "#/definitions/AWS::MediaPackageV2::OriginEndpoint.DashUtcTiming" + } + }, + "required": [ + "ManifestName" + ], + "type": "object" + }, + "AWS::MediaPackageV2::OriginEndpoint.DashUtcTiming": { + "additionalProperties": false, + "properties": { + "TimingMode": { + "type": "string" + }, + "TimingSource": { + "type": "string" + } + }, + "type": "object" + }, "AWS::MediaPackageV2::OriginEndpoint.Encryption": { "additionalProperties": false, "properties": { @@ -132538,6 +133717,15 @@ }, "type": "object" }, + "AWS::MediaPackageV2::OriginEndpoint.ScteDash": { + "additionalProperties": false, + "properties": { + "AdMarkerDash": { + "type": "string" + } + }, + "type": "object" + }, "AWS::MediaPackageV2::OriginEndpoint.ScteHls": { "additionalProperties": false, "properties": { @@ -133330,6 +134518,9 @@ "AWS::MediaTailor::PlaybackConfiguration.AvailSuppression": { "additionalProperties": false, "properties": { + "FillPolicy": { + "type": "string" + }, "Mode": { "type": "string" }, @@ -134670,7 +135861,7 @@ ], "type": "object" }, - "AWS::NeptuneGraph::Graph": { + "AWS::Neptune::EventSubscription": { "additionalProperties": false, "properties": { "Condition": { @@ -134705,39 +135896,33 @@ "Properties": { "additionalProperties": false, "properties": { - "DeletionProtection": { + "Enabled": { "type": "boolean" }, - "GraphName": { - "type": "string" - }, - "ProvisionedMemory": { - "type": "number" - }, - "PublicConnectivity": { - "type": "boolean" + "EventCategories": { + "items": { + "type": "string" + }, + "type": "array" }, - "ReplicaCount": { - "type": "number" + "SnsTopicArn": { + "type": "string" }, - "Tags": { + "SourceIds": { "items": { - "$ref": "#/definitions/Tag" + "type": "string" }, "type": "array" }, - "VectorSearchConfiguration": { - "$ref": "#/definitions/AWS::NeptuneGraph::Graph.VectorSearchConfiguration" + "SourceType": { + "type": "string" } }, - "required": [ - "ProvisionedMemory" - ], "type": "object" }, "Type": { "enum": [ - "AWS::NeptuneGraph::Graph" + "AWS::Neptune::EventSubscription" ], "type": "string" }, @@ -134751,24 +135936,11 @@ } }, "required": [ - "Type", - "Properties" - ], - "type": "object" - }, - "AWS::NeptuneGraph::Graph.VectorSearchConfiguration": { - "additionalProperties": false, - "properties": { - "VectorSearchDimension": { - "type": "number" - } - }, - "required": [ - "VectorSearchDimension" + "Type" ], "type": "object" }, - "AWS::NeptuneGraph::PrivateGraphEndpoint": { + "AWS::NeptuneGraph::Graph": { "additionalProperties": false, "properties": { "Condition": { @@ -134803,34 +135975,39 @@ "Properties": { "additionalProperties": false, "properties": { - "GraphIdentifier": { + "DeletionProtection": { + "type": "boolean" + }, + "GraphName": { "type": "string" }, - "SecurityGroupIds": { - "items": { - "type": "string" - }, - "type": "array" + "ProvisionedMemory": { + "type": "number" }, - "SubnetIds": { + "PublicConnectivity": { + "type": "boolean" + }, + "ReplicaCount": { + "type": "number" + }, + "Tags": { "items": { - "type": "string" + "$ref": "#/definitions/Tag" }, "type": "array" }, - "VpcId": { - "type": "string" + "VectorSearchConfiguration": { + "$ref": "#/definitions/AWS::NeptuneGraph::Graph.VectorSearchConfiguration" } }, "required": [ - "GraphIdentifier", - "VpcId" + "ProvisionedMemory" ], "type": "object" }, "Type": { "enum": [ - "AWS::NeptuneGraph::PrivateGraphEndpoint" + "AWS::NeptuneGraph::Graph" ], "type": "string" }, @@ -134849,7 +136026,19 @@ ], "type": "object" }, - "AWS::NetworkFirewall::Firewall": { + "AWS::NeptuneGraph::Graph.VectorSearchConfiguration": { + "additionalProperties": false, + "properties": { + "VectorSearchDimension": { + "type": "number" + } + }, + "required": [ + "VectorSearchDimension" + ], + "type": "object" + }, + "AWS::NeptuneGraph::PrivateGraphEndpoint": { "additionalProperties": false, "properties": { "Condition": { @@ -134884,33 +136073,18 @@ "Properties": { "additionalProperties": false, "properties": { - "DeleteProtection": { - "type": "boolean" - }, - "Description": { - "type": "string" - }, - "FirewallName": { - "type": "string" - }, - "FirewallPolicyArn": { + "GraphIdentifier": { "type": "string" }, - "FirewallPolicyChangeProtection": { - "type": "boolean" - }, - "SubnetChangeProtection": { - "type": "boolean" - }, - "SubnetMappings": { + "SecurityGroupIds": { "items": { - "$ref": "#/definitions/AWS::NetworkFirewall::Firewall.SubnetMapping" + "type": "string" }, "type": "array" }, - "Tags": { + "SubnetIds": { "items": { - "$ref": "#/definitions/Tag" + "type": "string" }, "type": "array" }, @@ -134919,16 +136093,14 @@ } }, "required": [ - "FirewallName", - "FirewallPolicyArn", - "SubnetMappings", + "GraphIdentifier", "VpcId" ], "type": "object" }, "Type": { "enum": [ - "AWS::NetworkFirewall::Firewall" + "AWS::NeptuneGraph::PrivateGraphEndpoint" ], "type": "string" }, @@ -134947,22 +136119,120 @@ ], "type": "object" }, - "AWS::NetworkFirewall::Firewall.SubnetMapping": { - "additionalProperties": false, - "properties": { - "IPAddressType": { - "type": "string" - }, - "SubnetId": { - "type": "string" - } - }, - "required": [ - "SubnetId" - ], - "type": "object" - }, - "AWS::NetworkFirewall::FirewallPolicy": { + "AWS::NetworkFirewall::Firewall": { + "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": { + "DeleteProtection": { + "type": "boolean" + }, + "Description": { + "type": "string" + }, + "FirewallName": { + "type": "string" + }, + "FirewallPolicyArn": { + "type": "string" + }, + "FirewallPolicyChangeProtection": { + "type": "boolean" + }, + "SubnetChangeProtection": { + "type": "boolean" + }, + "SubnetMappings": { + "items": { + "$ref": "#/definitions/AWS::NetworkFirewall::Firewall.SubnetMapping" + }, + "type": "array" + }, + "Tags": { + "items": { + "$ref": "#/definitions/Tag" + }, + "type": "array" + }, + "VpcId": { + "type": "string" + } + }, + "required": [ + "FirewallName", + "FirewallPolicyArn", + "SubnetMappings", + "VpcId" + ], + "type": "object" + }, + "Type": { + "enum": [ + "AWS::NetworkFirewall::Firewall" + ], + "type": "string" + }, + "UpdateReplacePolicy": { + "enum": [ + "Delete", + "Retain", + "Snapshot" + ], + "type": "string" + } + }, + "required": [ + "Type", + "Properties" + ], + "type": "object" + }, + "AWS::NetworkFirewall::Firewall.SubnetMapping": { + "additionalProperties": false, + "properties": { + "IPAddressType": { + "type": "string" + }, + "SubnetId": { + "type": "string" + } + }, + "required": [ + "SubnetId" + ], + "type": "object" + }, + "AWS::NetworkFirewall::FirewallPolicy": { "additionalProperties": false, "properties": { "Condition": { @@ -146970,6 +148240,26 @@ }, "type": "object" }, + "AWS::Pipes::Pipe.DimensionMapping": { + "additionalProperties": false, + "properties": { + "DimensionName": { + "type": "string" + }, + "DimensionValue": { + "type": "string" + }, + "DimensionValueType": { + "type": "string" + } + }, + "required": [ + "DimensionName", + "DimensionValue", + "DimensionValueType" + ], + "type": "object" + }, "AWS::Pipes::Pipe.EcsContainerOverride": { "additionalProperties": false, "properties": { @@ -147167,6 +148457,45 @@ }, "type": "object" }, + "AWS::Pipes::Pipe.MultiMeasureAttributeMapping": { + "additionalProperties": false, + "properties": { + "MeasureValue": { + "type": "string" + }, + "MeasureValueType": { + "type": "string" + }, + "MultiMeasureAttributeName": { + "type": "string" + } + }, + "required": [ + "MeasureValue", + "MeasureValueType", + "MultiMeasureAttributeName" + ], + "type": "object" + }, + "AWS::Pipes::Pipe.MultiMeasureMapping": { + "additionalProperties": false, + "properties": { + "MultiMeasureAttributeMappings": { + "items": { + "$ref": "#/definitions/AWS::Pipes::Pipe.MultiMeasureAttributeMapping" + }, + "type": "array" + }, + "MultiMeasureName": { + "type": "string" + } + }, + "required": [ + "MultiMeasureAttributeMappings", + "MultiMeasureName" + ], + "type": "object" + }, "AWS::Pipes::Pipe.NetworkConfiguration": { "additionalProperties": false, "properties": { @@ -147697,6 +149026,9 @@ }, "StepFunctionStateMachineParameters": { "$ref": "#/definitions/AWS::Pipes::Pipe.PipeTargetStateMachineParameters" + }, + "TimestreamParameters": { + "$ref": "#/definitions/AWS::Pipes::Pipe.PipeTargetTimestreamParameters" } }, "type": "object" @@ -147765,6 +149097,50 @@ }, "type": "object" }, + "AWS::Pipes::Pipe.PipeTargetTimestreamParameters": { + "additionalProperties": false, + "properties": { + "DimensionMappings": { + "items": { + "$ref": "#/definitions/AWS::Pipes::Pipe.DimensionMapping" + }, + "type": "array" + }, + "EpochTimeUnit": { + "type": "string" + }, + "MultiMeasureMappings": { + "items": { + "$ref": "#/definitions/AWS::Pipes::Pipe.MultiMeasureMapping" + }, + "type": "array" + }, + "SingleMeasureMappings": { + "items": { + "$ref": "#/definitions/AWS::Pipes::Pipe.SingleMeasureMapping" + }, + "type": "array" + }, + "TimeFieldType": { + "type": "string" + }, + "TimeValue": { + "type": "string" + }, + "TimestampFormat": { + "type": "string" + }, + "VersionValue": { + "type": "string" + } + }, + "required": [ + "DimensionMappings", + "TimeValue", + "VersionValue" + ], + "type": "object" + }, "AWS::Pipes::Pipe.PlacementConstraint": { "additionalProperties": false, "properties": { @@ -147859,89 +149235,109 @@ }, "type": "object" }, - "AWS::Proton::EnvironmentAccountConnection": { + "AWS::Pipes::Pipe.SingleMeasureMapping": { "additionalProperties": false, "properties": { - "Condition": { - "type": "string" - }, - "DeletionPolicy": { - "enum": [ - "Delete", - "Retain", - "Snapshot" - ], + "MeasureName": { "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": { - "CodebuildRoleArn": { - "type": "string" - }, - "ComponentRoleArn": { - "type": "string" - }, - "EnvironmentAccountId": { - "type": "string" - }, - "EnvironmentName": { - "type": "string" - }, - "ManagementAccountId": { - "type": "string" - }, - "RoleArn": { - "type": "string" - }, - "Tags": { - "items": { - "$ref": "#/definitions/Tag" - }, - "type": "array" - } - }, - "type": "object" - }, - "Type": { - "enum": [ - "AWS::Proton::EnvironmentAccountConnection" - ], + "MeasureValue": { "type": "string" }, - "UpdateReplacePolicy": { - "enum": [ - "Delete", - "Retain", - "Snapshot" - ], + "MeasureValueType": { "type": "string" } }, "required": [ - "Type" + "MeasureName", + "MeasureValue", + "MeasureValueType" ], "type": "object" }, - "AWS::Proton::EnvironmentTemplate": { + "AWS::Proton::EnvironmentAccountConnection": { + "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": { + "CodebuildRoleArn": { + "type": "string" + }, + "ComponentRoleArn": { + "type": "string" + }, + "EnvironmentAccountId": { + "type": "string" + }, + "EnvironmentName": { + "type": "string" + }, + "ManagementAccountId": { + "type": "string" + }, + "RoleArn": { + "type": "string" + }, + "Tags": { + "items": { + "$ref": "#/definitions/Tag" + }, + "type": "array" + } + }, + "type": "object" + }, + "Type": { + "enum": [ + "AWS::Proton::EnvironmentAccountConnection" + ], + "type": "string" + }, + "UpdateReplacePolicy": { + "enum": [ + "Delete", + "Retain", + "Snapshot" + ], + "type": "string" + } + }, + "required": [ + "Type" + ], + "type": "object" + }, + "AWS::Proton::EnvironmentTemplate": { "additionalProperties": false, "properties": { "Condition": { @@ -148055,19 +149451,875 @@ "Properties": { "additionalProperties": false, "properties": { - "Description": { + "Description": { + "type": "string" + }, + "DisplayName": { + "type": "string" + }, + "EncryptionKey": { + "type": "string" + }, + "Name": { + "type": "string" + }, + "PipelineProvisioning": { + "type": "string" + }, + "Tags": { + "items": { + "$ref": "#/definitions/Tag" + }, + "type": "array" + } + }, + "type": "object" + }, + "Type": { + "enum": [ + "AWS::Proton::ServiceTemplate" + ], + "type": "string" + }, + "UpdateReplacePolicy": { + "enum": [ + "Delete", + "Retain", + "Snapshot" + ], + "type": "string" + } + }, + "required": [ + "Type" + ], + "type": "object" + }, + "AWS::QBusiness::Application": { + "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": { + "AttachmentsConfiguration": { + "$ref": "#/definitions/AWS::QBusiness::Application.AttachmentsConfiguration" + }, + "Description": { + "type": "string" + }, + "DisplayName": { + "type": "string" + }, + "EncryptionConfiguration": { + "$ref": "#/definitions/AWS::QBusiness::Application.EncryptionConfiguration" + }, + "IdentityCenterInstanceArn": { + "type": "string" + }, + "RoleArn": { + "type": "string" + }, + "Tags": { + "items": { + "$ref": "#/definitions/Tag" + }, + "type": "array" + } + }, + "required": [ + "DisplayName" + ], + "type": "object" + }, + "Type": { + "enum": [ + "AWS::QBusiness::Application" + ], + "type": "string" + }, + "UpdateReplacePolicy": { + "enum": [ + "Delete", + "Retain", + "Snapshot" + ], + "type": "string" + } + }, + "required": [ + "Type", + "Properties" + ], + "type": "object" + }, + "AWS::QBusiness::Application.AttachmentsConfiguration": { + "additionalProperties": false, + "properties": { + "AttachmentsControlMode": { + "type": "string" + } + }, + "required": [ + "AttachmentsControlMode" + ], + "type": "object" + }, + "AWS::QBusiness::Application.EncryptionConfiguration": { + "additionalProperties": false, + "properties": { + "KmsKeyId": { + "type": "string" + } + }, + "type": "object" + }, + "AWS::QBusiness::DataSource": { + "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": { + "ApplicationId": { + "type": "string" + }, + "Configuration": { + "type": "object" + }, + "Description": { + "type": "string" + }, + "DisplayName": { + "type": "string" + }, + "DocumentEnrichmentConfiguration": { + "$ref": "#/definitions/AWS::QBusiness::DataSource.DocumentEnrichmentConfiguration" + }, + "IndexId": { + "type": "string" + }, + "RoleArn": { + "type": "string" + }, + "SyncSchedule": { + "type": "string" + }, + "Tags": { + "items": { + "$ref": "#/definitions/Tag" + }, + "type": "array" + }, + "VpcConfiguration": { + "$ref": "#/definitions/AWS::QBusiness::DataSource.DataSourceVpcConfiguration" + } + }, + "required": [ + "ApplicationId", + "Configuration", + "DisplayName", + "IndexId" + ], + "type": "object" + }, + "Type": { + "enum": [ + "AWS::QBusiness::DataSource" + ], + "type": "string" + }, + "UpdateReplacePolicy": { + "enum": [ + "Delete", + "Retain", + "Snapshot" + ], + "type": "string" + } + }, + "required": [ + "Type", + "Properties" + ], + "type": "object" + }, + "AWS::QBusiness::DataSource.DataSourceVpcConfiguration": { + "additionalProperties": false, + "properties": { + "SecurityGroupIds": { + "items": { + "type": "string" + }, + "type": "array" + }, + "SubnetIds": { + "items": { + "type": "string" + }, + "type": "array" + } + }, + "required": [ + "SecurityGroupIds", + "SubnetIds" + ], + "type": "object" + }, + "AWS::QBusiness::DataSource.DocumentAttributeCondition": { + "additionalProperties": false, + "properties": { + "Key": { + "type": "string" + }, + "Operator": { + "type": "string" + }, + "Value": { + "$ref": "#/definitions/AWS::QBusiness::DataSource.DocumentAttributeValue" + } + }, + "required": [ + "Key", + "Operator" + ], + "type": "object" + }, + "AWS::QBusiness::DataSource.DocumentAttributeTarget": { + "additionalProperties": false, + "properties": { + "AttributeValueOperator": { + "type": "string" + }, + "Key": { + "type": "string" + }, + "Value": { + "$ref": "#/definitions/AWS::QBusiness::DataSource.DocumentAttributeValue" + } + }, + "required": [ + "Key" + ], + "type": "object" + }, + "AWS::QBusiness::DataSource.DocumentAttributeValue": { + "additionalProperties": false, + "properties": { + "DateValue": { + "type": "string" + }, + "LongValue": { + "type": "number" + }, + "StringListValue": { + "items": { + "type": "string" + }, + "type": "array" + }, + "StringValue": { + "type": "string" + } + }, + "type": "object" + }, + "AWS::QBusiness::DataSource.DocumentEnrichmentConfiguration": { + "additionalProperties": false, + "properties": { + "InlineConfigurations": { + "items": { + "$ref": "#/definitions/AWS::QBusiness::DataSource.InlineDocumentEnrichmentConfiguration" + }, + "type": "array" + }, + "PostExtractionHookConfiguration": { + "$ref": "#/definitions/AWS::QBusiness::DataSource.HookConfiguration" + }, + "PreExtractionHookConfiguration": { + "$ref": "#/definitions/AWS::QBusiness::DataSource.HookConfiguration" + } + }, + "type": "object" + }, + "AWS::QBusiness::DataSource.HookConfiguration": { + "additionalProperties": false, + "properties": { + "InvocationCondition": { + "$ref": "#/definitions/AWS::QBusiness::DataSource.DocumentAttributeCondition" + }, + "LambdaArn": { + "type": "string" + }, + "RoleArn": { + "type": "string" + }, + "S3BucketName": { + "type": "string" + } + }, + "type": "object" + }, + "AWS::QBusiness::DataSource.InlineDocumentEnrichmentConfiguration": { + "additionalProperties": false, + "properties": { + "Condition": { + "$ref": "#/definitions/AWS::QBusiness::DataSource.DocumentAttributeCondition" + }, + "DocumentContentOperator": { + "type": "string" + }, + "Target": { + "$ref": "#/definitions/AWS::QBusiness::DataSource.DocumentAttributeTarget" + } + }, + "type": "object" + }, + "AWS::QBusiness::Index": { + "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": { + "ApplicationId": { + "type": "string" + }, + "CapacityConfiguration": { + "$ref": "#/definitions/AWS::QBusiness::Index.IndexCapacityConfiguration" + }, + "Description": { + "type": "string" + }, + "DisplayName": { + "type": "string" + }, + "DocumentAttributeConfigurations": { + "items": { + "$ref": "#/definitions/AWS::QBusiness::Index.DocumentAttributeConfiguration" + }, + "type": "array" + }, + "Tags": { + "items": { + "$ref": "#/definitions/Tag" + }, + "type": "array" + }, + "Type": { + "type": "string" + } + }, + "required": [ + "ApplicationId", + "DisplayName" + ], + "type": "object" + }, + "Type": { + "enum": [ + "AWS::QBusiness::Index" + ], + "type": "string" + }, + "UpdateReplacePolicy": { + "enum": [ + "Delete", + "Retain", + "Snapshot" + ], + "type": "string" + } + }, + "required": [ + "Type", + "Properties" + ], + "type": "object" + }, + "AWS::QBusiness::Index.DocumentAttributeConfiguration": { + "additionalProperties": false, + "properties": { + "Name": { + "type": "string" + }, + "Search": { + "type": "string" + }, + "Type": { + "type": "string" + } + }, + "type": "object" + }, + "AWS::QBusiness::Index.IndexCapacityConfiguration": { + "additionalProperties": false, + "properties": { + "Units": { + "type": "number" + } + }, + "type": "object" + }, + "AWS::QBusiness::Index.IndexStatistics": { + "additionalProperties": false, + "properties": { + "TextDocumentStatistics": { + "$ref": "#/definitions/AWS::QBusiness::Index.TextDocumentStatistics" + } + }, + "type": "object" + }, + "AWS::QBusiness::Index.TextDocumentStatistics": { + "additionalProperties": false, + "properties": { + "IndexedTextBytes": { + "type": "number" + }, + "IndexedTextDocumentCount": { + "type": "number" + } + }, + "type": "object" + }, + "AWS::QBusiness::Plugin": { + "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": { + "ApplicationId": { + "type": "string" + }, + "AuthConfiguration": { + "$ref": "#/definitions/AWS::QBusiness::Plugin.PluginAuthConfiguration" + }, + "CustomPluginConfiguration": { + "$ref": "#/definitions/AWS::QBusiness::Plugin.CustomPluginConfiguration" + }, + "DisplayName": { + "type": "string" + }, + "ServerUrl": { + "type": "string" + }, + "State": { + "type": "string" + }, + "Tags": { + "items": { + "$ref": "#/definitions/Tag" + }, + "type": "array" + }, + "Type": { + "type": "string" + } + }, + "required": [ + "ApplicationId", + "AuthConfiguration", + "DisplayName", + "Type" + ], + "type": "object" + }, + "Type": { + "enum": [ + "AWS::QBusiness::Plugin" + ], + "type": "string" + }, + "UpdateReplacePolicy": { + "enum": [ + "Delete", + "Retain", + "Snapshot" + ], + "type": "string" + } + }, + "required": [ + "Type", + "Properties" + ], + "type": "object" + }, + "AWS::QBusiness::Plugin.APISchema": { + "additionalProperties": false, + "properties": { + "Payload": { + "type": "string" + }, + "S3": { + "$ref": "#/definitions/AWS::QBusiness::Plugin.S3" + } + }, + "type": "object" + }, + "AWS::QBusiness::Plugin.BasicAuthConfiguration": { + "additionalProperties": false, + "properties": { + "RoleArn": { + "type": "string" + }, + "SecretArn": { + "type": "string" + } + }, + "required": [ + "RoleArn", + "SecretArn" + ], + "type": "object" + }, + "AWS::QBusiness::Plugin.CustomPluginConfiguration": { + "additionalProperties": false, + "properties": { + "ApiSchema": { + "$ref": "#/definitions/AWS::QBusiness::Plugin.APISchema" + }, + "ApiSchemaType": { + "type": "string" + }, + "Description": { + "type": "string" + } + }, + "required": [ + "ApiSchema", + "ApiSchemaType", + "Description" + ], + "type": "object" + }, + "AWS::QBusiness::Plugin.OAuth2ClientCredentialConfiguration": { + "additionalProperties": false, + "properties": { + "RoleArn": { + "type": "string" + }, + "SecretArn": { + "type": "string" + } + }, + "required": [ + "RoleArn", + "SecretArn" + ], + "type": "object" + }, + "AWS::QBusiness::Plugin.PluginAuthConfiguration": { + "additionalProperties": false, + "properties": { + "BasicAuthConfiguration": { + "$ref": "#/definitions/AWS::QBusiness::Plugin.BasicAuthConfiguration" + }, + "NoAuthConfiguration": { + "type": "object" + }, + "OAuth2ClientCredentialConfiguration": { + "$ref": "#/definitions/AWS::QBusiness::Plugin.OAuth2ClientCredentialConfiguration" + } + }, + "type": "object" + }, + "AWS::QBusiness::Plugin.S3": { + "additionalProperties": false, + "properties": { + "Bucket": { + "type": "string" + }, + "Key": { + "type": "string" + } + }, + "required": [ + "Bucket", + "Key" + ], + "type": "object" + }, + "AWS::QBusiness::Retriever": { + "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": { + "ApplicationId": { "type": "string" }, + "Configuration": { + "$ref": "#/definitions/AWS::QBusiness::Retriever.RetrieverConfiguration" + }, "DisplayName": { "type": "string" }, - "EncryptionKey": { + "RoleArn": { "type": "string" }, - "Name": { + "Tags": { + "items": { + "$ref": "#/definitions/Tag" + }, + "type": "array" + }, + "Type": { + "type": "string" + } + }, + "required": [ + "ApplicationId", + "Configuration", + "DisplayName", + "Type" + ], + "type": "object" + }, + "Type": { + "enum": [ + "AWS::QBusiness::Retriever" + ], + "type": "string" + }, + "UpdateReplacePolicy": { + "enum": [ + "Delete", + "Retain", + "Snapshot" + ], + "type": "string" + } + }, + "required": [ + "Type", + "Properties" + ], + "type": "object" + }, + "AWS::QBusiness::Retriever.KendraIndexConfiguration": { + "additionalProperties": false, + "properties": { + "IndexId": { + "type": "string" + } + }, + "required": [ + "IndexId" + ], + "type": "object" + }, + "AWS::QBusiness::Retriever.NativeIndexConfiguration": { + "additionalProperties": false, + "properties": { + "IndexId": { + "type": "string" + } + }, + "required": [ + "IndexId" + ], + "type": "object" + }, + "AWS::QBusiness::Retriever.RetrieverConfiguration": { + "additionalProperties": false, + "properties": { + "KendraIndexConfiguration": { + "$ref": "#/definitions/AWS::QBusiness::Retriever.KendraIndexConfiguration" + }, + "NativeIndexConfiguration": { + "$ref": "#/definitions/AWS::QBusiness::Retriever.NativeIndexConfiguration" + } + }, + "type": "object" + }, + "AWS::QBusiness::WebExperience": { + "additionalProperties": false, + "properties": { + "Condition": { + "type": "string" + }, + "DeletionPolicy": { + "enum": [ + "Delete", + "Retain", + "Snapshot" + ], + "type": "string" + }, + "DependsOn": { + "anyOf": [ + { + "pattern": "^[a-zA-Z0-9]+$", "type": "string" }, - "PipelineProvisioning": { + { + "items": { + "pattern": "^[a-zA-Z0-9]+$", + "type": "string" + }, + "type": "array" + } + ] + }, + "Metadata": { + "type": "object" + }, + "Properties": { + "additionalProperties": false, + "properties": { + "ApplicationId": { + "type": "string" + }, + "RoleArn": { + "type": "string" + }, + "SamplePromptsControlMode": { + "type": "string" + }, + "Subtitle": { "type": "string" }, "Tags": { @@ -148075,13 +150327,22 @@ "$ref": "#/definitions/Tag" }, "type": "array" + }, + "Title": { + "type": "string" + }, + "WelcomeMessage": { + "type": "string" } }, + "required": [ + "ApplicationId" + ], "type": "object" }, "Type": { "enum": [ - "AWS::Proton::ServiceTemplate" + "AWS::QBusiness::WebExperience" ], "type": "string" }, @@ -148095,7 +150356,8 @@ } }, "required": [ - "Type" + "Type", + "Properties" ], "type": "object" }, @@ -157127,6 +159389,15 @@ }, "type": "object" }, + "AWS::QuickSight::Analysis.WaterfallChartColorConfiguration": { + "additionalProperties": false, + "properties": { + "GroupColorConfiguration": { + "$ref": "#/definitions/AWS::QuickSight::Analysis.WaterfallChartGroupColorConfiguration" + } + }, + "type": "object" + }, "AWS::QuickSight::Analysis.WaterfallChartConfiguration": { "additionalProperties": false, "properties": { @@ -157136,6 +159407,9 @@ "CategoryAxisLabelOptions": { "$ref": "#/definitions/AWS::QuickSight::Analysis.ChartAxisLabelOptions" }, + "ColorConfiguration": { + "$ref": "#/definitions/AWS::QuickSight::Analysis.WaterfallChartColorConfiguration" + }, "DataLabels": { "$ref": "#/definitions/AWS::QuickSight::Analysis.DataLabelOptions" }, @@ -157172,6 +159446,21 @@ }, "type": "object" }, + "AWS::QuickSight::Analysis.WaterfallChartGroupColorConfiguration": { + "additionalProperties": false, + "properties": { + "NegativeBarColor": { + "type": "string" + }, + "PositiveBarColor": { + "type": "string" + }, + "TotalBarColor": { + "type": "string" + } + }, + "type": "object" + }, "AWS::QuickSight::Analysis.WaterfallChartOptions": { "additionalProperties": false, "properties": { @@ -166432,6 +168721,15 @@ }, "type": "object" }, + "AWS::QuickSight::Dashboard.WaterfallChartColorConfiguration": { + "additionalProperties": false, + "properties": { + "GroupColorConfiguration": { + "$ref": "#/definitions/AWS::QuickSight::Dashboard.WaterfallChartGroupColorConfiguration" + } + }, + "type": "object" + }, "AWS::QuickSight::Dashboard.WaterfallChartConfiguration": { "additionalProperties": false, "properties": { @@ -166441,6 +168739,9 @@ "CategoryAxisLabelOptions": { "$ref": "#/definitions/AWS::QuickSight::Dashboard.ChartAxisLabelOptions" }, + "ColorConfiguration": { + "$ref": "#/definitions/AWS::QuickSight::Dashboard.WaterfallChartColorConfiguration" + }, "DataLabels": { "$ref": "#/definitions/AWS::QuickSight::Dashboard.DataLabelOptions" }, @@ -166477,6 +168778,21 @@ }, "type": "object" }, + "AWS::QuickSight::Dashboard.WaterfallChartGroupColorConfiguration": { + "additionalProperties": false, + "properties": { + "NegativeBarColor": { + "type": "string" + }, + "PositiveBarColor": { + "type": "string" + }, + "TotalBarColor": { + "type": "string" + } + }, + "type": "object" + }, "AWS::QuickSight::Dashboard.WaterfallChartOptions": { "additionalProperties": false, "properties": { @@ -166968,6 +169284,9 @@ "$ref": "#/definitions/AWS::QuickSight::DataSet.RefreshConfiguration" } }, + "required": [ + "RefreshConfiguration" + ], "type": "object" }, "AWS::QuickSight::DataSet.DataSetUsageConfiguration": { @@ -167129,6 +169448,9 @@ "$ref": "#/definitions/AWS::QuickSight::DataSet.LookbackWindow" } }, + "required": [ + "LookbackWindow" + ], "type": "object" }, "AWS::QuickSight::DataSet.IngestionWaitPolicy": { @@ -167286,6 +169608,11 @@ "type": "string" } }, + "required": [ + "ColumnName", + "Size", + "SizeUnit" + ], "type": "object" }, "AWS::QuickSight::DataSet.NewDefaultValues": { @@ -167391,6 +169718,9 @@ "$ref": "#/definitions/AWS::QuickSight::DataSet.IncrementalRefresh" } }, + "required": [ + "IncrementalRefresh" + ], "type": "object" }, "AWS::QuickSight::DataSet.RelationalTable": { @@ -167624,10 +169954,32 @@ }, "TagColumnOperation": { "$ref": "#/definitions/AWS::QuickSight::DataSet.TagColumnOperation" + }, + "UntagColumnOperation": { + "$ref": "#/definitions/AWS::QuickSight::DataSet.UntagColumnOperation" } }, "type": "object" }, + "AWS::QuickSight::DataSet.UntagColumnOperation": { + "additionalProperties": false, + "properties": { + "ColumnName": { + "type": "string" + }, + "TagNames": { + "items": { + "type": "string" + }, + "type": "array" + } + }, + "required": [ + "ColumnName", + "TagNames" + ], + "type": "object" + }, "AWS::QuickSight::DataSet.UploadSettings": { "additionalProperties": false, "properties": { @@ -167730,6 +170082,10 @@ "$ref": "#/definitions/AWS::QuickSight::DataSource.VpcConnectionProperties" } }, + "required": [ + "Name", + "Type" + ], "type": "object" }, "Type": { @@ -167748,7 +170104,8 @@ } }, "required": [ - "Type" + "Type", + "Properties" ], "type": "object" }, @@ -167963,6 +170320,15 @@ ], "type": "object" }, + "AWS::QuickSight::DataSource.IdentityCenterConfiguration": { + "additionalProperties": false, + "properties": { + "EnableIdentityPropagation": { + "type": "boolean" + } + }, + "type": "object" + }, "AWS::QuickSight::DataSource.ManifestFileLocation": { "additionalProperties": false, "properties": { @@ -168095,6 +170461,30 @@ ], "type": "object" }, + "AWS::QuickSight::DataSource.RedshiftIAMParameters": { + "additionalProperties": false, + "properties": { + "AutoCreateDatabaseUser": { + "type": "boolean" + }, + "DatabaseGroups": { + "items": { + "type": "string" + }, + "type": "array" + }, + "DatabaseUser": { + "type": "string" + }, + "RoleArn": { + "type": "string" + } + }, + "required": [ + "RoleArn" + ], + "type": "object" + }, "AWS::QuickSight::DataSource.RedshiftParameters": { "additionalProperties": false, "properties": { @@ -168107,6 +170497,12 @@ "Host": { "type": "string" }, + "IAMParameters": { + "$ref": "#/definitions/AWS::QuickSight::DataSource.RedshiftIAMParameters" + }, + "IdentityCenterConfiguration": { + "$ref": "#/definitions/AWS::QuickSight::DataSource.IdentityCenterConfiguration" + }, "Port": { "type": "number" } @@ -168127,6 +170523,9 @@ }, "Principal": { "type": "string" + }, + "Resource": { + "type": "string" } }, "required": [ @@ -177236,6 +179635,15 @@ }, "type": "object" }, + "AWS::QuickSight::Template.WaterfallChartColorConfiguration": { + "additionalProperties": false, + "properties": { + "GroupColorConfiguration": { + "$ref": "#/definitions/AWS::QuickSight::Template.WaterfallChartGroupColorConfiguration" + } + }, + "type": "object" + }, "AWS::QuickSight::Template.WaterfallChartConfiguration": { "additionalProperties": false, "properties": { @@ -177245,6 +179653,9 @@ "CategoryAxisLabelOptions": { "$ref": "#/definitions/AWS::QuickSight::Template.ChartAxisLabelOptions" }, + "ColorConfiguration": { + "$ref": "#/definitions/AWS::QuickSight::Template.WaterfallChartColorConfiguration" + }, "DataLabels": { "$ref": "#/definitions/AWS::QuickSight::Template.DataLabelOptions" }, @@ -177281,6 +179692,21 @@ }, "type": "object" }, + "AWS::QuickSight::Template.WaterfallChartGroupColorConfiguration": { + "additionalProperties": false, + "properties": { + "NegativeBarColor": { + "type": "string" + }, + "PositiveBarColor": { + "type": "string" + }, + "TotalBarColor": { + "type": "string" + } + }, + "type": "object" + }, "AWS::QuickSight::Template.WaterfallChartOptions": { "additionalProperties": false, "properties": { @@ -178222,6 +180648,9 @@ "DefaultFormatting": { "$ref": "#/definitions/AWS::QuickSight::Topic.DefaultFormatting" }, + "DisableIndexing": { + "type": "boolean" + }, "Expression": { "type": "string" }, @@ -178328,6 +180757,9 @@ "DefaultFormatting": { "$ref": "#/definitions/AWS::QuickSight::Topic.DefaultFormatting" }, + "DisableIndexing": { + "type": "boolean" + }, "IsIncludedInTopic": { "type": "boolean" }, @@ -184641,6 +187073,12 @@ "Properties": { "additionalProperties": false, "properties": { + "AttributeMappings": { + "items": { + "$ref": "#/definitions/AWS::RolesAnywhere::Profile.AttributeMapping" + }, + "type": "array" + }, "DurationSeconds": { "type": "number" }, @@ -184702,6 +187140,37 @@ ], "type": "object" }, + "AWS::RolesAnywhere::Profile.AttributeMapping": { + "additionalProperties": false, + "properties": { + "CertificateField": { + "type": "string" + }, + "MappingRules": { + "items": { + "$ref": "#/definitions/AWS::RolesAnywhere::Profile.MappingRule" + }, + "type": "array" + } + }, + "required": [ + "CertificateField", + "MappingRules" + ], + "type": "object" + }, + "AWS::RolesAnywhere::Profile.MappingRule": { + "additionalProperties": false, + "properties": { + "Specifier": { + "type": "string" + } + }, + "required": [ + "Specifier" + ], + "type": "object" + }, "AWS::RolesAnywhere::TrustAnchor": { "additionalProperties": false, "properties": { @@ -186933,6 +189402,9 @@ "FirewallDomainListId": { "type": "string" }, + "FirewallDomainRedirectionAction": { + "type": "string" + }, "Priority": { "type": "number" }, @@ -194955,6 +197427,194 @@ ], "type": "object" }, + "AWS::SSO::Application": { + "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": { + "ApplicationProviderArn": { + "type": "string" + }, + "Description": { + "type": "string" + }, + "InstanceArn": { + "type": "string" + }, + "Name": { + "type": "string" + }, + "PortalOptions": { + "$ref": "#/definitions/AWS::SSO::Application.PortalOptionsConfiguration" + }, + "Status": { + "type": "string" + }, + "Tags": { + "items": { + "$ref": "#/definitions/Tag" + }, + "type": "array" + } + }, + "required": [ + "ApplicationProviderArn", + "InstanceArn", + "Name" + ], + "type": "object" + }, + "Type": { + "enum": [ + "AWS::SSO::Application" + ], + "type": "string" + }, + "UpdateReplacePolicy": { + "enum": [ + "Delete", + "Retain", + "Snapshot" + ], + "type": "string" + } + }, + "required": [ + "Type", + "Properties" + ], + "type": "object" + }, + "AWS::SSO::Application.PortalOptionsConfiguration": { + "additionalProperties": false, + "properties": { + "SignInOptions": { + "$ref": "#/definitions/AWS::SSO::Application.SignInOptions" + }, + "Visibility": { + "type": "string" + } + }, + "type": "object" + }, + "AWS::SSO::Application.SignInOptions": { + "additionalProperties": false, + "properties": { + "ApplicationUrl": { + "type": "string" + }, + "Origin": { + "type": "string" + } + }, + "required": [ + "Origin" + ], + "type": "object" + }, + "AWS::SSO::ApplicationAssignment": { + "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": { + "ApplicationArn": { + "type": "string" + }, + "PrincipalId": { + "type": "string" + }, + "PrincipalType": { + "type": "string" + } + }, + "required": [ + "ApplicationArn", + "PrincipalId", + "PrincipalType" + ], + "type": "object" + }, + "Type": { + "enum": [ + "AWS::SSO::ApplicationAssignment" + ], + "type": "string" + }, + "UpdateReplacePolicy": { + "enum": [ + "Delete", + "Retain", + "Snapshot" + ], + "type": "string" + } + }, + "required": [ + "Type", + "Properties" + ], + "type": "object" + }, "AWS::SSO::Assignment": { "additionalProperties": false, "properties": { @@ -194990,38 +197650,106 @@ "Properties": { "additionalProperties": false, "properties": { - "InstanceArn": { - "type": "string" - }, - "PermissionSetArn": { - "type": "string" - }, - "PrincipalId": { - "type": "string" - }, - "PrincipalType": { - "type": "string" - }, - "TargetId": { + "InstanceArn": { + "type": "string" + }, + "PermissionSetArn": { + "type": "string" + }, + "PrincipalId": { + "type": "string" + }, + "PrincipalType": { + "type": "string" + }, + "TargetId": { + "type": "string" + }, + "TargetType": { + "type": "string" + } + }, + "required": [ + "InstanceArn", + "PermissionSetArn", + "PrincipalId", + "PrincipalType", + "TargetId", + "TargetType" + ], + "type": "object" + }, + "Type": { + "enum": [ + "AWS::SSO::Assignment" + ], + "type": "string" + }, + "UpdateReplacePolicy": { + "enum": [ + "Delete", + "Retain", + "Snapshot" + ], + "type": "string" + } + }, + "required": [ + "Type", + "Properties" + ], + "type": "object" + }, + "AWS::SSO::Instance": { + "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": { + "Name": { "type": "string" }, - "TargetType": { - "type": "string" + "Tags": { + "items": { + "$ref": "#/definitions/Tag" + }, + "type": "array" } }, - "required": [ - "InstanceArn", - "PermissionSetArn", - "PrincipalId", - "PrincipalType", - "TargetId", - "TargetType" - ], "type": "object" }, "Type": { "enum": [ - "AWS::SSO::Assignment" + "AWS::SSO::Instance" ], "type": "string" }, @@ -195035,8 +197763,7 @@ } }, "required": [ - "Type", - "Properties" + "Type" ], "type": "object" }, @@ -196446,9 +199173,21 @@ "AWS::SageMaker::Domain.DefaultSpaceSettings": { "additionalProperties": false, "properties": { + "CustomFileSystemConfigs": { + "items": { + "$ref": "#/definitions/AWS::SageMaker::Domain.CustomFileSystemConfig" + }, + "type": "array" + }, + "CustomPosixUserConfig": { + "$ref": "#/definitions/AWS::SageMaker::Domain.CustomPosixUserConfig" + }, "ExecutionRole": { "type": "string" }, + "JupyterLabAppSettings": { + "$ref": "#/definitions/AWS::SageMaker::Domain.JupyterLabAppSettings" + }, "JupyterServerAppSettings": { "$ref": "#/definitions/AWS::SageMaker::Domain.JupyterServerAppSettings" }, @@ -196460,6 +199199,9 @@ "type": "string" }, "type": "array" + }, + "SpaceStorageSettings": { + "$ref": "#/definitions/AWS::SageMaker::Domain.DefaultSpaceStorageSettings" } }, "required": [ @@ -204245,6 +206987,210 @@ ], "type": "object" }, + "AWS::SecurityHub::ConfigurationPolicy": { + "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": { + "ConfigurationPolicy": { + "$ref": "#/definitions/AWS::SecurityHub::ConfigurationPolicy.Policy" + }, + "Description": { + "type": "string" + }, + "Name": { + "type": "string" + }, + "Tags": { + "additionalProperties": true, + "patternProperties": { + "^[a-zA-Z0-9]+$": { + "type": "string" + } + }, + "type": "object" + } + }, + "required": [ + "ConfigurationPolicy", + "Name" + ], + "type": "object" + }, + "Type": { + "enum": [ + "AWS::SecurityHub::ConfigurationPolicy" + ], + "type": "string" + }, + "UpdateReplacePolicy": { + "enum": [ + "Delete", + "Retain", + "Snapshot" + ], + "type": "string" + } + }, + "required": [ + "Type", + "Properties" + ], + "type": "object" + }, + "AWS::SecurityHub::ConfigurationPolicy.ParameterConfiguration": { + "additionalProperties": false, + "properties": { + "Value": { + "$ref": "#/definitions/AWS::SecurityHub::ConfigurationPolicy.ParameterValue" + }, + "ValueType": { + "type": "string" + } + }, + "required": [ + "ValueType" + ], + "type": "object" + }, + "AWS::SecurityHub::ConfigurationPolicy.ParameterValue": { + "additionalProperties": false, + "properties": { + "Boolean": { + "type": "boolean" + }, + "Double": { + "type": "number" + }, + "Enum": { + "type": "string" + }, + "EnumList": { + "items": { + "type": "string" + }, + "type": "array" + }, + "Integer": { + "type": "number" + }, + "IntegerList": { + "items": { + "type": "number" + }, + "type": "array" + }, + "String": { + "type": "string" + }, + "StringList": { + "items": { + "type": "string" + }, + "type": "array" + } + }, + "type": "object" + }, + "AWS::SecurityHub::ConfigurationPolicy.Policy": { + "additionalProperties": false, + "properties": { + "SecurityHub": { + "$ref": "#/definitions/AWS::SecurityHub::ConfigurationPolicy.SecurityHubPolicy" + } + }, + "type": "object" + }, + "AWS::SecurityHub::ConfigurationPolicy.SecurityControlCustomParameter": { + "additionalProperties": false, + "properties": { + "Parameters": { + "additionalProperties": false, + "patternProperties": { + "^[a-zA-Z0-9]+$": { + "$ref": "#/definitions/AWS::SecurityHub::ConfigurationPolicy.ParameterConfiguration" + } + }, + "type": "object" + }, + "SecurityControlId": { + "type": "string" + } + }, + "type": "object" + }, + "AWS::SecurityHub::ConfigurationPolicy.SecurityControlsConfiguration": { + "additionalProperties": false, + "properties": { + "DisabledSecurityControlIdentifiers": { + "items": { + "type": "string" + }, + "type": "array" + }, + "EnabledSecurityControlIdentifiers": { + "items": { + "type": "string" + }, + "type": "array" + }, + "SecurityControlCustomParameters": { + "items": { + "$ref": "#/definitions/AWS::SecurityHub::ConfigurationPolicy.SecurityControlCustomParameter" + }, + "type": "array" + } + }, + "type": "object" + }, + "AWS::SecurityHub::ConfigurationPolicy.SecurityHubPolicy": { + "additionalProperties": false, + "properties": { + "EnabledStandardIdentifiers": { + "items": { + "type": "string" + }, + "type": "array" + }, + "SecurityControlsConfiguration": { + "$ref": "#/definitions/AWS::SecurityHub::ConfigurationPolicy.SecurityControlsConfiguration" + }, + "ServiceEnabled": { + "type": "boolean" + } + }, + "type": "object" + }, "AWS::SecurityHub::DelegatedAdmin": { "additionalProperties": false, "properties": { @@ -204310,6 +207256,77 @@ ], "type": "object" }, + "AWS::SecurityHub::FindingAggregator": { + "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": { + "RegionLinkingMode": { + "type": "string" + }, + "Regions": { + "items": { + "type": "string" + }, + "type": "array" + } + }, + "required": [ + "RegionLinkingMode" + ], + "type": "object" + }, + "Type": { + "enum": [ + "AWS::SecurityHub::FindingAggregator" + ], + "type": "string" + }, + "UpdateReplacePolicy": { + "enum": [ + "Delete", + "Retain", + "Snapshot" + ], + "type": "string" + } + }, + "required": [ + "Type", + "Properties" + ], + "type": "object" + }, "AWS::SecurityHub::Hub": { "additionalProperties": false, "properties": { @@ -205171,6 +208188,150 @@ ], "type": "object" }, + "AWS::SecurityHub::OrganizationConfiguration": { + "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": { + "AutoEnable": { + "type": "boolean" + }, + "AutoEnableStandards": { + "type": "string" + }, + "ConfigurationType": { + "type": "string" + } + }, + "required": [ + "AutoEnable" + ], + "type": "object" + }, + "Type": { + "enum": [ + "AWS::SecurityHub::OrganizationConfiguration" + ], + "type": "string" + }, + "UpdateReplacePolicy": { + "enum": [ + "Delete", + "Retain", + "Snapshot" + ], + "type": "string" + } + }, + "required": [ + "Type", + "Properties" + ], + "type": "object" + }, + "AWS::SecurityHub::PolicyAssociation": { + "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": { + "ConfigurationPolicyId": { + "type": "string" + }, + "TargetId": { + "type": "string" + }, + "TargetType": { + "type": "string" + } + }, + "required": [ + "ConfigurationPolicyId", + "TargetId", + "TargetType" + ], + "type": "object" + }, + "Type": { + "enum": [ + "AWS::SecurityHub::PolicyAssociation" + ], + "type": "string" + }, + "UpdateReplacePolicy": { + "enum": [ + "Delete", + "Retain", + "Snapshot" + ], + "type": "string" + } + }, + "required": [ + "Type", + "Properties" + ], + "type": "object" + }, "AWS::SecurityHub::ProductSubscription": { "additionalProperties": false, "properties": { @@ -205236,6 +208397,140 @@ ], "type": "object" }, + "AWS::SecurityHub::SecurityControl": { + "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": { + "LastUpdateReason": { + "type": "string" + }, + "Parameters": { + "additionalProperties": false, + "patternProperties": { + "^[a-zA-Z0-9]+$": { + "$ref": "#/definitions/AWS::SecurityHub::SecurityControl.ParameterConfiguration" + } + }, + "type": "object" + }, + "SecurityControlArn": { + "type": "string" + }, + "SecurityControlId": { + "type": "string" + } + }, + "required": [ + "Parameters" + ], + "type": "object" + }, + "Type": { + "enum": [ + "AWS::SecurityHub::SecurityControl" + ], + "type": "string" + }, + "UpdateReplacePolicy": { + "enum": [ + "Delete", + "Retain", + "Snapshot" + ], + "type": "string" + } + }, + "required": [ + "Type", + "Properties" + ], + "type": "object" + }, + "AWS::SecurityHub::SecurityControl.ParameterConfiguration": { + "additionalProperties": false, + "properties": { + "Value": { + "$ref": "#/definitions/AWS::SecurityHub::SecurityControl.ParameterValue" + }, + "ValueType": { + "type": "string" + } + }, + "required": [ + "ValueType" + ], + "type": "object" + }, + "AWS::SecurityHub::SecurityControl.ParameterValue": { + "additionalProperties": false, + "properties": { + "Boolean": { + "type": "boolean" + }, + "Double": { + "type": "number" + }, + "Enum": { + "type": "string" + }, + "EnumList": { + "items": { + "type": "string" + }, + "type": "array" + }, + "Integer": { + "type": "number" + }, + "IntegerList": { + "items": { + "type": "number" + }, + "type": "array" + }, + "String": { + "type": "string" + }, + "StringList": { + "items": { + "type": "string" + }, + "type": "array" + } + }, + "type": "object" + }, "AWS::SecurityHub::Standard": { "additionalProperties": false, "properties": { @@ -205357,7 +208652,222 @@ "Properties": { "additionalProperties": false, "properties": { - "Accounts": { + "Accounts": { + "items": { + "type": "string" + }, + "type": "array" + }, + "DataLakeArn": { + "type": "string" + }, + "SourceName": { + "type": "string" + }, + "SourceVersion": { + "type": "string" + } + }, + "required": [ + "DataLakeArn", + "SourceName", + "SourceVersion" + ], + "type": "object" + }, + "Type": { + "enum": [ + "AWS::SecurityLake::AwsLogSource" + ], + "type": "string" + }, + "UpdateReplacePolicy": { + "enum": [ + "Delete", + "Retain", + "Snapshot" + ], + "type": "string" + } + }, + "required": [ + "Type", + "Properties" + ], + "type": "object" + }, + "AWS::SecurityLake::DataLake": { + "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": { + "EncryptionConfiguration": { + "$ref": "#/definitions/AWS::SecurityLake::DataLake.EncryptionConfiguration" + }, + "LifecycleConfiguration": { + "$ref": "#/definitions/AWS::SecurityLake::DataLake.LifecycleConfiguration" + }, + "MetaStoreManagerRoleArn": { + "type": "string" + }, + "ReplicationConfiguration": { + "$ref": "#/definitions/AWS::SecurityLake::DataLake.ReplicationConfiguration" + }, + "Tags": { + "items": { + "$ref": "#/definitions/Tag" + }, + "type": "array" + } + }, + "type": "object" + }, + "Type": { + "enum": [ + "AWS::SecurityLake::DataLake" + ], + "type": "string" + }, + "UpdateReplacePolicy": { + "enum": [ + "Delete", + "Retain", + "Snapshot" + ], + "type": "string" + } + }, + "required": [ + "Type" + ], + "type": "object" + }, + "AWS::SecurityLake::DataLake.EncryptionConfiguration": { + "additionalProperties": false, + "properties": { + "KmsKeyId": { + "type": "string" + } + }, + "type": "object" + }, + "AWS::SecurityLake::DataLake.Expiration": { + "additionalProperties": false, + "properties": { + "Days": { + "type": "number" + } + }, + "type": "object" + }, + "AWS::SecurityLake::DataLake.LifecycleConfiguration": { + "additionalProperties": false, + "properties": { + "Expiration": { + "$ref": "#/definitions/AWS::SecurityLake::DataLake.Expiration" + }, + "Transitions": { + "items": { + "$ref": "#/definitions/AWS::SecurityLake::DataLake.Transitions" + }, + "type": "array" + } + }, + "type": "object" + }, + "AWS::SecurityLake::DataLake.ReplicationConfiguration": { + "additionalProperties": false, + "properties": { + "Regions": { + "items": { + "type": "string" + }, + "type": "array" + }, + "RoleArn": { + "type": "string" + } + }, + "type": "object" + }, + "AWS::SecurityLake::DataLake.Transitions": { + "additionalProperties": false, + "properties": { + "Days": { + "type": "number" + }, + "StorageClass": { + "type": "string" + } + }, + "type": "object" + }, + "AWS::SecurityLake::Subscriber": { + "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": { + "AccessTypes": { "items": { "type": "string" }, @@ -205366,87 +208876,20 @@ "DataLakeArn": { "type": "string" }, - "SourceName": { - "type": "string" - }, - "SourceVersion": { - "type": "string" - } - }, - "required": [ - "DataLakeArn", - "SourceName", - "SourceVersion" - ], - "type": "object" - }, - "Type": { - "enum": [ - "AWS::SecurityLake::AwsLogSource" - ], - "type": "string" - }, - "UpdateReplacePolicy": { - "enum": [ - "Delete", - "Retain", - "Snapshot" - ], - "type": "string" - } - }, - "required": [ - "Type", - "Properties" - ], - "type": "object" - }, - "AWS::SecurityLake::DataLake": { - "additionalProperties": false, - "properties": { - "Condition": { - "type": "string" - }, - "DeletionPolicy": { - "enum": [ - "Delete", - "Retain", - "Snapshot" - ], - "type": "string" - }, - "DependsOn": { - "anyOf": [ - { - "pattern": "^[a-zA-Z0-9]+$", - "type": "string" - }, - { + "Sources": { "items": { - "pattern": "^[a-zA-Z0-9]+$", - "type": "string" + "$ref": "#/definitions/AWS::SecurityLake::Subscriber.Source" }, "type": "array" - } - ] - }, - "Metadata": { - "type": "object" - }, - "Properties": { - "additionalProperties": false, - "properties": { - "EncryptionConfiguration": { - "$ref": "#/definitions/AWS::SecurityLake::DataLake.EncryptionConfiguration" }, - "LifecycleConfiguration": { - "$ref": "#/definitions/AWS::SecurityLake::DataLake.LifecycleConfiguration" - }, - "MetaStoreManagerRoleArn": { + "SubscriberDescription": { "type": "string" }, - "ReplicationConfiguration": { - "$ref": "#/definitions/AWS::SecurityLake::DataLake.ReplicationConfiguration" + "SubscriberIdentity": { + "$ref": "#/definitions/AWS::SecurityLake::Subscriber.SubscriberIdentity" + }, + "SubscriberName": { + "type": "string" }, "Tags": { "items": { @@ -205455,11 +208898,18 @@ "type": "array" } }, + "required": [ + "AccessTypes", + "DataLakeArn", + "Sources", + "SubscriberIdentity", + "SubscriberName" + ], "type": "object" }, "Type": { "enum": [ - "AWS::SecurityLake::DataLake" + "AWS::SecurityLake::Subscriber" ], "type": "string" }, @@ -205473,71 +208923,64 @@ } }, "required": [ - "Type" + "Type", + "Properties" ], "type": "object" }, - "AWS::SecurityLake::DataLake.EncryptionConfiguration": { + "AWS::SecurityLake::Subscriber.AwsLogSource": { "additionalProperties": false, "properties": { - "KmsKeyId": { + "SourceName": { + "type": "string" + }, + "SourceVersion": { "type": "string" } }, "type": "object" }, - "AWS::SecurityLake::DataLake.Expiration": { - "additionalProperties": false, - "properties": { - "Days": { - "type": "number" - } - }, - "type": "object" - }, - "AWS::SecurityLake::DataLake.LifecycleConfiguration": { + "AWS::SecurityLake::Subscriber.CustomLogSource": { "additionalProperties": false, "properties": { - "Expiration": { - "$ref": "#/definitions/AWS::SecurityLake::DataLake.Expiration" + "SourceName": { + "type": "string" }, - "Transitions": { - "items": { - "$ref": "#/definitions/AWS::SecurityLake::DataLake.Transitions" - }, - "type": "array" + "SourceVersion": { + "type": "string" } }, "type": "object" }, - "AWS::SecurityLake::DataLake.ReplicationConfiguration": { + "AWS::SecurityLake::Subscriber.Source": { "additionalProperties": false, "properties": { - "Regions": { - "items": { - "type": "string" - }, - "type": "array" + "AwsLogSource": { + "$ref": "#/definitions/AWS::SecurityLake::Subscriber.AwsLogSource" }, - "RoleArn": { - "type": "string" + "CustomLogSource": { + "$ref": "#/definitions/AWS::SecurityLake::Subscriber.CustomLogSource" } }, "type": "object" }, - "AWS::SecurityLake::DataLake.Transitions": { + "AWS::SecurityLake::Subscriber.SubscriberIdentity": { "additionalProperties": false, "properties": { - "Days": { - "type": "number" + "ExternalId": { + "type": "string" }, - "StorageClass": { + "Principal": { "type": "string" } }, + "required": [ + "ExternalId", + "Principal" + ], "type": "object" }, - "AWS::SecurityLake::Subscriber": { + "AWS::SecurityLake::SubscriberNotification": { "additionalProperties": false, "properties": { "Condition": { @@ -205572,49 +209015,22 @@ "Properties": { "additionalProperties": false, "properties": { - "AccessTypes": { - "items": { - "type": "string" - }, - "type": "array" - }, - "DataLakeArn": { - "type": "string" - }, - "Sources": { - "items": { - "$ref": "#/definitions/AWS::SecurityLake::Subscriber.Source" - }, - "type": "array" - }, - "SubscriberDescription": { - "type": "string" - }, - "SubscriberIdentity": { - "$ref": "#/definitions/AWS::SecurityLake::Subscriber.SubscriberIdentity" + "NotificationConfiguration": { + "$ref": "#/definitions/AWS::SecurityLake::SubscriberNotification.NotificationConfiguration" }, - "SubscriberName": { + "SubscriberArn": { "type": "string" - }, - "Tags": { - "items": { - "$ref": "#/definitions/Tag" - }, - "type": "array" } }, "required": [ - "AccessTypes", - "DataLakeArn", - "Sources", - "SubscriberIdentity", - "SubscriberName" + "NotificationConfiguration", + "SubscriberArn" ], "type": "object" }, "Type": { "enum": [ - "AWS::SecurityLake::Subscriber" + "AWS::SecurityLake::SubscriberNotification" ], "type": "string" }, @@ -205633,56 +209049,41 @@ ], "type": "object" }, - "AWS::SecurityLake::Subscriber.AwsLogSource": { + "AWS::SecurityLake::SubscriberNotification.HttpsNotificationConfiguration": { "additionalProperties": false, "properties": { - "SourceName": { + "AuthorizationApiKeyName": { "type": "string" }, - "SourceVersion": { + "AuthorizationApiKeyValue": { "type": "string" - } - }, - "type": "object" - }, - "AWS::SecurityLake::Subscriber.CustomLogSource": { - "additionalProperties": false, - "properties": { - "SourceName": { + }, + "Endpoint": { "type": "string" }, - "SourceVersion": { + "HttpMethod": { "type": "string" - } - }, - "type": "object" - }, - "AWS::SecurityLake::Subscriber.Source": { - "additionalProperties": false, - "properties": { - "AwsLogSource": { - "$ref": "#/definitions/AWS::SecurityLake::Subscriber.AwsLogSource" }, - "CustomLogSource": { - "$ref": "#/definitions/AWS::SecurityLake::Subscriber.CustomLogSource" + "TargetRoleArn": { + "type": "string" } }, + "required": [ + "Endpoint", + "TargetRoleArn" + ], "type": "object" }, - "AWS::SecurityLake::Subscriber.SubscriberIdentity": { + "AWS::SecurityLake::SubscriberNotification.NotificationConfiguration": { "additionalProperties": false, "properties": { - "ExternalId": { - "type": "string" + "HttpsNotificationConfiguration": { + "$ref": "#/definitions/AWS::SecurityLake::SubscriberNotification.HttpsNotificationConfiguration" }, - "Principal": { - "type": "string" + "SqsNotificationConfiguration": { + "type": "object" } }, - "required": [ - "ExternalId", - "Principal" - ], "type": "object" }, "AWS::ServiceCatalog::AcceptedPortfolioShare": { @@ -210583,6 +213984,9 @@ "LoggingRole": { "type": "string" }, + "SecurityPolicyName": { + "type": "string" + }, "SftpConfig": { "$ref": "#/definitions/AWS::Transfer::Connector.SftpConfig" }, @@ -211284,6 +214688,10 @@ "type": "string" } }, + "required": [ + "DestinationFileLocation", + "Type" + ], "type": "object" }, "AWS::Transfer::Workflow.DeleteStepDetails": { @@ -220107,6 +223515,9 @@ { "$ref": "#/definitions/AWS::Bedrock::Guardrail" }, + { + "$ref": "#/definitions/AWS::Bedrock::GuardrailVersion" + }, { "$ref": "#/definitions/AWS::Bedrock::KnowledgeBase" }, @@ -220662,12 +224073,21 @@ { "$ref": "#/definitions/AWS::DataZone::EnvironmentProfile" }, + { + "$ref": "#/definitions/AWS::DataZone::GroupProfile" + }, { "$ref": "#/definitions/AWS::DataZone::Project" }, + { + "$ref": "#/definitions/AWS::DataZone::ProjectMembership" + }, { "$ref": "#/definitions/AWS::DataZone::SubscriptionTarget" }, + { + "$ref": "#/definitions/AWS::DataZone::UserProfile" + }, { "$ref": "#/definitions/AWS::Deadline::Farm" }, @@ -222261,6 +225681,9 @@ { "$ref": "#/definitions/AWS::Neptune::DBSubnetGroup" }, + { + "$ref": "#/definitions/AWS::Neptune::EventSubscription" + }, { "$ref": "#/definitions/AWS::NeptuneGraph::Graph" }, @@ -222546,6 +225969,24 @@ { "$ref": "#/definitions/AWS::Proton::ServiceTemplate" }, + { + "$ref": "#/definitions/AWS::QBusiness::Application" + }, + { + "$ref": "#/definitions/AWS::QBusiness::DataSource" + }, + { + "$ref": "#/definitions/AWS::QBusiness::Index" + }, + { + "$ref": "#/definitions/AWS::QBusiness::Plugin" + }, + { + "$ref": "#/definitions/AWS::QBusiness::Retriever" + }, + { + "$ref": "#/definitions/AWS::QBusiness::WebExperience" + }, { "$ref": "#/definitions/AWS::QLDB::Ledger" }, @@ -222972,9 +226413,18 @@ { "$ref": "#/definitions/AWS::SSMIncidents::ResponsePlan" }, + { + "$ref": "#/definitions/AWS::SSO::Application" + }, + { + "$ref": "#/definitions/AWS::SSO::ApplicationAssignment" + }, { "$ref": "#/definitions/AWS::SSO::Assignment" }, + { + "$ref": "#/definitions/AWS::SSO::Instance" + }, { "$ref": "#/definitions/AWS::SSO::InstanceAccessControlAttributeConfiguration" }, @@ -223089,18 +226539,33 @@ { "$ref": "#/definitions/AWS::SecurityHub::AutomationRule" }, + { + "$ref": "#/definitions/AWS::SecurityHub::ConfigurationPolicy" + }, { "$ref": "#/definitions/AWS::SecurityHub::DelegatedAdmin" }, + { + "$ref": "#/definitions/AWS::SecurityHub::FindingAggregator" + }, { "$ref": "#/definitions/AWS::SecurityHub::Hub" }, { "$ref": "#/definitions/AWS::SecurityHub::Insight" }, + { + "$ref": "#/definitions/AWS::SecurityHub::OrganizationConfiguration" + }, + { + "$ref": "#/definitions/AWS::SecurityHub::PolicyAssociation" + }, { "$ref": "#/definitions/AWS::SecurityHub::ProductSubscription" }, + { + "$ref": "#/definitions/AWS::SecurityHub::SecurityControl" + }, { "$ref": "#/definitions/AWS::SecurityHub::Standard" }, @@ -223113,6 +226578,9 @@ { "$ref": "#/definitions/AWS::SecurityLake::Subscriber" }, + { + "$ref": "#/definitions/AWS::SecurityLake::SubscriberNotification" + }, { "$ref": "#/definitions/AWS::ServiceCatalog::AcceptedPortfolioShare" }, diff --git a/schema/sam.go b/schema/sam.go index 566edb7586..3d3ba137d1 100644 --- a/schema/sam.go +++ b/schema/sam.go @@ -541,6 +541,9 @@ var SamSchema = `{ "type": "string" } }, + "required": [ + "Enabled" + ], "type": "object" }, "AWS::ACMPCA::CertificateAuthority.CrlDistributionPointExtensionConfiguration": { @@ -597,7 +600,6 @@ var SamSchema = `{ } }, "required": [ - "NameAssigner", "PartyName" ], "type": "object" @@ -675,6 +677,9 @@ var SamSchema = `{ "type": "string" } }, + "required": [ + "Enabled" + ], "type": "object" }, "AWS::ACMPCA::CertificateAuthority.OtherName": { @@ -19184,6 +19189,12 @@ var SamSchema = `{ "MetricName": { "type": "string" }, + "Metrics": { + "items": { + "$ref": "#/definitions/AWS::AutoScaling::ScalingPolicy.TargetTrackingMetricDataQuery" + }, + "type": "array" + }, "Namespace": { "type": "string" }, @@ -19194,11 +19205,6 @@ var SamSchema = `{ "type": "string" } }, - "required": [ - "MetricName", - "Namespace", - "Statistic" - ], "type": "object" }, "AWS::AutoScaling::ScalingPolicy.Metric": { @@ -19483,6 +19489,49 @@ var SamSchema = `{ ], "type": "object" }, + "AWS::AutoScaling::ScalingPolicy.TargetTrackingMetricDataQuery": { + "additionalProperties": false, + "properties": { + "Expression": { + "type": "string" + }, + "Id": { + "type": "string" + }, + "Label": { + "type": "string" + }, + "MetricStat": { + "$ref": "#/definitions/AWS::AutoScaling::ScalingPolicy.TargetTrackingMetricStat" + }, + "ReturnData": { + "type": "boolean" + } + }, + "required": [ + "Id" + ], + "type": "object" + }, + "AWS::AutoScaling::ScalingPolicy.TargetTrackingMetricStat": { + "additionalProperties": false, + "properties": { + "Metric": { + "$ref": "#/definitions/AWS::AutoScaling::ScalingPolicy.Metric" + }, + "Stat": { + "type": "string" + }, + "Unit": { + "type": "string" + } + }, + "required": [ + "Metric", + "Stat" + ], + "type": "object" + }, "AWS::AutoScaling::ScheduledAction": { "additionalProperties": false, "properties": { @@ -22618,6 +22667,9 @@ var SamSchema = `{ "EcsProperties": { "$ref": "#/definitions/AWS::Batch::JobDefinition.EcsProperties" }, + "EksProperties": { + "$ref": "#/definitions/AWS::Batch::JobDefinition.EksProperties" + }, "InstanceTypes": { "items": { "type": "string" @@ -23290,13 +23342,13 @@ var SamSchema = `{ "AWS::Bedrock::Agent.ActionGroupExecutor": { "additionalProperties": false, "properties": { + "CustomControl": { + "type": "string" + }, "Lambda": { "type": "string" } }, - "required": [ - "Lambda" - ], "type": "object" }, "AWS::Bedrock::Agent.AgentActionGroup": { @@ -23317,6 +23369,9 @@ var SamSchema = `{ "Description": { "type": "string" }, + "FunctionSchema": { + "$ref": "#/definitions/AWS::Bedrock::Agent.FunctionSchema" + }, "ParentActionGroupSignature": { "type": "string" }, @@ -23348,6 +23403,45 @@ var SamSchema = `{ ], "type": "object" }, + "AWS::Bedrock::Agent.Function": { + "additionalProperties": false, + "properties": { + "Description": { + "type": "string" + }, + "Name": { + "type": "string" + }, + "Parameters": { + "additionalProperties": false, + "patternProperties": { + "^[a-zA-Z0-9]+$": { + "$ref": "#/definitions/AWS::Bedrock::Agent.ParameterDetail" + } + }, + "type": "object" + } + }, + "required": [ + "Name" + ], + "type": "object" + }, + "AWS::Bedrock::Agent.FunctionSchema": { + "additionalProperties": false, + "properties": { + "Functions": { + "items": { + "$ref": "#/definitions/AWS::Bedrock::Agent.Function" + }, + "type": "array" + } + }, + "required": [ + "Functions" + ], + "type": "object" + }, "AWS::Bedrock::Agent.InferenceConfiguration": { "additionalProperties": false, "properties": { @@ -23372,6 +23466,24 @@ var SamSchema = `{ }, "type": "object" }, + "AWS::Bedrock::Agent.ParameterDetail": { + "additionalProperties": false, + "properties": { + "Description": { + "type": "string" + }, + "Required": { + "type": "boolean" + }, + "Type": { + "type": "string" + } + }, + "required": [ + "Type" + ], + "type": "object" + }, "AWS::Bedrock::Agent.PromptConfiguration": { "additionalProperties": false, "properties": { @@ -23578,6 +23690,9 @@ var SamSchema = `{ "Properties": { "additionalProperties": false, "properties": { + "DataDeletionPolicy": { + "type": "string" + }, "DataSourceConfiguration": { "$ref": "#/definitions/AWS::Bedrock::DataSource.DataSourceConfiguration" }, @@ -23678,6 +23793,9 @@ var SamSchema = `{ "BucketArn": { "type": "string" }, + "BucketOwnerAccountId": { + "type": "string" + }, "InclusionPrefixes": { "items": { "type": "string" @@ -23980,6 +24098,74 @@ var SamSchema = `{ }, "type": "object" }, + "AWS::Bedrock::GuardrailVersion": { + "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" + }, + "GuardrailIdentifier": { + "type": "string" + } + }, + "required": [ + "GuardrailIdentifier" + ], + "type": "object" + }, + "Type": { + "enum": [ + "AWS::Bedrock::GuardrailVersion" + ], + "type": "string" + }, + "UpdateReplacePolicy": { + "enum": [ + "Delete", + "Retain", + "Snapshot" + ], + "type": "string" + } + }, + "required": [ + "Type", + "Properties" + ], + "type": "object" + }, "AWS::Bedrock::KnowledgeBase": { "additionalProperties": false, "properties": { @@ -24785,6 +24971,12 @@ var SamSchema = `{ "$ref": "#/definitions/AWS::Budgets::Budget.NotificationWithSubscribers" }, "type": "array" + }, + "ResourceTags": { + "items": { + "$ref": "#/definitions/AWS::Budgets::Budget.ResourceTag" + }, + "type": "array" } }, "required": [ @@ -24958,6 +25150,21 @@ var SamSchema = `{ ], "type": "object" }, + "AWS::Budgets::Budget.ResourceTag": { + "additionalProperties": false, + "properties": { + "Key": { + "type": "string" + }, + "Value": { + "type": "string" + } + }, + "required": [ + "Key" + ], + "type": "object" + }, "AWS::Budgets::Budget.Spend": { "additionalProperties": false, "properties": { @@ -25058,6 +25265,12 @@ var SamSchema = `{ "NotificationType": { "type": "string" }, + "ResourceTags": { + "items": { + "$ref": "#/definitions/AWS::Budgets::BudgetsAction.ResourceTag" + }, + "type": "array" + }, "Subscribers": { "items": { "$ref": "#/definitions/AWS::Budgets::BudgetsAction.Subscriber" @@ -25158,6 +25371,22 @@ var SamSchema = `{ ], "type": "object" }, + "AWS::Budgets::BudgetsAction.ResourceTag": { + "additionalProperties": false, + "properties": { + "Key": { + "type": "string" + }, + "Value": { + "type": "string" + } + }, + "required": [ + "Key", + "Value" + ], + "type": "object" + }, "AWS::Budgets::BudgetsAction.ScpActionDefinition": { "additionalProperties": false, "properties": { @@ -26234,6 +26463,12 @@ var SamSchema = `{ }, "type": "array" }, + "Tags": { + "items": { + "$ref": "#/definitions/Tag" + }, + "type": "array" + }, "TeamId": { "type": "string" }, @@ -26339,6 +26574,12 @@ var SamSchema = `{ }, "type": "array" }, + "Tags": { + "items": { + "$ref": "#/definitions/Tag" + }, + "type": "array" + }, "UserRoleRequired": { "type": "boolean" } @@ -33413,9 +33654,18 @@ var SamSchema = `{ "EnvironmentType": { "type": "string" }, + "FleetServiceRole": { + "type": "string" + }, + "FleetVpcConfig": { + "$ref": "#/definitions/AWS::CodeBuild::Fleet.VpcConfig" + }, "Name": { "type": "string" }, + "OverflowBehavior": { + "type": "string" + }, "Tags": { "items": { "$ref": "#/definitions/Tag" @@ -33445,6 +33695,27 @@ var SamSchema = `{ ], "type": "object" }, + "AWS::CodeBuild::Fleet.VpcConfig": { + "additionalProperties": false, + "properties": { + "SecurityGroupIds": { + "items": { + "type": "string" + }, + "type": "array" + }, + "Subnets": { + "items": { + "type": "string" + }, + "type": "array" + }, + "VpcId": { + "type": "string" + } + }, + "type": "object" + }, "AWS::CodeBuild::Project": { "additionalProperties": false, "properties": { @@ -35789,6 +36060,18 @@ var SamSchema = `{ ], "type": "object" }, + "AWS::CodePipeline::Pipeline.FailureConditions": { + "additionalProperties": false, + "properties": { + "Result": { + "type": "string" + } + }, + "required": [ + "Result" + ], + "type": "object" + }, "AWS::CodePipeline::Pipeline.GitBranchFilterCriteria": { "additionalProperties": false, "properties": { @@ -35956,6 +36239,9 @@ var SamSchema = `{ }, "Name": { "type": "string" + }, + "OnFailure": { + "$ref": "#/definitions/AWS::CodePipeline::Pipeline.FailureConditions" } }, "required": [ @@ -42154,6 +42440,12 @@ var SamSchema = `{ }, "type": "array" }, + "SubmitAutoEvaluationActions": { + "items": { + "$ref": "#/definitions/AWS::Connect::Rule.SubmitAutoEvaluationAction" + }, + "type": "array" + }, "TaskActions": { "items": { "$ref": "#/definitions/AWS::Connect::Rule.TaskAction" @@ -42313,6 +42605,18 @@ var SamSchema = `{ ], "type": "object" }, + "AWS::Connect::Rule.SubmitAutoEvaluationAction": { + "additionalProperties": false, + "properties": { + "EvaluationFormArn": { + "type": "string" + } + }, + "required": [ + "EvaluationFormArn" + ], + "type": "object" + }, "AWS::Connect::Rule.TaskAction": { "additionalProperties": false, "properties": { @@ -51963,6 +52267,78 @@ var SamSchema = `{ }, "type": "object" }, + "AWS::DataZone::GroupProfile": { + "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": { + "DomainIdentifier": { + "type": "string" + }, + "GroupIdentifier": { + "type": "string" + }, + "Status": { + "type": "string" + } + }, + "required": [ + "DomainIdentifier", + "GroupIdentifier" + ], + "type": "object" + }, + "Type": { + "enum": [ + "AWS::DataZone::GroupProfile" + ], + "type": "string" + }, + "UpdateReplacePolicy": { + "enum": [ + "Delete", + "Retain", + "Snapshot" + ], + "type": "string" + } + }, + "required": [ + "Type", + "Properties" + ], + "type": "object" + }, "AWS::DataZone::Project": { "additionalProperties": false, "properties": { @@ -52041,6 +52417,95 @@ var SamSchema = `{ ], "type": "object" }, + "AWS::DataZone::ProjectMembership": { + "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": { + "Designation": { + "type": "string" + }, + "DomainIdentifier": { + "type": "string" + }, + "Member": { + "$ref": "#/definitions/AWS::DataZone::ProjectMembership.Member" + }, + "ProjectIdentifier": { + "type": "string" + } + }, + "required": [ + "Designation", + "DomainIdentifier", + "Member", + "ProjectIdentifier" + ], + "type": "object" + }, + "Type": { + "enum": [ + "AWS::DataZone::ProjectMembership" + ], + "type": "string" + }, + "UpdateReplacePolicy": { + "enum": [ + "Delete", + "Retain", + "Snapshot" + ], + "type": "string" + } + }, + "required": [ + "Type", + "Properties" + ], + "type": "object" + }, + "AWS::DataZone::ProjectMembership.Member": { + "additionalProperties": false, + "properties": { + "GroupIdentifier": { + "type": "string" + }, + "UserIdentifier": { + "type": "string" + } + }, + "type": "object" + }, "AWS::DataZone::SubscriptionTarget": { "additionalProperties": false, "properties": { @@ -52162,6 +52627,117 @@ var SamSchema = `{ ], "type": "object" }, + "AWS::DataZone::UserProfile": { + "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": { + "DomainIdentifier": { + "type": "string" + }, + "Status": { + "type": "string" + }, + "UserIdentifier": { + "type": "string" + }, + "UserType": { + "type": "string" + } + }, + "required": [ + "DomainIdentifier", + "UserIdentifier" + ], + "type": "object" + }, + "Type": { + "enum": [ + "AWS::DataZone::UserProfile" + ], + "type": "string" + }, + "UpdateReplacePolicy": { + "enum": [ + "Delete", + "Retain", + "Snapshot" + ], + "type": "string" + } + }, + "required": [ + "Type", + "Properties" + ], + "type": "object" + }, + "AWS::DataZone::UserProfile.IamUserProfileDetails": { + "additionalProperties": false, + "properties": { + "Arn": { + "type": "string" + } + }, + "type": "object" + }, + "AWS::DataZone::UserProfile.SsoUserProfileDetails": { + "additionalProperties": false, + "properties": { + "FirstName": { + "type": "string" + }, + "LastName": { + "type": "string" + }, + "Username": { + "type": "string" + } + }, + "type": "object" + }, + "AWS::DataZone::UserProfile.UserProfileDetails": { + "additionalProperties": false, + "properties": { + "Iam": { + "$ref": "#/definitions/AWS::DataZone::UserProfile.IamUserProfileDetails" + }, + "Sso": { + "$ref": "#/definitions/AWS::DataZone::UserProfile.SsoUserProfileDetails" + } + }, + "type": "object" + }, "AWS::Deadline::Farm": { "additionalProperties": false, "properties": { @@ -54547,6 +55123,9 @@ var SamSchema = `{ "TimeToLiveSpecification": { "$ref": "#/definitions/AWS::DynamoDB::GlobalTable.TimeToLiveSpecification" }, + "WriteOnDemandThroughputSettings": { + "$ref": "#/definitions/AWS::DynamoDB::GlobalTable.WriteOnDemandThroughputSettings" + }, "WriteProvisionedThroughputSettings": { "$ref": "#/definitions/AWS::DynamoDB::GlobalTable.WriteProvisionedThroughputSettings" } @@ -54645,6 +55224,9 @@ var SamSchema = `{ "Projection": { "$ref": "#/definitions/AWS::DynamoDB::GlobalTable.Projection" }, + "WriteOnDemandThroughputSettings": { + "$ref": "#/definitions/AWS::DynamoDB::GlobalTable.WriteOnDemandThroughputSettings" + }, "WriteProvisionedThroughputSettings": { "$ref": "#/definitions/AWS::DynamoDB::GlobalTable.WriteProvisionedThroughputSettings" } @@ -54734,6 +55316,15 @@ var SamSchema = `{ }, "type": "object" }, + "AWS::DynamoDB::GlobalTable.ReadOnDemandThroughputSettings": { + "additionalProperties": false, + "properties": { + "MaxReadRequestUnits": { + "type": "number" + } + }, + "type": "object" + }, "AWS::DynamoDB::GlobalTable.ReadProvisionedThroughputSettings": { "additionalProperties": false, "properties": { @@ -54755,6 +55346,9 @@ var SamSchema = `{ "IndexName": { "type": "string" }, + "ReadOnDemandThroughputSettings": { + "$ref": "#/definitions/AWS::DynamoDB::GlobalTable.ReadOnDemandThroughputSettings" + }, "ReadProvisionedThroughputSettings": { "$ref": "#/definitions/AWS::DynamoDB::GlobalTable.ReadProvisionedThroughputSettings" } @@ -54797,6 +55391,9 @@ var SamSchema = `{ "PointInTimeRecoverySpecification": { "$ref": "#/definitions/AWS::DynamoDB::GlobalTable.PointInTimeRecoverySpecification" }, + "ReadOnDemandThroughputSettings": { + "$ref": "#/definitions/AWS::DynamoDB::GlobalTable.ReadOnDemandThroughputSettings" + }, "ReadProvisionedThroughputSettings": { "$ref": "#/definitions/AWS::DynamoDB::GlobalTable.ReadProvisionedThroughputSettings" }, @@ -54914,6 +55511,15 @@ var SamSchema = `{ ], "type": "object" }, + "AWS::DynamoDB::GlobalTable.WriteOnDemandThroughputSettings": { + "additionalProperties": false, + "properties": { + "MaxWriteRequestUnits": { + "type": "number" + } + }, + "type": "object" + }, "AWS::DynamoDB::GlobalTable.WriteProvisionedThroughputSettings": { "additionalProperties": false, "properties": { @@ -54997,6 +55603,9 @@ var SamSchema = `{ }, "type": "array" }, + "OnDemandThroughput": { + "$ref": "#/definitions/AWS::DynamoDB::Table.OnDemandThroughput" + }, "PointInTimeRecoverySpecification": { "$ref": "#/definitions/AWS::DynamoDB::Table.PointInTimeRecoverySpecification" }, @@ -55112,6 +55721,9 @@ var SamSchema = `{ }, "type": "array" }, + "OnDemandThroughput": { + "$ref": "#/definitions/AWS::DynamoDB::Table.OnDemandThroughput" + }, "Projection": { "$ref": "#/definitions/AWS::DynamoDB::Table.Projection" }, @@ -55211,6 +55823,18 @@ var SamSchema = `{ ], "type": "object" }, + "AWS::DynamoDB::Table.OnDemandThroughput": { + "additionalProperties": false, + "properties": { + "MaxReadRequestUnits": { + "type": "number" + }, + "MaxWriteRequestUnits": { + "type": "number" + } + }, + "type": "object" + }, "AWS::DynamoDB::Table.PointInTimeRecoverySpecification": { "additionalProperties": false, "properties": { @@ -56168,6 +56792,9 @@ var SamSchema = `{ "BgpAsn": { "type": "number" }, + "BgpAsnExtended": { + "type": "number" + }, "CertificateArn": { "type": "string" }, @@ -58514,6 +59141,18 @@ var SamSchema = `{ ], "type": "object" }, + "AWS::EC2::Instance.State": { + "additionalProperties": false, + "properties": { + "Code": { + "type": "string" + }, + "Name": { + "type": "string" + } + }, + "type": "object" + }, "AWS::EC2::Instance.Volume": { "additionalProperties": false, "properties": { @@ -64570,6 +65209,7 @@ var SamSchema = `{ } }, "required": [ + "DestinationCidrBlock", "TransitGatewayRouteTableId" ], "type": "object" @@ -67520,6 +68160,9 @@ var SamSchema = `{ "properties": { "ExecuteCommandConfiguration": { "$ref": "#/definitions/AWS::ECS::Cluster.ExecuteCommandConfiguration" + }, + "ManagedStorageConfiguration": { + "$ref": "#/definitions/AWS::ECS::Cluster.ManagedStorageConfiguration" } }, "type": "object" @@ -67572,6 +68215,18 @@ var SamSchema = `{ }, "type": "object" }, + "AWS::ECS::Cluster.ManagedStorageConfiguration": { + "additionalProperties": false, + "properties": { + "FargateEphemeralStorageKmsKeyId": { + "type": "string" + }, + "KmsKeyId": { + "type": "string" + } + }, + "type": "object" + }, "AWS::ECS::Cluster.ServiceConnectDefaults": { "additionalProperties": false, "properties": { @@ -69924,6 +70579,12 @@ var SamSchema = `{ "ConfigurationValues": { "type": "string" }, + "PodIdentityAssociations": { + "items": { + "$ref": "#/definitions/AWS::EKS::Addon.PodIdentityAssociation" + }, + "type": "array" + }, "PreserveOnDelete": { "type": "boolean" }, @@ -69967,251 +70628,267 @@ var SamSchema = `{ ], "type": "object" }, - "AWS::EKS::Cluster": { + "AWS::EKS::Addon.PodIdentityAssociation": { "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": { - "AccessConfig": { - "$ref": "#/definitions/AWS::EKS::Cluster.AccessConfig" - }, - "EncryptionConfig": { - "items": { - "$ref": "#/definitions/AWS::EKS::Cluster.EncryptionConfig" - }, - "type": "array" - }, - "KubernetesNetworkConfig": { - "$ref": "#/definitions/AWS::EKS::Cluster.KubernetesNetworkConfig" - }, - "Logging": { - "$ref": "#/definitions/AWS::EKS::Cluster.Logging" - }, - "Name": { - "type": "string" - }, - "OutpostConfig": { - "$ref": "#/definitions/AWS::EKS::Cluster.OutpostConfig" - }, - "ResourcesVpcConfig": { - "$ref": "#/definitions/AWS::EKS::Cluster.ResourcesVpcConfig" - }, - "RoleArn": { - "type": "string" - }, - "Tags": { - "items": { - "$ref": "#/definitions/Tag" - }, - "type": "array" - }, - "Version": { - "type": "string" - } - }, - "required": [ - "ResourcesVpcConfig", - "RoleArn" - ], - "type": "object" - }, - "Type": { - "enum": [ - "AWS::EKS::Cluster" - ], - "type": "string" - }, - "UpdateReplacePolicy": { - "enum": [ - "Delete", - "Retain", - "Snapshot" - ], - "type": "string" - } - }, - "required": [ - "Type", - "Properties" - ], - "type": "object" - }, - "AWS::EKS::Cluster.AccessConfig": { - "additionalProperties": false, - "properties": { - "AuthenticationMode": { - "type": "string" - }, - "BootstrapClusterCreatorAdminPermissions": { - "type": "boolean" - } - }, - "type": "object" - }, - "AWS::EKS::Cluster.ClusterLogging": { - "additionalProperties": false, - "properties": { - "EnabledTypes": { - "items": { - "$ref": "#/definitions/AWS::EKS::Cluster.LoggingTypeConfig" - }, - "type": "array" - } - }, - "type": "object" - }, - "AWS::EKS::Cluster.ControlPlanePlacement": { - "additionalProperties": false, - "properties": { - "GroupName": { - "type": "string" - } - }, - "type": "object" - }, - "AWS::EKS::Cluster.EncryptionConfig": { - "additionalProperties": false, - "properties": { - "Provider": { - "$ref": "#/definitions/AWS::EKS::Cluster.Provider" - }, - "Resources": { - "items": { - "type": "string" - }, - "type": "array" - } - }, - "type": "object" - }, - "AWS::EKS::Cluster.KubernetesNetworkConfig": { - "additionalProperties": false, - "properties": { - "IpFamily": { - "type": "string" - }, - "ServiceIpv4Cidr": { - "type": "string" - }, - "ServiceIpv6Cidr": { - "type": "string" - } - }, - "type": "object" - }, - "AWS::EKS::Cluster.Logging": { - "additionalProperties": false, - "properties": { - "ClusterLogging": { - "$ref": "#/definitions/AWS::EKS::Cluster.ClusterLogging" - } - }, - "type": "object" - }, - "AWS::EKS::Cluster.LoggingTypeConfig": { - "additionalProperties": false, - "properties": { - "Type": { - "type": "string" - } - }, - "type": "object" - }, - "AWS::EKS::Cluster.OutpostConfig": { - "additionalProperties": false, - "properties": { - "ControlPlaneInstanceType": { + "RoleArn": { "type": "string" }, - "ControlPlanePlacement": { - "$ref": "#/definitions/AWS::EKS::Cluster.ControlPlanePlacement" - }, - "OutpostArns": { - "items": { - "type": "string" - }, - "type": "array" - } - }, - "required": [ - "ControlPlaneInstanceType", - "OutpostArns" - ], - "type": "object" - }, - "AWS::EKS::Cluster.Provider": { - "additionalProperties": false, - "properties": { - "KeyArn": { + "ServiceAccount": { "type": "string" } }, - "type": "object" - }, - "AWS::EKS::Cluster.ResourcesVpcConfig": { - "additionalProperties": false, - "properties": { - "EndpointPrivateAccess": { - "type": "boolean" - }, - "EndpointPublicAccess": { - "type": "boolean" - }, - "PublicAccessCidrs": { - "items": { - "type": "string" - }, - "type": "array" - }, - "SecurityGroupIds": { - "items": { - "type": "string" - }, - "type": "array" - }, - "SubnetIds": { - "items": { - "type": "string" - }, - "type": "array" - } - }, "required": [ - "SubnetIds" + "RoleArn", + "ServiceAccount" ], "type": "object" }, - "AWS::EKS::FargateProfile": { + "AWS::EKS::Cluster": { + "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": { + "AccessConfig": { + "$ref": "#/definitions/AWS::EKS::Cluster.AccessConfig" + }, + "EncryptionConfig": { + "items": { + "$ref": "#/definitions/AWS::EKS::Cluster.EncryptionConfig" + }, + "type": "array" + }, + "KubernetesNetworkConfig": { + "$ref": "#/definitions/AWS::EKS::Cluster.KubernetesNetworkConfig" + }, + "Logging": { + "$ref": "#/definitions/AWS::EKS::Cluster.Logging" + }, + "Name": { + "type": "string" + }, + "OutpostConfig": { + "$ref": "#/definitions/AWS::EKS::Cluster.OutpostConfig" + }, + "ResourcesVpcConfig": { + "$ref": "#/definitions/AWS::EKS::Cluster.ResourcesVpcConfig" + }, + "RoleArn": { + "type": "string" + }, + "Tags": { + "items": { + "$ref": "#/definitions/Tag" + }, + "type": "array" + }, + "Version": { + "type": "string" + } + }, + "required": [ + "ResourcesVpcConfig", + "RoleArn" + ], + "type": "object" + }, + "Type": { + "enum": [ + "AWS::EKS::Cluster" + ], + "type": "string" + }, + "UpdateReplacePolicy": { + "enum": [ + "Delete", + "Retain", + "Snapshot" + ], + "type": "string" + } + }, + "required": [ + "Type", + "Properties" + ], + "type": "object" + }, + "AWS::EKS::Cluster.AccessConfig": { + "additionalProperties": false, + "properties": { + "AuthenticationMode": { + "type": "string" + }, + "BootstrapClusterCreatorAdminPermissions": { + "type": "boolean" + } + }, + "type": "object" + }, + "AWS::EKS::Cluster.ClusterLogging": { + "additionalProperties": false, + "properties": { + "EnabledTypes": { + "items": { + "$ref": "#/definitions/AWS::EKS::Cluster.LoggingTypeConfig" + }, + "type": "array" + } + }, + "type": "object" + }, + "AWS::EKS::Cluster.ControlPlanePlacement": { + "additionalProperties": false, + "properties": { + "GroupName": { + "type": "string" + } + }, + "type": "object" + }, + "AWS::EKS::Cluster.EncryptionConfig": { + "additionalProperties": false, + "properties": { + "Provider": { + "$ref": "#/definitions/AWS::EKS::Cluster.Provider" + }, + "Resources": { + "items": { + "type": "string" + }, + "type": "array" + } + }, + "type": "object" + }, + "AWS::EKS::Cluster.KubernetesNetworkConfig": { + "additionalProperties": false, + "properties": { + "IpFamily": { + "type": "string" + }, + "ServiceIpv4Cidr": { + "type": "string" + }, + "ServiceIpv6Cidr": { + "type": "string" + } + }, + "type": "object" + }, + "AWS::EKS::Cluster.Logging": { + "additionalProperties": false, + "properties": { + "ClusterLogging": { + "$ref": "#/definitions/AWS::EKS::Cluster.ClusterLogging" + } + }, + "type": "object" + }, + "AWS::EKS::Cluster.LoggingTypeConfig": { + "additionalProperties": false, + "properties": { + "Type": { + "type": "string" + } + }, + "type": "object" + }, + "AWS::EKS::Cluster.OutpostConfig": { + "additionalProperties": false, + "properties": { + "ControlPlaneInstanceType": { + "type": "string" + }, + "ControlPlanePlacement": { + "$ref": "#/definitions/AWS::EKS::Cluster.ControlPlanePlacement" + }, + "OutpostArns": { + "items": { + "type": "string" + }, + "type": "array" + } + }, + "required": [ + "ControlPlaneInstanceType", + "OutpostArns" + ], + "type": "object" + }, + "AWS::EKS::Cluster.Provider": { + "additionalProperties": false, + "properties": { + "KeyArn": { + "type": "string" + } + }, + "type": "object" + }, + "AWS::EKS::Cluster.ResourcesVpcConfig": { + "additionalProperties": false, + "properties": { + "EndpointPrivateAccess": { + "type": "boolean" + }, + "EndpointPublicAccess": { + "type": "boolean" + }, + "PublicAccessCidrs": { + "items": { + "type": "string" + }, + "type": "array" + }, + "SecurityGroupIds": { + "items": { + "type": "string" + }, + "type": "array" + }, + "SubnetIds": { + "items": { + "type": "string" + }, + "type": "array" + } + }, + "required": [ + "SubnetIds" + ], + "type": "object" + }, + "AWS::EKS::FargateProfile": { "additionalProperties": false, "properties": { "Condition": { @@ -78519,9 +79196,18 @@ var SamSchema = `{ "Properties": { "additionalProperties": false, "properties": { + "DeadLetterConfig": { + "$ref": "#/definitions/AWS::Events::EventBus.DeadLetterConfig" + }, + "Description": { + "type": "string" + }, "EventSourceName": { "type": "string" }, + "KmsKeyIdentifier": { + "type": "string" + }, "Name": { "type": "string" }, @@ -78561,6 +79247,15 @@ var SamSchema = `{ ], "type": "object" }, + "AWS::Events::EventBus.DeadLetterConfig": { + "additionalProperties": false, + "properties": { + "Arn": { + "type": "string" + } + }, + "type": "object" + }, "AWS::Events::EventBusPolicy": { "additionalProperties": false, "properties": { @@ -80536,6 +81231,94 @@ var SamSchema = `{ }, "type": "object" }, + "AWS::FMS::Policy.IcmpTypeCode": { + "additionalProperties": false, + "properties": { + "Code": { + "type": "number" + }, + "Type": { + "type": "number" + } + }, + "required": [ + "Code", + "Type" + ], + "type": "object" + }, + "AWS::FMS::Policy.NetworkAclCommonPolicy": { + "additionalProperties": false, + "properties": { + "NetworkAclEntrySet": { + "$ref": "#/definitions/AWS::FMS::Policy.NetworkAclEntrySet" + } + }, + "required": [ + "NetworkAclEntrySet" + ], + "type": "object" + }, + "AWS::FMS::Policy.NetworkAclEntry": { + "additionalProperties": false, + "properties": { + "CidrBlock": { + "type": "string" + }, + "Egress": { + "type": "boolean" + }, + "IcmpTypeCode": { + "$ref": "#/definitions/AWS::FMS::Policy.IcmpTypeCode" + }, + "Ipv6CidrBlock": { + "type": "string" + }, + "PortRange": { + "$ref": "#/definitions/AWS::FMS::Policy.PortRange" + }, + "Protocol": { + "type": "string" + }, + "RuleAction": { + "type": "string" + } + }, + "required": [ + "Egress", + "Protocol", + "RuleAction" + ], + "type": "object" + }, + "AWS::FMS::Policy.NetworkAclEntrySet": { + "additionalProperties": false, + "properties": { + "FirstEntries": { + "items": { + "$ref": "#/definitions/AWS::FMS::Policy.NetworkAclEntry" + }, + "type": "array" + }, + "ForceRemediateForFirstEntries": { + "type": "boolean" + }, + "ForceRemediateForLastEntries": { + "type": "boolean" + }, + "LastEntries": { + "items": { + "$ref": "#/definitions/AWS::FMS::Policy.NetworkAclEntry" + }, + "type": "array" + } + }, + "required": [ + "ForceRemediateForFirstEntries", + "ForceRemediateForLastEntries" + ], + "type": "object" + }, "AWS::FMS::Policy.NetworkFirewallPolicy": { "additionalProperties": false, "properties": { @@ -80551,6 +81334,9 @@ var SamSchema = `{ "AWS::FMS::Policy.PolicyOption": { "additionalProperties": false, "properties": { + "NetworkAclCommonPolicy": { + "$ref": "#/definitions/AWS::FMS::Policy.NetworkAclCommonPolicy" + }, "NetworkFirewallPolicy": { "$ref": "#/definitions/AWS::FMS::Policy.NetworkFirewallPolicy" }, @@ -80576,6 +81362,22 @@ var SamSchema = `{ ], "type": "object" }, + "AWS::FMS::Policy.PortRange": { + "additionalProperties": false, + "properties": { + "From": { + "type": "number" + }, + "To": { + "type": "number" + } + }, + "required": [ + "From", + "To" + ], + "type": "object" + }, "AWS::FMS::Policy.ResourceTag": { "additionalProperties": false, "properties": { @@ -81028,6 +81830,9 @@ var SamSchema = `{ "ImportedFileChunkSize": { "type": "number" }, + "MetadataConfiguration": { + "$ref": "#/definitions/AWS::FSx::FileSystem.MetadataConfiguration" + }, "PerUnitStorageThroughput": { "type": "number" }, @@ -81037,6 +81842,18 @@ var SamSchema = `{ }, "type": "object" }, + "AWS::FSx::FileSystem.MetadataConfiguration": { + "additionalProperties": false, + "properties": { + "Iops": { + "type": "number" + }, + "Mode": { + "type": "string" + } + }, + "type": "object" + }, "AWS::FSx::FileSystem.NfsExports": { "additionalProperties": false, "properties": { @@ -85532,6 +86349,12 @@ var SamSchema = `{ "ConnectionName": { "type": "string" }, + "EnableAdditionalMetadata": { + "items": { + "type": "string" + }, + "type": "array" + }, "Exclusions": { "items": { "type": "string" @@ -86267,6 +87090,9 @@ var SamSchema = `{ "LogUri": { "type": "string" }, + "MaintenanceWindow": { + "type": "string" + }, "MaxCapacity": { "type": "number" }, @@ -116643,6 +117469,9 @@ var SamSchema = `{ "FunctionName": { "type": "string" }, + "Policy": { + "type": "object" + }, "ProvisionedConcurrencyConfig": { "$ref": "#/definitions/AWS::Lambda::Version.ProvisionedConcurrencyConfiguration" }, @@ -124538,9 +125367,15 @@ var SamSchema = `{ "LoggingConfiguration": { "$ref": "#/definitions/AWS::MWAA::Environment.LoggingConfiguration" }, + "MaxWebservers": { + "type": "number" + }, "MaxWorkers": { "type": "number" }, + "MinWebservers": { + "type": "number" + }, "MinWorkers": { "type": "number" }, @@ -125927,6 +126762,15 @@ var SamSchema = `{ "AvailabilityZone": { "type": "string" }, + "Maintenance": { + "$ref": "#/definitions/AWS::MediaConnect::Flow.Maintenance" + }, + "MediaStreams": { + "items": { + "$ref": "#/definitions/AWS::MediaConnect::Flow.MediaStream" + }, + "type": "array" + }, "Name": { "type": "string" }, @@ -125935,6 +126779,12 @@ var SamSchema = `{ }, "SourceFailoverConfig": { "$ref": "#/definitions/AWS::MediaConnect::Flow.FailoverConfig" + }, + "VpcInterfaces": { + "items": { + "$ref": "#/definitions/AWS::MediaConnect::Flow.VpcInterface" + }, + "type": "array" } }, "required": [ @@ -126018,6 +126868,33 @@ var SamSchema = `{ }, "type": "object" }, + "AWS::MediaConnect::Flow.Fmtp": { + "additionalProperties": false, + "properties": { + "ChannelOrder": { + "type": "string" + }, + "Colorimetry": { + "type": "string" + }, + "ExactFramerate": { + "type": "string" + }, + "Par": { + "type": "string" + }, + "Range": { + "type": "string" + }, + "ScanMode": { + "type": "string" + }, + "Tcs": { + "type": "string" + } + }, + "type": "object" + }, "AWS::MediaConnect::Flow.GatewayBridgeSource": { "additionalProperties": false, "properties": { @@ -126033,6 +126910,119 @@ var SamSchema = `{ ], "type": "object" }, + "AWS::MediaConnect::Flow.InputConfiguration": { + "additionalProperties": false, + "properties": { + "InputPort": { + "type": "number" + }, + "Interface": { + "$ref": "#/definitions/AWS::MediaConnect::Flow.Interface" + } + }, + "required": [ + "InputPort", + "Interface" + ], + "type": "object" + }, + "AWS::MediaConnect::Flow.Interface": { + "additionalProperties": false, + "properties": { + "Name": { + "type": "string" + } + }, + "required": [ + "Name" + ], + "type": "object" + }, + "AWS::MediaConnect::Flow.Maintenance": { + "additionalProperties": false, + "properties": { + "MaintenanceDay": { + "type": "string" + }, + "MaintenanceStartHour": { + "type": "string" + } + }, + "required": [ + "MaintenanceDay", + "MaintenanceStartHour" + ], + "type": "object" + }, + "AWS::MediaConnect::Flow.MediaStream": { + "additionalProperties": false, + "properties": { + "Attributes": { + "$ref": "#/definitions/AWS::MediaConnect::Flow.MediaStreamAttributes" + }, + "ClockRate": { + "type": "number" + }, + "Description": { + "type": "string" + }, + "Fmt": { + "type": "number" + }, + "MediaStreamId": { + "type": "number" + }, + "MediaStreamName": { + "type": "string" + }, + "MediaStreamType": { + "type": "string" + }, + "VideoFormat": { + "type": "string" + } + }, + "required": [ + "MediaStreamId", + "MediaStreamName", + "MediaStreamType" + ], + "type": "object" + }, + "AWS::MediaConnect::Flow.MediaStreamAttributes": { + "additionalProperties": false, + "properties": { + "Fmtp": { + "$ref": "#/definitions/AWS::MediaConnect::Flow.Fmtp" + }, + "Lang": { + "type": "string" + } + }, + "type": "object" + }, + "AWS::MediaConnect::Flow.MediaStreamSourceConfiguration": { + "additionalProperties": false, + "properties": { + "EncodingName": { + "type": "string" + }, + "InputConfigurations": { + "items": { + "$ref": "#/definitions/AWS::MediaConnect::Flow.InputConfiguration" + }, + "type": "array" + }, + "MediaStreamName": { + "type": "string" + } + }, + "required": [ + "EncodingName", + "MediaStreamName" + ], + "type": "object" + }, "AWS::MediaConnect::Flow.Source": { "additionalProperties": false, "properties": { @@ -126060,6 +127050,15 @@ var SamSchema = `{ "MaxLatency": { "type": "number" }, + "MaxSyncBuffer": { + "type": "number" + }, + "MediaStreamSourceConfigurations": { + "items": { + "$ref": "#/definitions/AWS::MediaConnect::Flow.MediaStreamSourceConfiguration" + }, + "type": "array" + }, "MinLatency": { "type": "number" }, @@ -126111,6 +127110,42 @@ var SamSchema = `{ ], "type": "object" }, + "AWS::MediaConnect::Flow.VpcInterface": { + "additionalProperties": false, + "properties": { + "Name": { + "type": "string" + }, + "NetworkInterfaceIds": { + "items": { + "type": "string" + }, + "type": "array" + }, + "NetworkInterfaceType": { + "type": "string" + }, + "RoleArn": { + "type": "string" + }, + "SecurityGroupIds": { + "items": { + "type": "string" + }, + "type": "array" + }, + "SubnetId": { + "type": "string" + } + }, + "required": [ + "Name", + "RoleArn", + "SecurityGroupIds", + "SubnetId" + ], + "type": "object" + }, "AWS::MediaConnect::Flow.VpcInterfaceAttachment": { "additionalProperties": false, "properties": { @@ -126302,6 +127337,12 @@ var SamSchema = `{ "MaxLatency": { "type": "number" }, + "MediaStreamOutputConfigurations": { + "items": { + "$ref": "#/definitions/AWS::MediaConnect::FlowOutput.MediaStreamOutputConfiguration" + }, + "type": "array" + }, "MinLatency": { "type": "number" }, @@ -126354,6 +127395,41 @@ var SamSchema = `{ ], "type": "object" }, + "AWS::MediaConnect::FlowOutput.DestinationConfiguration": { + "additionalProperties": false, + "properties": { + "DestinationIp": { + "type": "string" + }, + "DestinationPort": { + "type": "number" + }, + "Interface": { + "$ref": "#/definitions/AWS::MediaConnect::FlowOutput.Interface" + } + }, + "required": [ + "DestinationIp", + "DestinationPort", + "Interface" + ], + "type": "object" + }, + "AWS::MediaConnect::FlowOutput.EncodingParameters": { + "additionalProperties": false, + "properties": { + "CompressionFactor": { + "type": "number" + }, + "EncoderProfile": { + "type": "string" + } + }, + "required": [ + "CompressionFactor" + ], + "type": "object" + }, "AWS::MediaConnect::FlowOutput.Encryption": { "additionalProperties": false, "properties": { @@ -126376,6 +127452,43 @@ var SamSchema = `{ ], "type": "object" }, + "AWS::MediaConnect::FlowOutput.Interface": { + "additionalProperties": false, + "properties": { + "Name": { + "type": "string" + } + }, + "required": [ + "Name" + ], + "type": "object" + }, + "AWS::MediaConnect::FlowOutput.MediaStreamOutputConfiguration": { + "additionalProperties": false, + "properties": { + "DestinationConfigurations": { + "items": { + "$ref": "#/definitions/AWS::MediaConnect::FlowOutput.DestinationConfiguration" + }, + "type": "array" + }, + "EncodingName": { + "type": "string" + }, + "EncodingParameters": { + "$ref": "#/definitions/AWS::MediaConnect::FlowOutput.EncodingParameters" + }, + "MediaStreamName": { + "type": "string" + } + }, + "required": [ + "EncodingName", + "MediaStreamName" + ], + "type": "object" + }, "AWS::MediaConnect::FlowOutput.VpcInterfaceAttachment": { "additionalProperties": false, "properties": { @@ -127533,6 +128646,9 @@ var SamSchema = `{ "properties": { "AvailSettings": { "$ref": "#/definitions/AWS::MediaLive::Channel.AvailSettings" + }, + "Scte35SegmentationScope": { + "type": "string" } }, "type": "object" @@ -132344,6 +133460,12 @@ var SamSchema = `{ "ContainerType": { "type": "string" }, + "DashManifests": { + "items": { + "$ref": "#/definitions/AWS::MediaPackageV2::OriginEndpoint.DashManifestConfiguration" + }, + "type": "array" + }, "Description": { "type": "string" }, @@ -132403,6 +133525,63 @@ var SamSchema = `{ ], "type": "object" }, + "AWS::MediaPackageV2::OriginEndpoint.DashManifestConfiguration": { + "additionalProperties": false, + "properties": { + "DrmSignaling": { + "type": "string" + }, + "FilterConfiguration": { + "$ref": "#/definitions/AWS::MediaPackageV2::OriginEndpoint.FilterConfiguration" + }, + "ManifestName": { + "type": "string" + }, + "ManifestWindowSeconds": { + "type": "number" + }, + "MinBufferTimeSeconds": { + "type": "number" + }, + "MinUpdatePeriodSeconds": { + "type": "number" + }, + "PeriodTriggers": { + "items": { + "type": "string" + }, + "type": "array" + }, + "ScteDash": { + "$ref": "#/definitions/AWS::MediaPackageV2::OriginEndpoint.ScteDash" + }, + "SegmentTemplateFormat": { + "type": "string" + }, + "SuggestedPresentationDelaySeconds": { + "type": "number" + }, + "UtcTiming": { + "$ref": "#/definitions/AWS::MediaPackageV2::OriginEndpoint.DashUtcTiming" + } + }, + "required": [ + "ManifestName" + ], + "type": "object" + }, + "AWS::MediaPackageV2::OriginEndpoint.DashUtcTiming": { + "additionalProperties": false, + "properties": { + "TimingMode": { + "type": "string" + }, + "TimingSource": { + "type": "string" + } + }, + "type": "object" + }, "AWS::MediaPackageV2::OriginEndpoint.Encryption": { "additionalProperties": false, "properties": { @@ -132543,6 +133722,15 @@ var SamSchema = `{ }, "type": "object" }, + "AWS::MediaPackageV2::OriginEndpoint.ScteDash": { + "additionalProperties": false, + "properties": { + "AdMarkerDash": { + "type": "string" + } + }, + "type": "object" + }, "AWS::MediaPackageV2::OriginEndpoint.ScteHls": { "additionalProperties": false, "properties": { @@ -133335,6 +134523,9 @@ var SamSchema = `{ "AWS::MediaTailor::PlaybackConfiguration.AvailSuppression": { "additionalProperties": false, "properties": { + "FillPolicy": { + "type": "string" + }, "Mode": { "type": "string" }, @@ -134675,7 +135866,7 @@ var SamSchema = `{ ], "type": "object" }, - "AWS::NeptuneGraph::Graph": { + "AWS::Neptune::EventSubscription": { "additionalProperties": false, "properties": { "Condition": { @@ -134710,39 +135901,33 @@ var SamSchema = `{ "Properties": { "additionalProperties": false, "properties": { - "DeletionProtection": { + "Enabled": { "type": "boolean" }, - "GraphName": { - "type": "string" - }, - "ProvisionedMemory": { - "type": "number" - }, - "PublicConnectivity": { - "type": "boolean" + "EventCategories": { + "items": { + "type": "string" + }, + "type": "array" }, - "ReplicaCount": { - "type": "number" + "SnsTopicArn": { + "type": "string" }, - "Tags": { + "SourceIds": { "items": { - "$ref": "#/definitions/Tag" + "type": "string" }, "type": "array" }, - "VectorSearchConfiguration": { - "$ref": "#/definitions/AWS::NeptuneGraph::Graph.VectorSearchConfiguration" + "SourceType": { + "type": "string" } }, - "required": [ - "ProvisionedMemory" - ], "type": "object" }, "Type": { "enum": [ - "AWS::NeptuneGraph::Graph" + "AWS::Neptune::EventSubscription" ], "type": "string" }, @@ -134756,24 +135941,11 @@ var SamSchema = `{ } }, "required": [ - "Type", - "Properties" - ], - "type": "object" - }, - "AWS::NeptuneGraph::Graph.VectorSearchConfiguration": { - "additionalProperties": false, - "properties": { - "VectorSearchDimension": { - "type": "number" - } - }, - "required": [ - "VectorSearchDimension" + "Type" ], "type": "object" }, - "AWS::NeptuneGraph::PrivateGraphEndpoint": { + "AWS::NeptuneGraph::Graph": { "additionalProperties": false, "properties": { "Condition": { @@ -134808,34 +135980,39 @@ var SamSchema = `{ "Properties": { "additionalProperties": false, "properties": { - "GraphIdentifier": { + "DeletionProtection": { + "type": "boolean" + }, + "GraphName": { "type": "string" }, - "SecurityGroupIds": { - "items": { - "type": "string" - }, - "type": "array" + "ProvisionedMemory": { + "type": "number" }, - "SubnetIds": { + "PublicConnectivity": { + "type": "boolean" + }, + "ReplicaCount": { + "type": "number" + }, + "Tags": { "items": { - "type": "string" + "$ref": "#/definitions/Tag" }, "type": "array" }, - "VpcId": { - "type": "string" + "VectorSearchConfiguration": { + "$ref": "#/definitions/AWS::NeptuneGraph::Graph.VectorSearchConfiguration" } }, "required": [ - "GraphIdentifier", - "VpcId" + "ProvisionedMemory" ], "type": "object" }, "Type": { "enum": [ - "AWS::NeptuneGraph::PrivateGraphEndpoint" + "AWS::NeptuneGraph::Graph" ], "type": "string" }, @@ -134854,7 +136031,19 @@ var SamSchema = `{ ], "type": "object" }, - "AWS::NetworkFirewall::Firewall": { + "AWS::NeptuneGraph::Graph.VectorSearchConfiguration": { + "additionalProperties": false, + "properties": { + "VectorSearchDimension": { + "type": "number" + } + }, + "required": [ + "VectorSearchDimension" + ], + "type": "object" + }, + "AWS::NeptuneGraph::PrivateGraphEndpoint": { "additionalProperties": false, "properties": { "Condition": { @@ -134889,33 +136078,18 @@ var SamSchema = `{ "Properties": { "additionalProperties": false, "properties": { - "DeleteProtection": { - "type": "boolean" - }, - "Description": { - "type": "string" - }, - "FirewallName": { - "type": "string" - }, - "FirewallPolicyArn": { + "GraphIdentifier": { "type": "string" }, - "FirewallPolicyChangeProtection": { - "type": "boolean" - }, - "SubnetChangeProtection": { - "type": "boolean" - }, - "SubnetMappings": { + "SecurityGroupIds": { "items": { - "$ref": "#/definitions/AWS::NetworkFirewall::Firewall.SubnetMapping" + "type": "string" }, "type": "array" }, - "Tags": { + "SubnetIds": { "items": { - "$ref": "#/definitions/Tag" + "type": "string" }, "type": "array" }, @@ -134924,16 +136098,14 @@ var SamSchema = `{ } }, "required": [ - "FirewallName", - "FirewallPolicyArn", - "SubnetMappings", + "GraphIdentifier", "VpcId" ], "type": "object" }, "Type": { "enum": [ - "AWS::NetworkFirewall::Firewall" + "AWS::NeptuneGraph::PrivateGraphEndpoint" ], "type": "string" }, @@ -134952,22 +136124,120 @@ var SamSchema = `{ ], "type": "object" }, - "AWS::NetworkFirewall::Firewall.SubnetMapping": { - "additionalProperties": false, - "properties": { - "IPAddressType": { - "type": "string" - }, - "SubnetId": { - "type": "string" - } - }, - "required": [ - "SubnetId" - ], - "type": "object" - }, - "AWS::NetworkFirewall::FirewallPolicy": { + "AWS::NetworkFirewall::Firewall": { + "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": { + "DeleteProtection": { + "type": "boolean" + }, + "Description": { + "type": "string" + }, + "FirewallName": { + "type": "string" + }, + "FirewallPolicyArn": { + "type": "string" + }, + "FirewallPolicyChangeProtection": { + "type": "boolean" + }, + "SubnetChangeProtection": { + "type": "boolean" + }, + "SubnetMappings": { + "items": { + "$ref": "#/definitions/AWS::NetworkFirewall::Firewall.SubnetMapping" + }, + "type": "array" + }, + "Tags": { + "items": { + "$ref": "#/definitions/Tag" + }, + "type": "array" + }, + "VpcId": { + "type": "string" + } + }, + "required": [ + "FirewallName", + "FirewallPolicyArn", + "SubnetMappings", + "VpcId" + ], + "type": "object" + }, + "Type": { + "enum": [ + "AWS::NetworkFirewall::Firewall" + ], + "type": "string" + }, + "UpdateReplacePolicy": { + "enum": [ + "Delete", + "Retain", + "Snapshot" + ], + "type": "string" + } + }, + "required": [ + "Type", + "Properties" + ], + "type": "object" + }, + "AWS::NetworkFirewall::Firewall.SubnetMapping": { + "additionalProperties": false, + "properties": { + "IPAddressType": { + "type": "string" + }, + "SubnetId": { + "type": "string" + } + }, + "required": [ + "SubnetId" + ], + "type": "object" + }, + "AWS::NetworkFirewall::FirewallPolicy": { "additionalProperties": false, "properties": { "Condition": { @@ -146975,6 +148245,26 @@ var SamSchema = `{ }, "type": "object" }, + "AWS::Pipes::Pipe.DimensionMapping": { + "additionalProperties": false, + "properties": { + "DimensionName": { + "type": "string" + }, + "DimensionValue": { + "type": "string" + }, + "DimensionValueType": { + "type": "string" + } + }, + "required": [ + "DimensionName", + "DimensionValue", + "DimensionValueType" + ], + "type": "object" + }, "AWS::Pipes::Pipe.EcsContainerOverride": { "additionalProperties": false, "properties": { @@ -147172,6 +148462,45 @@ var SamSchema = `{ }, "type": "object" }, + "AWS::Pipes::Pipe.MultiMeasureAttributeMapping": { + "additionalProperties": false, + "properties": { + "MeasureValue": { + "type": "string" + }, + "MeasureValueType": { + "type": "string" + }, + "MultiMeasureAttributeName": { + "type": "string" + } + }, + "required": [ + "MeasureValue", + "MeasureValueType", + "MultiMeasureAttributeName" + ], + "type": "object" + }, + "AWS::Pipes::Pipe.MultiMeasureMapping": { + "additionalProperties": false, + "properties": { + "MultiMeasureAttributeMappings": { + "items": { + "$ref": "#/definitions/AWS::Pipes::Pipe.MultiMeasureAttributeMapping" + }, + "type": "array" + }, + "MultiMeasureName": { + "type": "string" + } + }, + "required": [ + "MultiMeasureAttributeMappings", + "MultiMeasureName" + ], + "type": "object" + }, "AWS::Pipes::Pipe.NetworkConfiguration": { "additionalProperties": false, "properties": { @@ -147702,6 +149031,9 @@ var SamSchema = `{ }, "StepFunctionStateMachineParameters": { "$ref": "#/definitions/AWS::Pipes::Pipe.PipeTargetStateMachineParameters" + }, + "TimestreamParameters": { + "$ref": "#/definitions/AWS::Pipes::Pipe.PipeTargetTimestreamParameters" } }, "type": "object" @@ -147770,6 +149102,50 @@ var SamSchema = `{ }, "type": "object" }, + "AWS::Pipes::Pipe.PipeTargetTimestreamParameters": { + "additionalProperties": false, + "properties": { + "DimensionMappings": { + "items": { + "$ref": "#/definitions/AWS::Pipes::Pipe.DimensionMapping" + }, + "type": "array" + }, + "EpochTimeUnit": { + "type": "string" + }, + "MultiMeasureMappings": { + "items": { + "$ref": "#/definitions/AWS::Pipes::Pipe.MultiMeasureMapping" + }, + "type": "array" + }, + "SingleMeasureMappings": { + "items": { + "$ref": "#/definitions/AWS::Pipes::Pipe.SingleMeasureMapping" + }, + "type": "array" + }, + "TimeFieldType": { + "type": "string" + }, + "TimeValue": { + "type": "string" + }, + "TimestampFormat": { + "type": "string" + }, + "VersionValue": { + "type": "string" + } + }, + "required": [ + "DimensionMappings", + "TimeValue", + "VersionValue" + ], + "type": "object" + }, "AWS::Pipes::Pipe.PlacementConstraint": { "additionalProperties": false, "properties": { @@ -147864,89 +149240,109 @@ var SamSchema = `{ }, "type": "object" }, - "AWS::Proton::EnvironmentAccountConnection": { + "AWS::Pipes::Pipe.SingleMeasureMapping": { "additionalProperties": false, "properties": { - "Condition": { - "type": "string" - }, - "DeletionPolicy": { - "enum": [ - "Delete", - "Retain", - "Snapshot" - ], + "MeasureName": { "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": { - "CodebuildRoleArn": { - "type": "string" - }, - "ComponentRoleArn": { - "type": "string" - }, - "EnvironmentAccountId": { - "type": "string" - }, - "EnvironmentName": { - "type": "string" - }, - "ManagementAccountId": { - "type": "string" - }, - "RoleArn": { - "type": "string" - }, - "Tags": { - "items": { - "$ref": "#/definitions/Tag" - }, - "type": "array" - } - }, - "type": "object" - }, - "Type": { - "enum": [ - "AWS::Proton::EnvironmentAccountConnection" - ], + "MeasureValue": { "type": "string" }, - "UpdateReplacePolicy": { - "enum": [ - "Delete", - "Retain", - "Snapshot" - ], + "MeasureValueType": { "type": "string" } }, "required": [ - "Type" + "MeasureName", + "MeasureValue", + "MeasureValueType" ], "type": "object" }, - "AWS::Proton::EnvironmentTemplate": { + "AWS::Proton::EnvironmentAccountConnection": { + "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": { + "CodebuildRoleArn": { + "type": "string" + }, + "ComponentRoleArn": { + "type": "string" + }, + "EnvironmentAccountId": { + "type": "string" + }, + "EnvironmentName": { + "type": "string" + }, + "ManagementAccountId": { + "type": "string" + }, + "RoleArn": { + "type": "string" + }, + "Tags": { + "items": { + "$ref": "#/definitions/Tag" + }, + "type": "array" + } + }, + "type": "object" + }, + "Type": { + "enum": [ + "AWS::Proton::EnvironmentAccountConnection" + ], + "type": "string" + }, + "UpdateReplacePolicy": { + "enum": [ + "Delete", + "Retain", + "Snapshot" + ], + "type": "string" + } + }, + "required": [ + "Type" + ], + "type": "object" + }, + "AWS::Proton::EnvironmentTemplate": { "additionalProperties": false, "properties": { "Condition": { @@ -148060,19 +149456,875 @@ var SamSchema = `{ "Properties": { "additionalProperties": false, "properties": { - "Description": { + "Description": { + "type": "string" + }, + "DisplayName": { + "type": "string" + }, + "EncryptionKey": { + "type": "string" + }, + "Name": { + "type": "string" + }, + "PipelineProvisioning": { + "type": "string" + }, + "Tags": { + "items": { + "$ref": "#/definitions/Tag" + }, + "type": "array" + } + }, + "type": "object" + }, + "Type": { + "enum": [ + "AWS::Proton::ServiceTemplate" + ], + "type": "string" + }, + "UpdateReplacePolicy": { + "enum": [ + "Delete", + "Retain", + "Snapshot" + ], + "type": "string" + } + }, + "required": [ + "Type" + ], + "type": "object" + }, + "AWS::QBusiness::Application": { + "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": { + "AttachmentsConfiguration": { + "$ref": "#/definitions/AWS::QBusiness::Application.AttachmentsConfiguration" + }, + "Description": { + "type": "string" + }, + "DisplayName": { + "type": "string" + }, + "EncryptionConfiguration": { + "$ref": "#/definitions/AWS::QBusiness::Application.EncryptionConfiguration" + }, + "IdentityCenterInstanceArn": { + "type": "string" + }, + "RoleArn": { + "type": "string" + }, + "Tags": { + "items": { + "$ref": "#/definitions/Tag" + }, + "type": "array" + } + }, + "required": [ + "DisplayName" + ], + "type": "object" + }, + "Type": { + "enum": [ + "AWS::QBusiness::Application" + ], + "type": "string" + }, + "UpdateReplacePolicy": { + "enum": [ + "Delete", + "Retain", + "Snapshot" + ], + "type": "string" + } + }, + "required": [ + "Type", + "Properties" + ], + "type": "object" + }, + "AWS::QBusiness::Application.AttachmentsConfiguration": { + "additionalProperties": false, + "properties": { + "AttachmentsControlMode": { + "type": "string" + } + }, + "required": [ + "AttachmentsControlMode" + ], + "type": "object" + }, + "AWS::QBusiness::Application.EncryptionConfiguration": { + "additionalProperties": false, + "properties": { + "KmsKeyId": { + "type": "string" + } + }, + "type": "object" + }, + "AWS::QBusiness::DataSource": { + "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": { + "ApplicationId": { + "type": "string" + }, + "Configuration": { + "type": "object" + }, + "Description": { + "type": "string" + }, + "DisplayName": { + "type": "string" + }, + "DocumentEnrichmentConfiguration": { + "$ref": "#/definitions/AWS::QBusiness::DataSource.DocumentEnrichmentConfiguration" + }, + "IndexId": { + "type": "string" + }, + "RoleArn": { + "type": "string" + }, + "SyncSchedule": { + "type": "string" + }, + "Tags": { + "items": { + "$ref": "#/definitions/Tag" + }, + "type": "array" + }, + "VpcConfiguration": { + "$ref": "#/definitions/AWS::QBusiness::DataSource.DataSourceVpcConfiguration" + } + }, + "required": [ + "ApplicationId", + "Configuration", + "DisplayName", + "IndexId" + ], + "type": "object" + }, + "Type": { + "enum": [ + "AWS::QBusiness::DataSource" + ], + "type": "string" + }, + "UpdateReplacePolicy": { + "enum": [ + "Delete", + "Retain", + "Snapshot" + ], + "type": "string" + } + }, + "required": [ + "Type", + "Properties" + ], + "type": "object" + }, + "AWS::QBusiness::DataSource.DataSourceVpcConfiguration": { + "additionalProperties": false, + "properties": { + "SecurityGroupIds": { + "items": { + "type": "string" + }, + "type": "array" + }, + "SubnetIds": { + "items": { + "type": "string" + }, + "type": "array" + } + }, + "required": [ + "SecurityGroupIds", + "SubnetIds" + ], + "type": "object" + }, + "AWS::QBusiness::DataSource.DocumentAttributeCondition": { + "additionalProperties": false, + "properties": { + "Key": { + "type": "string" + }, + "Operator": { + "type": "string" + }, + "Value": { + "$ref": "#/definitions/AWS::QBusiness::DataSource.DocumentAttributeValue" + } + }, + "required": [ + "Key", + "Operator" + ], + "type": "object" + }, + "AWS::QBusiness::DataSource.DocumentAttributeTarget": { + "additionalProperties": false, + "properties": { + "AttributeValueOperator": { + "type": "string" + }, + "Key": { + "type": "string" + }, + "Value": { + "$ref": "#/definitions/AWS::QBusiness::DataSource.DocumentAttributeValue" + } + }, + "required": [ + "Key" + ], + "type": "object" + }, + "AWS::QBusiness::DataSource.DocumentAttributeValue": { + "additionalProperties": false, + "properties": { + "DateValue": { + "type": "string" + }, + "LongValue": { + "type": "number" + }, + "StringListValue": { + "items": { + "type": "string" + }, + "type": "array" + }, + "StringValue": { + "type": "string" + } + }, + "type": "object" + }, + "AWS::QBusiness::DataSource.DocumentEnrichmentConfiguration": { + "additionalProperties": false, + "properties": { + "InlineConfigurations": { + "items": { + "$ref": "#/definitions/AWS::QBusiness::DataSource.InlineDocumentEnrichmentConfiguration" + }, + "type": "array" + }, + "PostExtractionHookConfiguration": { + "$ref": "#/definitions/AWS::QBusiness::DataSource.HookConfiguration" + }, + "PreExtractionHookConfiguration": { + "$ref": "#/definitions/AWS::QBusiness::DataSource.HookConfiguration" + } + }, + "type": "object" + }, + "AWS::QBusiness::DataSource.HookConfiguration": { + "additionalProperties": false, + "properties": { + "InvocationCondition": { + "$ref": "#/definitions/AWS::QBusiness::DataSource.DocumentAttributeCondition" + }, + "LambdaArn": { + "type": "string" + }, + "RoleArn": { + "type": "string" + }, + "S3BucketName": { + "type": "string" + } + }, + "type": "object" + }, + "AWS::QBusiness::DataSource.InlineDocumentEnrichmentConfiguration": { + "additionalProperties": false, + "properties": { + "Condition": { + "$ref": "#/definitions/AWS::QBusiness::DataSource.DocumentAttributeCondition" + }, + "DocumentContentOperator": { + "type": "string" + }, + "Target": { + "$ref": "#/definitions/AWS::QBusiness::DataSource.DocumentAttributeTarget" + } + }, + "type": "object" + }, + "AWS::QBusiness::Index": { + "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": { + "ApplicationId": { + "type": "string" + }, + "CapacityConfiguration": { + "$ref": "#/definitions/AWS::QBusiness::Index.IndexCapacityConfiguration" + }, + "Description": { + "type": "string" + }, + "DisplayName": { + "type": "string" + }, + "DocumentAttributeConfigurations": { + "items": { + "$ref": "#/definitions/AWS::QBusiness::Index.DocumentAttributeConfiguration" + }, + "type": "array" + }, + "Tags": { + "items": { + "$ref": "#/definitions/Tag" + }, + "type": "array" + }, + "Type": { + "type": "string" + } + }, + "required": [ + "ApplicationId", + "DisplayName" + ], + "type": "object" + }, + "Type": { + "enum": [ + "AWS::QBusiness::Index" + ], + "type": "string" + }, + "UpdateReplacePolicy": { + "enum": [ + "Delete", + "Retain", + "Snapshot" + ], + "type": "string" + } + }, + "required": [ + "Type", + "Properties" + ], + "type": "object" + }, + "AWS::QBusiness::Index.DocumentAttributeConfiguration": { + "additionalProperties": false, + "properties": { + "Name": { + "type": "string" + }, + "Search": { + "type": "string" + }, + "Type": { + "type": "string" + } + }, + "type": "object" + }, + "AWS::QBusiness::Index.IndexCapacityConfiguration": { + "additionalProperties": false, + "properties": { + "Units": { + "type": "number" + } + }, + "type": "object" + }, + "AWS::QBusiness::Index.IndexStatistics": { + "additionalProperties": false, + "properties": { + "TextDocumentStatistics": { + "$ref": "#/definitions/AWS::QBusiness::Index.TextDocumentStatistics" + } + }, + "type": "object" + }, + "AWS::QBusiness::Index.TextDocumentStatistics": { + "additionalProperties": false, + "properties": { + "IndexedTextBytes": { + "type": "number" + }, + "IndexedTextDocumentCount": { + "type": "number" + } + }, + "type": "object" + }, + "AWS::QBusiness::Plugin": { + "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": { + "ApplicationId": { + "type": "string" + }, + "AuthConfiguration": { + "$ref": "#/definitions/AWS::QBusiness::Plugin.PluginAuthConfiguration" + }, + "CustomPluginConfiguration": { + "$ref": "#/definitions/AWS::QBusiness::Plugin.CustomPluginConfiguration" + }, + "DisplayName": { + "type": "string" + }, + "ServerUrl": { + "type": "string" + }, + "State": { + "type": "string" + }, + "Tags": { + "items": { + "$ref": "#/definitions/Tag" + }, + "type": "array" + }, + "Type": { + "type": "string" + } + }, + "required": [ + "ApplicationId", + "AuthConfiguration", + "DisplayName", + "Type" + ], + "type": "object" + }, + "Type": { + "enum": [ + "AWS::QBusiness::Plugin" + ], + "type": "string" + }, + "UpdateReplacePolicy": { + "enum": [ + "Delete", + "Retain", + "Snapshot" + ], + "type": "string" + } + }, + "required": [ + "Type", + "Properties" + ], + "type": "object" + }, + "AWS::QBusiness::Plugin.APISchema": { + "additionalProperties": false, + "properties": { + "Payload": { + "type": "string" + }, + "S3": { + "$ref": "#/definitions/AWS::QBusiness::Plugin.S3" + } + }, + "type": "object" + }, + "AWS::QBusiness::Plugin.BasicAuthConfiguration": { + "additionalProperties": false, + "properties": { + "RoleArn": { + "type": "string" + }, + "SecretArn": { + "type": "string" + } + }, + "required": [ + "RoleArn", + "SecretArn" + ], + "type": "object" + }, + "AWS::QBusiness::Plugin.CustomPluginConfiguration": { + "additionalProperties": false, + "properties": { + "ApiSchema": { + "$ref": "#/definitions/AWS::QBusiness::Plugin.APISchema" + }, + "ApiSchemaType": { + "type": "string" + }, + "Description": { + "type": "string" + } + }, + "required": [ + "ApiSchema", + "ApiSchemaType", + "Description" + ], + "type": "object" + }, + "AWS::QBusiness::Plugin.OAuth2ClientCredentialConfiguration": { + "additionalProperties": false, + "properties": { + "RoleArn": { + "type": "string" + }, + "SecretArn": { + "type": "string" + } + }, + "required": [ + "RoleArn", + "SecretArn" + ], + "type": "object" + }, + "AWS::QBusiness::Plugin.PluginAuthConfiguration": { + "additionalProperties": false, + "properties": { + "BasicAuthConfiguration": { + "$ref": "#/definitions/AWS::QBusiness::Plugin.BasicAuthConfiguration" + }, + "NoAuthConfiguration": { + "type": "object" + }, + "OAuth2ClientCredentialConfiguration": { + "$ref": "#/definitions/AWS::QBusiness::Plugin.OAuth2ClientCredentialConfiguration" + } + }, + "type": "object" + }, + "AWS::QBusiness::Plugin.S3": { + "additionalProperties": false, + "properties": { + "Bucket": { + "type": "string" + }, + "Key": { + "type": "string" + } + }, + "required": [ + "Bucket", + "Key" + ], + "type": "object" + }, + "AWS::QBusiness::Retriever": { + "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": { + "ApplicationId": { "type": "string" }, + "Configuration": { + "$ref": "#/definitions/AWS::QBusiness::Retriever.RetrieverConfiguration" + }, "DisplayName": { "type": "string" }, - "EncryptionKey": { + "RoleArn": { "type": "string" }, - "Name": { + "Tags": { + "items": { + "$ref": "#/definitions/Tag" + }, + "type": "array" + }, + "Type": { + "type": "string" + } + }, + "required": [ + "ApplicationId", + "Configuration", + "DisplayName", + "Type" + ], + "type": "object" + }, + "Type": { + "enum": [ + "AWS::QBusiness::Retriever" + ], + "type": "string" + }, + "UpdateReplacePolicy": { + "enum": [ + "Delete", + "Retain", + "Snapshot" + ], + "type": "string" + } + }, + "required": [ + "Type", + "Properties" + ], + "type": "object" + }, + "AWS::QBusiness::Retriever.KendraIndexConfiguration": { + "additionalProperties": false, + "properties": { + "IndexId": { + "type": "string" + } + }, + "required": [ + "IndexId" + ], + "type": "object" + }, + "AWS::QBusiness::Retriever.NativeIndexConfiguration": { + "additionalProperties": false, + "properties": { + "IndexId": { + "type": "string" + } + }, + "required": [ + "IndexId" + ], + "type": "object" + }, + "AWS::QBusiness::Retriever.RetrieverConfiguration": { + "additionalProperties": false, + "properties": { + "KendraIndexConfiguration": { + "$ref": "#/definitions/AWS::QBusiness::Retriever.KendraIndexConfiguration" + }, + "NativeIndexConfiguration": { + "$ref": "#/definitions/AWS::QBusiness::Retriever.NativeIndexConfiguration" + } + }, + "type": "object" + }, + "AWS::QBusiness::WebExperience": { + "additionalProperties": false, + "properties": { + "Condition": { + "type": "string" + }, + "DeletionPolicy": { + "enum": [ + "Delete", + "Retain", + "Snapshot" + ], + "type": "string" + }, + "DependsOn": { + "anyOf": [ + { + "pattern": "^[a-zA-Z0-9]+$", "type": "string" }, - "PipelineProvisioning": { + { + "items": { + "pattern": "^[a-zA-Z0-9]+$", + "type": "string" + }, + "type": "array" + } + ] + }, + "Metadata": { + "type": "object" + }, + "Properties": { + "additionalProperties": false, + "properties": { + "ApplicationId": { + "type": "string" + }, + "RoleArn": { + "type": "string" + }, + "SamplePromptsControlMode": { + "type": "string" + }, + "Subtitle": { "type": "string" }, "Tags": { @@ -148080,13 +150332,22 @@ var SamSchema = `{ "$ref": "#/definitions/Tag" }, "type": "array" + }, + "Title": { + "type": "string" + }, + "WelcomeMessage": { + "type": "string" } }, + "required": [ + "ApplicationId" + ], "type": "object" }, "Type": { "enum": [ - "AWS::Proton::ServiceTemplate" + "AWS::QBusiness::WebExperience" ], "type": "string" }, @@ -148100,7 +150361,8 @@ var SamSchema = `{ } }, "required": [ - "Type" + "Type", + "Properties" ], "type": "object" }, @@ -157132,6 +159394,15 @@ var SamSchema = `{ }, "type": "object" }, + "AWS::QuickSight::Analysis.WaterfallChartColorConfiguration": { + "additionalProperties": false, + "properties": { + "GroupColorConfiguration": { + "$ref": "#/definitions/AWS::QuickSight::Analysis.WaterfallChartGroupColorConfiguration" + } + }, + "type": "object" + }, "AWS::QuickSight::Analysis.WaterfallChartConfiguration": { "additionalProperties": false, "properties": { @@ -157141,6 +159412,9 @@ var SamSchema = `{ "CategoryAxisLabelOptions": { "$ref": "#/definitions/AWS::QuickSight::Analysis.ChartAxisLabelOptions" }, + "ColorConfiguration": { + "$ref": "#/definitions/AWS::QuickSight::Analysis.WaterfallChartColorConfiguration" + }, "DataLabels": { "$ref": "#/definitions/AWS::QuickSight::Analysis.DataLabelOptions" }, @@ -157177,6 +159451,21 @@ var SamSchema = `{ }, "type": "object" }, + "AWS::QuickSight::Analysis.WaterfallChartGroupColorConfiguration": { + "additionalProperties": false, + "properties": { + "NegativeBarColor": { + "type": "string" + }, + "PositiveBarColor": { + "type": "string" + }, + "TotalBarColor": { + "type": "string" + } + }, + "type": "object" + }, "AWS::QuickSight::Analysis.WaterfallChartOptions": { "additionalProperties": false, "properties": { @@ -166437,6 +168726,15 @@ var SamSchema = `{ }, "type": "object" }, + "AWS::QuickSight::Dashboard.WaterfallChartColorConfiguration": { + "additionalProperties": false, + "properties": { + "GroupColorConfiguration": { + "$ref": "#/definitions/AWS::QuickSight::Dashboard.WaterfallChartGroupColorConfiguration" + } + }, + "type": "object" + }, "AWS::QuickSight::Dashboard.WaterfallChartConfiguration": { "additionalProperties": false, "properties": { @@ -166446,6 +168744,9 @@ var SamSchema = `{ "CategoryAxisLabelOptions": { "$ref": "#/definitions/AWS::QuickSight::Dashboard.ChartAxisLabelOptions" }, + "ColorConfiguration": { + "$ref": "#/definitions/AWS::QuickSight::Dashboard.WaterfallChartColorConfiguration" + }, "DataLabels": { "$ref": "#/definitions/AWS::QuickSight::Dashboard.DataLabelOptions" }, @@ -166482,6 +168783,21 @@ var SamSchema = `{ }, "type": "object" }, + "AWS::QuickSight::Dashboard.WaterfallChartGroupColorConfiguration": { + "additionalProperties": false, + "properties": { + "NegativeBarColor": { + "type": "string" + }, + "PositiveBarColor": { + "type": "string" + }, + "TotalBarColor": { + "type": "string" + } + }, + "type": "object" + }, "AWS::QuickSight::Dashboard.WaterfallChartOptions": { "additionalProperties": false, "properties": { @@ -166973,6 +169289,9 @@ var SamSchema = `{ "$ref": "#/definitions/AWS::QuickSight::DataSet.RefreshConfiguration" } }, + "required": [ + "RefreshConfiguration" + ], "type": "object" }, "AWS::QuickSight::DataSet.DataSetUsageConfiguration": { @@ -167134,6 +169453,9 @@ var SamSchema = `{ "$ref": "#/definitions/AWS::QuickSight::DataSet.LookbackWindow" } }, + "required": [ + "LookbackWindow" + ], "type": "object" }, "AWS::QuickSight::DataSet.IngestionWaitPolicy": { @@ -167291,6 +169613,11 @@ var SamSchema = `{ "type": "string" } }, + "required": [ + "ColumnName", + "Size", + "SizeUnit" + ], "type": "object" }, "AWS::QuickSight::DataSet.NewDefaultValues": { @@ -167396,6 +169723,9 @@ var SamSchema = `{ "$ref": "#/definitions/AWS::QuickSight::DataSet.IncrementalRefresh" } }, + "required": [ + "IncrementalRefresh" + ], "type": "object" }, "AWS::QuickSight::DataSet.RelationalTable": { @@ -167629,10 +169959,32 @@ var SamSchema = `{ }, "TagColumnOperation": { "$ref": "#/definitions/AWS::QuickSight::DataSet.TagColumnOperation" + }, + "UntagColumnOperation": { + "$ref": "#/definitions/AWS::QuickSight::DataSet.UntagColumnOperation" } }, "type": "object" }, + "AWS::QuickSight::DataSet.UntagColumnOperation": { + "additionalProperties": false, + "properties": { + "ColumnName": { + "type": "string" + }, + "TagNames": { + "items": { + "type": "string" + }, + "type": "array" + } + }, + "required": [ + "ColumnName", + "TagNames" + ], + "type": "object" + }, "AWS::QuickSight::DataSet.UploadSettings": { "additionalProperties": false, "properties": { @@ -167735,6 +170087,10 @@ var SamSchema = `{ "$ref": "#/definitions/AWS::QuickSight::DataSource.VpcConnectionProperties" } }, + "required": [ + "Name", + "Type" + ], "type": "object" }, "Type": { @@ -167753,7 +170109,8 @@ var SamSchema = `{ } }, "required": [ - "Type" + "Type", + "Properties" ], "type": "object" }, @@ -167968,6 +170325,15 @@ var SamSchema = `{ ], "type": "object" }, + "AWS::QuickSight::DataSource.IdentityCenterConfiguration": { + "additionalProperties": false, + "properties": { + "EnableIdentityPropagation": { + "type": "boolean" + } + }, + "type": "object" + }, "AWS::QuickSight::DataSource.ManifestFileLocation": { "additionalProperties": false, "properties": { @@ -168100,6 +170466,30 @@ var SamSchema = `{ ], "type": "object" }, + "AWS::QuickSight::DataSource.RedshiftIAMParameters": { + "additionalProperties": false, + "properties": { + "AutoCreateDatabaseUser": { + "type": "boolean" + }, + "DatabaseGroups": { + "items": { + "type": "string" + }, + "type": "array" + }, + "DatabaseUser": { + "type": "string" + }, + "RoleArn": { + "type": "string" + } + }, + "required": [ + "RoleArn" + ], + "type": "object" + }, "AWS::QuickSight::DataSource.RedshiftParameters": { "additionalProperties": false, "properties": { @@ -168112,6 +170502,12 @@ var SamSchema = `{ "Host": { "type": "string" }, + "IAMParameters": { + "$ref": "#/definitions/AWS::QuickSight::DataSource.RedshiftIAMParameters" + }, + "IdentityCenterConfiguration": { + "$ref": "#/definitions/AWS::QuickSight::DataSource.IdentityCenterConfiguration" + }, "Port": { "type": "number" } @@ -168132,6 +170528,9 @@ var SamSchema = `{ }, "Principal": { "type": "string" + }, + "Resource": { + "type": "string" } }, "required": [ @@ -177241,6 +179640,15 @@ var SamSchema = `{ }, "type": "object" }, + "AWS::QuickSight::Template.WaterfallChartColorConfiguration": { + "additionalProperties": false, + "properties": { + "GroupColorConfiguration": { + "$ref": "#/definitions/AWS::QuickSight::Template.WaterfallChartGroupColorConfiguration" + } + }, + "type": "object" + }, "AWS::QuickSight::Template.WaterfallChartConfiguration": { "additionalProperties": false, "properties": { @@ -177250,6 +179658,9 @@ var SamSchema = `{ "CategoryAxisLabelOptions": { "$ref": "#/definitions/AWS::QuickSight::Template.ChartAxisLabelOptions" }, + "ColorConfiguration": { + "$ref": "#/definitions/AWS::QuickSight::Template.WaterfallChartColorConfiguration" + }, "DataLabels": { "$ref": "#/definitions/AWS::QuickSight::Template.DataLabelOptions" }, @@ -177286,6 +179697,21 @@ var SamSchema = `{ }, "type": "object" }, + "AWS::QuickSight::Template.WaterfallChartGroupColorConfiguration": { + "additionalProperties": false, + "properties": { + "NegativeBarColor": { + "type": "string" + }, + "PositiveBarColor": { + "type": "string" + }, + "TotalBarColor": { + "type": "string" + } + }, + "type": "object" + }, "AWS::QuickSight::Template.WaterfallChartOptions": { "additionalProperties": false, "properties": { @@ -178227,6 +180653,9 @@ var SamSchema = `{ "DefaultFormatting": { "$ref": "#/definitions/AWS::QuickSight::Topic.DefaultFormatting" }, + "DisableIndexing": { + "type": "boolean" + }, "Expression": { "type": "string" }, @@ -178333,6 +180762,9 @@ var SamSchema = `{ "DefaultFormatting": { "$ref": "#/definitions/AWS::QuickSight::Topic.DefaultFormatting" }, + "DisableIndexing": { + "type": "boolean" + }, "IsIncludedInTopic": { "type": "boolean" }, @@ -184646,6 +187078,12 @@ var SamSchema = `{ "Properties": { "additionalProperties": false, "properties": { + "AttributeMappings": { + "items": { + "$ref": "#/definitions/AWS::RolesAnywhere::Profile.AttributeMapping" + }, + "type": "array" + }, "DurationSeconds": { "type": "number" }, @@ -184707,6 +187145,37 @@ var SamSchema = `{ ], "type": "object" }, + "AWS::RolesAnywhere::Profile.AttributeMapping": { + "additionalProperties": false, + "properties": { + "CertificateField": { + "type": "string" + }, + "MappingRules": { + "items": { + "$ref": "#/definitions/AWS::RolesAnywhere::Profile.MappingRule" + }, + "type": "array" + } + }, + "required": [ + "CertificateField", + "MappingRules" + ], + "type": "object" + }, + "AWS::RolesAnywhere::Profile.MappingRule": { + "additionalProperties": false, + "properties": { + "Specifier": { + "type": "string" + } + }, + "required": [ + "Specifier" + ], + "type": "object" + }, "AWS::RolesAnywhere::TrustAnchor": { "additionalProperties": false, "properties": { @@ -186938,6 +189407,9 @@ var SamSchema = `{ "FirewallDomainListId": { "type": "string" }, + "FirewallDomainRedirectionAction": { + "type": "string" + }, "Priority": { "type": "number" }, @@ -194960,6 +197432,194 @@ var SamSchema = `{ ], "type": "object" }, + "AWS::SSO::Application": { + "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": { + "ApplicationProviderArn": { + "type": "string" + }, + "Description": { + "type": "string" + }, + "InstanceArn": { + "type": "string" + }, + "Name": { + "type": "string" + }, + "PortalOptions": { + "$ref": "#/definitions/AWS::SSO::Application.PortalOptionsConfiguration" + }, + "Status": { + "type": "string" + }, + "Tags": { + "items": { + "$ref": "#/definitions/Tag" + }, + "type": "array" + } + }, + "required": [ + "ApplicationProviderArn", + "InstanceArn", + "Name" + ], + "type": "object" + }, + "Type": { + "enum": [ + "AWS::SSO::Application" + ], + "type": "string" + }, + "UpdateReplacePolicy": { + "enum": [ + "Delete", + "Retain", + "Snapshot" + ], + "type": "string" + } + }, + "required": [ + "Type", + "Properties" + ], + "type": "object" + }, + "AWS::SSO::Application.PortalOptionsConfiguration": { + "additionalProperties": false, + "properties": { + "SignInOptions": { + "$ref": "#/definitions/AWS::SSO::Application.SignInOptions" + }, + "Visibility": { + "type": "string" + } + }, + "type": "object" + }, + "AWS::SSO::Application.SignInOptions": { + "additionalProperties": false, + "properties": { + "ApplicationUrl": { + "type": "string" + }, + "Origin": { + "type": "string" + } + }, + "required": [ + "Origin" + ], + "type": "object" + }, + "AWS::SSO::ApplicationAssignment": { + "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": { + "ApplicationArn": { + "type": "string" + }, + "PrincipalId": { + "type": "string" + }, + "PrincipalType": { + "type": "string" + } + }, + "required": [ + "ApplicationArn", + "PrincipalId", + "PrincipalType" + ], + "type": "object" + }, + "Type": { + "enum": [ + "AWS::SSO::ApplicationAssignment" + ], + "type": "string" + }, + "UpdateReplacePolicy": { + "enum": [ + "Delete", + "Retain", + "Snapshot" + ], + "type": "string" + } + }, + "required": [ + "Type", + "Properties" + ], + "type": "object" + }, "AWS::SSO::Assignment": { "additionalProperties": false, "properties": { @@ -194995,38 +197655,106 @@ var SamSchema = `{ "Properties": { "additionalProperties": false, "properties": { - "InstanceArn": { - "type": "string" - }, - "PermissionSetArn": { - "type": "string" - }, - "PrincipalId": { - "type": "string" - }, - "PrincipalType": { - "type": "string" - }, - "TargetId": { + "InstanceArn": { + "type": "string" + }, + "PermissionSetArn": { + "type": "string" + }, + "PrincipalId": { + "type": "string" + }, + "PrincipalType": { + "type": "string" + }, + "TargetId": { + "type": "string" + }, + "TargetType": { + "type": "string" + } + }, + "required": [ + "InstanceArn", + "PermissionSetArn", + "PrincipalId", + "PrincipalType", + "TargetId", + "TargetType" + ], + "type": "object" + }, + "Type": { + "enum": [ + "AWS::SSO::Assignment" + ], + "type": "string" + }, + "UpdateReplacePolicy": { + "enum": [ + "Delete", + "Retain", + "Snapshot" + ], + "type": "string" + } + }, + "required": [ + "Type", + "Properties" + ], + "type": "object" + }, + "AWS::SSO::Instance": { + "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": { + "Name": { "type": "string" }, - "TargetType": { - "type": "string" + "Tags": { + "items": { + "$ref": "#/definitions/Tag" + }, + "type": "array" } }, - "required": [ - "InstanceArn", - "PermissionSetArn", - "PrincipalId", - "PrincipalType", - "TargetId", - "TargetType" - ], "type": "object" }, "Type": { "enum": [ - "AWS::SSO::Assignment" + "AWS::SSO::Instance" ], "type": "string" }, @@ -195040,8 +197768,7 @@ var SamSchema = `{ } }, "required": [ - "Type", - "Properties" + "Type" ], "type": "object" }, @@ -196451,9 +199178,21 @@ var SamSchema = `{ "AWS::SageMaker::Domain.DefaultSpaceSettings": { "additionalProperties": false, "properties": { + "CustomFileSystemConfigs": { + "items": { + "$ref": "#/definitions/AWS::SageMaker::Domain.CustomFileSystemConfig" + }, + "type": "array" + }, + "CustomPosixUserConfig": { + "$ref": "#/definitions/AWS::SageMaker::Domain.CustomPosixUserConfig" + }, "ExecutionRole": { "type": "string" }, + "JupyterLabAppSettings": { + "$ref": "#/definitions/AWS::SageMaker::Domain.JupyterLabAppSettings" + }, "JupyterServerAppSettings": { "$ref": "#/definitions/AWS::SageMaker::Domain.JupyterServerAppSettings" }, @@ -196465,6 +199204,9 @@ var SamSchema = `{ "type": "string" }, "type": "array" + }, + "SpaceStorageSettings": { + "$ref": "#/definitions/AWS::SageMaker::Domain.DefaultSpaceStorageSettings" } }, "required": [ @@ -204250,6 +206992,210 @@ var SamSchema = `{ ], "type": "object" }, + "AWS::SecurityHub::ConfigurationPolicy": { + "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": { + "ConfigurationPolicy": { + "$ref": "#/definitions/AWS::SecurityHub::ConfigurationPolicy.Policy" + }, + "Description": { + "type": "string" + }, + "Name": { + "type": "string" + }, + "Tags": { + "additionalProperties": true, + "patternProperties": { + "^[a-zA-Z0-9]+$": { + "type": "string" + } + }, + "type": "object" + } + }, + "required": [ + "ConfigurationPolicy", + "Name" + ], + "type": "object" + }, + "Type": { + "enum": [ + "AWS::SecurityHub::ConfigurationPolicy" + ], + "type": "string" + }, + "UpdateReplacePolicy": { + "enum": [ + "Delete", + "Retain", + "Snapshot" + ], + "type": "string" + } + }, + "required": [ + "Type", + "Properties" + ], + "type": "object" + }, + "AWS::SecurityHub::ConfigurationPolicy.ParameterConfiguration": { + "additionalProperties": false, + "properties": { + "Value": { + "$ref": "#/definitions/AWS::SecurityHub::ConfigurationPolicy.ParameterValue" + }, + "ValueType": { + "type": "string" + } + }, + "required": [ + "ValueType" + ], + "type": "object" + }, + "AWS::SecurityHub::ConfigurationPolicy.ParameterValue": { + "additionalProperties": false, + "properties": { + "Boolean": { + "type": "boolean" + }, + "Double": { + "type": "number" + }, + "Enum": { + "type": "string" + }, + "EnumList": { + "items": { + "type": "string" + }, + "type": "array" + }, + "Integer": { + "type": "number" + }, + "IntegerList": { + "items": { + "type": "number" + }, + "type": "array" + }, + "String": { + "type": "string" + }, + "StringList": { + "items": { + "type": "string" + }, + "type": "array" + } + }, + "type": "object" + }, + "AWS::SecurityHub::ConfigurationPolicy.Policy": { + "additionalProperties": false, + "properties": { + "SecurityHub": { + "$ref": "#/definitions/AWS::SecurityHub::ConfigurationPolicy.SecurityHubPolicy" + } + }, + "type": "object" + }, + "AWS::SecurityHub::ConfigurationPolicy.SecurityControlCustomParameter": { + "additionalProperties": false, + "properties": { + "Parameters": { + "additionalProperties": false, + "patternProperties": { + "^[a-zA-Z0-9]+$": { + "$ref": "#/definitions/AWS::SecurityHub::ConfigurationPolicy.ParameterConfiguration" + } + }, + "type": "object" + }, + "SecurityControlId": { + "type": "string" + } + }, + "type": "object" + }, + "AWS::SecurityHub::ConfigurationPolicy.SecurityControlsConfiguration": { + "additionalProperties": false, + "properties": { + "DisabledSecurityControlIdentifiers": { + "items": { + "type": "string" + }, + "type": "array" + }, + "EnabledSecurityControlIdentifiers": { + "items": { + "type": "string" + }, + "type": "array" + }, + "SecurityControlCustomParameters": { + "items": { + "$ref": "#/definitions/AWS::SecurityHub::ConfigurationPolicy.SecurityControlCustomParameter" + }, + "type": "array" + } + }, + "type": "object" + }, + "AWS::SecurityHub::ConfigurationPolicy.SecurityHubPolicy": { + "additionalProperties": false, + "properties": { + "EnabledStandardIdentifiers": { + "items": { + "type": "string" + }, + "type": "array" + }, + "SecurityControlsConfiguration": { + "$ref": "#/definitions/AWS::SecurityHub::ConfigurationPolicy.SecurityControlsConfiguration" + }, + "ServiceEnabled": { + "type": "boolean" + } + }, + "type": "object" + }, "AWS::SecurityHub::DelegatedAdmin": { "additionalProperties": false, "properties": { @@ -204315,6 +207261,77 @@ var SamSchema = `{ ], "type": "object" }, + "AWS::SecurityHub::FindingAggregator": { + "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": { + "RegionLinkingMode": { + "type": "string" + }, + "Regions": { + "items": { + "type": "string" + }, + "type": "array" + } + }, + "required": [ + "RegionLinkingMode" + ], + "type": "object" + }, + "Type": { + "enum": [ + "AWS::SecurityHub::FindingAggregator" + ], + "type": "string" + }, + "UpdateReplacePolicy": { + "enum": [ + "Delete", + "Retain", + "Snapshot" + ], + "type": "string" + } + }, + "required": [ + "Type", + "Properties" + ], + "type": "object" + }, "AWS::SecurityHub::Hub": { "additionalProperties": false, "properties": { @@ -205176,6 +208193,150 @@ var SamSchema = `{ ], "type": "object" }, + "AWS::SecurityHub::OrganizationConfiguration": { + "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": { + "AutoEnable": { + "type": "boolean" + }, + "AutoEnableStandards": { + "type": "string" + }, + "ConfigurationType": { + "type": "string" + } + }, + "required": [ + "AutoEnable" + ], + "type": "object" + }, + "Type": { + "enum": [ + "AWS::SecurityHub::OrganizationConfiguration" + ], + "type": "string" + }, + "UpdateReplacePolicy": { + "enum": [ + "Delete", + "Retain", + "Snapshot" + ], + "type": "string" + } + }, + "required": [ + "Type", + "Properties" + ], + "type": "object" + }, + "AWS::SecurityHub::PolicyAssociation": { + "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": { + "ConfigurationPolicyId": { + "type": "string" + }, + "TargetId": { + "type": "string" + }, + "TargetType": { + "type": "string" + } + }, + "required": [ + "ConfigurationPolicyId", + "TargetId", + "TargetType" + ], + "type": "object" + }, + "Type": { + "enum": [ + "AWS::SecurityHub::PolicyAssociation" + ], + "type": "string" + }, + "UpdateReplacePolicy": { + "enum": [ + "Delete", + "Retain", + "Snapshot" + ], + "type": "string" + } + }, + "required": [ + "Type", + "Properties" + ], + "type": "object" + }, "AWS::SecurityHub::ProductSubscription": { "additionalProperties": false, "properties": { @@ -205241,6 +208402,140 @@ var SamSchema = `{ ], "type": "object" }, + "AWS::SecurityHub::SecurityControl": { + "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": { + "LastUpdateReason": { + "type": "string" + }, + "Parameters": { + "additionalProperties": false, + "patternProperties": { + "^[a-zA-Z0-9]+$": { + "$ref": "#/definitions/AWS::SecurityHub::SecurityControl.ParameterConfiguration" + } + }, + "type": "object" + }, + "SecurityControlArn": { + "type": "string" + }, + "SecurityControlId": { + "type": "string" + } + }, + "required": [ + "Parameters" + ], + "type": "object" + }, + "Type": { + "enum": [ + "AWS::SecurityHub::SecurityControl" + ], + "type": "string" + }, + "UpdateReplacePolicy": { + "enum": [ + "Delete", + "Retain", + "Snapshot" + ], + "type": "string" + } + }, + "required": [ + "Type", + "Properties" + ], + "type": "object" + }, + "AWS::SecurityHub::SecurityControl.ParameterConfiguration": { + "additionalProperties": false, + "properties": { + "Value": { + "$ref": "#/definitions/AWS::SecurityHub::SecurityControl.ParameterValue" + }, + "ValueType": { + "type": "string" + } + }, + "required": [ + "ValueType" + ], + "type": "object" + }, + "AWS::SecurityHub::SecurityControl.ParameterValue": { + "additionalProperties": false, + "properties": { + "Boolean": { + "type": "boolean" + }, + "Double": { + "type": "number" + }, + "Enum": { + "type": "string" + }, + "EnumList": { + "items": { + "type": "string" + }, + "type": "array" + }, + "Integer": { + "type": "number" + }, + "IntegerList": { + "items": { + "type": "number" + }, + "type": "array" + }, + "String": { + "type": "string" + }, + "StringList": { + "items": { + "type": "string" + }, + "type": "array" + } + }, + "type": "object" + }, "AWS::SecurityHub::Standard": { "additionalProperties": false, "properties": { @@ -205362,7 +208657,222 @@ var SamSchema = `{ "Properties": { "additionalProperties": false, "properties": { - "Accounts": { + "Accounts": { + "items": { + "type": "string" + }, + "type": "array" + }, + "DataLakeArn": { + "type": "string" + }, + "SourceName": { + "type": "string" + }, + "SourceVersion": { + "type": "string" + } + }, + "required": [ + "DataLakeArn", + "SourceName", + "SourceVersion" + ], + "type": "object" + }, + "Type": { + "enum": [ + "AWS::SecurityLake::AwsLogSource" + ], + "type": "string" + }, + "UpdateReplacePolicy": { + "enum": [ + "Delete", + "Retain", + "Snapshot" + ], + "type": "string" + } + }, + "required": [ + "Type", + "Properties" + ], + "type": "object" + }, + "AWS::SecurityLake::DataLake": { + "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": { + "EncryptionConfiguration": { + "$ref": "#/definitions/AWS::SecurityLake::DataLake.EncryptionConfiguration" + }, + "LifecycleConfiguration": { + "$ref": "#/definitions/AWS::SecurityLake::DataLake.LifecycleConfiguration" + }, + "MetaStoreManagerRoleArn": { + "type": "string" + }, + "ReplicationConfiguration": { + "$ref": "#/definitions/AWS::SecurityLake::DataLake.ReplicationConfiguration" + }, + "Tags": { + "items": { + "$ref": "#/definitions/Tag" + }, + "type": "array" + } + }, + "type": "object" + }, + "Type": { + "enum": [ + "AWS::SecurityLake::DataLake" + ], + "type": "string" + }, + "UpdateReplacePolicy": { + "enum": [ + "Delete", + "Retain", + "Snapshot" + ], + "type": "string" + } + }, + "required": [ + "Type" + ], + "type": "object" + }, + "AWS::SecurityLake::DataLake.EncryptionConfiguration": { + "additionalProperties": false, + "properties": { + "KmsKeyId": { + "type": "string" + } + }, + "type": "object" + }, + "AWS::SecurityLake::DataLake.Expiration": { + "additionalProperties": false, + "properties": { + "Days": { + "type": "number" + } + }, + "type": "object" + }, + "AWS::SecurityLake::DataLake.LifecycleConfiguration": { + "additionalProperties": false, + "properties": { + "Expiration": { + "$ref": "#/definitions/AWS::SecurityLake::DataLake.Expiration" + }, + "Transitions": { + "items": { + "$ref": "#/definitions/AWS::SecurityLake::DataLake.Transitions" + }, + "type": "array" + } + }, + "type": "object" + }, + "AWS::SecurityLake::DataLake.ReplicationConfiguration": { + "additionalProperties": false, + "properties": { + "Regions": { + "items": { + "type": "string" + }, + "type": "array" + }, + "RoleArn": { + "type": "string" + } + }, + "type": "object" + }, + "AWS::SecurityLake::DataLake.Transitions": { + "additionalProperties": false, + "properties": { + "Days": { + "type": "number" + }, + "StorageClass": { + "type": "string" + } + }, + "type": "object" + }, + "AWS::SecurityLake::Subscriber": { + "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": { + "AccessTypes": { "items": { "type": "string" }, @@ -205371,87 +208881,20 @@ var SamSchema = `{ "DataLakeArn": { "type": "string" }, - "SourceName": { - "type": "string" - }, - "SourceVersion": { - "type": "string" - } - }, - "required": [ - "DataLakeArn", - "SourceName", - "SourceVersion" - ], - "type": "object" - }, - "Type": { - "enum": [ - "AWS::SecurityLake::AwsLogSource" - ], - "type": "string" - }, - "UpdateReplacePolicy": { - "enum": [ - "Delete", - "Retain", - "Snapshot" - ], - "type": "string" - } - }, - "required": [ - "Type", - "Properties" - ], - "type": "object" - }, - "AWS::SecurityLake::DataLake": { - "additionalProperties": false, - "properties": { - "Condition": { - "type": "string" - }, - "DeletionPolicy": { - "enum": [ - "Delete", - "Retain", - "Snapshot" - ], - "type": "string" - }, - "DependsOn": { - "anyOf": [ - { - "pattern": "^[a-zA-Z0-9]+$", - "type": "string" - }, - { + "Sources": { "items": { - "pattern": "^[a-zA-Z0-9]+$", - "type": "string" + "$ref": "#/definitions/AWS::SecurityLake::Subscriber.Source" }, "type": "array" - } - ] - }, - "Metadata": { - "type": "object" - }, - "Properties": { - "additionalProperties": false, - "properties": { - "EncryptionConfiguration": { - "$ref": "#/definitions/AWS::SecurityLake::DataLake.EncryptionConfiguration" }, - "LifecycleConfiguration": { - "$ref": "#/definitions/AWS::SecurityLake::DataLake.LifecycleConfiguration" - }, - "MetaStoreManagerRoleArn": { + "SubscriberDescription": { "type": "string" }, - "ReplicationConfiguration": { - "$ref": "#/definitions/AWS::SecurityLake::DataLake.ReplicationConfiguration" + "SubscriberIdentity": { + "$ref": "#/definitions/AWS::SecurityLake::Subscriber.SubscriberIdentity" + }, + "SubscriberName": { + "type": "string" }, "Tags": { "items": { @@ -205460,11 +208903,18 @@ var SamSchema = `{ "type": "array" } }, + "required": [ + "AccessTypes", + "DataLakeArn", + "Sources", + "SubscriberIdentity", + "SubscriberName" + ], "type": "object" }, "Type": { "enum": [ - "AWS::SecurityLake::DataLake" + "AWS::SecurityLake::Subscriber" ], "type": "string" }, @@ -205478,71 +208928,64 @@ var SamSchema = `{ } }, "required": [ - "Type" + "Type", + "Properties" ], "type": "object" }, - "AWS::SecurityLake::DataLake.EncryptionConfiguration": { + "AWS::SecurityLake::Subscriber.AwsLogSource": { "additionalProperties": false, "properties": { - "KmsKeyId": { + "SourceName": { + "type": "string" + }, + "SourceVersion": { "type": "string" } }, "type": "object" }, - "AWS::SecurityLake::DataLake.Expiration": { - "additionalProperties": false, - "properties": { - "Days": { - "type": "number" - } - }, - "type": "object" - }, - "AWS::SecurityLake::DataLake.LifecycleConfiguration": { + "AWS::SecurityLake::Subscriber.CustomLogSource": { "additionalProperties": false, "properties": { - "Expiration": { - "$ref": "#/definitions/AWS::SecurityLake::DataLake.Expiration" + "SourceName": { + "type": "string" }, - "Transitions": { - "items": { - "$ref": "#/definitions/AWS::SecurityLake::DataLake.Transitions" - }, - "type": "array" + "SourceVersion": { + "type": "string" } }, "type": "object" }, - "AWS::SecurityLake::DataLake.ReplicationConfiguration": { + "AWS::SecurityLake::Subscriber.Source": { "additionalProperties": false, "properties": { - "Regions": { - "items": { - "type": "string" - }, - "type": "array" + "AwsLogSource": { + "$ref": "#/definitions/AWS::SecurityLake::Subscriber.AwsLogSource" }, - "RoleArn": { - "type": "string" + "CustomLogSource": { + "$ref": "#/definitions/AWS::SecurityLake::Subscriber.CustomLogSource" } }, "type": "object" }, - "AWS::SecurityLake::DataLake.Transitions": { + "AWS::SecurityLake::Subscriber.SubscriberIdentity": { "additionalProperties": false, "properties": { - "Days": { - "type": "number" + "ExternalId": { + "type": "string" }, - "StorageClass": { + "Principal": { "type": "string" } }, + "required": [ + "ExternalId", + "Principal" + ], "type": "object" }, - "AWS::SecurityLake::Subscriber": { + "AWS::SecurityLake::SubscriberNotification": { "additionalProperties": false, "properties": { "Condition": { @@ -205577,49 +209020,22 @@ var SamSchema = `{ "Properties": { "additionalProperties": false, "properties": { - "AccessTypes": { - "items": { - "type": "string" - }, - "type": "array" - }, - "DataLakeArn": { - "type": "string" - }, - "Sources": { - "items": { - "$ref": "#/definitions/AWS::SecurityLake::Subscriber.Source" - }, - "type": "array" - }, - "SubscriberDescription": { - "type": "string" - }, - "SubscriberIdentity": { - "$ref": "#/definitions/AWS::SecurityLake::Subscriber.SubscriberIdentity" + "NotificationConfiguration": { + "$ref": "#/definitions/AWS::SecurityLake::SubscriberNotification.NotificationConfiguration" }, - "SubscriberName": { + "SubscriberArn": { "type": "string" - }, - "Tags": { - "items": { - "$ref": "#/definitions/Tag" - }, - "type": "array" } }, "required": [ - "AccessTypes", - "DataLakeArn", - "Sources", - "SubscriberIdentity", - "SubscriberName" + "NotificationConfiguration", + "SubscriberArn" ], "type": "object" }, "Type": { "enum": [ - "AWS::SecurityLake::Subscriber" + "AWS::SecurityLake::SubscriberNotification" ], "type": "string" }, @@ -205638,56 +209054,41 @@ var SamSchema = `{ ], "type": "object" }, - "AWS::SecurityLake::Subscriber.AwsLogSource": { + "AWS::SecurityLake::SubscriberNotification.HttpsNotificationConfiguration": { "additionalProperties": false, "properties": { - "SourceName": { + "AuthorizationApiKeyName": { "type": "string" }, - "SourceVersion": { + "AuthorizationApiKeyValue": { "type": "string" - } - }, - "type": "object" - }, - "AWS::SecurityLake::Subscriber.CustomLogSource": { - "additionalProperties": false, - "properties": { - "SourceName": { + }, + "Endpoint": { "type": "string" }, - "SourceVersion": { + "HttpMethod": { "type": "string" - } - }, - "type": "object" - }, - "AWS::SecurityLake::Subscriber.Source": { - "additionalProperties": false, - "properties": { - "AwsLogSource": { - "$ref": "#/definitions/AWS::SecurityLake::Subscriber.AwsLogSource" }, - "CustomLogSource": { - "$ref": "#/definitions/AWS::SecurityLake::Subscriber.CustomLogSource" + "TargetRoleArn": { + "type": "string" } }, + "required": [ + "Endpoint", + "TargetRoleArn" + ], "type": "object" }, - "AWS::SecurityLake::Subscriber.SubscriberIdentity": { + "AWS::SecurityLake::SubscriberNotification.NotificationConfiguration": { "additionalProperties": false, "properties": { - "ExternalId": { - "type": "string" + "HttpsNotificationConfiguration": { + "$ref": "#/definitions/AWS::SecurityLake::SubscriberNotification.HttpsNotificationConfiguration" }, - "Principal": { - "type": "string" + "SqsNotificationConfiguration": { + "type": "object" } }, - "required": [ - "ExternalId", - "Principal" - ], "type": "object" }, "AWS::Serverless::Api": { @@ -213369,6 +216770,9 @@ var SamSchema = `{ "LoggingRole": { "type": "string" }, + "SecurityPolicyName": { + "type": "string" + }, "SftpConfig": { "$ref": "#/definitions/AWS::Transfer::Connector.SftpConfig" }, @@ -214070,6 +217474,10 @@ var SamSchema = `{ "type": "string" } }, + "required": [ + "DestinationFileLocation", + "Type" + ], "type": "object" }, "AWS::Transfer::Workflow.DeleteStepDetails": { @@ -223194,6 +226602,9 @@ var SamSchema = `{ { "$ref": "#/definitions/AWS::Bedrock::Guardrail" }, + { + "$ref": "#/definitions/AWS::Bedrock::GuardrailVersion" + }, { "$ref": "#/definitions/AWS::Bedrock::KnowledgeBase" }, @@ -223749,12 +227160,21 @@ var SamSchema = `{ { "$ref": "#/definitions/AWS::DataZone::EnvironmentProfile" }, + { + "$ref": "#/definitions/AWS::DataZone::GroupProfile" + }, { "$ref": "#/definitions/AWS::DataZone::Project" }, + { + "$ref": "#/definitions/AWS::DataZone::ProjectMembership" + }, { "$ref": "#/definitions/AWS::DataZone::SubscriptionTarget" }, + { + "$ref": "#/definitions/AWS::DataZone::UserProfile" + }, { "$ref": "#/definitions/AWS::Deadline::Farm" }, @@ -225348,6 +228768,9 @@ var SamSchema = `{ { "$ref": "#/definitions/AWS::Neptune::DBSubnetGroup" }, + { + "$ref": "#/definitions/AWS::Neptune::EventSubscription" + }, { "$ref": "#/definitions/AWS::NeptuneGraph::Graph" }, @@ -225633,6 +229056,24 @@ var SamSchema = `{ { "$ref": "#/definitions/AWS::Proton::ServiceTemplate" }, + { + "$ref": "#/definitions/AWS::QBusiness::Application" + }, + { + "$ref": "#/definitions/AWS::QBusiness::DataSource" + }, + { + "$ref": "#/definitions/AWS::QBusiness::Index" + }, + { + "$ref": "#/definitions/AWS::QBusiness::Plugin" + }, + { + "$ref": "#/definitions/AWS::QBusiness::Retriever" + }, + { + "$ref": "#/definitions/AWS::QBusiness::WebExperience" + }, { "$ref": "#/definitions/AWS::QLDB::Ledger" }, @@ -226059,9 +229500,18 @@ var SamSchema = `{ { "$ref": "#/definitions/AWS::SSMIncidents::ResponsePlan" }, + { + "$ref": "#/definitions/AWS::SSO::Application" + }, + { + "$ref": "#/definitions/AWS::SSO::ApplicationAssignment" + }, { "$ref": "#/definitions/AWS::SSO::Assignment" }, + { + "$ref": "#/definitions/AWS::SSO::Instance" + }, { "$ref": "#/definitions/AWS::SSO::InstanceAccessControlAttributeConfiguration" }, @@ -226176,18 +229626,33 @@ var SamSchema = `{ { "$ref": "#/definitions/AWS::SecurityHub::AutomationRule" }, + { + "$ref": "#/definitions/AWS::SecurityHub::ConfigurationPolicy" + }, { "$ref": "#/definitions/AWS::SecurityHub::DelegatedAdmin" }, + { + "$ref": "#/definitions/AWS::SecurityHub::FindingAggregator" + }, { "$ref": "#/definitions/AWS::SecurityHub::Hub" }, { "$ref": "#/definitions/AWS::SecurityHub::Insight" }, + { + "$ref": "#/definitions/AWS::SecurityHub::OrganizationConfiguration" + }, + { + "$ref": "#/definitions/AWS::SecurityHub::PolicyAssociation" + }, { "$ref": "#/definitions/AWS::SecurityHub::ProductSubscription" }, + { + "$ref": "#/definitions/AWS::SecurityHub::SecurityControl" + }, { "$ref": "#/definitions/AWS::SecurityHub::Standard" }, @@ -226200,6 +229665,9 @@ var SamSchema = `{ { "$ref": "#/definitions/AWS::SecurityLake::Subscriber" }, + { + "$ref": "#/definitions/AWS::SecurityLake::SubscriberNotification" + }, { "$ref": "#/definitions/AWS::Serverless::Api" }, diff --git a/schema/sam.schema.json b/schema/sam.schema.json index 14cef45dc1..9408d34599 100644 --- a/schema/sam.schema.json +++ b/schema/sam.schema.json @@ -536,6 +536,9 @@ "type": "string" } }, + "required": [ + "Enabled" + ], "type": "object" }, "AWS::ACMPCA::CertificateAuthority.CrlDistributionPointExtensionConfiguration": { @@ -592,7 +595,6 @@ } }, "required": [ - "NameAssigner", "PartyName" ], "type": "object" @@ -670,6 +672,9 @@ "type": "string" } }, + "required": [ + "Enabled" + ], "type": "object" }, "AWS::ACMPCA::CertificateAuthority.OtherName": { @@ -19179,6 +19184,12 @@ "MetricName": { "type": "string" }, + "Metrics": { + "items": { + "$ref": "#/definitions/AWS::AutoScaling::ScalingPolicy.TargetTrackingMetricDataQuery" + }, + "type": "array" + }, "Namespace": { "type": "string" }, @@ -19189,11 +19200,6 @@ "type": "string" } }, - "required": [ - "MetricName", - "Namespace", - "Statistic" - ], "type": "object" }, "AWS::AutoScaling::ScalingPolicy.Metric": { @@ -19478,6 +19484,49 @@ ], "type": "object" }, + "AWS::AutoScaling::ScalingPolicy.TargetTrackingMetricDataQuery": { + "additionalProperties": false, + "properties": { + "Expression": { + "type": "string" + }, + "Id": { + "type": "string" + }, + "Label": { + "type": "string" + }, + "MetricStat": { + "$ref": "#/definitions/AWS::AutoScaling::ScalingPolicy.TargetTrackingMetricStat" + }, + "ReturnData": { + "type": "boolean" + } + }, + "required": [ + "Id" + ], + "type": "object" + }, + "AWS::AutoScaling::ScalingPolicy.TargetTrackingMetricStat": { + "additionalProperties": false, + "properties": { + "Metric": { + "$ref": "#/definitions/AWS::AutoScaling::ScalingPolicy.Metric" + }, + "Stat": { + "type": "string" + }, + "Unit": { + "type": "string" + } + }, + "required": [ + "Metric", + "Stat" + ], + "type": "object" + }, "AWS::AutoScaling::ScheduledAction": { "additionalProperties": false, "properties": { @@ -22613,6 +22662,9 @@ "EcsProperties": { "$ref": "#/definitions/AWS::Batch::JobDefinition.EcsProperties" }, + "EksProperties": { + "$ref": "#/definitions/AWS::Batch::JobDefinition.EksProperties" + }, "InstanceTypes": { "items": { "type": "string" @@ -23285,13 +23337,13 @@ "AWS::Bedrock::Agent.ActionGroupExecutor": { "additionalProperties": false, "properties": { + "CustomControl": { + "type": "string" + }, "Lambda": { "type": "string" } }, - "required": [ - "Lambda" - ], "type": "object" }, "AWS::Bedrock::Agent.AgentActionGroup": { @@ -23312,6 +23364,9 @@ "Description": { "type": "string" }, + "FunctionSchema": { + "$ref": "#/definitions/AWS::Bedrock::Agent.FunctionSchema" + }, "ParentActionGroupSignature": { "type": "string" }, @@ -23343,6 +23398,45 @@ ], "type": "object" }, + "AWS::Bedrock::Agent.Function": { + "additionalProperties": false, + "properties": { + "Description": { + "type": "string" + }, + "Name": { + "type": "string" + }, + "Parameters": { + "additionalProperties": false, + "patternProperties": { + "^[a-zA-Z0-9]+$": { + "$ref": "#/definitions/AWS::Bedrock::Agent.ParameterDetail" + } + }, + "type": "object" + } + }, + "required": [ + "Name" + ], + "type": "object" + }, + "AWS::Bedrock::Agent.FunctionSchema": { + "additionalProperties": false, + "properties": { + "Functions": { + "items": { + "$ref": "#/definitions/AWS::Bedrock::Agent.Function" + }, + "type": "array" + } + }, + "required": [ + "Functions" + ], + "type": "object" + }, "AWS::Bedrock::Agent.InferenceConfiguration": { "additionalProperties": false, "properties": { @@ -23367,6 +23461,24 @@ }, "type": "object" }, + "AWS::Bedrock::Agent.ParameterDetail": { + "additionalProperties": false, + "properties": { + "Description": { + "type": "string" + }, + "Required": { + "type": "boolean" + }, + "Type": { + "type": "string" + } + }, + "required": [ + "Type" + ], + "type": "object" + }, "AWS::Bedrock::Agent.PromptConfiguration": { "additionalProperties": false, "properties": { @@ -23573,6 +23685,9 @@ "Properties": { "additionalProperties": false, "properties": { + "DataDeletionPolicy": { + "type": "string" + }, "DataSourceConfiguration": { "$ref": "#/definitions/AWS::Bedrock::DataSource.DataSourceConfiguration" }, @@ -23673,6 +23788,9 @@ "BucketArn": { "type": "string" }, + "BucketOwnerAccountId": { + "type": "string" + }, "InclusionPrefixes": { "items": { "type": "string" @@ -23975,6 +24093,74 @@ }, "type": "object" }, + "AWS::Bedrock::GuardrailVersion": { + "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" + }, + "GuardrailIdentifier": { + "type": "string" + } + }, + "required": [ + "GuardrailIdentifier" + ], + "type": "object" + }, + "Type": { + "enum": [ + "AWS::Bedrock::GuardrailVersion" + ], + "type": "string" + }, + "UpdateReplacePolicy": { + "enum": [ + "Delete", + "Retain", + "Snapshot" + ], + "type": "string" + } + }, + "required": [ + "Type", + "Properties" + ], + "type": "object" + }, "AWS::Bedrock::KnowledgeBase": { "additionalProperties": false, "properties": { @@ -24780,6 +24966,12 @@ "$ref": "#/definitions/AWS::Budgets::Budget.NotificationWithSubscribers" }, "type": "array" + }, + "ResourceTags": { + "items": { + "$ref": "#/definitions/AWS::Budgets::Budget.ResourceTag" + }, + "type": "array" } }, "required": [ @@ -24953,6 +25145,21 @@ ], "type": "object" }, + "AWS::Budgets::Budget.ResourceTag": { + "additionalProperties": false, + "properties": { + "Key": { + "type": "string" + }, + "Value": { + "type": "string" + } + }, + "required": [ + "Key" + ], + "type": "object" + }, "AWS::Budgets::Budget.Spend": { "additionalProperties": false, "properties": { @@ -25053,6 +25260,12 @@ "NotificationType": { "type": "string" }, + "ResourceTags": { + "items": { + "$ref": "#/definitions/AWS::Budgets::BudgetsAction.ResourceTag" + }, + "type": "array" + }, "Subscribers": { "items": { "$ref": "#/definitions/AWS::Budgets::BudgetsAction.Subscriber" @@ -25153,6 +25366,22 @@ ], "type": "object" }, + "AWS::Budgets::BudgetsAction.ResourceTag": { + "additionalProperties": false, + "properties": { + "Key": { + "type": "string" + }, + "Value": { + "type": "string" + } + }, + "required": [ + "Key", + "Value" + ], + "type": "object" + }, "AWS::Budgets::BudgetsAction.ScpActionDefinition": { "additionalProperties": false, "properties": { @@ -26229,6 +26458,12 @@ }, "type": "array" }, + "Tags": { + "items": { + "$ref": "#/definitions/Tag" + }, + "type": "array" + }, "TeamId": { "type": "string" }, @@ -26334,6 +26569,12 @@ }, "type": "array" }, + "Tags": { + "items": { + "$ref": "#/definitions/Tag" + }, + "type": "array" + }, "UserRoleRequired": { "type": "boolean" } @@ -33408,9 +33649,18 @@ "EnvironmentType": { "type": "string" }, + "FleetServiceRole": { + "type": "string" + }, + "FleetVpcConfig": { + "$ref": "#/definitions/AWS::CodeBuild::Fleet.VpcConfig" + }, "Name": { "type": "string" }, + "OverflowBehavior": { + "type": "string" + }, "Tags": { "items": { "$ref": "#/definitions/Tag" @@ -33440,6 +33690,27 @@ ], "type": "object" }, + "AWS::CodeBuild::Fleet.VpcConfig": { + "additionalProperties": false, + "properties": { + "SecurityGroupIds": { + "items": { + "type": "string" + }, + "type": "array" + }, + "Subnets": { + "items": { + "type": "string" + }, + "type": "array" + }, + "VpcId": { + "type": "string" + } + }, + "type": "object" + }, "AWS::CodeBuild::Project": { "additionalProperties": false, "properties": { @@ -35784,6 +36055,18 @@ ], "type": "object" }, + "AWS::CodePipeline::Pipeline.FailureConditions": { + "additionalProperties": false, + "properties": { + "Result": { + "type": "string" + } + }, + "required": [ + "Result" + ], + "type": "object" + }, "AWS::CodePipeline::Pipeline.GitBranchFilterCriteria": { "additionalProperties": false, "properties": { @@ -35951,6 +36234,9 @@ }, "Name": { "type": "string" + }, + "OnFailure": { + "$ref": "#/definitions/AWS::CodePipeline::Pipeline.FailureConditions" } }, "required": [ @@ -42149,6 +42435,12 @@ }, "type": "array" }, + "SubmitAutoEvaluationActions": { + "items": { + "$ref": "#/definitions/AWS::Connect::Rule.SubmitAutoEvaluationAction" + }, + "type": "array" + }, "TaskActions": { "items": { "$ref": "#/definitions/AWS::Connect::Rule.TaskAction" @@ -42308,6 +42600,18 @@ ], "type": "object" }, + "AWS::Connect::Rule.SubmitAutoEvaluationAction": { + "additionalProperties": false, + "properties": { + "EvaluationFormArn": { + "type": "string" + } + }, + "required": [ + "EvaluationFormArn" + ], + "type": "object" + }, "AWS::Connect::Rule.TaskAction": { "additionalProperties": false, "properties": { @@ -51958,6 +52262,78 @@ }, "type": "object" }, + "AWS::DataZone::GroupProfile": { + "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": { + "DomainIdentifier": { + "type": "string" + }, + "GroupIdentifier": { + "type": "string" + }, + "Status": { + "type": "string" + } + }, + "required": [ + "DomainIdentifier", + "GroupIdentifier" + ], + "type": "object" + }, + "Type": { + "enum": [ + "AWS::DataZone::GroupProfile" + ], + "type": "string" + }, + "UpdateReplacePolicy": { + "enum": [ + "Delete", + "Retain", + "Snapshot" + ], + "type": "string" + } + }, + "required": [ + "Type", + "Properties" + ], + "type": "object" + }, "AWS::DataZone::Project": { "additionalProperties": false, "properties": { @@ -52036,6 +52412,95 @@ ], "type": "object" }, + "AWS::DataZone::ProjectMembership": { + "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": { + "Designation": { + "type": "string" + }, + "DomainIdentifier": { + "type": "string" + }, + "Member": { + "$ref": "#/definitions/AWS::DataZone::ProjectMembership.Member" + }, + "ProjectIdentifier": { + "type": "string" + } + }, + "required": [ + "Designation", + "DomainIdentifier", + "Member", + "ProjectIdentifier" + ], + "type": "object" + }, + "Type": { + "enum": [ + "AWS::DataZone::ProjectMembership" + ], + "type": "string" + }, + "UpdateReplacePolicy": { + "enum": [ + "Delete", + "Retain", + "Snapshot" + ], + "type": "string" + } + }, + "required": [ + "Type", + "Properties" + ], + "type": "object" + }, + "AWS::DataZone::ProjectMembership.Member": { + "additionalProperties": false, + "properties": { + "GroupIdentifier": { + "type": "string" + }, + "UserIdentifier": { + "type": "string" + } + }, + "type": "object" + }, "AWS::DataZone::SubscriptionTarget": { "additionalProperties": false, "properties": { @@ -52157,6 +52622,117 @@ ], "type": "object" }, + "AWS::DataZone::UserProfile": { + "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": { + "DomainIdentifier": { + "type": "string" + }, + "Status": { + "type": "string" + }, + "UserIdentifier": { + "type": "string" + }, + "UserType": { + "type": "string" + } + }, + "required": [ + "DomainIdentifier", + "UserIdentifier" + ], + "type": "object" + }, + "Type": { + "enum": [ + "AWS::DataZone::UserProfile" + ], + "type": "string" + }, + "UpdateReplacePolicy": { + "enum": [ + "Delete", + "Retain", + "Snapshot" + ], + "type": "string" + } + }, + "required": [ + "Type", + "Properties" + ], + "type": "object" + }, + "AWS::DataZone::UserProfile.IamUserProfileDetails": { + "additionalProperties": false, + "properties": { + "Arn": { + "type": "string" + } + }, + "type": "object" + }, + "AWS::DataZone::UserProfile.SsoUserProfileDetails": { + "additionalProperties": false, + "properties": { + "FirstName": { + "type": "string" + }, + "LastName": { + "type": "string" + }, + "Username": { + "type": "string" + } + }, + "type": "object" + }, + "AWS::DataZone::UserProfile.UserProfileDetails": { + "additionalProperties": false, + "properties": { + "Iam": { + "$ref": "#/definitions/AWS::DataZone::UserProfile.IamUserProfileDetails" + }, + "Sso": { + "$ref": "#/definitions/AWS::DataZone::UserProfile.SsoUserProfileDetails" + } + }, + "type": "object" + }, "AWS::Deadline::Farm": { "additionalProperties": false, "properties": { @@ -54542,6 +55118,9 @@ "TimeToLiveSpecification": { "$ref": "#/definitions/AWS::DynamoDB::GlobalTable.TimeToLiveSpecification" }, + "WriteOnDemandThroughputSettings": { + "$ref": "#/definitions/AWS::DynamoDB::GlobalTable.WriteOnDemandThroughputSettings" + }, "WriteProvisionedThroughputSettings": { "$ref": "#/definitions/AWS::DynamoDB::GlobalTable.WriteProvisionedThroughputSettings" } @@ -54640,6 +55219,9 @@ "Projection": { "$ref": "#/definitions/AWS::DynamoDB::GlobalTable.Projection" }, + "WriteOnDemandThroughputSettings": { + "$ref": "#/definitions/AWS::DynamoDB::GlobalTable.WriteOnDemandThroughputSettings" + }, "WriteProvisionedThroughputSettings": { "$ref": "#/definitions/AWS::DynamoDB::GlobalTable.WriteProvisionedThroughputSettings" } @@ -54729,6 +55311,15 @@ }, "type": "object" }, + "AWS::DynamoDB::GlobalTable.ReadOnDemandThroughputSettings": { + "additionalProperties": false, + "properties": { + "MaxReadRequestUnits": { + "type": "number" + } + }, + "type": "object" + }, "AWS::DynamoDB::GlobalTable.ReadProvisionedThroughputSettings": { "additionalProperties": false, "properties": { @@ -54750,6 +55341,9 @@ "IndexName": { "type": "string" }, + "ReadOnDemandThroughputSettings": { + "$ref": "#/definitions/AWS::DynamoDB::GlobalTable.ReadOnDemandThroughputSettings" + }, "ReadProvisionedThroughputSettings": { "$ref": "#/definitions/AWS::DynamoDB::GlobalTable.ReadProvisionedThroughputSettings" } @@ -54792,6 +55386,9 @@ "PointInTimeRecoverySpecification": { "$ref": "#/definitions/AWS::DynamoDB::GlobalTable.PointInTimeRecoverySpecification" }, + "ReadOnDemandThroughputSettings": { + "$ref": "#/definitions/AWS::DynamoDB::GlobalTable.ReadOnDemandThroughputSettings" + }, "ReadProvisionedThroughputSettings": { "$ref": "#/definitions/AWS::DynamoDB::GlobalTable.ReadProvisionedThroughputSettings" }, @@ -54909,6 +55506,15 @@ ], "type": "object" }, + "AWS::DynamoDB::GlobalTable.WriteOnDemandThroughputSettings": { + "additionalProperties": false, + "properties": { + "MaxWriteRequestUnits": { + "type": "number" + } + }, + "type": "object" + }, "AWS::DynamoDB::GlobalTable.WriteProvisionedThroughputSettings": { "additionalProperties": false, "properties": { @@ -54992,6 +55598,9 @@ }, "type": "array" }, + "OnDemandThroughput": { + "$ref": "#/definitions/AWS::DynamoDB::Table.OnDemandThroughput" + }, "PointInTimeRecoverySpecification": { "$ref": "#/definitions/AWS::DynamoDB::Table.PointInTimeRecoverySpecification" }, @@ -55107,6 +55716,9 @@ }, "type": "array" }, + "OnDemandThroughput": { + "$ref": "#/definitions/AWS::DynamoDB::Table.OnDemandThroughput" + }, "Projection": { "$ref": "#/definitions/AWS::DynamoDB::Table.Projection" }, @@ -55206,6 +55818,18 @@ ], "type": "object" }, + "AWS::DynamoDB::Table.OnDemandThroughput": { + "additionalProperties": false, + "properties": { + "MaxReadRequestUnits": { + "type": "number" + }, + "MaxWriteRequestUnits": { + "type": "number" + } + }, + "type": "object" + }, "AWS::DynamoDB::Table.PointInTimeRecoverySpecification": { "additionalProperties": false, "properties": { @@ -56163,6 +56787,9 @@ "BgpAsn": { "type": "number" }, + "BgpAsnExtended": { + "type": "number" + }, "CertificateArn": { "type": "string" }, @@ -58509,6 +59136,18 @@ ], "type": "object" }, + "AWS::EC2::Instance.State": { + "additionalProperties": false, + "properties": { + "Code": { + "type": "string" + }, + "Name": { + "type": "string" + } + }, + "type": "object" + }, "AWS::EC2::Instance.Volume": { "additionalProperties": false, "properties": { @@ -64565,6 +65204,7 @@ } }, "required": [ + "DestinationCidrBlock", "TransitGatewayRouteTableId" ], "type": "object" @@ -67515,6 +68155,9 @@ "properties": { "ExecuteCommandConfiguration": { "$ref": "#/definitions/AWS::ECS::Cluster.ExecuteCommandConfiguration" + }, + "ManagedStorageConfiguration": { + "$ref": "#/definitions/AWS::ECS::Cluster.ManagedStorageConfiguration" } }, "type": "object" @@ -67567,6 +68210,18 @@ }, "type": "object" }, + "AWS::ECS::Cluster.ManagedStorageConfiguration": { + "additionalProperties": false, + "properties": { + "FargateEphemeralStorageKmsKeyId": { + "type": "string" + }, + "KmsKeyId": { + "type": "string" + } + }, + "type": "object" + }, "AWS::ECS::Cluster.ServiceConnectDefaults": { "additionalProperties": false, "properties": { @@ -69919,6 +70574,12 @@ "ConfigurationValues": { "type": "string" }, + "PodIdentityAssociations": { + "items": { + "$ref": "#/definitions/AWS::EKS::Addon.PodIdentityAssociation" + }, + "type": "array" + }, "PreserveOnDelete": { "type": "boolean" }, @@ -69962,251 +70623,267 @@ ], "type": "object" }, - "AWS::EKS::Cluster": { + "AWS::EKS::Addon.PodIdentityAssociation": { "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": { - "AccessConfig": { - "$ref": "#/definitions/AWS::EKS::Cluster.AccessConfig" - }, - "EncryptionConfig": { - "items": { - "$ref": "#/definitions/AWS::EKS::Cluster.EncryptionConfig" - }, - "type": "array" - }, - "KubernetesNetworkConfig": { - "$ref": "#/definitions/AWS::EKS::Cluster.KubernetesNetworkConfig" - }, - "Logging": { - "$ref": "#/definitions/AWS::EKS::Cluster.Logging" - }, - "Name": { - "type": "string" - }, - "OutpostConfig": { - "$ref": "#/definitions/AWS::EKS::Cluster.OutpostConfig" - }, - "ResourcesVpcConfig": { - "$ref": "#/definitions/AWS::EKS::Cluster.ResourcesVpcConfig" - }, - "RoleArn": { - "type": "string" - }, - "Tags": { - "items": { - "$ref": "#/definitions/Tag" - }, - "type": "array" - }, - "Version": { - "type": "string" - } - }, - "required": [ - "ResourcesVpcConfig", - "RoleArn" - ], - "type": "object" - }, - "Type": { - "enum": [ - "AWS::EKS::Cluster" - ], - "type": "string" - }, - "UpdateReplacePolicy": { - "enum": [ - "Delete", - "Retain", - "Snapshot" - ], - "type": "string" - } - }, - "required": [ - "Type", - "Properties" - ], - "type": "object" - }, - "AWS::EKS::Cluster.AccessConfig": { - "additionalProperties": false, - "properties": { - "AuthenticationMode": { - "type": "string" - }, - "BootstrapClusterCreatorAdminPermissions": { - "type": "boolean" - } - }, - "type": "object" - }, - "AWS::EKS::Cluster.ClusterLogging": { - "additionalProperties": false, - "properties": { - "EnabledTypes": { - "items": { - "$ref": "#/definitions/AWS::EKS::Cluster.LoggingTypeConfig" - }, - "type": "array" - } - }, - "type": "object" - }, - "AWS::EKS::Cluster.ControlPlanePlacement": { - "additionalProperties": false, - "properties": { - "GroupName": { - "type": "string" - } - }, - "type": "object" - }, - "AWS::EKS::Cluster.EncryptionConfig": { - "additionalProperties": false, - "properties": { - "Provider": { - "$ref": "#/definitions/AWS::EKS::Cluster.Provider" - }, - "Resources": { - "items": { - "type": "string" - }, - "type": "array" - } - }, - "type": "object" - }, - "AWS::EKS::Cluster.KubernetesNetworkConfig": { - "additionalProperties": false, - "properties": { - "IpFamily": { - "type": "string" - }, - "ServiceIpv4Cidr": { - "type": "string" - }, - "ServiceIpv6Cidr": { - "type": "string" - } - }, - "type": "object" - }, - "AWS::EKS::Cluster.Logging": { - "additionalProperties": false, - "properties": { - "ClusterLogging": { - "$ref": "#/definitions/AWS::EKS::Cluster.ClusterLogging" - } - }, - "type": "object" - }, - "AWS::EKS::Cluster.LoggingTypeConfig": { - "additionalProperties": false, - "properties": { - "Type": { - "type": "string" - } - }, - "type": "object" - }, - "AWS::EKS::Cluster.OutpostConfig": { - "additionalProperties": false, - "properties": { - "ControlPlaneInstanceType": { + "RoleArn": { "type": "string" }, - "ControlPlanePlacement": { - "$ref": "#/definitions/AWS::EKS::Cluster.ControlPlanePlacement" - }, - "OutpostArns": { - "items": { - "type": "string" - }, - "type": "array" - } - }, - "required": [ - "ControlPlaneInstanceType", - "OutpostArns" - ], - "type": "object" - }, - "AWS::EKS::Cluster.Provider": { - "additionalProperties": false, - "properties": { - "KeyArn": { + "ServiceAccount": { "type": "string" } }, - "type": "object" - }, - "AWS::EKS::Cluster.ResourcesVpcConfig": { - "additionalProperties": false, - "properties": { - "EndpointPrivateAccess": { - "type": "boolean" - }, - "EndpointPublicAccess": { - "type": "boolean" - }, - "PublicAccessCidrs": { - "items": { - "type": "string" - }, - "type": "array" - }, - "SecurityGroupIds": { - "items": { - "type": "string" - }, - "type": "array" - }, - "SubnetIds": { - "items": { - "type": "string" - }, - "type": "array" - } - }, "required": [ - "SubnetIds" + "RoleArn", + "ServiceAccount" ], "type": "object" }, - "AWS::EKS::FargateProfile": { + "AWS::EKS::Cluster": { + "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": { + "AccessConfig": { + "$ref": "#/definitions/AWS::EKS::Cluster.AccessConfig" + }, + "EncryptionConfig": { + "items": { + "$ref": "#/definitions/AWS::EKS::Cluster.EncryptionConfig" + }, + "type": "array" + }, + "KubernetesNetworkConfig": { + "$ref": "#/definitions/AWS::EKS::Cluster.KubernetesNetworkConfig" + }, + "Logging": { + "$ref": "#/definitions/AWS::EKS::Cluster.Logging" + }, + "Name": { + "type": "string" + }, + "OutpostConfig": { + "$ref": "#/definitions/AWS::EKS::Cluster.OutpostConfig" + }, + "ResourcesVpcConfig": { + "$ref": "#/definitions/AWS::EKS::Cluster.ResourcesVpcConfig" + }, + "RoleArn": { + "type": "string" + }, + "Tags": { + "items": { + "$ref": "#/definitions/Tag" + }, + "type": "array" + }, + "Version": { + "type": "string" + } + }, + "required": [ + "ResourcesVpcConfig", + "RoleArn" + ], + "type": "object" + }, + "Type": { + "enum": [ + "AWS::EKS::Cluster" + ], + "type": "string" + }, + "UpdateReplacePolicy": { + "enum": [ + "Delete", + "Retain", + "Snapshot" + ], + "type": "string" + } + }, + "required": [ + "Type", + "Properties" + ], + "type": "object" + }, + "AWS::EKS::Cluster.AccessConfig": { + "additionalProperties": false, + "properties": { + "AuthenticationMode": { + "type": "string" + }, + "BootstrapClusterCreatorAdminPermissions": { + "type": "boolean" + } + }, + "type": "object" + }, + "AWS::EKS::Cluster.ClusterLogging": { + "additionalProperties": false, + "properties": { + "EnabledTypes": { + "items": { + "$ref": "#/definitions/AWS::EKS::Cluster.LoggingTypeConfig" + }, + "type": "array" + } + }, + "type": "object" + }, + "AWS::EKS::Cluster.ControlPlanePlacement": { + "additionalProperties": false, + "properties": { + "GroupName": { + "type": "string" + } + }, + "type": "object" + }, + "AWS::EKS::Cluster.EncryptionConfig": { + "additionalProperties": false, + "properties": { + "Provider": { + "$ref": "#/definitions/AWS::EKS::Cluster.Provider" + }, + "Resources": { + "items": { + "type": "string" + }, + "type": "array" + } + }, + "type": "object" + }, + "AWS::EKS::Cluster.KubernetesNetworkConfig": { + "additionalProperties": false, + "properties": { + "IpFamily": { + "type": "string" + }, + "ServiceIpv4Cidr": { + "type": "string" + }, + "ServiceIpv6Cidr": { + "type": "string" + } + }, + "type": "object" + }, + "AWS::EKS::Cluster.Logging": { + "additionalProperties": false, + "properties": { + "ClusterLogging": { + "$ref": "#/definitions/AWS::EKS::Cluster.ClusterLogging" + } + }, + "type": "object" + }, + "AWS::EKS::Cluster.LoggingTypeConfig": { + "additionalProperties": false, + "properties": { + "Type": { + "type": "string" + } + }, + "type": "object" + }, + "AWS::EKS::Cluster.OutpostConfig": { + "additionalProperties": false, + "properties": { + "ControlPlaneInstanceType": { + "type": "string" + }, + "ControlPlanePlacement": { + "$ref": "#/definitions/AWS::EKS::Cluster.ControlPlanePlacement" + }, + "OutpostArns": { + "items": { + "type": "string" + }, + "type": "array" + } + }, + "required": [ + "ControlPlaneInstanceType", + "OutpostArns" + ], + "type": "object" + }, + "AWS::EKS::Cluster.Provider": { + "additionalProperties": false, + "properties": { + "KeyArn": { + "type": "string" + } + }, + "type": "object" + }, + "AWS::EKS::Cluster.ResourcesVpcConfig": { + "additionalProperties": false, + "properties": { + "EndpointPrivateAccess": { + "type": "boolean" + }, + "EndpointPublicAccess": { + "type": "boolean" + }, + "PublicAccessCidrs": { + "items": { + "type": "string" + }, + "type": "array" + }, + "SecurityGroupIds": { + "items": { + "type": "string" + }, + "type": "array" + }, + "SubnetIds": { + "items": { + "type": "string" + }, + "type": "array" + } + }, + "required": [ + "SubnetIds" + ], + "type": "object" + }, + "AWS::EKS::FargateProfile": { "additionalProperties": false, "properties": { "Condition": { @@ -78514,9 +79191,18 @@ "Properties": { "additionalProperties": false, "properties": { + "DeadLetterConfig": { + "$ref": "#/definitions/AWS::Events::EventBus.DeadLetterConfig" + }, + "Description": { + "type": "string" + }, "EventSourceName": { "type": "string" }, + "KmsKeyIdentifier": { + "type": "string" + }, "Name": { "type": "string" }, @@ -78556,6 +79242,15 @@ ], "type": "object" }, + "AWS::Events::EventBus.DeadLetterConfig": { + "additionalProperties": false, + "properties": { + "Arn": { + "type": "string" + } + }, + "type": "object" + }, "AWS::Events::EventBusPolicy": { "additionalProperties": false, "properties": { @@ -80531,6 +81226,94 @@ }, "type": "object" }, + "AWS::FMS::Policy.IcmpTypeCode": { + "additionalProperties": false, + "properties": { + "Code": { + "type": "number" + }, + "Type": { + "type": "number" + } + }, + "required": [ + "Code", + "Type" + ], + "type": "object" + }, + "AWS::FMS::Policy.NetworkAclCommonPolicy": { + "additionalProperties": false, + "properties": { + "NetworkAclEntrySet": { + "$ref": "#/definitions/AWS::FMS::Policy.NetworkAclEntrySet" + } + }, + "required": [ + "NetworkAclEntrySet" + ], + "type": "object" + }, + "AWS::FMS::Policy.NetworkAclEntry": { + "additionalProperties": false, + "properties": { + "CidrBlock": { + "type": "string" + }, + "Egress": { + "type": "boolean" + }, + "IcmpTypeCode": { + "$ref": "#/definitions/AWS::FMS::Policy.IcmpTypeCode" + }, + "Ipv6CidrBlock": { + "type": "string" + }, + "PortRange": { + "$ref": "#/definitions/AWS::FMS::Policy.PortRange" + }, + "Protocol": { + "type": "string" + }, + "RuleAction": { + "type": "string" + } + }, + "required": [ + "Egress", + "Protocol", + "RuleAction" + ], + "type": "object" + }, + "AWS::FMS::Policy.NetworkAclEntrySet": { + "additionalProperties": false, + "properties": { + "FirstEntries": { + "items": { + "$ref": "#/definitions/AWS::FMS::Policy.NetworkAclEntry" + }, + "type": "array" + }, + "ForceRemediateForFirstEntries": { + "type": "boolean" + }, + "ForceRemediateForLastEntries": { + "type": "boolean" + }, + "LastEntries": { + "items": { + "$ref": "#/definitions/AWS::FMS::Policy.NetworkAclEntry" + }, + "type": "array" + } + }, + "required": [ + "ForceRemediateForFirstEntries", + "ForceRemediateForLastEntries" + ], + "type": "object" + }, "AWS::FMS::Policy.NetworkFirewallPolicy": { "additionalProperties": false, "properties": { @@ -80546,6 +81329,9 @@ "AWS::FMS::Policy.PolicyOption": { "additionalProperties": false, "properties": { + "NetworkAclCommonPolicy": { + "$ref": "#/definitions/AWS::FMS::Policy.NetworkAclCommonPolicy" + }, "NetworkFirewallPolicy": { "$ref": "#/definitions/AWS::FMS::Policy.NetworkFirewallPolicy" }, @@ -80571,6 +81357,22 @@ ], "type": "object" }, + "AWS::FMS::Policy.PortRange": { + "additionalProperties": false, + "properties": { + "From": { + "type": "number" + }, + "To": { + "type": "number" + } + }, + "required": [ + "From", + "To" + ], + "type": "object" + }, "AWS::FMS::Policy.ResourceTag": { "additionalProperties": false, "properties": { @@ -81023,6 +81825,9 @@ "ImportedFileChunkSize": { "type": "number" }, + "MetadataConfiguration": { + "$ref": "#/definitions/AWS::FSx::FileSystem.MetadataConfiguration" + }, "PerUnitStorageThroughput": { "type": "number" }, @@ -81032,6 +81837,18 @@ }, "type": "object" }, + "AWS::FSx::FileSystem.MetadataConfiguration": { + "additionalProperties": false, + "properties": { + "Iops": { + "type": "number" + }, + "Mode": { + "type": "string" + } + }, + "type": "object" + }, "AWS::FSx::FileSystem.NfsExports": { "additionalProperties": false, "properties": { @@ -85527,6 +86344,12 @@ "ConnectionName": { "type": "string" }, + "EnableAdditionalMetadata": { + "items": { + "type": "string" + }, + "type": "array" + }, "Exclusions": { "items": { "type": "string" @@ -86262,6 +87085,9 @@ "LogUri": { "type": "string" }, + "MaintenanceWindow": { + "type": "string" + }, "MaxCapacity": { "type": "number" }, @@ -116638,6 +117464,9 @@ "FunctionName": { "type": "string" }, + "Policy": { + "type": "object" + }, "ProvisionedConcurrencyConfig": { "$ref": "#/definitions/AWS::Lambda::Version.ProvisionedConcurrencyConfiguration" }, @@ -124533,9 +125362,15 @@ "LoggingConfiguration": { "$ref": "#/definitions/AWS::MWAA::Environment.LoggingConfiguration" }, + "MaxWebservers": { + "type": "number" + }, "MaxWorkers": { "type": "number" }, + "MinWebservers": { + "type": "number" + }, "MinWorkers": { "type": "number" }, @@ -125922,6 +126757,15 @@ "AvailabilityZone": { "type": "string" }, + "Maintenance": { + "$ref": "#/definitions/AWS::MediaConnect::Flow.Maintenance" + }, + "MediaStreams": { + "items": { + "$ref": "#/definitions/AWS::MediaConnect::Flow.MediaStream" + }, + "type": "array" + }, "Name": { "type": "string" }, @@ -125930,6 +126774,12 @@ }, "SourceFailoverConfig": { "$ref": "#/definitions/AWS::MediaConnect::Flow.FailoverConfig" + }, + "VpcInterfaces": { + "items": { + "$ref": "#/definitions/AWS::MediaConnect::Flow.VpcInterface" + }, + "type": "array" } }, "required": [ @@ -126013,6 +126863,33 @@ }, "type": "object" }, + "AWS::MediaConnect::Flow.Fmtp": { + "additionalProperties": false, + "properties": { + "ChannelOrder": { + "type": "string" + }, + "Colorimetry": { + "type": "string" + }, + "ExactFramerate": { + "type": "string" + }, + "Par": { + "type": "string" + }, + "Range": { + "type": "string" + }, + "ScanMode": { + "type": "string" + }, + "Tcs": { + "type": "string" + } + }, + "type": "object" + }, "AWS::MediaConnect::Flow.GatewayBridgeSource": { "additionalProperties": false, "properties": { @@ -126028,6 +126905,119 @@ ], "type": "object" }, + "AWS::MediaConnect::Flow.InputConfiguration": { + "additionalProperties": false, + "properties": { + "InputPort": { + "type": "number" + }, + "Interface": { + "$ref": "#/definitions/AWS::MediaConnect::Flow.Interface" + } + }, + "required": [ + "InputPort", + "Interface" + ], + "type": "object" + }, + "AWS::MediaConnect::Flow.Interface": { + "additionalProperties": false, + "properties": { + "Name": { + "type": "string" + } + }, + "required": [ + "Name" + ], + "type": "object" + }, + "AWS::MediaConnect::Flow.Maintenance": { + "additionalProperties": false, + "properties": { + "MaintenanceDay": { + "type": "string" + }, + "MaintenanceStartHour": { + "type": "string" + } + }, + "required": [ + "MaintenanceDay", + "MaintenanceStartHour" + ], + "type": "object" + }, + "AWS::MediaConnect::Flow.MediaStream": { + "additionalProperties": false, + "properties": { + "Attributes": { + "$ref": "#/definitions/AWS::MediaConnect::Flow.MediaStreamAttributes" + }, + "ClockRate": { + "type": "number" + }, + "Description": { + "type": "string" + }, + "Fmt": { + "type": "number" + }, + "MediaStreamId": { + "type": "number" + }, + "MediaStreamName": { + "type": "string" + }, + "MediaStreamType": { + "type": "string" + }, + "VideoFormat": { + "type": "string" + } + }, + "required": [ + "MediaStreamId", + "MediaStreamName", + "MediaStreamType" + ], + "type": "object" + }, + "AWS::MediaConnect::Flow.MediaStreamAttributes": { + "additionalProperties": false, + "properties": { + "Fmtp": { + "$ref": "#/definitions/AWS::MediaConnect::Flow.Fmtp" + }, + "Lang": { + "type": "string" + } + }, + "type": "object" + }, + "AWS::MediaConnect::Flow.MediaStreamSourceConfiguration": { + "additionalProperties": false, + "properties": { + "EncodingName": { + "type": "string" + }, + "InputConfigurations": { + "items": { + "$ref": "#/definitions/AWS::MediaConnect::Flow.InputConfiguration" + }, + "type": "array" + }, + "MediaStreamName": { + "type": "string" + } + }, + "required": [ + "EncodingName", + "MediaStreamName" + ], + "type": "object" + }, "AWS::MediaConnect::Flow.Source": { "additionalProperties": false, "properties": { @@ -126055,6 +127045,15 @@ "MaxLatency": { "type": "number" }, + "MaxSyncBuffer": { + "type": "number" + }, + "MediaStreamSourceConfigurations": { + "items": { + "$ref": "#/definitions/AWS::MediaConnect::Flow.MediaStreamSourceConfiguration" + }, + "type": "array" + }, "MinLatency": { "type": "number" }, @@ -126106,6 +127105,42 @@ ], "type": "object" }, + "AWS::MediaConnect::Flow.VpcInterface": { + "additionalProperties": false, + "properties": { + "Name": { + "type": "string" + }, + "NetworkInterfaceIds": { + "items": { + "type": "string" + }, + "type": "array" + }, + "NetworkInterfaceType": { + "type": "string" + }, + "RoleArn": { + "type": "string" + }, + "SecurityGroupIds": { + "items": { + "type": "string" + }, + "type": "array" + }, + "SubnetId": { + "type": "string" + } + }, + "required": [ + "Name", + "RoleArn", + "SecurityGroupIds", + "SubnetId" + ], + "type": "object" + }, "AWS::MediaConnect::Flow.VpcInterfaceAttachment": { "additionalProperties": false, "properties": { @@ -126297,6 +127332,12 @@ "MaxLatency": { "type": "number" }, + "MediaStreamOutputConfigurations": { + "items": { + "$ref": "#/definitions/AWS::MediaConnect::FlowOutput.MediaStreamOutputConfiguration" + }, + "type": "array" + }, "MinLatency": { "type": "number" }, @@ -126349,6 +127390,41 @@ ], "type": "object" }, + "AWS::MediaConnect::FlowOutput.DestinationConfiguration": { + "additionalProperties": false, + "properties": { + "DestinationIp": { + "type": "string" + }, + "DestinationPort": { + "type": "number" + }, + "Interface": { + "$ref": "#/definitions/AWS::MediaConnect::FlowOutput.Interface" + } + }, + "required": [ + "DestinationIp", + "DestinationPort", + "Interface" + ], + "type": "object" + }, + "AWS::MediaConnect::FlowOutput.EncodingParameters": { + "additionalProperties": false, + "properties": { + "CompressionFactor": { + "type": "number" + }, + "EncoderProfile": { + "type": "string" + } + }, + "required": [ + "CompressionFactor" + ], + "type": "object" + }, "AWS::MediaConnect::FlowOutput.Encryption": { "additionalProperties": false, "properties": { @@ -126371,6 +127447,43 @@ ], "type": "object" }, + "AWS::MediaConnect::FlowOutput.Interface": { + "additionalProperties": false, + "properties": { + "Name": { + "type": "string" + } + }, + "required": [ + "Name" + ], + "type": "object" + }, + "AWS::MediaConnect::FlowOutput.MediaStreamOutputConfiguration": { + "additionalProperties": false, + "properties": { + "DestinationConfigurations": { + "items": { + "$ref": "#/definitions/AWS::MediaConnect::FlowOutput.DestinationConfiguration" + }, + "type": "array" + }, + "EncodingName": { + "type": "string" + }, + "EncodingParameters": { + "$ref": "#/definitions/AWS::MediaConnect::FlowOutput.EncodingParameters" + }, + "MediaStreamName": { + "type": "string" + } + }, + "required": [ + "EncodingName", + "MediaStreamName" + ], + "type": "object" + }, "AWS::MediaConnect::FlowOutput.VpcInterfaceAttachment": { "additionalProperties": false, "properties": { @@ -127528,6 +128641,9 @@ "properties": { "AvailSettings": { "$ref": "#/definitions/AWS::MediaLive::Channel.AvailSettings" + }, + "Scte35SegmentationScope": { + "type": "string" } }, "type": "object" @@ -132339,6 +133455,12 @@ "ContainerType": { "type": "string" }, + "DashManifests": { + "items": { + "$ref": "#/definitions/AWS::MediaPackageV2::OriginEndpoint.DashManifestConfiguration" + }, + "type": "array" + }, "Description": { "type": "string" }, @@ -132398,6 +133520,63 @@ ], "type": "object" }, + "AWS::MediaPackageV2::OriginEndpoint.DashManifestConfiguration": { + "additionalProperties": false, + "properties": { + "DrmSignaling": { + "type": "string" + }, + "FilterConfiguration": { + "$ref": "#/definitions/AWS::MediaPackageV2::OriginEndpoint.FilterConfiguration" + }, + "ManifestName": { + "type": "string" + }, + "ManifestWindowSeconds": { + "type": "number" + }, + "MinBufferTimeSeconds": { + "type": "number" + }, + "MinUpdatePeriodSeconds": { + "type": "number" + }, + "PeriodTriggers": { + "items": { + "type": "string" + }, + "type": "array" + }, + "ScteDash": { + "$ref": "#/definitions/AWS::MediaPackageV2::OriginEndpoint.ScteDash" + }, + "SegmentTemplateFormat": { + "type": "string" + }, + "SuggestedPresentationDelaySeconds": { + "type": "number" + }, + "UtcTiming": { + "$ref": "#/definitions/AWS::MediaPackageV2::OriginEndpoint.DashUtcTiming" + } + }, + "required": [ + "ManifestName" + ], + "type": "object" + }, + "AWS::MediaPackageV2::OriginEndpoint.DashUtcTiming": { + "additionalProperties": false, + "properties": { + "TimingMode": { + "type": "string" + }, + "TimingSource": { + "type": "string" + } + }, + "type": "object" + }, "AWS::MediaPackageV2::OriginEndpoint.Encryption": { "additionalProperties": false, "properties": { @@ -132538,6 +133717,15 @@ }, "type": "object" }, + "AWS::MediaPackageV2::OriginEndpoint.ScteDash": { + "additionalProperties": false, + "properties": { + "AdMarkerDash": { + "type": "string" + } + }, + "type": "object" + }, "AWS::MediaPackageV2::OriginEndpoint.ScteHls": { "additionalProperties": false, "properties": { @@ -133330,6 +134518,9 @@ "AWS::MediaTailor::PlaybackConfiguration.AvailSuppression": { "additionalProperties": false, "properties": { + "FillPolicy": { + "type": "string" + }, "Mode": { "type": "string" }, @@ -134670,7 +135861,7 @@ ], "type": "object" }, - "AWS::NeptuneGraph::Graph": { + "AWS::Neptune::EventSubscription": { "additionalProperties": false, "properties": { "Condition": { @@ -134705,39 +135896,33 @@ "Properties": { "additionalProperties": false, "properties": { - "DeletionProtection": { + "Enabled": { "type": "boolean" }, - "GraphName": { - "type": "string" - }, - "ProvisionedMemory": { - "type": "number" - }, - "PublicConnectivity": { - "type": "boolean" + "EventCategories": { + "items": { + "type": "string" + }, + "type": "array" }, - "ReplicaCount": { - "type": "number" + "SnsTopicArn": { + "type": "string" }, - "Tags": { + "SourceIds": { "items": { - "$ref": "#/definitions/Tag" + "type": "string" }, "type": "array" }, - "VectorSearchConfiguration": { - "$ref": "#/definitions/AWS::NeptuneGraph::Graph.VectorSearchConfiguration" + "SourceType": { + "type": "string" } }, - "required": [ - "ProvisionedMemory" - ], "type": "object" }, "Type": { "enum": [ - "AWS::NeptuneGraph::Graph" + "AWS::Neptune::EventSubscription" ], "type": "string" }, @@ -134751,24 +135936,11 @@ } }, "required": [ - "Type", - "Properties" - ], - "type": "object" - }, - "AWS::NeptuneGraph::Graph.VectorSearchConfiguration": { - "additionalProperties": false, - "properties": { - "VectorSearchDimension": { - "type": "number" - } - }, - "required": [ - "VectorSearchDimension" + "Type" ], "type": "object" }, - "AWS::NeptuneGraph::PrivateGraphEndpoint": { + "AWS::NeptuneGraph::Graph": { "additionalProperties": false, "properties": { "Condition": { @@ -134803,34 +135975,39 @@ "Properties": { "additionalProperties": false, "properties": { - "GraphIdentifier": { + "DeletionProtection": { + "type": "boolean" + }, + "GraphName": { "type": "string" }, - "SecurityGroupIds": { - "items": { - "type": "string" - }, - "type": "array" + "ProvisionedMemory": { + "type": "number" }, - "SubnetIds": { + "PublicConnectivity": { + "type": "boolean" + }, + "ReplicaCount": { + "type": "number" + }, + "Tags": { "items": { - "type": "string" + "$ref": "#/definitions/Tag" }, "type": "array" }, - "VpcId": { - "type": "string" + "VectorSearchConfiguration": { + "$ref": "#/definitions/AWS::NeptuneGraph::Graph.VectorSearchConfiguration" } }, "required": [ - "GraphIdentifier", - "VpcId" + "ProvisionedMemory" ], "type": "object" }, "Type": { "enum": [ - "AWS::NeptuneGraph::PrivateGraphEndpoint" + "AWS::NeptuneGraph::Graph" ], "type": "string" }, @@ -134849,7 +136026,19 @@ ], "type": "object" }, - "AWS::NetworkFirewall::Firewall": { + "AWS::NeptuneGraph::Graph.VectorSearchConfiguration": { + "additionalProperties": false, + "properties": { + "VectorSearchDimension": { + "type": "number" + } + }, + "required": [ + "VectorSearchDimension" + ], + "type": "object" + }, + "AWS::NeptuneGraph::PrivateGraphEndpoint": { "additionalProperties": false, "properties": { "Condition": { @@ -134884,33 +136073,18 @@ "Properties": { "additionalProperties": false, "properties": { - "DeleteProtection": { - "type": "boolean" - }, - "Description": { - "type": "string" - }, - "FirewallName": { - "type": "string" - }, - "FirewallPolicyArn": { + "GraphIdentifier": { "type": "string" }, - "FirewallPolicyChangeProtection": { - "type": "boolean" - }, - "SubnetChangeProtection": { - "type": "boolean" - }, - "SubnetMappings": { + "SecurityGroupIds": { "items": { - "$ref": "#/definitions/AWS::NetworkFirewall::Firewall.SubnetMapping" + "type": "string" }, "type": "array" }, - "Tags": { + "SubnetIds": { "items": { - "$ref": "#/definitions/Tag" + "type": "string" }, "type": "array" }, @@ -134919,16 +136093,14 @@ } }, "required": [ - "FirewallName", - "FirewallPolicyArn", - "SubnetMappings", + "GraphIdentifier", "VpcId" ], "type": "object" }, "Type": { "enum": [ - "AWS::NetworkFirewall::Firewall" + "AWS::NeptuneGraph::PrivateGraphEndpoint" ], "type": "string" }, @@ -134947,22 +136119,120 @@ ], "type": "object" }, - "AWS::NetworkFirewall::Firewall.SubnetMapping": { - "additionalProperties": false, - "properties": { - "IPAddressType": { - "type": "string" - }, - "SubnetId": { - "type": "string" - } - }, - "required": [ - "SubnetId" - ], - "type": "object" - }, - "AWS::NetworkFirewall::FirewallPolicy": { + "AWS::NetworkFirewall::Firewall": { + "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": { + "DeleteProtection": { + "type": "boolean" + }, + "Description": { + "type": "string" + }, + "FirewallName": { + "type": "string" + }, + "FirewallPolicyArn": { + "type": "string" + }, + "FirewallPolicyChangeProtection": { + "type": "boolean" + }, + "SubnetChangeProtection": { + "type": "boolean" + }, + "SubnetMappings": { + "items": { + "$ref": "#/definitions/AWS::NetworkFirewall::Firewall.SubnetMapping" + }, + "type": "array" + }, + "Tags": { + "items": { + "$ref": "#/definitions/Tag" + }, + "type": "array" + }, + "VpcId": { + "type": "string" + } + }, + "required": [ + "FirewallName", + "FirewallPolicyArn", + "SubnetMappings", + "VpcId" + ], + "type": "object" + }, + "Type": { + "enum": [ + "AWS::NetworkFirewall::Firewall" + ], + "type": "string" + }, + "UpdateReplacePolicy": { + "enum": [ + "Delete", + "Retain", + "Snapshot" + ], + "type": "string" + } + }, + "required": [ + "Type", + "Properties" + ], + "type": "object" + }, + "AWS::NetworkFirewall::Firewall.SubnetMapping": { + "additionalProperties": false, + "properties": { + "IPAddressType": { + "type": "string" + }, + "SubnetId": { + "type": "string" + } + }, + "required": [ + "SubnetId" + ], + "type": "object" + }, + "AWS::NetworkFirewall::FirewallPolicy": { "additionalProperties": false, "properties": { "Condition": { @@ -146970,6 +148240,26 @@ }, "type": "object" }, + "AWS::Pipes::Pipe.DimensionMapping": { + "additionalProperties": false, + "properties": { + "DimensionName": { + "type": "string" + }, + "DimensionValue": { + "type": "string" + }, + "DimensionValueType": { + "type": "string" + } + }, + "required": [ + "DimensionName", + "DimensionValue", + "DimensionValueType" + ], + "type": "object" + }, "AWS::Pipes::Pipe.EcsContainerOverride": { "additionalProperties": false, "properties": { @@ -147167,6 +148457,45 @@ }, "type": "object" }, + "AWS::Pipes::Pipe.MultiMeasureAttributeMapping": { + "additionalProperties": false, + "properties": { + "MeasureValue": { + "type": "string" + }, + "MeasureValueType": { + "type": "string" + }, + "MultiMeasureAttributeName": { + "type": "string" + } + }, + "required": [ + "MeasureValue", + "MeasureValueType", + "MultiMeasureAttributeName" + ], + "type": "object" + }, + "AWS::Pipes::Pipe.MultiMeasureMapping": { + "additionalProperties": false, + "properties": { + "MultiMeasureAttributeMappings": { + "items": { + "$ref": "#/definitions/AWS::Pipes::Pipe.MultiMeasureAttributeMapping" + }, + "type": "array" + }, + "MultiMeasureName": { + "type": "string" + } + }, + "required": [ + "MultiMeasureAttributeMappings", + "MultiMeasureName" + ], + "type": "object" + }, "AWS::Pipes::Pipe.NetworkConfiguration": { "additionalProperties": false, "properties": { @@ -147697,6 +149026,9 @@ }, "StepFunctionStateMachineParameters": { "$ref": "#/definitions/AWS::Pipes::Pipe.PipeTargetStateMachineParameters" + }, + "TimestreamParameters": { + "$ref": "#/definitions/AWS::Pipes::Pipe.PipeTargetTimestreamParameters" } }, "type": "object" @@ -147765,6 +149097,50 @@ }, "type": "object" }, + "AWS::Pipes::Pipe.PipeTargetTimestreamParameters": { + "additionalProperties": false, + "properties": { + "DimensionMappings": { + "items": { + "$ref": "#/definitions/AWS::Pipes::Pipe.DimensionMapping" + }, + "type": "array" + }, + "EpochTimeUnit": { + "type": "string" + }, + "MultiMeasureMappings": { + "items": { + "$ref": "#/definitions/AWS::Pipes::Pipe.MultiMeasureMapping" + }, + "type": "array" + }, + "SingleMeasureMappings": { + "items": { + "$ref": "#/definitions/AWS::Pipes::Pipe.SingleMeasureMapping" + }, + "type": "array" + }, + "TimeFieldType": { + "type": "string" + }, + "TimeValue": { + "type": "string" + }, + "TimestampFormat": { + "type": "string" + }, + "VersionValue": { + "type": "string" + } + }, + "required": [ + "DimensionMappings", + "TimeValue", + "VersionValue" + ], + "type": "object" + }, "AWS::Pipes::Pipe.PlacementConstraint": { "additionalProperties": false, "properties": { @@ -147859,89 +149235,109 @@ }, "type": "object" }, - "AWS::Proton::EnvironmentAccountConnection": { + "AWS::Pipes::Pipe.SingleMeasureMapping": { "additionalProperties": false, "properties": { - "Condition": { - "type": "string" - }, - "DeletionPolicy": { - "enum": [ - "Delete", - "Retain", - "Snapshot" - ], + "MeasureName": { "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": { - "CodebuildRoleArn": { - "type": "string" - }, - "ComponentRoleArn": { - "type": "string" - }, - "EnvironmentAccountId": { - "type": "string" - }, - "EnvironmentName": { - "type": "string" - }, - "ManagementAccountId": { - "type": "string" - }, - "RoleArn": { - "type": "string" - }, - "Tags": { - "items": { - "$ref": "#/definitions/Tag" - }, - "type": "array" - } - }, - "type": "object" - }, - "Type": { - "enum": [ - "AWS::Proton::EnvironmentAccountConnection" - ], + "MeasureValue": { "type": "string" }, - "UpdateReplacePolicy": { - "enum": [ - "Delete", - "Retain", - "Snapshot" - ], + "MeasureValueType": { "type": "string" } }, "required": [ - "Type" + "MeasureName", + "MeasureValue", + "MeasureValueType" ], "type": "object" }, - "AWS::Proton::EnvironmentTemplate": { + "AWS::Proton::EnvironmentAccountConnection": { + "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": { + "CodebuildRoleArn": { + "type": "string" + }, + "ComponentRoleArn": { + "type": "string" + }, + "EnvironmentAccountId": { + "type": "string" + }, + "EnvironmentName": { + "type": "string" + }, + "ManagementAccountId": { + "type": "string" + }, + "RoleArn": { + "type": "string" + }, + "Tags": { + "items": { + "$ref": "#/definitions/Tag" + }, + "type": "array" + } + }, + "type": "object" + }, + "Type": { + "enum": [ + "AWS::Proton::EnvironmentAccountConnection" + ], + "type": "string" + }, + "UpdateReplacePolicy": { + "enum": [ + "Delete", + "Retain", + "Snapshot" + ], + "type": "string" + } + }, + "required": [ + "Type" + ], + "type": "object" + }, + "AWS::Proton::EnvironmentTemplate": { "additionalProperties": false, "properties": { "Condition": { @@ -148055,19 +149451,875 @@ "Properties": { "additionalProperties": false, "properties": { - "Description": { + "Description": { + "type": "string" + }, + "DisplayName": { + "type": "string" + }, + "EncryptionKey": { + "type": "string" + }, + "Name": { + "type": "string" + }, + "PipelineProvisioning": { + "type": "string" + }, + "Tags": { + "items": { + "$ref": "#/definitions/Tag" + }, + "type": "array" + } + }, + "type": "object" + }, + "Type": { + "enum": [ + "AWS::Proton::ServiceTemplate" + ], + "type": "string" + }, + "UpdateReplacePolicy": { + "enum": [ + "Delete", + "Retain", + "Snapshot" + ], + "type": "string" + } + }, + "required": [ + "Type" + ], + "type": "object" + }, + "AWS::QBusiness::Application": { + "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": { + "AttachmentsConfiguration": { + "$ref": "#/definitions/AWS::QBusiness::Application.AttachmentsConfiguration" + }, + "Description": { + "type": "string" + }, + "DisplayName": { + "type": "string" + }, + "EncryptionConfiguration": { + "$ref": "#/definitions/AWS::QBusiness::Application.EncryptionConfiguration" + }, + "IdentityCenterInstanceArn": { + "type": "string" + }, + "RoleArn": { + "type": "string" + }, + "Tags": { + "items": { + "$ref": "#/definitions/Tag" + }, + "type": "array" + } + }, + "required": [ + "DisplayName" + ], + "type": "object" + }, + "Type": { + "enum": [ + "AWS::QBusiness::Application" + ], + "type": "string" + }, + "UpdateReplacePolicy": { + "enum": [ + "Delete", + "Retain", + "Snapshot" + ], + "type": "string" + } + }, + "required": [ + "Type", + "Properties" + ], + "type": "object" + }, + "AWS::QBusiness::Application.AttachmentsConfiguration": { + "additionalProperties": false, + "properties": { + "AttachmentsControlMode": { + "type": "string" + } + }, + "required": [ + "AttachmentsControlMode" + ], + "type": "object" + }, + "AWS::QBusiness::Application.EncryptionConfiguration": { + "additionalProperties": false, + "properties": { + "KmsKeyId": { + "type": "string" + } + }, + "type": "object" + }, + "AWS::QBusiness::DataSource": { + "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": { + "ApplicationId": { + "type": "string" + }, + "Configuration": { + "type": "object" + }, + "Description": { + "type": "string" + }, + "DisplayName": { + "type": "string" + }, + "DocumentEnrichmentConfiguration": { + "$ref": "#/definitions/AWS::QBusiness::DataSource.DocumentEnrichmentConfiguration" + }, + "IndexId": { + "type": "string" + }, + "RoleArn": { + "type": "string" + }, + "SyncSchedule": { + "type": "string" + }, + "Tags": { + "items": { + "$ref": "#/definitions/Tag" + }, + "type": "array" + }, + "VpcConfiguration": { + "$ref": "#/definitions/AWS::QBusiness::DataSource.DataSourceVpcConfiguration" + } + }, + "required": [ + "ApplicationId", + "Configuration", + "DisplayName", + "IndexId" + ], + "type": "object" + }, + "Type": { + "enum": [ + "AWS::QBusiness::DataSource" + ], + "type": "string" + }, + "UpdateReplacePolicy": { + "enum": [ + "Delete", + "Retain", + "Snapshot" + ], + "type": "string" + } + }, + "required": [ + "Type", + "Properties" + ], + "type": "object" + }, + "AWS::QBusiness::DataSource.DataSourceVpcConfiguration": { + "additionalProperties": false, + "properties": { + "SecurityGroupIds": { + "items": { + "type": "string" + }, + "type": "array" + }, + "SubnetIds": { + "items": { + "type": "string" + }, + "type": "array" + } + }, + "required": [ + "SecurityGroupIds", + "SubnetIds" + ], + "type": "object" + }, + "AWS::QBusiness::DataSource.DocumentAttributeCondition": { + "additionalProperties": false, + "properties": { + "Key": { + "type": "string" + }, + "Operator": { + "type": "string" + }, + "Value": { + "$ref": "#/definitions/AWS::QBusiness::DataSource.DocumentAttributeValue" + } + }, + "required": [ + "Key", + "Operator" + ], + "type": "object" + }, + "AWS::QBusiness::DataSource.DocumentAttributeTarget": { + "additionalProperties": false, + "properties": { + "AttributeValueOperator": { + "type": "string" + }, + "Key": { + "type": "string" + }, + "Value": { + "$ref": "#/definitions/AWS::QBusiness::DataSource.DocumentAttributeValue" + } + }, + "required": [ + "Key" + ], + "type": "object" + }, + "AWS::QBusiness::DataSource.DocumentAttributeValue": { + "additionalProperties": false, + "properties": { + "DateValue": { + "type": "string" + }, + "LongValue": { + "type": "number" + }, + "StringListValue": { + "items": { + "type": "string" + }, + "type": "array" + }, + "StringValue": { + "type": "string" + } + }, + "type": "object" + }, + "AWS::QBusiness::DataSource.DocumentEnrichmentConfiguration": { + "additionalProperties": false, + "properties": { + "InlineConfigurations": { + "items": { + "$ref": "#/definitions/AWS::QBusiness::DataSource.InlineDocumentEnrichmentConfiguration" + }, + "type": "array" + }, + "PostExtractionHookConfiguration": { + "$ref": "#/definitions/AWS::QBusiness::DataSource.HookConfiguration" + }, + "PreExtractionHookConfiguration": { + "$ref": "#/definitions/AWS::QBusiness::DataSource.HookConfiguration" + } + }, + "type": "object" + }, + "AWS::QBusiness::DataSource.HookConfiguration": { + "additionalProperties": false, + "properties": { + "InvocationCondition": { + "$ref": "#/definitions/AWS::QBusiness::DataSource.DocumentAttributeCondition" + }, + "LambdaArn": { + "type": "string" + }, + "RoleArn": { + "type": "string" + }, + "S3BucketName": { + "type": "string" + } + }, + "type": "object" + }, + "AWS::QBusiness::DataSource.InlineDocumentEnrichmentConfiguration": { + "additionalProperties": false, + "properties": { + "Condition": { + "$ref": "#/definitions/AWS::QBusiness::DataSource.DocumentAttributeCondition" + }, + "DocumentContentOperator": { + "type": "string" + }, + "Target": { + "$ref": "#/definitions/AWS::QBusiness::DataSource.DocumentAttributeTarget" + } + }, + "type": "object" + }, + "AWS::QBusiness::Index": { + "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": { + "ApplicationId": { + "type": "string" + }, + "CapacityConfiguration": { + "$ref": "#/definitions/AWS::QBusiness::Index.IndexCapacityConfiguration" + }, + "Description": { + "type": "string" + }, + "DisplayName": { + "type": "string" + }, + "DocumentAttributeConfigurations": { + "items": { + "$ref": "#/definitions/AWS::QBusiness::Index.DocumentAttributeConfiguration" + }, + "type": "array" + }, + "Tags": { + "items": { + "$ref": "#/definitions/Tag" + }, + "type": "array" + }, + "Type": { + "type": "string" + } + }, + "required": [ + "ApplicationId", + "DisplayName" + ], + "type": "object" + }, + "Type": { + "enum": [ + "AWS::QBusiness::Index" + ], + "type": "string" + }, + "UpdateReplacePolicy": { + "enum": [ + "Delete", + "Retain", + "Snapshot" + ], + "type": "string" + } + }, + "required": [ + "Type", + "Properties" + ], + "type": "object" + }, + "AWS::QBusiness::Index.DocumentAttributeConfiguration": { + "additionalProperties": false, + "properties": { + "Name": { + "type": "string" + }, + "Search": { + "type": "string" + }, + "Type": { + "type": "string" + } + }, + "type": "object" + }, + "AWS::QBusiness::Index.IndexCapacityConfiguration": { + "additionalProperties": false, + "properties": { + "Units": { + "type": "number" + } + }, + "type": "object" + }, + "AWS::QBusiness::Index.IndexStatistics": { + "additionalProperties": false, + "properties": { + "TextDocumentStatistics": { + "$ref": "#/definitions/AWS::QBusiness::Index.TextDocumentStatistics" + } + }, + "type": "object" + }, + "AWS::QBusiness::Index.TextDocumentStatistics": { + "additionalProperties": false, + "properties": { + "IndexedTextBytes": { + "type": "number" + }, + "IndexedTextDocumentCount": { + "type": "number" + } + }, + "type": "object" + }, + "AWS::QBusiness::Plugin": { + "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": { + "ApplicationId": { + "type": "string" + }, + "AuthConfiguration": { + "$ref": "#/definitions/AWS::QBusiness::Plugin.PluginAuthConfiguration" + }, + "CustomPluginConfiguration": { + "$ref": "#/definitions/AWS::QBusiness::Plugin.CustomPluginConfiguration" + }, + "DisplayName": { + "type": "string" + }, + "ServerUrl": { + "type": "string" + }, + "State": { + "type": "string" + }, + "Tags": { + "items": { + "$ref": "#/definitions/Tag" + }, + "type": "array" + }, + "Type": { + "type": "string" + } + }, + "required": [ + "ApplicationId", + "AuthConfiguration", + "DisplayName", + "Type" + ], + "type": "object" + }, + "Type": { + "enum": [ + "AWS::QBusiness::Plugin" + ], + "type": "string" + }, + "UpdateReplacePolicy": { + "enum": [ + "Delete", + "Retain", + "Snapshot" + ], + "type": "string" + } + }, + "required": [ + "Type", + "Properties" + ], + "type": "object" + }, + "AWS::QBusiness::Plugin.APISchema": { + "additionalProperties": false, + "properties": { + "Payload": { + "type": "string" + }, + "S3": { + "$ref": "#/definitions/AWS::QBusiness::Plugin.S3" + } + }, + "type": "object" + }, + "AWS::QBusiness::Plugin.BasicAuthConfiguration": { + "additionalProperties": false, + "properties": { + "RoleArn": { + "type": "string" + }, + "SecretArn": { + "type": "string" + } + }, + "required": [ + "RoleArn", + "SecretArn" + ], + "type": "object" + }, + "AWS::QBusiness::Plugin.CustomPluginConfiguration": { + "additionalProperties": false, + "properties": { + "ApiSchema": { + "$ref": "#/definitions/AWS::QBusiness::Plugin.APISchema" + }, + "ApiSchemaType": { + "type": "string" + }, + "Description": { + "type": "string" + } + }, + "required": [ + "ApiSchema", + "ApiSchemaType", + "Description" + ], + "type": "object" + }, + "AWS::QBusiness::Plugin.OAuth2ClientCredentialConfiguration": { + "additionalProperties": false, + "properties": { + "RoleArn": { + "type": "string" + }, + "SecretArn": { + "type": "string" + } + }, + "required": [ + "RoleArn", + "SecretArn" + ], + "type": "object" + }, + "AWS::QBusiness::Plugin.PluginAuthConfiguration": { + "additionalProperties": false, + "properties": { + "BasicAuthConfiguration": { + "$ref": "#/definitions/AWS::QBusiness::Plugin.BasicAuthConfiguration" + }, + "NoAuthConfiguration": { + "type": "object" + }, + "OAuth2ClientCredentialConfiguration": { + "$ref": "#/definitions/AWS::QBusiness::Plugin.OAuth2ClientCredentialConfiguration" + } + }, + "type": "object" + }, + "AWS::QBusiness::Plugin.S3": { + "additionalProperties": false, + "properties": { + "Bucket": { + "type": "string" + }, + "Key": { + "type": "string" + } + }, + "required": [ + "Bucket", + "Key" + ], + "type": "object" + }, + "AWS::QBusiness::Retriever": { + "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": { + "ApplicationId": { "type": "string" }, + "Configuration": { + "$ref": "#/definitions/AWS::QBusiness::Retriever.RetrieverConfiguration" + }, "DisplayName": { "type": "string" }, - "EncryptionKey": { + "RoleArn": { "type": "string" }, - "Name": { + "Tags": { + "items": { + "$ref": "#/definitions/Tag" + }, + "type": "array" + }, + "Type": { + "type": "string" + } + }, + "required": [ + "ApplicationId", + "Configuration", + "DisplayName", + "Type" + ], + "type": "object" + }, + "Type": { + "enum": [ + "AWS::QBusiness::Retriever" + ], + "type": "string" + }, + "UpdateReplacePolicy": { + "enum": [ + "Delete", + "Retain", + "Snapshot" + ], + "type": "string" + } + }, + "required": [ + "Type", + "Properties" + ], + "type": "object" + }, + "AWS::QBusiness::Retriever.KendraIndexConfiguration": { + "additionalProperties": false, + "properties": { + "IndexId": { + "type": "string" + } + }, + "required": [ + "IndexId" + ], + "type": "object" + }, + "AWS::QBusiness::Retriever.NativeIndexConfiguration": { + "additionalProperties": false, + "properties": { + "IndexId": { + "type": "string" + } + }, + "required": [ + "IndexId" + ], + "type": "object" + }, + "AWS::QBusiness::Retriever.RetrieverConfiguration": { + "additionalProperties": false, + "properties": { + "KendraIndexConfiguration": { + "$ref": "#/definitions/AWS::QBusiness::Retriever.KendraIndexConfiguration" + }, + "NativeIndexConfiguration": { + "$ref": "#/definitions/AWS::QBusiness::Retriever.NativeIndexConfiguration" + } + }, + "type": "object" + }, + "AWS::QBusiness::WebExperience": { + "additionalProperties": false, + "properties": { + "Condition": { + "type": "string" + }, + "DeletionPolicy": { + "enum": [ + "Delete", + "Retain", + "Snapshot" + ], + "type": "string" + }, + "DependsOn": { + "anyOf": [ + { + "pattern": "^[a-zA-Z0-9]+$", "type": "string" }, - "PipelineProvisioning": { + { + "items": { + "pattern": "^[a-zA-Z0-9]+$", + "type": "string" + }, + "type": "array" + } + ] + }, + "Metadata": { + "type": "object" + }, + "Properties": { + "additionalProperties": false, + "properties": { + "ApplicationId": { + "type": "string" + }, + "RoleArn": { + "type": "string" + }, + "SamplePromptsControlMode": { + "type": "string" + }, + "Subtitle": { "type": "string" }, "Tags": { @@ -148075,13 +150327,22 @@ "$ref": "#/definitions/Tag" }, "type": "array" + }, + "Title": { + "type": "string" + }, + "WelcomeMessage": { + "type": "string" } }, + "required": [ + "ApplicationId" + ], "type": "object" }, "Type": { "enum": [ - "AWS::Proton::ServiceTemplate" + "AWS::QBusiness::WebExperience" ], "type": "string" }, @@ -148095,7 +150356,8 @@ } }, "required": [ - "Type" + "Type", + "Properties" ], "type": "object" }, @@ -157127,6 +159389,15 @@ }, "type": "object" }, + "AWS::QuickSight::Analysis.WaterfallChartColorConfiguration": { + "additionalProperties": false, + "properties": { + "GroupColorConfiguration": { + "$ref": "#/definitions/AWS::QuickSight::Analysis.WaterfallChartGroupColorConfiguration" + } + }, + "type": "object" + }, "AWS::QuickSight::Analysis.WaterfallChartConfiguration": { "additionalProperties": false, "properties": { @@ -157136,6 +159407,9 @@ "CategoryAxisLabelOptions": { "$ref": "#/definitions/AWS::QuickSight::Analysis.ChartAxisLabelOptions" }, + "ColorConfiguration": { + "$ref": "#/definitions/AWS::QuickSight::Analysis.WaterfallChartColorConfiguration" + }, "DataLabels": { "$ref": "#/definitions/AWS::QuickSight::Analysis.DataLabelOptions" }, @@ -157172,6 +159446,21 @@ }, "type": "object" }, + "AWS::QuickSight::Analysis.WaterfallChartGroupColorConfiguration": { + "additionalProperties": false, + "properties": { + "NegativeBarColor": { + "type": "string" + }, + "PositiveBarColor": { + "type": "string" + }, + "TotalBarColor": { + "type": "string" + } + }, + "type": "object" + }, "AWS::QuickSight::Analysis.WaterfallChartOptions": { "additionalProperties": false, "properties": { @@ -166432,6 +168721,15 @@ }, "type": "object" }, + "AWS::QuickSight::Dashboard.WaterfallChartColorConfiguration": { + "additionalProperties": false, + "properties": { + "GroupColorConfiguration": { + "$ref": "#/definitions/AWS::QuickSight::Dashboard.WaterfallChartGroupColorConfiguration" + } + }, + "type": "object" + }, "AWS::QuickSight::Dashboard.WaterfallChartConfiguration": { "additionalProperties": false, "properties": { @@ -166441,6 +168739,9 @@ "CategoryAxisLabelOptions": { "$ref": "#/definitions/AWS::QuickSight::Dashboard.ChartAxisLabelOptions" }, + "ColorConfiguration": { + "$ref": "#/definitions/AWS::QuickSight::Dashboard.WaterfallChartColorConfiguration" + }, "DataLabels": { "$ref": "#/definitions/AWS::QuickSight::Dashboard.DataLabelOptions" }, @@ -166477,6 +168778,21 @@ }, "type": "object" }, + "AWS::QuickSight::Dashboard.WaterfallChartGroupColorConfiguration": { + "additionalProperties": false, + "properties": { + "NegativeBarColor": { + "type": "string" + }, + "PositiveBarColor": { + "type": "string" + }, + "TotalBarColor": { + "type": "string" + } + }, + "type": "object" + }, "AWS::QuickSight::Dashboard.WaterfallChartOptions": { "additionalProperties": false, "properties": { @@ -166968,6 +169284,9 @@ "$ref": "#/definitions/AWS::QuickSight::DataSet.RefreshConfiguration" } }, + "required": [ + "RefreshConfiguration" + ], "type": "object" }, "AWS::QuickSight::DataSet.DataSetUsageConfiguration": { @@ -167129,6 +169448,9 @@ "$ref": "#/definitions/AWS::QuickSight::DataSet.LookbackWindow" } }, + "required": [ + "LookbackWindow" + ], "type": "object" }, "AWS::QuickSight::DataSet.IngestionWaitPolicy": { @@ -167286,6 +169608,11 @@ "type": "string" } }, + "required": [ + "ColumnName", + "Size", + "SizeUnit" + ], "type": "object" }, "AWS::QuickSight::DataSet.NewDefaultValues": { @@ -167391,6 +169718,9 @@ "$ref": "#/definitions/AWS::QuickSight::DataSet.IncrementalRefresh" } }, + "required": [ + "IncrementalRefresh" + ], "type": "object" }, "AWS::QuickSight::DataSet.RelationalTable": { @@ -167624,10 +169954,32 @@ }, "TagColumnOperation": { "$ref": "#/definitions/AWS::QuickSight::DataSet.TagColumnOperation" + }, + "UntagColumnOperation": { + "$ref": "#/definitions/AWS::QuickSight::DataSet.UntagColumnOperation" } }, "type": "object" }, + "AWS::QuickSight::DataSet.UntagColumnOperation": { + "additionalProperties": false, + "properties": { + "ColumnName": { + "type": "string" + }, + "TagNames": { + "items": { + "type": "string" + }, + "type": "array" + } + }, + "required": [ + "ColumnName", + "TagNames" + ], + "type": "object" + }, "AWS::QuickSight::DataSet.UploadSettings": { "additionalProperties": false, "properties": { @@ -167730,6 +170082,10 @@ "$ref": "#/definitions/AWS::QuickSight::DataSource.VpcConnectionProperties" } }, + "required": [ + "Name", + "Type" + ], "type": "object" }, "Type": { @@ -167748,7 +170104,8 @@ } }, "required": [ - "Type" + "Type", + "Properties" ], "type": "object" }, @@ -167963,6 +170320,15 @@ ], "type": "object" }, + "AWS::QuickSight::DataSource.IdentityCenterConfiguration": { + "additionalProperties": false, + "properties": { + "EnableIdentityPropagation": { + "type": "boolean" + } + }, + "type": "object" + }, "AWS::QuickSight::DataSource.ManifestFileLocation": { "additionalProperties": false, "properties": { @@ -168095,6 +170461,30 @@ ], "type": "object" }, + "AWS::QuickSight::DataSource.RedshiftIAMParameters": { + "additionalProperties": false, + "properties": { + "AutoCreateDatabaseUser": { + "type": "boolean" + }, + "DatabaseGroups": { + "items": { + "type": "string" + }, + "type": "array" + }, + "DatabaseUser": { + "type": "string" + }, + "RoleArn": { + "type": "string" + } + }, + "required": [ + "RoleArn" + ], + "type": "object" + }, "AWS::QuickSight::DataSource.RedshiftParameters": { "additionalProperties": false, "properties": { @@ -168107,6 +170497,12 @@ "Host": { "type": "string" }, + "IAMParameters": { + "$ref": "#/definitions/AWS::QuickSight::DataSource.RedshiftIAMParameters" + }, + "IdentityCenterConfiguration": { + "$ref": "#/definitions/AWS::QuickSight::DataSource.IdentityCenterConfiguration" + }, "Port": { "type": "number" } @@ -168127,6 +170523,9 @@ }, "Principal": { "type": "string" + }, + "Resource": { + "type": "string" } }, "required": [ @@ -177236,6 +179635,15 @@ }, "type": "object" }, + "AWS::QuickSight::Template.WaterfallChartColorConfiguration": { + "additionalProperties": false, + "properties": { + "GroupColorConfiguration": { + "$ref": "#/definitions/AWS::QuickSight::Template.WaterfallChartGroupColorConfiguration" + } + }, + "type": "object" + }, "AWS::QuickSight::Template.WaterfallChartConfiguration": { "additionalProperties": false, "properties": { @@ -177245,6 +179653,9 @@ "CategoryAxisLabelOptions": { "$ref": "#/definitions/AWS::QuickSight::Template.ChartAxisLabelOptions" }, + "ColorConfiguration": { + "$ref": "#/definitions/AWS::QuickSight::Template.WaterfallChartColorConfiguration" + }, "DataLabels": { "$ref": "#/definitions/AWS::QuickSight::Template.DataLabelOptions" }, @@ -177281,6 +179692,21 @@ }, "type": "object" }, + "AWS::QuickSight::Template.WaterfallChartGroupColorConfiguration": { + "additionalProperties": false, + "properties": { + "NegativeBarColor": { + "type": "string" + }, + "PositiveBarColor": { + "type": "string" + }, + "TotalBarColor": { + "type": "string" + } + }, + "type": "object" + }, "AWS::QuickSight::Template.WaterfallChartOptions": { "additionalProperties": false, "properties": { @@ -178222,6 +180648,9 @@ "DefaultFormatting": { "$ref": "#/definitions/AWS::QuickSight::Topic.DefaultFormatting" }, + "DisableIndexing": { + "type": "boolean" + }, "Expression": { "type": "string" }, @@ -178328,6 +180757,9 @@ "DefaultFormatting": { "$ref": "#/definitions/AWS::QuickSight::Topic.DefaultFormatting" }, + "DisableIndexing": { + "type": "boolean" + }, "IsIncludedInTopic": { "type": "boolean" }, @@ -184641,6 +187073,12 @@ "Properties": { "additionalProperties": false, "properties": { + "AttributeMappings": { + "items": { + "$ref": "#/definitions/AWS::RolesAnywhere::Profile.AttributeMapping" + }, + "type": "array" + }, "DurationSeconds": { "type": "number" }, @@ -184702,6 +187140,37 @@ ], "type": "object" }, + "AWS::RolesAnywhere::Profile.AttributeMapping": { + "additionalProperties": false, + "properties": { + "CertificateField": { + "type": "string" + }, + "MappingRules": { + "items": { + "$ref": "#/definitions/AWS::RolesAnywhere::Profile.MappingRule" + }, + "type": "array" + } + }, + "required": [ + "CertificateField", + "MappingRules" + ], + "type": "object" + }, + "AWS::RolesAnywhere::Profile.MappingRule": { + "additionalProperties": false, + "properties": { + "Specifier": { + "type": "string" + } + }, + "required": [ + "Specifier" + ], + "type": "object" + }, "AWS::RolesAnywhere::TrustAnchor": { "additionalProperties": false, "properties": { @@ -186933,6 +189402,9 @@ "FirewallDomainListId": { "type": "string" }, + "FirewallDomainRedirectionAction": { + "type": "string" + }, "Priority": { "type": "number" }, @@ -194955,6 +197427,194 @@ ], "type": "object" }, + "AWS::SSO::Application": { + "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": { + "ApplicationProviderArn": { + "type": "string" + }, + "Description": { + "type": "string" + }, + "InstanceArn": { + "type": "string" + }, + "Name": { + "type": "string" + }, + "PortalOptions": { + "$ref": "#/definitions/AWS::SSO::Application.PortalOptionsConfiguration" + }, + "Status": { + "type": "string" + }, + "Tags": { + "items": { + "$ref": "#/definitions/Tag" + }, + "type": "array" + } + }, + "required": [ + "ApplicationProviderArn", + "InstanceArn", + "Name" + ], + "type": "object" + }, + "Type": { + "enum": [ + "AWS::SSO::Application" + ], + "type": "string" + }, + "UpdateReplacePolicy": { + "enum": [ + "Delete", + "Retain", + "Snapshot" + ], + "type": "string" + } + }, + "required": [ + "Type", + "Properties" + ], + "type": "object" + }, + "AWS::SSO::Application.PortalOptionsConfiguration": { + "additionalProperties": false, + "properties": { + "SignInOptions": { + "$ref": "#/definitions/AWS::SSO::Application.SignInOptions" + }, + "Visibility": { + "type": "string" + } + }, + "type": "object" + }, + "AWS::SSO::Application.SignInOptions": { + "additionalProperties": false, + "properties": { + "ApplicationUrl": { + "type": "string" + }, + "Origin": { + "type": "string" + } + }, + "required": [ + "Origin" + ], + "type": "object" + }, + "AWS::SSO::ApplicationAssignment": { + "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": { + "ApplicationArn": { + "type": "string" + }, + "PrincipalId": { + "type": "string" + }, + "PrincipalType": { + "type": "string" + } + }, + "required": [ + "ApplicationArn", + "PrincipalId", + "PrincipalType" + ], + "type": "object" + }, + "Type": { + "enum": [ + "AWS::SSO::ApplicationAssignment" + ], + "type": "string" + }, + "UpdateReplacePolicy": { + "enum": [ + "Delete", + "Retain", + "Snapshot" + ], + "type": "string" + } + }, + "required": [ + "Type", + "Properties" + ], + "type": "object" + }, "AWS::SSO::Assignment": { "additionalProperties": false, "properties": { @@ -194990,38 +197650,106 @@ "Properties": { "additionalProperties": false, "properties": { - "InstanceArn": { - "type": "string" - }, - "PermissionSetArn": { - "type": "string" - }, - "PrincipalId": { - "type": "string" - }, - "PrincipalType": { - "type": "string" - }, - "TargetId": { + "InstanceArn": { + "type": "string" + }, + "PermissionSetArn": { + "type": "string" + }, + "PrincipalId": { + "type": "string" + }, + "PrincipalType": { + "type": "string" + }, + "TargetId": { + "type": "string" + }, + "TargetType": { + "type": "string" + } + }, + "required": [ + "InstanceArn", + "PermissionSetArn", + "PrincipalId", + "PrincipalType", + "TargetId", + "TargetType" + ], + "type": "object" + }, + "Type": { + "enum": [ + "AWS::SSO::Assignment" + ], + "type": "string" + }, + "UpdateReplacePolicy": { + "enum": [ + "Delete", + "Retain", + "Snapshot" + ], + "type": "string" + } + }, + "required": [ + "Type", + "Properties" + ], + "type": "object" + }, + "AWS::SSO::Instance": { + "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": { + "Name": { "type": "string" }, - "TargetType": { - "type": "string" + "Tags": { + "items": { + "$ref": "#/definitions/Tag" + }, + "type": "array" } }, - "required": [ - "InstanceArn", - "PermissionSetArn", - "PrincipalId", - "PrincipalType", - "TargetId", - "TargetType" - ], "type": "object" }, "Type": { "enum": [ - "AWS::SSO::Assignment" + "AWS::SSO::Instance" ], "type": "string" }, @@ -195035,8 +197763,7 @@ } }, "required": [ - "Type", - "Properties" + "Type" ], "type": "object" }, @@ -196446,9 +199173,21 @@ "AWS::SageMaker::Domain.DefaultSpaceSettings": { "additionalProperties": false, "properties": { + "CustomFileSystemConfigs": { + "items": { + "$ref": "#/definitions/AWS::SageMaker::Domain.CustomFileSystemConfig" + }, + "type": "array" + }, + "CustomPosixUserConfig": { + "$ref": "#/definitions/AWS::SageMaker::Domain.CustomPosixUserConfig" + }, "ExecutionRole": { "type": "string" }, + "JupyterLabAppSettings": { + "$ref": "#/definitions/AWS::SageMaker::Domain.JupyterLabAppSettings" + }, "JupyterServerAppSettings": { "$ref": "#/definitions/AWS::SageMaker::Domain.JupyterServerAppSettings" }, @@ -196460,6 +199199,9 @@ "type": "string" }, "type": "array" + }, + "SpaceStorageSettings": { + "$ref": "#/definitions/AWS::SageMaker::Domain.DefaultSpaceStorageSettings" } }, "required": [ @@ -204245,6 +206987,210 @@ ], "type": "object" }, + "AWS::SecurityHub::ConfigurationPolicy": { + "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": { + "ConfigurationPolicy": { + "$ref": "#/definitions/AWS::SecurityHub::ConfigurationPolicy.Policy" + }, + "Description": { + "type": "string" + }, + "Name": { + "type": "string" + }, + "Tags": { + "additionalProperties": true, + "patternProperties": { + "^[a-zA-Z0-9]+$": { + "type": "string" + } + }, + "type": "object" + } + }, + "required": [ + "ConfigurationPolicy", + "Name" + ], + "type": "object" + }, + "Type": { + "enum": [ + "AWS::SecurityHub::ConfigurationPolicy" + ], + "type": "string" + }, + "UpdateReplacePolicy": { + "enum": [ + "Delete", + "Retain", + "Snapshot" + ], + "type": "string" + } + }, + "required": [ + "Type", + "Properties" + ], + "type": "object" + }, + "AWS::SecurityHub::ConfigurationPolicy.ParameterConfiguration": { + "additionalProperties": false, + "properties": { + "Value": { + "$ref": "#/definitions/AWS::SecurityHub::ConfigurationPolicy.ParameterValue" + }, + "ValueType": { + "type": "string" + } + }, + "required": [ + "ValueType" + ], + "type": "object" + }, + "AWS::SecurityHub::ConfigurationPolicy.ParameterValue": { + "additionalProperties": false, + "properties": { + "Boolean": { + "type": "boolean" + }, + "Double": { + "type": "number" + }, + "Enum": { + "type": "string" + }, + "EnumList": { + "items": { + "type": "string" + }, + "type": "array" + }, + "Integer": { + "type": "number" + }, + "IntegerList": { + "items": { + "type": "number" + }, + "type": "array" + }, + "String": { + "type": "string" + }, + "StringList": { + "items": { + "type": "string" + }, + "type": "array" + } + }, + "type": "object" + }, + "AWS::SecurityHub::ConfigurationPolicy.Policy": { + "additionalProperties": false, + "properties": { + "SecurityHub": { + "$ref": "#/definitions/AWS::SecurityHub::ConfigurationPolicy.SecurityHubPolicy" + } + }, + "type": "object" + }, + "AWS::SecurityHub::ConfigurationPolicy.SecurityControlCustomParameter": { + "additionalProperties": false, + "properties": { + "Parameters": { + "additionalProperties": false, + "patternProperties": { + "^[a-zA-Z0-9]+$": { + "$ref": "#/definitions/AWS::SecurityHub::ConfigurationPolicy.ParameterConfiguration" + } + }, + "type": "object" + }, + "SecurityControlId": { + "type": "string" + } + }, + "type": "object" + }, + "AWS::SecurityHub::ConfigurationPolicy.SecurityControlsConfiguration": { + "additionalProperties": false, + "properties": { + "DisabledSecurityControlIdentifiers": { + "items": { + "type": "string" + }, + "type": "array" + }, + "EnabledSecurityControlIdentifiers": { + "items": { + "type": "string" + }, + "type": "array" + }, + "SecurityControlCustomParameters": { + "items": { + "$ref": "#/definitions/AWS::SecurityHub::ConfigurationPolicy.SecurityControlCustomParameter" + }, + "type": "array" + } + }, + "type": "object" + }, + "AWS::SecurityHub::ConfigurationPolicy.SecurityHubPolicy": { + "additionalProperties": false, + "properties": { + "EnabledStandardIdentifiers": { + "items": { + "type": "string" + }, + "type": "array" + }, + "SecurityControlsConfiguration": { + "$ref": "#/definitions/AWS::SecurityHub::ConfigurationPolicy.SecurityControlsConfiguration" + }, + "ServiceEnabled": { + "type": "boolean" + } + }, + "type": "object" + }, "AWS::SecurityHub::DelegatedAdmin": { "additionalProperties": false, "properties": { @@ -204310,6 +207256,77 @@ ], "type": "object" }, + "AWS::SecurityHub::FindingAggregator": { + "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": { + "RegionLinkingMode": { + "type": "string" + }, + "Regions": { + "items": { + "type": "string" + }, + "type": "array" + } + }, + "required": [ + "RegionLinkingMode" + ], + "type": "object" + }, + "Type": { + "enum": [ + "AWS::SecurityHub::FindingAggregator" + ], + "type": "string" + }, + "UpdateReplacePolicy": { + "enum": [ + "Delete", + "Retain", + "Snapshot" + ], + "type": "string" + } + }, + "required": [ + "Type", + "Properties" + ], + "type": "object" + }, "AWS::SecurityHub::Hub": { "additionalProperties": false, "properties": { @@ -205171,6 +208188,150 @@ ], "type": "object" }, + "AWS::SecurityHub::OrganizationConfiguration": { + "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": { + "AutoEnable": { + "type": "boolean" + }, + "AutoEnableStandards": { + "type": "string" + }, + "ConfigurationType": { + "type": "string" + } + }, + "required": [ + "AutoEnable" + ], + "type": "object" + }, + "Type": { + "enum": [ + "AWS::SecurityHub::OrganizationConfiguration" + ], + "type": "string" + }, + "UpdateReplacePolicy": { + "enum": [ + "Delete", + "Retain", + "Snapshot" + ], + "type": "string" + } + }, + "required": [ + "Type", + "Properties" + ], + "type": "object" + }, + "AWS::SecurityHub::PolicyAssociation": { + "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": { + "ConfigurationPolicyId": { + "type": "string" + }, + "TargetId": { + "type": "string" + }, + "TargetType": { + "type": "string" + } + }, + "required": [ + "ConfigurationPolicyId", + "TargetId", + "TargetType" + ], + "type": "object" + }, + "Type": { + "enum": [ + "AWS::SecurityHub::PolicyAssociation" + ], + "type": "string" + }, + "UpdateReplacePolicy": { + "enum": [ + "Delete", + "Retain", + "Snapshot" + ], + "type": "string" + } + }, + "required": [ + "Type", + "Properties" + ], + "type": "object" + }, "AWS::SecurityHub::ProductSubscription": { "additionalProperties": false, "properties": { @@ -205236,6 +208397,140 @@ ], "type": "object" }, + "AWS::SecurityHub::SecurityControl": { + "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": { + "LastUpdateReason": { + "type": "string" + }, + "Parameters": { + "additionalProperties": false, + "patternProperties": { + "^[a-zA-Z0-9]+$": { + "$ref": "#/definitions/AWS::SecurityHub::SecurityControl.ParameterConfiguration" + } + }, + "type": "object" + }, + "SecurityControlArn": { + "type": "string" + }, + "SecurityControlId": { + "type": "string" + } + }, + "required": [ + "Parameters" + ], + "type": "object" + }, + "Type": { + "enum": [ + "AWS::SecurityHub::SecurityControl" + ], + "type": "string" + }, + "UpdateReplacePolicy": { + "enum": [ + "Delete", + "Retain", + "Snapshot" + ], + "type": "string" + } + }, + "required": [ + "Type", + "Properties" + ], + "type": "object" + }, + "AWS::SecurityHub::SecurityControl.ParameterConfiguration": { + "additionalProperties": false, + "properties": { + "Value": { + "$ref": "#/definitions/AWS::SecurityHub::SecurityControl.ParameterValue" + }, + "ValueType": { + "type": "string" + } + }, + "required": [ + "ValueType" + ], + "type": "object" + }, + "AWS::SecurityHub::SecurityControl.ParameterValue": { + "additionalProperties": false, + "properties": { + "Boolean": { + "type": "boolean" + }, + "Double": { + "type": "number" + }, + "Enum": { + "type": "string" + }, + "EnumList": { + "items": { + "type": "string" + }, + "type": "array" + }, + "Integer": { + "type": "number" + }, + "IntegerList": { + "items": { + "type": "number" + }, + "type": "array" + }, + "String": { + "type": "string" + }, + "StringList": { + "items": { + "type": "string" + }, + "type": "array" + } + }, + "type": "object" + }, "AWS::SecurityHub::Standard": { "additionalProperties": false, "properties": { @@ -205357,7 +208652,222 @@ "Properties": { "additionalProperties": false, "properties": { - "Accounts": { + "Accounts": { + "items": { + "type": "string" + }, + "type": "array" + }, + "DataLakeArn": { + "type": "string" + }, + "SourceName": { + "type": "string" + }, + "SourceVersion": { + "type": "string" + } + }, + "required": [ + "DataLakeArn", + "SourceName", + "SourceVersion" + ], + "type": "object" + }, + "Type": { + "enum": [ + "AWS::SecurityLake::AwsLogSource" + ], + "type": "string" + }, + "UpdateReplacePolicy": { + "enum": [ + "Delete", + "Retain", + "Snapshot" + ], + "type": "string" + } + }, + "required": [ + "Type", + "Properties" + ], + "type": "object" + }, + "AWS::SecurityLake::DataLake": { + "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": { + "EncryptionConfiguration": { + "$ref": "#/definitions/AWS::SecurityLake::DataLake.EncryptionConfiguration" + }, + "LifecycleConfiguration": { + "$ref": "#/definitions/AWS::SecurityLake::DataLake.LifecycleConfiguration" + }, + "MetaStoreManagerRoleArn": { + "type": "string" + }, + "ReplicationConfiguration": { + "$ref": "#/definitions/AWS::SecurityLake::DataLake.ReplicationConfiguration" + }, + "Tags": { + "items": { + "$ref": "#/definitions/Tag" + }, + "type": "array" + } + }, + "type": "object" + }, + "Type": { + "enum": [ + "AWS::SecurityLake::DataLake" + ], + "type": "string" + }, + "UpdateReplacePolicy": { + "enum": [ + "Delete", + "Retain", + "Snapshot" + ], + "type": "string" + } + }, + "required": [ + "Type" + ], + "type": "object" + }, + "AWS::SecurityLake::DataLake.EncryptionConfiguration": { + "additionalProperties": false, + "properties": { + "KmsKeyId": { + "type": "string" + } + }, + "type": "object" + }, + "AWS::SecurityLake::DataLake.Expiration": { + "additionalProperties": false, + "properties": { + "Days": { + "type": "number" + } + }, + "type": "object" + }, + "AWS::SecurityLake::DataLake.LifecycleConfiguration": { + "additionalProperties": false, + "properties": { + "Expiration": { + "$ref": "#/definitions/AWS::SecurityLake::DataLake.Expiration" + }, + "Transitions": { + "items": { + "$ref": "#/definitions/AWS::SecurityLake::DataLake.Transitions" + }, + "type": "array" + } + }, + "type": "object" + }, + "AWS::SecurityLake::DataLake.ReplicationConfiguration": { + "additionalProperties": false, + "properties": { + "Regions": { + "items": { + "type": "string" + }, + "type": "array" + }, + "RoleArn": { + "type": "string" + } + }, + "type": "object" + }, + "AWS::SecurityLake::DataLake.Transitions": { + "additionalProperties": false, + "properties": { + "Days": { + "type": "number" + }, + "StorageClass": { + "type": "string" + } + }, + "type": "object" + }, + "AWS::SecurityLake::Subscriber": { + "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": { + "AccessTypes": { "items": { "type": "string" }, @@ -205366,87 +208876,20 @@ "DataLakeArn": { "type": "string" }, - "SourceName": { - "type": "string" - }, - "SourceVersion": { - "type": "string" - } - }, - "required": [ - "DataLakeArn", - "SourceName", - "SourceVersion" - ], - "type": "object" - }, - "Type": { - "enum": [ - "AWS::SecurityLake::AwsLogSource" - ], - "type": "string" - }, - "UpdateReplacePolicy": { - "enum": [ - "Delete", - "Retain", - "Snapshot" - ], - "type": "string" - } - }, - "required": [ - "Type", - "Properties" - ], - "type": "object" - }, - "AWS::SecurityLake::DataLake": { - "additionalProperties": false, - "properties": { - "Condition": { - "type": "string" - }, - "DeletionPolicy": { - "enum": [ - "Delete", - "Retain", - "Snapshot" - ], - "type": "string" - }, - "DependsOn": { - "anyOf": [ - { - "pattern": "^[a-zA-Z0-9]+$", - "type": "string" - }, - { + "Sources": { "items": { - "pattern": "^[a-zA-Z0-9]+$", - "type": "string" + "$ref": "#/definitions/AWS::SecurityLake::Subscriber.Source" }, "type": "array" - } - ] - }, - "Metadata": { - "type": "object" - }, - "Properties": { - "additionalProperties": false, - "properties": { - "EncryptionConfiguration": { - "$ref": "#/definitions/AWS::SecurityLake::DataLake.EncryptionConfiguration" }, - "LifecycleConfiguration": { - "$ref": "#/definitions/AWS::SecurityLake::DataLake.LifecycleConfiguration" - }, - "MetaStoreManagerRoleArn": { + "SubscriberDescription": { "type": "string" }, - "ReplicationConfiguration": { - "$ref": "#/definitions/AWS::SecurityLake::DataLake.ReplicationConfiguration" + "SubscriberIdentity": { + "$ref": "#/definitions/AWS::SecurityLake::Subscriber.SubscriberIdentity" + }, + "SubscriberName": { + "type": "string" }, "Tags": { "items": { @@ -205455,11 +208898,18 @@ "type": "array" } }, + "required": [ + "AccessTypes", + "DataLakeArn", + "Sources", + "SubscriberIdentity", + "SubscriberName" + ], "type": "object" }, "Type": { "enum": [ - "AWS::SecurityLake::DataLake" + "AWS::SecurityLake::Subscriber" ], "type": "string" }, @@ -205473,71 +208923,64 @@ } }, "required": [ - "Type" + "Type", + "Properties" ], "type": "object" }, - "AWS::SecurityLake::DataLake.EncryptionConfiguration": { + "AWS::SecurityLake::Subscriber.AwsLogSource": { "additionalProperties": false, "properties": { - "KmsKeyId": { + "SourceName": { + "type": "string" + }, + "SourceVersion": { "type": "string" } }, "type": "object" }, - "AWS::SecurityLake::DataLake.Expiration": { - "additionalProperties": false, - "properties": { - "Days": { - "type": "number" - } - }, - "type": "object" - }, - "AWS::SecurityLake::DataLake.LifecycleConfiguration": { + "AWS::SecurityLake::Subscriber.CustomLogSource": { "additionalProperties": false, "properties": { - "Expiration": { - "$ref": "#/definitions/AWS::SecurityLake::DataLake.Expiration" + "SourceName": { + "type": "string" }, - "Transitions": { - "items": { - "$ref": "#/definitions/AWS::SecurityLake::DataLake.Transitions" - }, - "type": "array" + "SourceVersion": { + "type": "string" } }, "type": "object" }, - "AWS::SecurityLake::DataLake.ReplicationConfiguration": { + "AWS::SecurityLake::Subscriber.Source": { "additionalProperties": false, "properties": { - "Regions": { - "items": { - "type": "string" - }, - "type": "array" + "AwsLogSource": { + "$ref": "#/definitions/AWS::SecurityLake::Subscriber.AwsLogSource" }, - "RoleArn": { - "type": "string" + "CustomLogSource": { + "$ref": "#/definitions/AWS::SecurityLake::Subscriber.CustomLogSource" } }, "type": "object" }, - "AWS::SecurityLake::DataLake.Transitions": { + "AWS::SecurityLake::Subscriber.SubscriberIdentity": { "additionalProperties": false, "properties": { - "Days": { - "type": "number" + "ExternalId": { + "type": "string" }, - "StorageClass": { + "Principal": { "type": "string" } }, + "required": [ + "ExternalId", + "Principal" + ], "type": "object" }, - "AWS::SecurityLake::Subscriber": { + "AWS::SecurityLake::SubscriberNotification": { "additionalProperties": false, "properties": { "Condition": { @@ -205572,49 +209015,22 @@ "Properties": { "additionalProperties": false, "properties": { - "AccessTypes": { - "items": { - "type": "string" - }, - "type": "array" - }, - "DataLakeArn": { - "type": "string" - }, - "Sources": { - "items": { - "$ref": "#/definitions/AWS::SecurityLake::Subscriber.Source" - }, - "type": "array" - }, - "SubscriberDescription": { - "type": "string" - }, - "SubscriberIdentity": { - "$ref": "#/definitions/AWS::SecurityLake::Subscriber.SubscriberIdentity" + "NotificationConfiguration": { + "$ref": "#/definitions/AWS::SecurityLake::SubscriberNotification.NotificationConfiguration" }, - "SubscriberName": { + "SubscriberArn": { "type": "string" - }, - "Tags": { - "items": { - "$ref": "#/definitions/Tag" - }, - "type": "array" } }, "required": [ - "AccessTypes", - "DataLakeArn", - "Sources", - "SubscriberIdentity", - "SubscriberName" + "NotificationConfiguration", + "SubscriberArn" ], "type": "object" }, "Type": { "enum": [ - "AWS::SecurityLake::Subscriber" + "AWS::SecurityLake::SubscriberNotification" ], "type": "string" }, @@ -205633,56 +209049,41 @@ ], "type": "object" }, - "AWS::SecurityLake::Subscriber.AwsLogSource": { + "AWS::SecurityLake::SubscriberNotification.HttpsNotificationConfiguration": { "additionalProperties": false, "properties": { - "SourceName": { + "AuthorizationApiKeyName": { "type": "string" }, - "SourceVersion": { + "AuthorizationApiKeyValue": { "type": "string" - } - }, - "type": "object" - }, - "AWS::SecurityLake::Subscriber.CustomLogSource": { - "additionalProperties": false, - "properties": { - "SourceName": { + }, + "Endpoint": { "type": "string" }, - "SourceVersion": { + "HttpMethod": { "type": "string" - } - }, - "type": "object" - }, - "AWS::SecurityLake::Subscriber.Source": { - "additionalProperties": false, - "properties": { - "AwsLogSource": { - "$ref": "#/definitions/AWS::SecurityLake::Subscriber.AwsLogSource" }, - "CustomLogSource": { - "$ref": "#/definitions/AWS::SecurityLake::Subscriber.CustomLogSource" + "TargetRoleArn": { + "type": "string" } }, + "required": [ + "Endpoint", + "TargetRoleArn" + ], "type": "object" }, - "AWS::SecurityLake::Subscriber.SubscriberIdentity": { + "AWS::SecurityLake::SubscriberNotification.NotificationConfiguration": { "additionalProperties": false, "properties": { - "ExternalId": { - "type": "string" + "HttpsNotificationConfiguration": { + "$ref": "#/definitions/AWS::SecurityLake::SubscriberNotification.HttpsNotificationConfiguration" }, - "Principal": { - "type": "string" + "SqsNotificationConfiguration": { + "type": "object" } }, - "required": [ - "ExternalId", - "Principal" - ], "type": "object" }, "AWS::Serverless::Api": { @@ -213364,6 +216765,9 @@ "LoggingRole": { "type": "string" }, + "SecurityPolicyName": { + "type": "string" + }, "SftpConfig": { "$ref": "#/definitions/AWS::Transfer::Connector.SftpConfig" }, @@ -214065,6 +217469,10 @@ "type": "string" } }, + "required": [ + "DestinationFileLocation", + "Type" + ], "type": "object" }, "AWS::Transfer::Workflow.DeleteStepDetails": { @@ -223189,6 +226597,9 @@ { "$ref": "#/definitions/AWS::Bedrock::Guardrail" }, + { + "$ref": "#/definitions/AWS::Bedrock::GuardrailVersion" + }, { "$ref": "#/definitions/AWS::Bedrock::KnowledgeBase" }, @@ -223744,12 +227155,21 @@ { "$ref": "#/definitions/AWS::DataZone::EnvironmentProfile" }, + { + "$ref": "#/definitions/AWS::DataZone::GroupProfile" + }, { "$ref": "#/definitions/AWS::DataZone::Project" }, + { + "$ref": "#/definitions/AWS::DataZone::ProjectMembership" + }, { "$ref": "#/definitions/AWS::DataZone::SubscriptionTarget" }, + { + "$ref": "#/definitions/AWS::DataZone::UserProfile" + }, { "$ref": "#/definitions/AWS::Deadline::Farm" }, @@ -225343,6 +228763,9 @@ { "$ref": "#/definitions/AWS::Neptune::DBSubnetGroup" }, + { + "$ref": "#/definitions/AWS::Neptune::EventSubscription" + }, { "$ref": "#/definitions/AWS::NeptuneGraph::Graph" }, @@ -225628,6 +229051,24 @@ { "$ref": "#/definitions/AWS::Proton::ServiceTemplate" }, + { + "$ref": "#/definitions/AWS::QBusiness::Application" + }, + { + "$ref": "#/definitions/AWS::QBusiness::DataSource" + }, + { + "$ref": "#/definitions/AWS::QBusiness::Index" + }, + { + "$ref": "#/definitions/AWS::QBusiness::Plugin" + }, + { + "$ref": "#/definitions/AWS::QBusiness::Retriever" + }, + { + "$ref": "#/definitions/AWS::QBusiness::WebExperience" + }, { "$ref": "#/definitions/AWS::QLDB::Ledger" }, @@ -226054,9 +229495,18 @@ { "$ref": "#/definitions/AWS::SSMIncidents::ResponsePlan" }, + { + "$ref": "#/definitions/AWS::SSO::Application" + }, + { + "$ref": "#/definitions/AWS::SSO::ApplicationAssignment" + }, { "$ref": "#/definitions/AWS::SSO::Assignment" }, + { + "$ref": "#/definitions/AWS::SSO::Instance" + }, { "$ref": "#/definitions/AWS::SSO::InstanceAccessControlAttributeConfiguration" }, @@ -226171,18 +229621,33 @@ { "$ref": "#/definitions/AWS::SecurityHub::AutomationRule" }, + { + "$ref": "#/definitions/AWS::SecurityHub::ConfigurationPolicy" + }, { "$ref": "#/definitions/AWS::SecurityHub::DelegatedAdmin" }, + { + "$ref": "#/definitions/AWS::SecurityHub::FindingAggregator" + }, { "$ref": "#/definitions/AWS::SecurityHub::Hub" }, { "$ref": "#/definitions/AWS::SecurityHub::Insight" }, + { + "$ref": "#/definitions/AWS::SecurityHub::OrganizationConfiguration" + }, + { + "$ref": "#/definitions/AWS::SecurityHub::PolicyAssociation" + }, { "$ref": "#/definitions/AWS::SecurityHub::ProductSubscription" }, + { + "$ref": "#/definitions/AWS::SecurityHub::SecurityControl" + }, { "$ref": "#/definitions/AWS::SecurityHub::Standard" }, @@ -226195,6 +229660,9 @@ { "$ref": "#/definitions/AWS::SecurityLake::Subscriber" }, + { + "$ref": "#/definitions/AWS::SecurityLake::SubscriberNotification" + }, { "$ref": "#/definitions/AWS::Serverless::Api" },