From ba9ea96a7d189df3adb02544351bcab56597a47a Mon Sep 17 00:00:00 2001 From: "github-actions[bot]" <41898282+github-actions[bot]@users.noreply.github.com> Date: Fri, 15 Sep 2023 11:10:16 +0200 Subject: [PATCH] fix(schema): CloudFormation Updates MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit Co-authored-by: RĂºben Fonseca --- cloudformation/all.go | 126 ++ .../aws-customerprofiles-objecttype.go | 5 + ...aws-ec2-launchtemplate_networkinterface.go | 5 + .../aws-mediapackagev2-channel.go | 133 ++ ...s-mediapackagev2-channel_ingestendpoint.go | 42 + .../aws-mediapackagev2-channelgroup.go | 128 ++ .../aws-mediapackagev2-channelpolicy.go | 127 ++ .../aws-mediapackagev2-originendpoint.go | 163 +++ ...ediapackagev2-originendpoint_encryption.go | 52 + ...ndpoint_encryptioncontractconfiguration.go | 42 + ...ckagev2-originendpoint_encryptionmethod.go | 42 + ...originendpoint_hlsmanifestconfiguration.go | 62 + ...oint_lowlatencyhlsmanifestconfiguration.go | 62 + .../aws-mediapackagev2-originendpoint_scte.go | 37 + ...s-mediapackagev2-originendpoint_sctehls.go | 37 + ...s-mediapackagev2-originendpoint_segment.go | 67 + ...ckagev2-originendpoint_spekekeyprovider.go | 57 + ...aws-mediapackagev2-originendpointpolicy.go | 132 ++ cloudformation/rds/aws-rds-dbinstance.go | 20 + cloudformation/ssm/aws-ssm-parameter.go | 2 +- .../aws-workspacesweb-usersettings.go | 15 + ...cesweb-usersettings_cookiespecification.go | 47 + ...ings_cookiesynchronizationconfiguration.go | 42 + schema/cdk.go | 1132 +++++++++++++---- schema/cdk.schema.json | 1132 +++++++++++++---- schema/cloudformation.go | 1132 +++++++++++++---- schema/cloudformation.schema.json | 1132 +++++++++++++---- schema/sam.go | 1132 +++++++++++++---- schema/sam.schema.json | 1132 +++++++++++++---- 29 files changed, 6844 insertions(+), 1393 deletions(-) create mode 100644 cloudformation/mediapackagev2/aws-mediapackagev2-channel.go create mode 100644 cloudformation/mediapackagev2/aws-mediapackagev2-channel_ingestendpoint.go create mode 100644 cloudformation/mediapackagev2/aws-mediapackagev2-channelgroup.go create mode 100644 cloudformation/mediapackagev2/aws-mediapackagev2-channelpolicy.go create mode 100644 cloudformation/mediapackagev2/aws-mediapackagev2-originendpoint.go create mode 100644 cloudformation/mediapackagev2/aws-mediapackagev2-originendpoint_encryption.go create mode 100644 cloudformation/mediapackagev2/aws-mediapackagev2-originendpoint_encryptioncontractconfiguration.go create mode 100644 cloudformation/mediapackagev2/aws-mediapackagev2-originendpoint_encryptionmethod.go create mode 100644 cloudformation/mediapackagev2/aws-mediapackagev2-originendpoint_hlsmanifestconfiguration.go create mode 100644 cloudformation/mediapackagev2/aws-mediapackagev2-originendpoint_lowlatencyhlsmanifestconfiguration.go create mode 100644 cloudformation/mediapackagev2/aws-mediapackagev2-originendpoint_scte.go create mode 100644 cloudformation/mediapackagev2/aws-mediapackagev2-originendpoint_sctehls.go create mode 100644 cloudformation/mediapackagev2/aws-mediapackagev2-originendpoint_segment.go create mode 100644 cloudformation/mediapackagev2/aws-mediapackagev2-originendpoint_spekekeyprovider.go create mode 100644 cloudformation/mediapackagev2/aws-mediapackagev2-originendpointpolicy.go create mode 100644 cloudformation/workspacesweb/aws-workspacesweb-usersettings_cookiespecification.go create mode 100644 cloudformation/workspacesweb/aws-workspacesweb-usersettings_cookiesynchronizationconfiguration.go diff --git a/cloudformation/all.go b/cloudformation/all.go index 2277e0de74..d740fc03d7 100644 --- a/cloudformation/all.go +++ b/cloudformation/all.go @@ -149,6 +149,7 @@ import ( "github.com/awslabs/goformation/v7/cloudformation/mediaconvert" "github.com/awslabs/goformation/v7/cloudformation/medialive" "github.com/awslabs/goformation/v7/cloudformation/mediapackage" + "github.com/awslabs/goformation/v7/cloudformation/mediapackagev2" "github.com/awslabs/goformation/v7/cloudformation/mediastore" "github.com/awslabs/goformation/v7/cloudformation/mediatailor" "github.com/awslabs/goformation/v7/cloudformation/memorydb" @@ -986,6 +987,11 @@ func AllResources() map[string]Resource { "AWS::MediaPackage::OriginEndpoint": &mediapackage.OriginEndpoint{}, "AWS::MediaPackage::PackagingConfiguration": &mediapackage.PackagingConfiguration{}, "AWS::MediaPackage::PackagingGroup": &mediapackage.PackagingGroup{}, + "AWS::MediaPackageV2::Channel": &mediapackagev2.Channel{}, + "AWS::MediaPackageV2::ChannelGroup": &mediapackagev2.ChannelGroup{}, + "AWS::MediaPackageV2::ChannelPolicy": &mediapackagev2.ChannelPolicy{}, + "AWS::MediaPackageV2::OriginEndpoint": &mediapackagev2.OriginEndpoint{}, + "AWS::MediaPackageV2::OriginEndpointPolicy": &mediapackagev2.OriginEndpointPolicy{}, "AWS::MediaStore::Container": &mediastore.Container{}, "AWS::MediaTailor::Channel": &mediatailor.Channel{}, "AWS::MediaTailor::ChannelPolicy": &mediatailor.ChannelPolicy{}, @@ -19386,6 +19392,126 @@ func (t *Template) GetMediaPackagePackagingGroupWithName(name string) (*mediapac return nil, fmt.Errorf("resource %q of type mediapackage.PackagingGroup not found", name) } +// GetAllMediaPackageV2ChannelResources retrieves all mediapackagev2.Channel items from an AWS CloudFormation template +func (t *Template) GetAllMediaPackageV2ChannelResources() map[string]*mediapackagev2.Channel { + results := map[string]*mediapackagev2.Channel{} + for name, untyped := range t.Resources { + switch resource := untyped.(type) { + case *mediapackagev2.Channel: + results[name] = resource + } + } + return results +} + +// GetMediaPackageV2ChannelWithName retrieves all mediapackagev2.Channel items from an AWS CloudFormation template +// whose logical ID matches the provided name. Returns an error if not found. +func (t *Template) GetMediaPackageV2ChannelWithName(name string) (*mediapackagev2.Channel, error) { + if untyped, ok := t.Resources[name]; ok { + switch resource := untyped.(type) { + case *mediapackagev2.Channel: + return resource, nil + } + } + return nil, fmt.Errorf("resource %q of type mediapackagev2.Channel not found", name) +} + +// GetAllMediaPackageV2ChannelGroupResources retrieves all mediapackagev2.ChannelGroup items from an AWS CloudFormation template +func (t *Template) GetAllMediaPackageV2ChannelGroupResources() map[string]*mediapackagev2.ChannelGroup { + results := map[string]*mediapackagev2.ChannelGroup{} + for name, untyped := range t.Resources { + switch resource := untyped.(type) { + case *mediapackagev2.ChannelGroup: + results[name] = resource + } + } + return results +} + +// GetMediaPackageV2ChannelGroupWithName retrieves all mediapackagev2.ChannelGroup items from an AWS CloudFormation template +// whose logical ID matches the provided name. Returns an error if not found. +func (t *Template) GetMediaPackageV2ChannelGroupWithName(name string) (*mediapackagev2.ChannelGroup, error) { + if untyped, ok := t.Resources[name]; ok { + switch resource := untyped.(type) { + case *mediapackagev2.ChannelGroup: + return resource, nil + } + } + return nil, fmt.Errorf("resource %q of type mediapackagev2.ChannelGroup not found", name) +} + +// GetAllMediaPackageV2ChannelPolicyResources retrieves all mediapackagev2.ChannelPolicy items from an AWS CloudFormation template +func (t *Template) GetAllMediaPackageV2ChannelPolicyResources() map[string]*mediapackagev2.ChannelPolicy { + results := map[string]*mediapackagev2.ChannelPolicy{} + for name, untyped := range t.Resources { + switch resource := untyped.(type) { + case *mediapackagev2.ChannelPolicy: + results[name] = resource + } + } + return results +} + +// GetMediaPackageV2ChannelPolicyWithName retrieves all mediapackagev2.ChannelPolicy items from an AWS CloudFormation template +// whose logical ID matches the provided name. Returns an error if not found. +func (t *Template) GetMediaPackageV2ChannelPolicyWithName(name string) (*mediapackagev2.ChannelPolicy, error) { + if untyped, ok := t.Resources[name]; ok { + switch resource := untyped.(type) { + case *mediapackagev2.ChannelPolicy: + return resource, nil + } + } + return nil, fmt.Errorf("resource %q of type mediapackagev2.ChannelPolicy not found", name) +} + +// GetAllMediaPackageV2OriginEndpointResources retrieves all mediapackagev2.OriginEndpoint items from an AWS CloudFormation template +func (t *Template) GetAllMediaPackageV2OriginEndpointResources() map[string]*mediapackagev2.OriginEndpoint { + results := map[string]*mediapackagev2.OriginEndpoint{} + for name, untyped := range t.Resources { + switch resource := untyped.(type) { + case *mediapackagev2.OriginEndpoint: + results[name] = resource + } + } + return results +} + +// GetMediaPackageV2OriginEndpointWithName retrieves all mediapackagev2.OriginEndpoint items from an AWS CloudFormation template +// whose logical ID matches the provided name. Returns an error if not found. +func (t *Template) GetMediaPackageV2OriginEndpointWithName(name string) (*mediapackagev2.OriginEndpoint, error) { + if untyped, ok := t.Resources[name]; ok { + switch resource := untyped.(type) { + case *mediapackagev2.OriginEndpoint: + return resource, nil + } + } + return nil, fmt.Errorf("resource %q of type mediapackagev2.OriginEndpoint not found", name) +} + +// GetAllMediaPackageV2OriginEndpointPolicyResources retrieves all mediapackagev2.OriginEndpointPolicy items from an AWS CloudFormation template +func (t *Template) GetAllMediaPackageV2OriginEndpointPolicyResources() map[string]*mediapackagev2.OriginEndpointPolicy { + results := map[string]*mediapackagev2.OriginEndpointPolicy{} + for name, untyped := range t.Resources { + switch resource := untyped.(type) { + case *mediapackagev2.OriginEndpointPolicy: + results[name] = resource + } + } + return results +} + +// GetMediaPackageV2OriginEndpointPolicyWithName retrieves all mediapackagev2.OriginEndpointPolicy items from an AWS CloudFormation template +// whose logical ID matches the provided name. Returns an error if not found. +func (t *Template) GetMediaPackageV2OriginEndpointPolicyWithName(name string) (*mediapackagev2.OriginEndpointPolicy, error) { + if untyped, ok := t.Resources[name]; ok { + switch resource := untyped.(type) { + case *mediapackagev2.OriginEndpointPolicy: + return resource, nil + } + } + return nil, fmt.Errorf("resource %q of type mediapackagev2.OriginEndpointPolicy not found", name) +} + // GetAllMediaStoreContainerResources retrieves all mediastore.Container items from an AWS CloudFormation template func (t *Template) GetAllMediaStoreContainerResources() map[string]*mediastore.Container { results := map[string]*mediastore.Container{} diff --git a/cloudformation/customerprofiles/aws-customerprofiles-objecttype.go b/cloudformation/customerprofiles/aws-customerprofiles-objecttype.go index 0d812071f5..e121ae41b2 100644 --- a/cloudformation/customerprofiles/aws-customerprofiles-objecttype.go +++ b/cloudformation/customerprofiles/aws-customerprofiles-objecttype.go @@ -54,6 +54,11 @@ type ObjectType struct { // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-customerprofiles-objecttype.html#cfn-customerprofiles-objecttype-objecttypename ObjectTypeName *string `json:"ObjectTypeName,omitempty"` + // SourceLastUpdatedTimestampFormat AWS CloudFormation Property + // Required: false + // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-customerprofiles-objecttype.html#cfn-customerprofiles-objecttype-sourcelastupdatedtimestampformat + SourceLastUpdatedTimestampFormat *string `json:"SourceLastUpdatedTimestampFormat,omitempty"` + // Tags AWS CloudFormation Property // Required: false // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-customerprofiles-objecttype.html#cfn-customerprofiles-objecttype-tags diff --git a/cloudformation/ec2/aws-ec2-launchtemplate_networkinterface.go b/cloudformation/ec2/aws-ec2-launchtemplate_networkinterface.go index 8572e2d887..f3989deecd 100644 --- a/cloudformation/ec2/aws-ec2-launchtemplate_networkinterface.go +++ b/cloudformation/ec2/aws-ec2-launchtemplate_networkinterface.go @@ -85,6 +85,11 @@ type LaunchTemplate_NetworkInterface struct { // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ec2-launchtemplate-networkinterface.html#cfn-ec2-launchtemplate-networkinterface-networkinterfaceid NetworkInterfaceId *string `json:"NetworkInterfaceId,omitempty"` + // PrimaryIpv6 AWS CloudFormation Property + // Required: false + // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ec2-launchtemplate-networkinterface.html#cfn-ec2-launchtemplate-networkinterface-primaryipv6 + PrimaryIpv6 *bool `json:"PrimaryIpv6,omitempty"` + // PrivateIpAddress AWS CloudFormation Property // Required: false // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ec2-launchtemplate-networkinterface.html#cfn-ec2-launchtemplate-networkinterface-privateipaddress diff --git a/cloudformation/mediapackagev2/aws-mediapackagev2-channel.go b/cloudformation/mediapackagev2/aws-mediapackagev2-channel.go new file mode 100644 index 0000000000..1997204b2e --- /dev/null +++ b/cloudformation/mediapackagev2/aws-mediapackagev2-channel.go @@ -0,0 +1,133 @@ +// Code generated by "go generate". Please don't change this file directly. + +package mediapackagev2 + +import ( + "bytes" + "encoding/json" + + "github.com/awslabs/goformation/v7/cloudformation/policies" + "github.com/awslabs/goformation/v7/cloudformation/tags" +) + +// Channel AWS CloudFormation Resource (AWS::MediaPackageV2::Channel) +// See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-mediapackagev2-channel.html +type Channel struct { + + // ChannelGroupName AWS CloudFormation Property + // Required: false + // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-mediapackagev2-channel.html#cfn-mediapackagev2-channel-channelgroupname + ChannelGroupName *string `json:"ChannelGroupName,omitempty"` + + // ChannelName AWS CloudFormation Property + // Required: false + // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-mediapackagev2-channel.html#cfn-mediapackagev2-channel-channelname + ChannelName *string `json:"ChannelName,omitempty"` + + // Description AWS CloudFormation Property + // Required: false + // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-mediapackagev2-channel.html#cfn-mediapackagev2-channel-description + Description *string `json:"Description,omitempty"` + + // Tags AWS CloudFormation Property + // Required: false + // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-mediapackagev2-channel.html#cfn-mediapackagev2-channel-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 *Channel) AWSCloudFormationType() string { + return "AWS::MediaPackageV2::Channel" +} + +// MarshalJSON is a custom JSON marshalling hook that embeds this object into +// an AWS CloudFormation JSON resource's 'Properties' field and adds a 'Type'. +func (r Channel) MarshalJSON() ([]byte, error) { + type Properties Channel + 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 *Channel) UnmarshalJSON(b []byte) error { + type Properties Channel + 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 = Channel(*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/mediapackagev2/aws-mediapackagev2-channel_ingestendpoint.go b/cloudformation/mediapackagev2/aws-mediapackagev2-channel_ingestendpoint.go new file mode 100644 index 0000000000..58841a90c1 --- /dev/null +++ b/cloudformation/mediapackagev2/aws-mediapackagev2-channel_ingestendpoint.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" +) + +// Channel_IngestEndpoint AWS CloudFormation Resource (AWS::MediaPackageV2::Channel.IngestEndpoint) +// See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-mediapackagev2-channel-ingestendpoint.html +type Channel_IngestEndpoint struct { + + // Id AWS CloudFormation Property + // Required: false + // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-mediapackagev2-channel-ingestendpoint.html#cfn-mediapackagev2-channel-ingestendpoint-id + Id *string `json:"Id,omitempty"` + + // Url AWS CloudFormation Property + // Required: false + // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-mediapackagev2-channel-ingestendpoint.html#cfn-mediapackagev2-channel-ingestendpoint-url + Url *string `json:"Url,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 *Channel_IngestEndpoint) AWSCloudFormationType() string { + return "AWS::MediaPackageV2::Channel.IngestEndpoint" +} diff --git a/cloudformation/mediapackagev2/aws-mediapackagev2-channelgroup.go b/cloudformation/mediapackagev2/aws-mediapackagev2-channelgroup.go new file mode 100644 index 0000000000..f4a76d1938 --- /dev/null +++ b/cloudformation/mediapackagev2/aws-mediapackagev2-channelgroup.go @@ -0,0 +1,128 @@ +// Code generated by "go generate". Please don't change this file directly. + +package mediapackagev2 + +import ( + "bytes" + "encoding/json" + + "github.com/awslabs/goformation/v7/cloudformation/policies" + "github.com/awslabs/goformation/v7/cloudformation/tags" +) + +// ChannelGroup AWS CloudFormation Resource (AWS::MediaPackageV2::ChannelGroup) +// See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-mediapackagev2-channelgroup.html +type ChannelGroup struct { + + // ChannelGroupName AWS CloudFormation Property + // Required: false + // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-mediapackagev2-channelgroup.html#cfn-mediapackagev2-channelgroup-channelgroupname + ChannelGroupName *string `json:"ChannelGroupName,omitempty"` + + // Description AWS CloudFormation Property + // Required: false + // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-mediapackagev2-channelgroup.html#cfn-mediapackagev2-channelgroup-description + Description *string `json:"Description,omitempty"` + + // Tags AWS CloudFormation Property + // Required: false + // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-mediapackagev2-channelgroup.html#cfn-mediapackagev2-channelgroup-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 *ChannelGroup) AWSCloudFormationType() string { + return "AWS::MediaPackageV2::ChannelGroup" +} + +// MarshalJSON is a custom JSON marshalling hook that embeds this object into +// an AWS CloudFormation JSON resource's 'Properties' field and adds a 'Type'. +func (r ChannelGroup) MarshalJSON() ([]byte, error) { + type Properties ChannelGroup + 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 *ChannelGroup) UnmarshalJSON(b []byte) error { + type Properties ChannelGroup + 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 = ChannelGroup(*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/mediapackagev2/aws-mediapackagev2-channelpolicy.go b/cloudformation/mediapackagev2/aws-mediapackagev2-channelpolicy.go new file mode 100644 index 0000000000..a5b74fec10 --- /dev/null +++ b/cloudformation/mediapackagev2/aws-mediapackagev2-channelpolicy.go @@ -0,0 +1,127 @@ +// Code generated by "go generate". Please don't change this file directly. + +package mediapackagev2 + +import ( + "bytes" + "encoding/json" + + "github.com/awslabs/goformation/v7/cloudformation/policies" +) + +// ChannelPolicy AWS CloudFormation Resource (AWS::MediaPackageV2::ChannelPolicy) +// See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-mediapackagev2-channelpolicy.html +type ChannelPolicy struct { + + // ChannelGroupName AWS CloudFormation Property + // Required: false + // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-mediapackagev2-channelpolicy.html#cfn-mediapackagev2-channelpolicy-channelgroupname + ChannelGroupName *string `json:"ChannelGroupName,omitempty"` + + // ChannelName AWS CloudFormation Property + // Required: false + // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-mediapackagev2-channelpolicy.html#cfn-mediapackagev2-channelpolicy-channelname + ChannelName *string `json:"ChannelName,omitempty"` + + // Policy AWS CloudFormation Property + // Required: true + // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-mediapackagev2-channelpolicy.html#cfn-mediapackagev2-channelpolicy-policy + Policy interface{} `json:"Policy"` + + // 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 *ChannelPolicy) AWSCloudFormationType() string { + return "AWS::MediaPackageV2::ChannelPolicy" +} + +// MarshalJSON is a custom JSON marshalling hook that embeds this object into +// an AWS CloudFormation JSON resource's 'Properties' field and adds a 'Type'. +func (r ChannelPolicy) MarshalJSON() ([]byte, error) { + type Properties ChannelPolicy + 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 *ChannelPolicy) UnmarshalJSON(b []byte) error { + type Properties ChannelPolicy + 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 = ChannelPolicy(*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/mediapackagev2/aws-mediapackagev2-originendpoint.go b/cloudformation/mediapackagev2/aws-mediapackagev2-originendpoint.go new file mode 100644 index 0000000000..1baaf597d5 --- /dev/null +++ b/cloudformation/mediapackagev2/aws-mediapackagev2-originendpoint.go @@ -0,0 +1,163 @@ +// Code generated by "go generate". Please don't change this file directly. + +package mediapackagev2 + +import ( + "bytes" + "encoding/json" + + "github.com/awslabs/goformation/v7/cloudformation/policies" + "github.com/awslabs/goformation/v7/cloudformation/tags" +) + +// OriginEndpoint AWS CloudFormation Resource (AWS::MediaPackageV2::OriginEndpoint) +// See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-mediapackagev2-originendpoint.html +type OriginEndpoint struct { + + // ChannelGroupName AWS CloudFormation Property + // Required: false + // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-mediapackagev2-originendpoint.html#cfn-mediapackagev2-originendpoint-channelgroupname + ChannelGroupName *string `json:"ChannelGroupName,omitempty"` + + // ChannelName AWS CloudFormation Property + // Required: false + // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-mediapackagev2-originendpoint.html#cfn-mediapackagev2-originendpoint-channelname + ChannelName *string `json:"ChannelName,omitempty"` + + // ContainerType AWS CloudFormation Property + // Required: true + // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-mediapackagev2-originendpoint.html#cfn-mediapackagev2-originendpoint-containertype + ContainerType string `json:"ContainerType"` + + // Description AWS CloudFormation Property + // Required: false + // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-mediapackagev2-originendpoint.html#cfn-mediapackagev2-originendpoint-description + Description *string `json:"Description,omitempty"` + + // HlsManifests AWS CloudFormation Property + // Required: false + // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-mediapackagev2-originendpoint.html#cfn-mediapackagev2-originendpoint-hlsmanifests + HlsManifests []OriginEndpoint_HlsManifestConfiguration `json:"HlsManifests,omitempty"` + + // LowLatencyHlsManifests AWS CloudFormation Property + // Required: false + // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-mediapackagev2-originendpoint.html#cfn-mediapackagev2-originendpoint-lowlatencyhlsmanifests + LowLatencyHlsManifests []OriginEndpoint_LowLatencyHlsManifestConfiguration `json:"LowLatencyHlsManifests,omitempty"` + + // OriginEndpointName AWS CloudFormation Property + // Required: false + // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-mediapackagev2-originendpoint.html#cfn-mediapackagev2-originendpoint-originendpointname + OriginEndpointName *string `json:"OriginEndpointName,omitempty"` + + // Segment AWS CloudFormation Property + // Required: false + // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-mediapackagev2-originendpoint.html#cfn-mediapackagev2-originendpoint-segment + Segment *OriginEndpoint_Segment `json:"Segment,omitempty"` + + // StartoverWindowSeconds AWS CloudFormation Property + // Required: false + // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-mediapackagev2-originendpoint.html#cfn-mediapackagev2-originendpoint-startoverwindowseconds + StartoverWindowSeconds *int `json:"StartoverWindowSeconds,omitempty"` + + // Tags AWS CloudFormation Property + // Required: false + // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-mediapackagev2-originendpoint.html#cfn-mediapackagev2-originendpoint-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 *OriginEndpoint) AWSCloudFormationType() string { + return "AWS::MediaPackageV2::OriginEndpoint" +} + +// MarshalJSON is a custom JSON marshalling hook that embeds this object into +// an AWS CloudFormation JSON resource's 'Properties' field and adds a 'Type'. +func (r OriginEndpoint) MarshalJSON() ([]byte, error) { + type Properties OriginEndpoint + 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 *OriginEndpoint) UnmarshalJSON(b []byte) error { + type Properties OriginEndpoint + 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 = OriginEndpoint(*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/mediapackagev2/aws-mediapackagev2-originendpoint_encryption.go b/cloudformation/mediapackagev2/aws-mediapackagev2-originendpoint_encryption.go new file mode 100644 index 0000000000..e63228b367 --- /dev/null +++ b/cloudformation/mediapackagev2/aws-mediapackagev2-originendpoint_encryption.go @@ -0,0 +1,52 @@ +// Code generated by "go generate". Please don't change this file directly. + +package mediapackagev2 + +import ( + "github.com/awslabs/goformation/v7/cloudformation/policies" +) + +// OriginEndpoint_Encryption AWS CloudFormation Resource (AWS::MediaPackageV2::OriginEndpoint.Encryption) +// See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-mediapackagev2-originendpoint-encryption.html +type OriginEndpoint_Encryption struct { + + // ConstantInitializationVector AWS CloudFormation Property + // Required: false + // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-mediapackagev2-originendpoint-encryption.html#cfn-mediapackagev2-originendpoint-encryption-constantinitializationvector + ConstantInitializationVector *string `json:"ConstantInitializationVector,omitempty"` + + // EncryptionMethod AWS CloudFormation Property + // Required: true + // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-mediapackagev2-originendpoint-encryption.html#cfn-mediapackagev2-originendpoint-encryption-encryptionmethod + EncryptionMethod *OriginEndpoint_EncryptionMethod `json:"EncryptionMethod"` + + // KeyRotationIntervalSeconds AWS CloudFormation Property + // Required: false + // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-mediapackagev2-originendpoint-encryption.html#cfn-mediapackagev2-originendpoint-encryption-keyrotationintervalseconds + KeyRotationIntervalSeconds *int `json:"KeyRotationIntervalSeconds,omitempty"` + + // SpekeKeyProvider AWS CloudFormation Property + // Required: true + // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-mediapackagev2-originendpoint-encryption.html#cfn-mediapackagev2-originendpoint-encryption-spekekeyprovider + SpekeKeyProvider *OriginEndpoint_SpekeKeyProvider `json:"SpekeKeyProvider"` + + // 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_Encryption) AWSCloudFormationType() string { + return "AWS::MediaPackageV2::OriginEndpoint.Encryption" +} diff --git a/cloudformation/mediapackagev2/aws-mediapackagev2-originendpoint_encryptioncontractconfiguration.go b/cloudformation/mediapackagev2/aws-mediapackagev2-originendpoint_encryptioncontractconfiguration.go new file mode 100644 index 0000000000..f8808f8c7d --- /dev/null +++ b/cloudformation/mediapackagev2/aws-mediapackagev2-originendpoint_encryptioncontractconfiguration.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_EncryptionContractConfiguration AWS CloudFormation Resource (AWS::MediaPackageV2::OriginEndpoint.EncryptionContractConfiguration) +// See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-mediapackagev2-originendpoint-encryptioncontractconfiguration.html +type OriginEndpoint_EncryptionContractConfiguration struct { + + // PresetSpeke20Audio AWS CloudFormation Property + // Required: true + // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-mediapackagev2-originendpoint-encryptioncontractconfiguration.html#cfn-mediapackagev2-originendpoint-encryptioncontractconfiguration-presetspeke20audio + PresetSpeke20Audio string `json:"PresetSpeke20Audio"` + + // PresetSpeke20Video AWS CloudFormation Property + // Required: true + // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-mediapackagev2-originendpoint-encryptioncontractconfiguration.html#cfn-mediapackagev2-originendpoint-encryptioncontractconfiguration-presetspeke20video + PresetSpeke20Video string `json:"PresetSpeke20Video"` + + // 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_EncryptionContractConfiguration) AWSCloudFormationType() string { + return "AWS::MediaPackageV2::OriginEndpoint.EncryptionContractConfiguration" +} diff --git a/cloudformation/mediapackagev2/aws-mediapackagev2-originendpoint_encryptionmethod.go b/cloudformation/mediapackagev2/aws-mediapackagev2-originendpoint_encryptionmethod.go new file mode 100644 index 0000000000..f7d9c345f5 --- /dev/null +++ b/cloudformation/mediapackagev2/aws-mediapackagev2-originendpoint_encryptionmethod.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_EncryptionMethod AWS CloudFormation Resource (AWS::MediaPackageV2::OriginEndpoint.EncryptionMethod) +// See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-mediapackagev2-originendpoint-encryptionmethod.html +type OriginEndpoint_EncryptionMethod struct { + + // CmafEncryptionMethod AWS CloudFormation Property + // Required: false + // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-mediapackagev2-originendpoint-encryptionmethod.html#cfn-mediapackagev2-originendpoint-encryptionmethod-cmafencryptionmethod + CmafEncryptionMethod *string `json:"CmafEncryptionMethod,omitempty"` + + // TsEncryptionMethod AWS CloudFormation Property + // Required: false + // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-mediapackagev2-originendpoint-encryptionmethod.html#cfn-mediapackagev2-originendpoint-encryptionmethod-tsencryptionmethod + TsEncryptionMethod *string `json:"TsEncryptionMethod,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_EncryptionMethod) AWSCloudFormationType() string { + return "AWS::MediaPackageV2::OriginEndpoint.EncryptionMethod" +} diff --git a/cloudformation/mediapackagev2/aws-mediapackagev2-originendpoint_hlsmanifestconfiguration.go b/cloudformation/mediapackagev2/aws-mediapackagev2-originendpoint_hlsmanifestconfiguration.go new file mode 100644 index 0000000000..e781147521 --- /dev/null +++ b/cloudformation/mediapackagev2/aws-mediapackagev2-originendpoint_hlsmanifestconfiguration.go @@ -0,0 +1,62 @@ +// Code generated by "go generate". Please don't change this file directly. + +package mediapackagev2 + +import ( + "github.com/awslabs/goformation/v7/cloudformation/policies" +) + +// OriginEndpoint_HlsManifestConfiguration AWS CloudFormation Resource (AWS::MediaPackageV2::OriginEndpoint.HlsManifestConfiguration) +// See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-mediapackagev2-originendpoint-hlsmanifestconfiguration.html +type OriginEndpoint_HlsManifestConfiguration struct { + + // ChildManifestName AWS CloudFormation Property + // Required: false + // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-mediapackagev2-originendpoint-hlsmanifestconfiguration.html#cfn-mediapackagev2-originendpoint-hlsmanifestconfiguration-childmanifestname + ChildManifestName *string `json:"ChildManifestName,omitempty"` + + // ManifestName AWS CloudFormation Property + // Required: true + // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-mediapackagev2-originendpoint-hlsmanifestconfiguration.html#cfn-mediapackagev2-originendpoint-hlsmanifestconfiguration-manifestname + ManifestName string `json:"ManifestName"` + + // ManifestWindowSeconds AWS CloudFormation Property + // Required: false + // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-mediapackagev2-originendpoint-hlsmanifestconfiguration.html#cfn-mediapackagev2-originendpoint-hlsmanifestconfiguration-manifestwindowseconds + ManifestWindowSeconds *int `json:"ManifestWindowSeconds,omitempty"` + + // ProgramDateTimeIntervalSeconds AWS CloudFormation Property + // Required: false + // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-mediapackagev2-originendpoint-hlsmanifestconfiguration.html#cfn-mediapackagev2-originendpoint-hlsmanifestconfiguration-programdatetimeintervalseconds + ProgramDateTimeIntervalSeconds *int `json:"ProgramDateTimeIntervalSeconds,omitempty"` + + // ScteHls AWS CloudFormation Property + // Required: false + // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-mediapackagev2-originendpoint-hlsmanifestconfiguration.html#cfn-mediapackagev2-originendpoint-hlsmanifestconfiguration-sctehls + ScteHls *OriginEndpoint_ScteHls `json:"ScteHls,omitempty"` + + // Url AWS CloudFormation Property + // Required: false + // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-mediapackagev2-originendpoint-hlsmanifestconfiguration.html#cfn-mediapackagev2-originendpoint-hlsmanifestconfiguration-url + Url *string `json:"Url,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_HlsManifestConfiguration) AWSCloudFormationType() string { + return "AWS::MediaPackageV2::OriginEndpoint.HlsManifestConfiguration" +} diff --git a/cloudformation/mediapackagev2/aws-mediapackagev2-originendpoint_lowlatencyhlsmanifestconfiguration.go b/cloudformation/mediapackagev2/aws-mediapackagev2-originendpoint_lowlatencyhlsmanifestconfiguration.go new file mode 100644 index 0000000000..84f875208e --- /dev/null +++ b/cloudformation/mediapackagev2/aws-mediapackagev2-originendpoint_lowlatencyhlsmanifestconfiguration.go @@ -0,0 +1,62 @@ +// Code generated by "go generate". Please don't change this file directly. + +package mediapackagev2 + +import ( + "github.com/awslabs/goformation/v7/cloudformation/policies" +) + +// OriginEndpoint_LowLatencyHlsManifestConfiguration AWS CloudFormation Resource (AWS::MediaPackageV2::OriginEndpoint.LowLatencyHlsManifestConfiguration) +// See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-mediapackagev2-originendpoint-lowlatencyhlsmanifestconfiguration.html +type OriginEndpoint_LowLatencyHlsManifestConfiguration struct { + + // ChildManifestName AWS CloudFormation Property + // Required: false + // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-mediapackagev2-originendpoint-lowlatencyhlsmanifestconfiguration.html#cfn-mediapackagev2-originendpoint-lowlatencyhlsmanifestconfiguration-childmanifestname + ChildManifestName *string `json:"ChildManifestName,omitempty"` + + // ManifestName AWS CloudFormation Property + // Required: true + // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-mediapackagev2-originendpoint-lowlatencyhlsmanifestconfiguration.html#cfn-mediapackagev2-originendpoint-lowlatencyhlsmanifestconfiguration-manifestname + ManifestName string `json:"ManifestName"` + + // ManifestWindowSeconds AWS CloudFormation Property + // Required: false + // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-mediapackagev2-originendpoint-lowlatencyhlsmanifestconfiguration.html#cfn-mediapackagev2-originendpoint-lowlatencyhlsmanifestconfiguration-manifestwindowseconds + ManifestWindowSeconds *int `json:"ManifestWindowSeconds,omitempty"` + + // ProgramDateTimeIntervalSeconds AWS CloudFormation Property + // Required: false + // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-mediapackagev2-originendpoint-lowlatencyhlsmanifestconfiguration.html#cfn-mediapackagev2-originendpoint-lowlatencyhlsmanifestconfiguration-programdatetimeintervalseconds + ProgramDateTimeIntervalSeconds *int `json:"ProgramDateTimeIntervalSeconds,omitempty"` + + // ScteHls AWS CloudFormation Property + // Required: false + // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-mediapackagev2-originendpoint-lowlatencyhlsmanifestconfiguration.html#cfn-mediapackagev2-originendpoint-lowlatencyhlsmanifestconfiguration-sctehls + ScteHls *OriginEndpoint_ScteHls `json:"ScteHls,omitempty"` + + // Url AWS CloudFormation Property + // Required: false + // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-mediapackagev2-originendpoint-lowlatencyhlsmanifestconfiguration.html#cfn-mediapackagev2-originendpoint-lowlatencyhlsmanifestconfiguration-url + Url *string `json:"Url,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_LowLatencyHlsManifestConfiguration) AWSCloudFormationType() string { + return "AWS::MediaPackageV2::OriginEndpoint.LowLatencyHlsManifestConfiguration" +} diff --git a/cloudformation/mediapackagev2/aws-mediapackagev2-originendpoint_scte.go b/cloudformation/mediapackagev2/aws-mediapackagev2-originendpoint_scte.go new file mode 100644 index 0000000000..08b07fe7f2 --- /dev/null +++ b/cloudformation/mediapackagev2/aws-mediapackagev2-originendpoint_scte.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_Scte AWS CloudFormation Resource (AWS::MediaPackageV2::OriginEndpoint.Scte) +// See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-mediapackagev2-originendpoint-scte.html +type OriginEndpoint_Scte struct { + + // ScteFilter AWS CloudFormation Property + // Required: false + // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-mediapackagev2-originendpoint-scte.html#cfn-mediapackagev2-originendpoint-scte-sctefilter + ScteFilter []string `json:"ScteFilter,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_Scte) AWSCloudFormationType() string { + return "AWS::MediaPackageV2::OriginEndpoint.Scte" +} diff --git a/cloudformation/mediapackagev2/aws-mediapackagev2-originendpoint_sctehls.go b/cloudformation/mediapackagev2/aws-mediapackagev2-originendpoint_sctehls.go new file mode 100644 index 0000000000..3b940cb8ff --- /dev/null +++ b/cloudformation/mediapackagev2/aws-mediapackagev2-originendpoint_sctehls.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_ScteHls AWS CloudFormation Resource (AWS::MediaPackageV2::OriginEndpoint.ScteHls) +// See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-mediapackagev2-originendpoint-sctehls.html +type OriginEndpoint_ScteHls struct { + + // AdMarkerHls AWS CloudFormation Property + // Required: false + // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-mediapackagev2-originendpoint-sctehls.html#cfn-mediapackagev2-originendpoint-sctehls-admarkerhls + AdMarkerHls *string `json:"AdMarkerHls,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_ScteHls) AWSCloudFormationType() string { + return "AWS::MediaPackageV2::OriginEndpoint.ScteHls" +} diff --git a/cloudformation/mediapackagev2/aws-mediapackagev2-originendpoint_segment.go b/cloudformation/mediapackagev2/aws-mediapackagev2-originendpoint_segment.go new file mode 100644 index 0000000000..c19a6574ea --- /dev/null +++ b/cloudformation/mediapackagev2/aws-mediapackagev2-originendpoint_segment.go @@ -0,0 +1,67 @@ +// Code generated by "go generate". Please don't change this file directly. + +package mediapackagev2 + +import ( + "github.com/awslabs/goformation/v7/cloudformation/policies" +) + +// OriginEndpoint_Segment AWS CloudFormation Resource (AWS::MediaPackageV2::OriginEndpoint.Segment) +// See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-mediapackagev2-originendpoint-segment.html +type OriginEndpoint_Segment struct { + + // Encryption AWS CloudFormation Property + // Required: false + // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-mediapackagev2-originendpoint-segment.html#cfn-mediapackagev2-originendpoint-segment-encryption + Encryption *OriginEndpoint_Encryption `json:"Encryption,omitempty"` + + // IncludeIframeOnlyStreams AWS CloudFormation Property + // Required: false + // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-mediapackagev2-originendpoint-segment.html#cfn-mediapackagev2-originendpoint-segment-includeiframeonlystreams + IncludeIframeOnlyStreams *bool `json:"IncludeIframeOnlyStreams,omitempty"` + + // Scte AWS CloudFormation Property + // Required: false + // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-mediapackagev2-originendpoint-segment.html#cfn-mediapackagev2-originendpoint-segment-scte + Scte *OriginEndpoint_Scte `json:"Scte,omitempty"` + + // SegmentDurationSeconds AWS CloudFormation Property + // Required: false + // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-mediapackagev2-originendpoint-segment.html#cfn-mediapackagev2-originendpoint-segment-segmentdurationseconds + SegmentDurationSeconds *int `json:"SegmentDurationSeconds,omitempty"` + + // SegmentName AWS CloudFormation Property + // Required: false + // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-mediapackagev2-originendpoint-segment.html#cfn-mediapackagev2-originendpoint-segment-segmentname + SegmentName *string `json:"SegmentName,omitempty"` + + // TsIncludeDvbSubtitles AWS CloudFormation Property + // Required: false + // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-mediapackagev2-originendpoint-segment.html#cfn-mediapackagev2-originendpoint-segment-tsincludedvbsubtitles + TsIncludeDvbSubtitles *bool `json:"TsIncludeDvbSubtitles,omitempty"` + + // TsUseAudioRenditionGroup AWS CloudFormation Property + // Required: false + // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-mediapackagev2-originendpoint-segment.html#cfn-mediapackagev2-originendpoint-segment-tsuseaudiorenditiongroup + TsUseAudioRenditionGroup *bool `json:"TsUseAudioRenditionGroup,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_Segment) AWSCloudFormationType() string { + return "AWS::MediaPackageV2::OriginEndpoint.Segment" +} diff --git a/cloudformation/mediapackagev2/aws-mediapackagev2-originendpoint_spekekeyprovider.go b/cloudformation/mediapackagev2/aws-mediapackagev2-originendpoint_spekekeyprovider.go new file mode 100644 index 0000000000..3cfb5a88e1 --- /dev/null +++ b/cloudformation/mediapackagev2/aws-mediapackagev2-originendpoint_spekekeyprovider.go @@ -0,0 +1,57 @@ +// Code generated by "go generate". Please don't change this file directly. + +package mediapackagev2 + +import ( + "github.com/awslabs/goformation/v7/cloudformation/policies" +) + +// OriginEndpoint_SpekeKeyProvider AWS CloudFormation Resource (AWS::MediaPackageV2::OriginEndpoint.SpekeKeyProvider) +// See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-mediapackagev2-originendpoint-spekekeyprovider.html +type OriginEndpoint_SpekeKeyProvider struct { + + // DrmSystems AWS CloudFormation Property + // Required: true + // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-mediapackagev2-originendpoint-spekekeyprovider.html#cfn-mediapackagev2-originendpoint-spekekeyprovider-drmsystems + DrmSystems []string `json:"DrmSystems"` + + // EncryptionContractConfiguration AWS CloudFormation Property + // Required: true + // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-mediapackagev2-originendpoint-spekekeyprovider.html#cfn-mediapackagev2-originendpoint-spekekeyprovider-encryptioncontractconfiguration + EncryptionContractConfiguration *OriginEndpoint_EncryptionContractConfiguration `json:"EncryptionContractConfiguration"` + + // ResourceId AWS CloudFormation Property + // Required: true + // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-mediapackagev2-originendpoint-spekekeyprovider.html#cfn-mediapackagev2-originendpoint-spekekeyprovider-resourceid + ResourceId string `json:"ResourceId"` + + // RoleArn AWS CloudFormation Property + // Required: true + // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-mediapackagev2-originendpoint-spekekeyprovider.html#cfn-mediapackagev2-originendpoint-spekekeyprovider-rolearn + RoleArn string `json:"RoleArn"` + + // Url AWS CloudFormation Property + // Required: true + // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-mediapackagev2-originendpoint-spekekeyprovider.html#cfn-mediapackagev2-originendpoint-spekekeyprovider-url + Url string `json:"Url"` + + // 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_SpekeKeyProvider) AWSCloudFormationType() string { + return "AWS::MediaPackageV2::OriginEndpoint.SpekeKeyProvider" +} diff --git a/cloudformation/mediapackagev2/aws-mediapackagev2-originendpointpolicy.go b/cloudformation/mediapackagev2/aws-mediapackagev2-originendpointpolicy.go new file mode 100644 index 0000000000..252e2b67fb --- /dev/null +++ b/cloudformation/mediapackagev2/aws-mediapackagev2-originendpointpolicy.go @@ -0,0 +1,132 @@ +// Code generated by "go generate". Please don't change this file directly. + +package mediapackagev2 + +import ( + "bytes" + "encoding/json" + + "github.com/awslabs/goformation/v7/cloudformation/policies" +) + +// OriginEndpointPolicy AWS CloudFormation Resource (AWS::MediaPackageV2::OriginEndpointPolicy) +// See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-mediapackagev2-originendpointpolicy.html +type OriginEndpointPolicy struct { + + // ChannelGroupName AWS CloudFormation Property + // Required: false + // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-mediapackagev2-originendpointpolicy.html#cfn-mediapackagev2-originendpointpolicy-channelgroupname + ChannelGroupName *string `json:"ChannelGroupName,omitempty"` + + // ChannelName AWS CloudFormation Property + // Required: false + // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-mediapackagev2-originendpointpolicy.html#cfn-mediapackagev2-originendpointpolicy-channelname + ChannelName *string `json:"ChannelName,omitempty"` + + // OriginEndpointName AWS CloudFormation Property + // Required: false + // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-mediapackagev2-originendpointpolicy.html#cfn-mediapackagev2-originendpointpolicy-originendpointname + OriginEndpointName *string `json:"OriginEndpointName,omitempty"` + + // Policy AWS CloudFormation Property + // Required: true + // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-mediapackagev2-originendpointpolicy.html#cfn-mediapackagev2-originendpointpolicy-policy + Policy interface{} `json:"Policy"` + + // 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 *OriginEndpointPolicy) AWSCloudFormationType() string { + return "AWS::MediaPackageV2::OriginEndpointPolicy" +} + +// MarshalJSON is a custom JSON marshalling hook that embeds this object into +// an AWS CloudFormation JSON resource's 'Properties' field and adds a 'Type'. +func (r OriginEndpointPolicy) MarshalJSON() ([]byte, error) { + type Properties OriginEndpointPolicy + 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 *OriginEndpointPolicy) UnmarshalJSON(b []byte) error { + type Properties OriginEndpointPolicy + 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 = OriginEndpointPolicy(*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/rds/aws-rds-dbinstance.go b/cloudformation/rds/aws-rds-dbinstance.go index 886565dd64..7caf8f8194 100644 --- a/cloudformation/rds/aws-rds-dbinstance.go +++ b/cloudformation/rds/aws-rds-dbinstance.go @@ -134,11 +134,31 @@ type DBInstance struct { // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-rds-dbinstance.html#cfn-rds-dbinstance-domain Domain *string `json:"Domain,omitempty"` + // DomainAuthSecretArn AWS CloudFormation Property + // Required: false + // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-rds-dbinstance.html#cfn-rds-dbinstance-domainauthsecretarn + DomainAuthSecretArn *string `json:"DomainAuthSecretArn,omitempty"` + + // DomainDnsIps AWS CloudFormation Property + // Required: false + // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-rds-dbinstance.html#cfn-rds-dbinstance-domaindnsips + DomainDnsIps []string `json:"DomainDnsIps,omitempty"` + + // DomainFqdn AWS CloudFormation Property + // Required: false + // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-rds-dbinstance.html#cfn-rds-dbinstance-domainfqdn + DomainFqdn *string `json:"DomainFqdn,omitempty"` + // DomainIAMRoleName AWS CloudFormation Property // Required: false // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-rds-dbinstance.html#cfn-rds-dbinstance-domainiamrolename DomainIAMRoleName *string `json:"DomainIAMRoleName,omitempty"` + // DomainOu AWS CloudFormation Property + // Required: false + // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-rds-dbinstance.html#cfn-rds-dbinstance-domainou + DomainOu *string `json:"DomainOu,omitempty"` + // EnableCloudwatchLogsExports AWS CloudFormation Property // Required: false // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-rds-dbinstance.html#cfn-rds-dbinstance-enablecloudwatchlogsexports diff --git a/cloudformation/ssm/aws-ssm-parameter.go b/cloudformation/ssm/aws-ssm-parameter.go index 641cd125ce..905fc87040 100644 --- a/cloudformation/ssm/aws-ssm-parameter.go +++ b/cloudformation/ssm/aws-ssm-parameter.go @@ -41,7 +41,7 @@ type Parameter struct { // Tags AWS CloudFormation Property // Required: false // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-ssm-parameter.html#cfn-ssm-parameter-tags - Tags map[string]string `json:"Tags,omitempty"` + Tags interface{} `json:"Tags,omitempty"` // Tier AWS CloudFormation Property // Required: false diff --git a/cloudformation/workspacesweb/aws-workspacesweb-usersettings.go b/cloudformation/workspacesweb/aws-workspacesweb-usersettings.go index bfe41bc33d..7c63761c0c 100644 --- a/cloudformation/workspacesweb/aws-workspacesweb-usersettings.go +++ b/cloudformation/workspacesweb/aws-workspacesweb-usersettings.go @@ -14,11 +14,26 @@ import ( // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-workspacesweb-usersettings.html type UserSettings struct { + // AdditionalEncryptionContext AWS CloudFormation Property + // Required: false + // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-workspacesweb-usersettings.html#cfn-workspacesweb-usersettings-additionalencryptioncontext + AdditionalEncryptionContext map[string]string `json:"AdditionalEncryptionContext,omitempty"` + + // CookieSynchronizationConfiguration AWS CloudFormation Property + // Required: false + // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-workspacesweb-usersettings.html#cfn-workspacesweb-usersettings-cookiesynchronizationconfiguration + CookieSynchronizationConfiguration *UserSettings_CookieSynchronizationConfiguration `json:"CookieSynchronizationConfiguration,omitempty"` + // CopyAllowed AWS CloudFormation Property // Required: true // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-workspacesweb-usersettings.html#cfn-workspacesweb-usersettings-copyallowed CopyAllowed string `json:"CopyAllowed"` + // CustomerManagedKey AWS CloudFormation Property + // Required: false + // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-workspacesweb-usersettings.html#cfn-workspacesweb-usersettings-customermanagedkey + CustomerManagedKey *string `json:"CustomerManagedKey,omitempty"` + // DisconnectTimeoutInMinutes AWS CloudFormation Property // Required: false // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-workspacesweb-usersettings.html#cfn-workspacesweb-usersettings-disconnecttimeoutinminutes diff --git a/cloudformation/workspacesweb/aws-workspacesweb-usersettings_cookiespecification.go b/cloudformation/workspacesweb/aws-workspacesweb-usersettings_cookiespecification.go new file mode 100644 index 0000000000..71048e2b00 --- /dev/null +++ b/cloudformation/workspacesweb/aws-workspacesweb-usersettings_cookiespecification.go @@ -0,0 +1,47 @@ +// Code generated by "go generate". Please don't change this file directly. + +package workspacesweb + +import ( + "github.com/awslabs/goformation/v7/cloudformation/policies" +) + +// UserSettings_CookieSpecification AWS CloudFormation Resource (AWS::WorkSpacesWeb::UserSettings.CookieSpecification) +// See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-workspacesweb-usersettings-cookiespecification.html +type UserSettings_CookieSpecification struct { + + // Domain AWS CloudFormation Property + // Required: true + // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-workspacesweb-usersettings-cookiespecification.html#cfn-workspacesweb-usersettings-cookiespecification-domain + Domain string `json:"Domain"` + + // Name AWS CloudFormation Property + // Required: false + // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-workspacesweb-usersettings-cookiespecification.html#cfn-workspacesweb-usersettings-cookiespecification-name + Name *string `json:"Name,omitempty"` + + // Path AWS CloudFormation Property + // Required: false + // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-workspacesweb-usersettings-cookiespecification.html#cfn-workspacesweb-usersettings-cookiespecification-path + Path *string `json:"Path,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 *UserSettings_CookieSpecification) AWSCloudFormationType() string { + return "AWS::WorkSpacesWeb::UserSettings.CookieSpecification" +} diff --git a/cloudformation/workspacesweb/aws-workspacesweb-usersettings_cookiesynchronizationconfiguration.go b/cloudformation/workspacesweb/aws-workspacesweb-usersettings_cookiesynchronizationconfiguration.go new file mode 100644 index 0000000000..837a8b5be5 --- /dev/null +++ b/cloudformation/workspacesweb/aws-workspacesweb-usersettings_cookiesynchronizationconfiguration.go @@ -0,0 +1,42 @@ +// Code generated by "go generate". Please don't change this file directly. + +package workspacesweb + +import ( + "github.com/awslabs/goformation/v7/cloudformation/policies" +) + +// UserSettings_CookieSynchronizationConfiguration AWS CloudFormation Resource (AWS::WorkSpacesWeb::UserSettings.CookieSynchronizationConfiguration) +// See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-workspacesweb-usersettings-cookiesynchronizationconfiguration.html +type UserSettings_CookieSynchronizationConfiguration struct { + + // Allowlist AWS CloudFormation Property + // Required: true + // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-workspacesweb-usersettings-cookiesynchronizationconfiguration.html#cfn-workspacesweb-usersettings-cookiesynchronizationconfiguration-allowlist + Allowlist []UserSettings_CookieSpecification `json:"Allowlist"` + + // Blocklist AWS CloudFormation Property + // Required: false + // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-workspacesweb-usersettings-cookiesynchronizationconfiguration.html#cfn-workspacesweb-usersettings-cookiesynchronizationconfiguration-blocklist + Blocklist []UserSettings_CookieSpecification `json:"Blocklist,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 *UserSettings_CookieSynchronizationConfiguration) AWSCloudFormationType() string { + return "AWS::WorkSpacesWeb::UserSettings.CookieSynchronizationConfiguration" +} diff --git a/schema/cdk.go b/schema/cdk.go index d6d999e583..e6e66a40bf 100644 --- a/schema/cdk.go +++ b/schema/cdk.go @@ -39472,6 +39472,9 @@ var CdkSchema = `{ "ObjectTypeName": { "type": "string" }, + "SourceLastUpdatedTimestampFormat": { + "type": "string" + }, "Tags": { "items": { "$ref": "#/definitions/Tag" @@ -51464,6 +51467,9 @@ var CdkSchema = `{ "NetworkInterfaceId": { "type": "string" }, + "PrimaryIpv6": { + "type": "boolean" + }, "PrivateIpAddress": { "type": "string" }, @@ -118228,6 +118234,590 @@ var CdkSchema = `{ }, "type": "object" }, + "AWS::MediaPackageV2::Channel": { + "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": { + "ChannelGroupName": { + "type": "string" + }, + "ChannelName": { + "type": "string" + }, + "Description": { + "type": "string" + }, + "Tags": { + "items": { + "$ref": "#/definitions/Tag" + }, + "type": "array" + } + }, + "type": "object" + }, + "Type": { + "enum": [ + "AWS::MediaPackageV2::Channel" + ], + "type": "string" + }, + "UpdateReplacePolicy": { + "enum": [ + "Delete", + "Retain", + "Snapshot" + ], + "type": "string" + } + }, + "required": [ + "Type" + ], + "type": "object" + }, + "AWS::MediaPackageV2::Channel.IngestEndpoint": { + "additionalProperties": false, + "properties": { + "Id": { + "type": "string" + }, + "Url": { + "type": "string" + } + }, + "type": "object" + }, + "AWS::MediaPackageV2::ChannelGroup": { + "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": { + "ChannelGroupName": { + "type": "string" + }, + "Description": { + "type": "string" + }, + "Tags": { + "items": { + "$ref": "#/definitions/Tag" + }, + "type": "array" + } + }, + "type": "object" + }, + "Type": { + "enum": [ + "AWS::MediaPackageV2::ChannelGroup" + ], + "type": "string" + }, + "UpdateReplacePolicy": { + "enum": [ + "Delete", + "Retain", + "Snapshot" + ], + "type": "string" + } + }, + "required": [ + "Type" + ], + "type": "object" + }, + "AWS::MediaPackageV2::ChannelPolicy": { + "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": { + "ChannelGroupName": { + "type": "string" + }, + "ChannelName": { + "type": "string" + }, + "Policy": { + "type": "object" + } + }, + "required": [ + "Policy" + ], + "type": "object" + }, + "Type": { + "enum": [ + "AWS::MediaPackageV2::ChannelPolicy" + ], + "type": "string" + }, + "UpdateReplacePolicy": { + "enum": [ + "Delete", + "Retain", + "Snapshot" + ], + "type": "string" + } + }, + "required": [ + "Type", + "Properties" + ], + "type": "object" + }, + "AWS::MediaPackageV2::OriginEndpoint": { + "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": { + "ChannelGroupName": { + "type": "string" + }, + "ChannelName": { + "type": "string" + }, + "ContainerType": { + "type": "string" + }, + "Description": { + "type": "string" + }, + "HlsManifests": { + "items": { + "$ref": "#/definitions/AWS::MediaPackageV2::OriginEndpoint.HlsManifestConfiguration" + }, + "type": "array" + }, + "LowLatencyHlsManifests": { + "items": { + "$ref": "#/definitions/AWS::MediaPackageV2::OriginEndpoint.LowLatencyHlsManifestConfiguration" + }, + "type": "array" + }, + "OriginEndpointName": { + "type": "string" + }, + "Segment": { + "$ref": "#/definitions/AWS::MediaPackageV2::OriginEndpoint.Segment" + }, + "StartoverWindowSeconds": { + "type": "number" + }, + "Tags": { + "items": { + "$ref": "#/definitions/Tag" + }, + "type": "array" + } + }, + "required": [ + "ContainerType" + ], + "type": "object" + }, + "Type": { + "enum": [ + "AWS::MediaPackageV2::OriginEndpoint" + ], + "type": "string" + }, + "UpdateReplacePolicy": { + "enum": [ + "Delete", + "Retain", + "Snapshot" + ], + "type": "string" + } + }, + "required": [ + "Type", + "Properties" + ], + "type": "object" + }, + "AWS::MediaPackageV2::OriginEndpoint.Encryption": { + "additionalProperties": false, + "properties": { + "ConstantInitializationVector": { + "type": "string" + }, + "EncryptionMethod": { + "$ref": "#/definitions/AWS::MediaPackageV2::OriginEndpoint.EncryptionMethod" + }, + "KeyRotationIntervalSeconds": { + "type": "number" + }, + "SpekeKeyProvider": { + "$ref": "#/definitions/AWS::MediaPackageV2::OriginEndpoint.SpekeKeyProvider" + } + }, + "required": [ + "EncryptionMethod", + "SpekeKeyProvider" + ], + "type": "object" + }, + "AWS::MediaPackageV2::OriginEndpoint.EncryptionContractConfiguration": { + "additionalProperties": false, + "properties": { + "PresetSpeke20Audio": { + "type": "string" + }, + "PresetSpeke20Video": { + "type": "string" + } + }, + "required": [ + "PresetSpeke20Audio", + "PresetSpeke20Video" + ], + "type": "object" + }, + "AWS::MediaPackageV2::OriginEndpoint.EncryptionMethod": { + "additionalProperties": false, + "properties": { + "CmafEncryptionMethod": { + "type": "string" + }, + "TsEncryptionMethod": { + "type": "string" + } + }, + "type": "object" + }, + "AWS::MediaPackageV2::OriginEndpoint.HlsManifestConfiguration": { + "additionalProperties": false, + "properties": { + "ChildManifestName": { + "type": "string" + }, + "ManifestName": { + "type": "string" + }, + "ManifestWindowSeconds": { + "type": "number" + }, + "ProgramDateTimeIntervalSeconds": { + "type": "number" + }, + "ScteHls": { + "$ref": "#/definitions/AWS::MediaPackageV2::OriginEndpoint.ScteHls" + }, + "Url": { + "type": "string" + } + }, + "required": [ + "ManifestName" + ], + "type": "object" + }, + "AWS::MediaPackageV2::OriginEndpoint.LowLatencyHlsManifestConfiguration": { + "additionalProperties": false, + "properties": { + "ChildManifestName": { + "type": "string" + }, + "ManifestName": { + "type": "string" + }, + "ManifestWindowSeconds": { + "type": "number" + }, + "ProgramDateTimeIntervalSeconds": { + "type": "number" + }, + "ScteHls": { + "$ref": "#/definitions/AWS::MediaPackageV2::OriginEndpoint.ScteHls" + }, + "Url": { + "type": "string" + } + }, + "required": [ + "ManifestName" + ], + "type": "object" + }, + "AWS::MediaPackageV2::OriginEndpoint.Scte": { + "additionalProperties": false, + "properties": { + "ScteFilter": { + "items": { + "type": "string" + }, + "type": "array" + } + }, + "type": "object" + }, + "AWS::MediaPackageV2::OriginEndpoint.ScteHls": { + "additionalProperties": false, + "properties": { + "AdMarkerHls": { + "type": "string" + } + }, + "type": "object" + }, + "AWS::MediaPackageV2::OriginEndpoint.Segment": { + "additionalProperties": false, + "properties": { + "Encryption": { + "$ref": "#/definitions/AWS::MediaPackageV2::OriginEndpoint.Encryption" + }, + "IncludeIframeOnlyStreams": { + "type": "boolean" + }, + "Scte": { + "$ref": "#/definitions/AWS::MediaPackageV2::OriginEndpoint.Scte" + }, + "SegmentDurationSeconds": { + "type": "number" + }, + "SegmentName": { + "type": "string" + }, + "TsIncludeDvbSubtitles": { + "type": "boolean" + }, + "TsUseAudioRenditionGroup": { + "type": "boolean" + } + }, + "type": "object" + }, + "AWS::MediaPackageV2::OriginEndpoint.SpekeKeyProvider": { + "additionalProperties": false, + "properties": { + "DrmSystems": { + "items": { + "type": "string" + }, + "type": "array" + }, + "EncryptionContractConfiguration": { + "$ref": "#/definitions/AWS::MediaPackageV2::OriginEndpoint.EncryptionContractConfiguration" + }, + "ResourceId": { + "type": "string" + }, + "RoleArn": { + "type": "string" + }, + "Url": { + "type": "string" + } + }, + "required": [ + "DrmSystems", + "EncryptionContractConfiguration", + "ResourceId", + "RoleArn", + "Url" + ], + "type": "object" + }, + "AWS::MediaPackageV2::OriginEndpointPolicy": { + "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": { + "ChannelGroupName": { + "type": "string" + }, + "ChannelName": { + "type": "string" + }, + "OriginEndpointName": { + "type": "string" + }, + "Policy": { + "type": "object" + } + }, + "required": [ + "Policy" + ], + "type": "object" + }, + "Type": { + "enum": [ + "AWS::MediaPackageV2::OriginEndpointPolicy" + ], + "type": "string" + }, + "UpdateReplacePolicy": { + "enum": [ + "Delete", + "Retain", + "Snapshot" + ], + "type": "string" + } + }, + "required": [ + "Type", + "Properties" + ], + "type": "object" + }, "AWS::MediaStore::Container": { "additionalProperties": false, "properties": { @@ -162850,9 +163440,24 @@ var CdkSchema = `{ "Domain": { "type": "string" }, + "DomainAuthSecretArn": { + "type": "string" + }, + "DomainDnsIps": { + "items": { + "type": "string" + }, + "type": "array" + }, + "DomainFqdn": { + "type": "string" + }, "DomainIAMRoleName": { "type": "string" }, + "DomainOu": { + "type": "string" + }, "EnableCloudwatchLogsExports": { "items": { "type": "string" @@ -175790,12 +176395,6 @@ var CdkSchema = `{ "type": "string" }, "Tags": { - "additionalProperties": true, - "patternProperties": { - "^[a-zA-Z0-9]+$": { - "type": "string" - } - }, "type": "object" }, "Tier": { @@ -198551,118 +199150,297 @@ var CdkSchema = `{ }, "type": "object" }, - "AuthenticationType": { - "type": "string" + "AuthenticationType": { + "type": "string" + }, + "BrowserSettingsArn": { + "type": "string" + }, + "CustomerManagedKey": { + "type": "string" + }, + "DisplayName": { + "type": "string" + }, + "IpAccessSettingsArn": { + "type": "string" + }, + "NetworkSettingsArn": { + "type": "string" + }, + "Tags": { + "items": { + "$ref": "#/definitions/Tag" + }, + "type": "array" + }, + "TrustStoreArn": { + "type": "string" + }, + "UserAccessLoggingSettingsArn": { + "type": "string" + }, + "UserSettingsArn": { + "type": "string" + } + }, + "type": "object" + }, + "Type": { + "enum": [ + "AWS::WorkSpacesWeb::Portal" + ], + "type": "string" + }, + "UpdateReplacePolicy": { + "enum": [ + "Delete", + "Retain", + "Snapshot" + ], + "type": "string" + } + }, + "required": [ + "Type" + ], + "type": "object" + }, + "AWS::WorkSpacesWeb::TrustStore": { + "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": { + "CertificateList": { + "items": { + "type": "string" + }, + "type": "array" + }, + "Tags": { + "items": { + "$ref": "#/definitions/Tag" + }, + "type": "array" + } + }, + "required": [ + "CertificateList" + ], + "type": "object" + }, + "Type": { + "enum": [ + "AWS::WorkSpacesWeb::TrustStore" + ], + "type": "string" + }, + "UpdateReplacePolicy": { + "enum": [ + "Delete", + "Retain", + "Snapshot" + ], + "type": "string" + } + }, + "required": [ + "Type", + "Properties" + ], + "type": "object" + }, + "AWS::WorkSpacesWeb::UserAccessLoggingSettings": { + "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": { + "KinesisStreamArn": { + "type": "string" + }, + "Tags": { + "items": { + "$ref": "#/definitions/Tag" + }, + "type": "array" + } + }, + "required": [ + "KinesisStreamArn" + ], + "type": "object" + }, + "Type": { + "enum": [ + "AWS::WorkSpacesWeb::UserAccessLoggingSettings" + ], + "type": "string" + }, + "UpdateReplacePolicy": { + "enum": [ + "Delete", + "Retain", + "Snapshot" + ], + "type": "string" + } + }, + "required": [ + "Type", + "Properties" + ], + "type": "object" + }, + "AWS::WorkSpacesWeb::UserSettings": { + "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": { + "AdditionalEncryptionContext": { + "additionalProperties": true, + "patternProperties": { + "^[a-zA-Z0-9]+$": { + "type": "string" + } + }, + "type": "object" + }, + "CookieSynchronizationConfiguration": { + "$ref": "#/definitions/AWS::WorkSpacesWeb::UserSettings.CookieSynchronizationConfiguration" }, - "BrowserSettingsArn": { + "CopyAllowed": { "type": "string" }, "CustomerManagedKey": { "type": "string" }, - "DisplayName": { - "type": "string" - }, - "IpAccessSettingsArn": { - "type": "string" + "DisconnectTimeoutInMinutes": { + "type": "number" }, - "NetworkSettingsArn": { + "DownloadAllowed": { "type": "string" }, - "Tags": { - "items": { - "$ref": "#/definitions/Tag" - }, - "type": "array" - }, - "TrustStoreArn": { - "type": "string" + "IdleDisconnectTimeoutInMinutes": { + "type": "number" }, - "UserAccessLoggingSettingsArn": { + "PasteAllowed": { "type": "string" }, - "UserSettingsArn": { - "type": "string" - } - }, - "type": "object" - }, - "Type": { - "enum": [ - "AWS::WorkSpacesWeb::Portal" - ], - "type": "string" - }, - "UpdateReplacePolicy": { - "enum": [ - "Delete", - "Retain", - "Snapshot" - ], - "type": "string" - } - }, - "required": [ - "Type" - ], - "type": "object" - }, - "AWS::WorkSpacesWeb::TrustStore": { - "additionalProperties": false, - "properties": { - "Condition": { - "type": "string" - }, - "DeletionPolicy": { - "enum": [ - "Delete", - "Retain", - "Snapshot" - ], - "type": "string" - }, - "DependsOn": { - "anyOf": [ - { - "pattern": "^[a-zA-Z0-9]+$", + "PrintAllowed": { "type": "string" }, - { - "items": { - "pattern": "^[a-zA-Z0-9]+$", - "type": "string" - }, - "type": "array" - } - ] - }, - "Metadata": { - "type": "object" - }, - "Properties": { - "additionalProperties": false, - "properties": { - "CertificateList": { - "items": { - "type": "string" - }, - "type": "array" - }, "Tags": { "items": { "$ref": "#/definitions/Tag" }, "type": "array" + }, + "UploadAllowed": { + "type": "string" } }, "required": [ - "CertificateList" + "CopyAllowed", + "DownloadAllowed", + "PasteAllowed", + "PrintAllowed", + "UploadAllowed" ], "type": "object" }, "Type": { "enum": [ - "AWS::WorkSpacesWeb::TrustStore" + "AWS::WorkSpacesWeb::UserSettings" ], "type": "string" }, @@ -198681,167 +199459,42 @@ var CdkSchema = `{ ], "type": "object" }, - "AWS::WorkSpacesWeb::UserAccessLoggingSettings": { + "AWS::WorkSpacesWeb::UserSettings.CookieSpecification": { "additionalProperties": false, "properties": { - "Condition": { - "type": "string" - }, - "DeletionPolicy": { - "enum": [ - "Delete", - "Retain", - "Snapshot" - ], + "Domain": { "type": "string" }, - "DependsOn": { - "anyOf": [ - { - "pattern": "^[a-zA-Z0-9]+$", - "type": "string" - }, - { - "items": { - "pattern": "^[a-zA-Z0-9]+$", - "type": "string" - }, - "type": "array" - } - ] - }, - "Metadata": { - "type": "object" - }, - "Properties": { - "additionalProperties": false, - "properties": { - "KinesisStreamArn": { - "type": "string" - }, - "Tags": { - "items": { - "$ref": "#/definitions/Tag" - }, - "type": "array" - } - }, - "required": [ - "KinesisStreamArn" - ], - "type": "object" - }, - "Type": { - "enum": [ - "AWS::WorkSpacesWeb::UserAccessLoggingSettings" - ], + "Name": { "type": "string" }, - "UpdateReplacePolicy": { - "enum": [ - "Delete", - "Retain", - "Snapshot" - ], + "Path": { "type": "string" } }, "required": [ - "Type", - "Properties" + "Domain" ], "type": "object" }, - "AWS::WorkSpacesWeb::UserSettings": { + "AWS::WorkSpacesWeb::UserSettings.CookieSynchronizationConfiguration": { "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": { - "CopyAllowed": { - "type": "string" - }, - "DisconnectTimeoutInMinutes": { - "type": "number" - }, - "DownloadAllowed": { - "type": "string" - }, - "IdleDisconnectTimeoutInMinutes": { - "type": "number" - }, - "PasteAllowed": { - "type": "string" - }, - "PrintAllowed": { - "type": "string" - }, - "Tags": { - "items": { - "$ref": "#/definitions/Tag" - }, - "type": "array" - }, - "UploadAllowed": { - "type": "string" - } + "Allowlist": { + "items": { + "$ref": "#/definitions/AWS::WorkSpacesWeb::UserSettings.CookieSpecification" }, - "required": [ - "CopyAllowed", - "DownloadAllowed", - "PasteAllowed", - "PrintAllowed", - "UploadAllowed" - ], - "type": "object" - }, - "Type": { - "enum": [ - "AWS::WorkSpacesWeb::UserSettings" - ], - "type": "string" + "type": "array" }, - "UpdateReplacePolicy": { - "enum": [ - "Delete", - "Retain", - "Snapshot" - ], - "type": "string" + "Blocklist": { + "items": { + "$ref": "#/definitions/AWS::WorkSpacesWeb::UserSettings.CookieSpecification" + }, + "type": "array" } }, "required": [ - "Type", - "Properties" + "Allowlist" ], "type": "object" }, @@ -201707,6 +202360,21 @@ var CdkSchema = `{ { "$ref": "#/definitions/AWS::MediaPackage::PackagingGroup" }, + { + "$ref": "#/definitions/AWS::MediaPackageV2::Channel" + }, + { + "$ref": "#/definitions/AWS::MediaPackageV2::ChannelGroup" + }, + { + "$ref": "#/definitions/AWS::MediaPackageV2::ChannelPolicy" + }, + { + "$ref": "#/definitions/AWS::MediaPackageV2::OriginEndpoint" + }, + { + "$ref": "#/definitions/AWS::MediaPackageV2::OriginEndpointPolicy" + }, { "$ref": "#/definitions/AWS::MediaStore::Container" }, diff --git a/schema/cdk.schema.json b/schema/cdk.schema.json index b8d8f4f262..18a2362175 100644 --- a/schema/cdk.schema.json +++ b/schema/cdk.schema.json @@ -39467,6 +39467,9 @@ "ObjectTypeName": { "type": "string" }, + "SourceLastUpdatedTimestampFormat": { + "type": "string" + }, "Tags": { "items": { "$ref": "#/definitions/Tag" @@ -51459,6 +51462,9 @@ "NetworkInterfaceId": { "type": "string" }, + "PrimaryIpv6": { + "type": "boolean" + }, "PrivateIpAddress": { "type": "string" }, @@ -118223,6 +118229,590 @@ }, "type": "object" }, + "AWS::MediaPackageV2::Channel": { + "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": { + "ChannelGroupName": { + "type": "string" + }, + "ChannelName": { + "type": "string" + }, + "Description": { + "type": "string" + }, + "Tags": { + "items": { + "$ref": "#/definitions/Tag" + }, + "type": "array" + } + }, + "type": "object" + }, + "Type": { + "enum": [ + "AWS::MediaPackageV2::Channel" + ], + "type": "string" + }, + "UpdateReplacePolicy": { + "enum": [ + "Delete", + "Retain", + "Snapshot" + ], + "type": "string" + } + }, + "required": [ + "Type" + ], + "type": "object" + }, + "AWS::MediaPackageV2::Channel.IngestEndpoint": { + "additionalProperties": false, + "properties": { + "Id": { + "type": "string" + }, + "Url": { + "type": "string" + } + }, + "type": "object" + }, + "AWS::MediaPackageV2::ChannelGroup": { + "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": { + "ChannelGroupName": { + "type": "string" + }, + "Description": { + "type": "string" + }, + "Tags": { + "items": { + "$ref": "#/definitions/Tag" + }, + "type": "array" + } + }, + "type": "object" + }, + "Type": { + "enum": [ + "AWS::MediaPackageV2::ChannelGroup" + ], + "type": "string" + }, + "UpdateReplacePolicy": { + "enum": [ + "Delete", + "Retain", + "Snapshot" + ], + "type": "string" + } + }, + "required": [ + "Type" + ], + "type": "object" + }, + "AWS::MediaPackageV2::ChannelPolicy": { + "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": { + "ChannelGroupName": { + "type": "string" + }, + "ChannelName": { + "type": "string" + }, + "Policy": { + "type": "object" + } + }, + "required": [ + "Policy" + ], + "type": "object" + }, + "Type": { + "enum": [ + "AWS::MediaPackageV2::ChannelPolicy" + ], + "type": "string" + }, + "UpdateReplacePolicy": { + "enum": [ + "Delete", + "Retain", + "Snapshot" + ], + "type": "string" + } + }, + "required": [ + "Type", + "Properties" + ], + "type": "object" + }, + "AWS::MediaPackageV2::OriginEndpoint": { + "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": { + "ChannelGroupName": { + "type": "string" + }, + "ChannelName": { + "type": "string" + }, + "ContainerType": { + "type": "string" + }, + "Description": { + "type": "string" + }, + "HlsManifests": { + "items": { + "$ref": "#/definitions/AWS::MediaPackageV2::OriginEndpoint.HlsManifestConfiguration" + }, + "type": "array" + }, + "LowLatencyHlsManifests": { + "items": { + "$ref": "#/definitions/AWS::MediaPackageV2::OriginEndpoint.LowLatencyHlsManifestConfiguration" + }, + "type": "array" + }, + "OriginEndpointName": { + "type": "string" + }, + "Segment": { + "$ref": "#/definitions/AWS::MediaPackageV2::OriginEndpoint.Segment" + }, + "StartoverWindowSeconds": { + "type": "number" + }, + "Tags": { + "items": { + "$ref": "#/definitions/Tag" + }, + "type": "array" + } + }, + "required": [ + "ContainerType" + ], + "type": "object" + }, + "Type": { + "enum": [ + "AWS::MediaPackageV2::OriginEndpoint" + ], + "type": "string" + }, + "UpdateReplacePolicy": { + "enum": [ + "Delete", + "Retain", + "Snapshot" + ], + "type": "string" + } + }, + "required": [ + "Type", + "Properties" + ], + "type": "object" + }, + "AWS::MediaPackageV2::OriginEndpoint.Encryption": { + "additionalProperties": false, + "properties": { + "ConstantInitializationVector": { + "type": "string" + }, + "EncryptionMethod": { + "$ref": "#/definitions/AWS::MediaPackageV2::OriginEndpoint.EncryptionMethod" + }, + "KeyRotationIntervalSeconds": { + "type": "number" + }, + "SpekeKeyProvider": { + "$ref": "#/definitions/AWS::MediaPackageV2::OriginEndpoint.SpekeKeyProvider" + } + }, + "required": [ + "EncryptionMethod", + "SpekeKeyProvider" + ], + "type": "object" + }, + "AWS::MediaPackageV2::OriginEndpoint.EncryptionContractConfiguration": { + "additionalProperties": false, + "properties": { + "PresetSpeke20Audio": { + "type": "string" + }, + "PresetSpeke20Video": { + "type": "string" + } + }, + "required": [ + "PresetSpeke20Audio", + "PresetSpeke20Video" + ], + "type": "object" + }, + "AWS::MediaPackageV2::OriginEndpoint.EncryptionMethod": { + "additionalProperties": false, + "properties": { + "CmafEncryptionMethod": { + "type": "string" + }, + "TsEncryptionMethod": { + "type": "string" + } + }, + "type": "object" + }, + "AWS::MediaPackageV2::OriginEndpoint.HlsManifestConfiguration": { + "additionalProperties": false, + "properties": { + "ChildManifestName": { + "type": "string" + }, + "ManifestName": { + "type": "string" + }, + "ManifestWindowSeconds": { + "type": "number" + }, + "ProgramDateTimeIntervalSeconds": { + "type": "number" + }, + "ScteHls": { + "$ref": "#/definitions/AWS::MediaPackageV2::OriginEndpoint.ScteHls" + }, + "Url": { + "type": "string" + } + }, + "required": [ + "ManifestName" + ], + "type": "object" + }, + "AWS::MediaPackageV2::OriginEndpoint.LowLatencyHlsManifestConfiguration": { + "additionalProperties": false, + "properties": { + "ChildManifestName": { + "type": "string" + }, + "ManifestName": { + "type": "string" + }, + "ManifestWindowSeconds": { + "type": "number" + }, + "ProgramDateTimeIntervalSeconds": { + "type": "number" + }, + "ScteHls": { + "$ref": "#/definitions/AWS::MediaPackageV2::OriginEndpoint.ScteHls" + }, + "Url": { + "type": "string" + } + }, + "required": [ + "ManifestName" + ], + "type": "object" + }, + "AWS::MediaPackageV2::OriginEndpoint.Scte": { + "additionalProperties": false, + "properties": { + "ScteFilter": { + "items": { + "type": "string" + }, + "type": "array" + } + }, + "type": "object" + }, + "AWS::MediaPackageV2::OriginEndpoint.ScteHls": { + "additionalProperties": false, + "properties": { + "AdMarkerHls": { + "type": "string" + } + }, + "type": "object" + }, + "AWS::MediaPackageV2::OriginEndpoint.Segment": { + "additionalProperties": false, + "properties": { + "Encryption": { + "$ref": "#/definitions/AWS::MediaPackageV2::OriginEndpoint.Encryption" + }, + "IncludeIframeOnlyStreams": { + "type": "boolean" + }, + "Scte": { + "$ref": "#/definitions/AWS::MediaPackageV2::OriginEndpoint.Scte" + }, + "SegmentDurationSeconds": { + "type": "number" + }, + "SegmentName": { + "type": "string" + }, + "TsIncludeDvbSubtitles": { + "type": "boolean" + }, + "TsUseAudioRenditionGroup": { + "type": "boolean" + } + }, + "type": "object" + }, + "AWS::MediaPackageV2::OriginEndpoint.SpekeKeyProvider": { + "additionalProperties": false, + "properties": { + "DrmSystems": { + "items": { + "type": "string" + }, + "type": "array" + }, + "EncryptionContractConfiguration": { + "$ref": "#/definitions/AWS::MediaPackageV2::OriginEndpoint.EncryptionContractConfiguration" + }, + "ResourceId": { + "type": "string" + }, + "RoleArn": { + "type": "string" + }, + "Url": { + "type": "string" + } + }, + "required": [ + "DrmSystems", + "EncryptionContractConfiguration", + "ResourceId", + "RoleArn", + "Url" + ], + "type": "object" + }, + "AWS::MediaPackageV2::OriginEndpointPolicy": { + "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": { + "ChannelGroupName": { + "type": "string" + }, + "ChannelName": { + "type": "string" + }, + "OriginEndpointName": { + "type": "string" + }, + "Policy": { + "type": "object" + } + }, + "required": [ + "Policy" + ], + "type": "object" + }, + "Type": { + "enum": [ + "AWS::MediaPackageV2::OriginEndpointPolicy" + ], + "type": "string" + }, + "UpdateReplacePolicy": { + "enum": [ + "Delete", + "Retain", + "Snapshot" + ], + "type": "string" + } + }, + "required": [ + "Type", + "Properties" + ], + "type": "object" + }, "AWS::MediaStore::Container": { "additionalProperties": false, "properties": { @@ -162845,9 +163435,24 @@ "Domain": { "type": "string" }, + "DomainAuthSecretArn": { + "type": "string" + }, + "DomainDnsIps": { + "items": { + "type": "string" + }, + "type": "array" + }, + "DomainFqdn": { + "type": "string" + }, "DomainIAMRoleName": { "type": "string" }, + "DomainOu": { + "type": "string" + }, "EnableCloudwatchLogsExports": { "items": { "type": "string" @@ -175785,12 +176390,6 @@ "type": "string" }, "Tags": { - "additionalProperties": true, - "patternProperties": { - "^[a-zA-Z0-9]+$": { - "type": "string" - } - }, "type": "object" }, "Tier": { @@ -198546,118 +199145,297 @@ }, "type": "object" }, - "AuthenticationType": { - "type": "string" + "AuthenticationType": { + "type": "string" + }, + "BrowserSettingsArn": { + "type": "string" + }, + "CustomerManagedKey": { + "type": "string" + }, + "DisplayName": { + "type": "string" + }, + "IpAccessSettingsArn": { + "type": "string" + }, + "NetworkSettingsArn": { + "type": "string" + }, + "Tags": { + "items": { + "$ref": "#/definitions/Tag" + }, + "type": "array" + }, + "TrustStoreArn": { + "type": "string" + }, + "UserAccessLoggingSettingsArn": { + "type": "string" + }, + "UserSettingsArn": { + "type": "string" + } + }, + "type": "object" + }, + "Type": { + "enum": [ + "AWS::WorkSpacesWeb::Portal" + ], + "type": "string" + }, + "UpdateReplacePolicy": { + "enum": [ + "Delete", + "Retain", + "Snapshot" + ], + "type": "string" + } + }, + "required": [ + "Type" + ], + "type": "object" + }, + "AWS::WorkSpacesWeb::TrustStore": { + "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": { + "CertificateList": { + "items": { + "type": "string" + }, + "type": "array" + }, + "Tags": { + "items": { + "$ref": "#/definitions/Tag" + }, + "type": "array" + } + }, + "required": [ + "CertificateList" + ], + "type": "object" + }, + "Type": { + "enum": [ + "AWS::WorkSpacesWeb::TrustStore" + ], + "type": "string" + }, + "UpdateReplacePolicy": { + "enum": [ + "Delete", + "Retain", + "Snapshot" + ], + "type": "string" + } + }, + "required": [ + "Type", + "Properties" + ], + "type": "object" + }, + "AWS::WorkSpacesWeb::UserAccessLoggingSettings": { + "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": { + "KinesisStreamArn": { + "type": "string" + }, + "Tags": { + "items": { + "$ref": "#/definitions/Tag" + }, + "type": "array" + } + }, + "required": [ + "KinesisStreamArn" + ], + "type": "object" + }, + "Type": { + "enum": [ + "AWS::WorkSpacesWeb::UserAccessLoggingSettings" + ], + "type": "string" + }, + "UpdateReplacePolicy": { + "enum": [ + "Delete", + "Retain", + "Snapshot" + ], + "type": "string" + } + }, + "required": [ + "Type", + "Properties" + ], + "type": "object" + }, + "AWS::WorkSpacesWeb::UserSettings": { + "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": { + "AdditionalEncryptionContext": { + "additionalProperties": true, + "patternProperties": { + "^[a-zA-Z0-9]+$": { + "type": "string" + } + }, + "type": "object" + }, + "CookieSynchronizationConfiguration": { + "$ref": "#/definitions/AWS::WorkSpacesWeb::UserSettings.CookieSynchronizationConfiguration" }, - "BrowserSettingsArn": { + "CopyAllowed": { "type": "string" }, "CustomerManagedKey": { "type": "string" }, - "DisplayName": { - "type": "string" - }, - "IpAccessSettingsArn": { - "type": "string" + "DisconnectTimeoutInMinutes": { + "type": "number" }, - "NetworkSettingsArn": { + "DownloadAllowed": { "type": "string" }, - "Tags": { - "items": { - "$ref": "#/definitions/Tag" - }, - "type": "array" - }, - "TrustStoreArn": { - "type": "string" + "IdleDisconnectTimeoutInMinutes": { + "type": "number" }, - "UserAccessLoggingSettingsArn": { + "PasteAllowed": { "type": "string" }, - "UserSettingsArn": { - "type": "string" - } - }, - "type": "object" - }, - "Type": { - "enum": [ - "AWS::WorkSpacesWeb::Portal" - ], - "type": "string" - }, - "UpdateReplacePolicy": { - "enum": [ - "Delete", - "Retain", - "Snapshot" - ], - "type": "string" - } - }, - "required": [ - "Type" - ], - "type": "object" - }, - "AWS::WorkSpacesWeb::TrustStore": { - "additionalProperties": false, - "properties": { - "Condition": { - "type": "string" - }, - "DeletionPolicy": { - "enum": [ - "Delete", - "Retain", - "Snapshot" - ], - "type": "string" - }, - "DependsOn": { - "anyOf": [ - { - "pattern": "^[a-zA-Z0-9]+$", + "PrintAllowed": { "type": "string" }, - { - "items": { - "pattern": "^[a-zA-Z0-9]+$", - "type": "string" - }, - "type": "array" - } - ] - }, - "Metadata": { - "type": "object" - }, - "Properties": { - "additionalProperties": false, - "properties": { - "CertificateList": { - "items": { - "type": "string" - }, - "type": "array" - }, "Tags": { "items": { "$ref": "#/definitions/Tag" }, "type": "array" + }, + "UploadAllowed": { + "type": "string" } }, "required": [ - "CertificateList" + "CopyAllowed", + "DownloadAllowed", + "PasteAllowed", + "PrintAllowed", + "UploadAllowed" ], "type": "object" }, "Type": { "enum": [ - "AWS::WorkSpacesWeb::TrustStore" + "AWS::WorkSpacesWeb::UserSettings" ], "type": "string" }, @@ -198676,167 +199454,42 @@ ], "type": "object" }, - "AWS::WorkSpacesWeb::UserAccessLoggingSettings": { + "AWS::WorkSpacesWeb::UserSettings.CookieSpecification": { "additionalProperties": false, "properties": { - "Condition": { - "type": "string" - }, - "DeletionPolicy": { - "enum": [ - "Delete", - "Retain", - "Snapshot" - ], + "Domain": { "type": "string" }, - "DependsOn": { - "anyOf": [ - { - "pattern": "^[a-zA-Z0-9]+$", - "type": "string" - }, - { - "items": { - "pattern": "^[a-zA-Z0-9]+$", - "type": "string" - }, - "type": "array" - } - ] - }, - "Metadata": { - "type": "object" - }, - "Properties": { - "additionalProperties": false, - "properties": { - "KinesisStreamArn": { - "type": "string" - }, - "Tags": { - "items": { - "$ref": "#/definitions/Tag" - }, - "type": "array" - } - }, - "required": [ - "KinesisStreamArn" - ], - "type": "object" - }, - "Type": { - "enum": [ - "AWS::WorkSpacesWeb::UserAccessLoggingSettings" - ], + "Name": { "type": "string" }, - "UpdateReplacePolicy": { - "enum": [ - "Delete", - "Retain", - "Snapshot" - ], + "Path": { "type": "string" } }, "required": [ - "Type", - "Properties" + "Domain" ], "type": "object" }, - "AWS::WorkSpacesWeb::UserSettings": { + "AWS::WorkSpacesWeb::UserSettings.CookieSynchronizationConfiguration": { "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": { - "CopyAllowed": { - "type": "string" - }, - "DisconnectTimeoutInMinutes": { - "type": "number" - }, - "DownloadAllowed": { - "type": "string" - }, - "IdleDisconnectTimeoutInMinutes": { - "type": "number" - }, - "PasteAllowed": { - "type": "string" - }, - "PrintAllowed": { - "type": "string" - }, - "Tags": { - "items": { - "$ref": "#/definitions/Tag" - }, - "type": "array" - }, - "UploadAllowed": { - "type": "string" - } + "Allowlist": { + "items": { + "$ref": "#/definitions/AWS::WorkSpacesWeb::UserSettings.CookieSpecification" }, - "required": [ - "CopyAllowed", - "DownloadAllowed", - "PasteAllowed", - "PrintAllowed", - "UploadAllowed" - ], - "type": "object" - }, - "Type": { - "enum": [ - "AWS::WorkSpacesWeb::UserSettings" - ], - "type": "string" + "type": "array" }, - "UpdateReplacePolicy": { - "enum": [ - "Delete", - "Retain", - "Snapshot" - ], - "type": "string" + "Blocklist": { + "items": { + "$ref": "#/definitions/AWS::WorkSpacesWeb::UserSettings.CookieSpecification" + }, + "type": "array" } }, "required": [ - "Type", - "Properties" + "Allowlist" ], "type": "object" }, @@ -201702,6 +202355,21 @@ { "$ref": "#/definitions/AWS::MediaPackage::PackagingGroup" }, + { + "$ref": "#/definitions/AWS::MediaPackageV2::Channel" + }, + { + "$ref": "#/definitions/AWS::MediaPackageV2::ChannelGroup" + }, + { + "$ref": "#/definitions/AWS::MediaPackageV2::ChannelPolicy" + }, + { + "$ref": "#/definitions/AWS::MediaPackageV2::OriginEndpoint" + }, + { + "$ref": "#/definitions/AWS::MediaPackageV2::OriginEndpointPolicy" + }, { "$ref": "#/definitions/AWS::MediaStore::Container" }, diff --git a/schema/cloudformation.go b/schema/cloudformation.go index 2f8a91f6cc..eafe6c1aa4 100644 --- a/schema/cloudformation.go +++ b/schema/cloudformation.go @@ -39411,6 +39411,9 @@ var CloudformationSchema = `{ "ObjectTypeName": { "type": "string" }, + "SourceLastUpdatedTimestampFormat": { + "type": "string" + }, "Tags": { "items": { "$ref": "#/definitions/Tag" @@ -51403,6 +51406,9 @@ var CloudformationSchema = `{ "NetworkInterfaceId": { "type": "string" }, + "PrimaryIpv6": { + "type": "boolean" + }, "PrivateIpAddress": { "type": "string" }, @@ -118167,6 +118173,590 @@ var CloudformationSchema = `{ }, "type": "object" }, + "AWS::MediaPackageV2::Channel": { + "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": { + "ChannelGroupName": { + "type": "string" + }, + "ChannelName": { + "type": "string" + }, + "Description": { + "type": "string" + }, + "Tags": { + "items": { + "$ref": "#/definitions/Tag" + }, + "type": "array" + } + }, + "type": "object" + }, + "Type": { + "enum": [ + "AWS::MediaPackageV2::Channel" + ], + "type": "string" + }, + "UpdateReplacePolicy": { + "enum": [ + "Delete", + "Retain", + "Snapshot" + ], + "type": "string" + } + }, + "required": [ + "Type" + ], + "type": "object" + }, + "AWS::MediaPackageV2::Channel.IngestEndpoint": { + "additionalProperties": false, + "properties": { + "Id": { + "type": "string" + }, + "Url": { + "type": "string" + } + }, + "type": "object" + }, + "AWS::MediaPackageV2::ChannelGroup": { + "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": { + "ChannelGroupName": { + "type": "string" + }, + "Description": { + "type": "string" + }, + "Tags": { + "items": { + "$ref": "#/definitions/Tag" + }, + "type": "array" + } + }, + "type": "object" + }, + "Type": { + "enum": [ + "AWS::MediaPackageV2::ChannelGroup" + ], + "type": "string" + }, + "UpdateReplacePolicy": { + "enum": [ + "Delete", + "Retain", + "Snapshot" + ], + "type": "string" + } + }, + "required": [ + "Type" + ], + "type": "object" + }, + "AWS::MediaPackageV2::ChannelPolicy": { + "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": { + "ChannelGroupName": { + "type": "string" + }, + "ChannelName": { + "type": "string" + }, + "Policy": { + "type": "object" + } + }, + "required": [ + "Policy" + ], + "type": "object" + }, + "Type": { + "enum": [ + "AWS::MediaPackageV2::ChannelPolicy" + ], + "type": "string" + }, + "UpdateReplacePolicy": { + "enum": [ + "Delete", + "Retain", + "Snapshot" + ], + "type": "string" + } + }, + "required": [ + "Type", + "Properties" + ], + "type": "object" + }, + "AWS::MediaPackageV2::OriginEndpoint": { + "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": { + "ChannelGroupName": { + "type": "string" + }, + "ChannelName": { + "type": "string" + }, + "ContainerType": { + "type": "string" + }, + "Description": { + "type": "string" + }, + "HlsManifests": { + "items": { + "$ref": "#/definitions/AWS::MediaPackageV2::OriginEndpoint.HlsManifestConfiguration" + }, + "type": "array" + }, + "LowLatencyHlsManifests": { + "items": { + "$ref": "#/definitions/AWS::MediaPackageV2::OriginEndpoint.LowLatencyHlsManifestConfiguration" + }, + "type": "array" + }, + "OriginEndpointName": { + "type": "string" + }, + "Segment": { + "$ref": "#/definitions/AWS::MediaPackageV2::OriginEndpoint.Segment" + }, + "StartoverWindowSeconds": { + "type": "number" + }, + "Tags": { + "items": { + "$ref": "#/definitions/Tag" + }, + "type": "array" + } + }, + "required": [ + "ContainerType" + ], + "type": "object" + }, + "Type": { + "enum": [ + "AWS::MediaPackageV2::OriginEndpoint" + ], + "type": "string" + }, + "UpdateReplacePolicy": { + "enum": [ + "Delete", + "Retain", + "Snapshot" + ], + "type": "string" + } + }, + "required": [ + "Type", + "Properties" + ], + "type": "object" + }, + "AWS::MediaPackageV2::OriginEndpoint.Encryption": { + "additionalProperties": false, + "properties": { + "ConstantInitializationVector": { + "type": "string" + }, + "EncryptionMethod": { + "$ref": "#/definitions/AWS::MediaPackageV2::OriginEndpoint.EncryptionMethod" + }, + "KeyRotationIntervalSeconds": { + "type": "number" + }, + "SpekeKeyProvider": { + "$ref": "#/definitions/AWS::MediaPackageV2::OriginEndpoint.SpekeKeyProvider" + } + }, + "required": [ + "EncryptionMethod", + "SpekeKeyProvider" + ], + "type": "object" + }, + "AWS::MediaPackageV2::OriginEndpoint.EncryptionContractConfiguration": { + "additionalProperties": false, + "properties": { + "PresetSpeke20Audio": { + "type": "string" + }, + "PresetSpeke20Video": { + "type": "string" + } + }, + "required": [ + "PresetSpeke20Audio", + "PresetSpeke20Video" + ], + "type": "object" + }, + "AWS::MediaPackageV2::OriginEndpoint.EncryptionMethod": { + "additionalProperties": false, + "properties": { + "CmafEncryptionMethod": { + "type": "string" + }, + "TsEncryptionMethod": { + "type": "string" + } + }, + "type": "object" + }, + "AWS::MediaPackageV2::OriginEndpoint.HlsManifestConfiguration": { + "additionalProperties": false, + "properties": { + "ChildManifestName": { + "type": "string" + }, + "ManifestName": { + "type": "string" + }, + "ManifestWindowSeconds": { + "type": "number" + }, + "ProgramDateTimeIntervalSeconds": { + "type": "number" + }, + "ScteHls": { + "$ref": "#/definitions/AWS::MediaPackageV2::OriginEndpoint.ScteHls" + }, + "Url": { + "type": "string" + } + }, + "required": [ + "ManifestName" + ], + "type": "object" + }, + "AWS::MediaPackageV2::OriginEndpoint.LowLatencyHlsManifestConfiguration": { + "additionalProperties": false, + "properties": { + "ChildManifestName": { + "type": "string" + }, + "ManifestName": { + "type": "string" + }, + "ManifestWindowSeconds": { + "type": "number" + }, + "ProgramDateTimeIntervalSeconds": { + "type": "number" + }, + "ScteHls": { + "$ref": "#/definitions/AWS::MediaPackageV2::OriginEndpoint.ScteHls" + }, + "Url": { + "type": "string" + } + }, + "required": [ + "ManifestName" + ], + "type": "object" + }, + "AWS::MediaPackageV2::OriginEndpoint.Scte": { + "additionalProperties": false, + "properties": { + "ScteFilter": { + "items": { + "type": "string" + }, + "type": "array" + } + }, + "type": "object" + }, + "AWS::MediaPackageV2::OriginEndpoint.ScteHls": { + "additionalProperties": false, + "properties": { + "AdMarkerHls": { + "type": "string" + } + }, + "type": "object" + }, + "AWS::MediaPackageV2::OriginEndpoint.Segment": { + "additionalProperties": false, + "properties": { + "Encryption": { + "$ref": "#/definitions/AWS::MediaPackageV2::OriginEndpoint.Encryption" + }, + "IncludeIframeOnlyStreams": { + "type": "boolean" + }, + "Scte": { + "$ref": "#/definitions/AWS::MediaPackageV2::OriginEndpoint.Scte" + }, + "SegmentDurationSeconds": { + "type": "number" + }, + "SegmentName": { + "type": "string" + }, + "TsIncludeDvbSubtitles": { + "type": "boolean" + }, + "TsUseAudioRenditionGroup": { + "type": "boolean" + } + }, + "type": "object" + }, + "AWS::MediaPackageV2::OriginEndpoint.SpekeKeyProvider": { + "additionalProperties": false, + "properties": { + "DrmSystems": { + "items": { + "type": "string" + }, + "type": "array" + }, + "EncryptionContractConfiguration": { + "$ref": "#/definitions/AWS::MediaPackageV2::OriginEndpoint.EncryptionContractConfiguration" + }, + "ResourceId": { + "type": "string" + }, + "RoleArn": { + "type": "string" + }, + "Url": { + "type": "string" + } + }, + "required": [ + "DrmSystems", + "EncryptionContractConfiguration", + "ResourceId", + "RoleArn", + "Url" + ], + "type": "object" + }, + "AWS::MediaPackageV2::OriginEndpointPolicy": { + "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": { + "ChannelGroupName": { + "type": "string" + }, + "ChannelName": { + "type": "string" + }, + "OriginEndpointName": { + "type": "string" + }, + "Policy": { + "type": "object" + } + }, + "required": [ + "Policy" + ], + "type": "object" + }, + "Type": { + "enum": [ + "AWS::MediaPackageV2::OriginEndpointPolicy" + ], + "type": "string" + }, + "UpdateReplacePolicy": { + "enum": [ + "Delete", + "Retain", + "Snapshot" + ], + "type": "string" + } + }, + "required": [ + "Type", + "Properties" + ], + "type": "object" + }, "AWS::MediaStore::Container": { "additionalProperties": false, "properties": { @@ -162789,9 +163379,24 @@ var CloudformationSchema = `{ "Domain": { "type": "string" }, + "DomainAuthSecretArn": { + "type": "string" + }, + "DomainDnsIps": { + "items": { + "type": "string" + }, + "type": "array" + }, + "DomainFqdn": { + "type": "string" + }, "DomainIAMRoleName": { "type": "string" }, + "DomainOu": { + "type": "string" + }, "EnableCloudwatchLogsExports": { "items": { "type": "string" @@ -175729,12 +176334,6 @@ var CloudformationSchema = `{ "type": "string" }, "Tags": { - "additionalProperties": true, - "patternProperties": { - "^[a-zA-Z0-9]+$": { - "type": "string" - } - }, "type": "object" }, "Tier": { @@ -198490,118 +199089,297 @@ var CloudformationSchema = `{ }, "type": "object" }, - "AuthenticationType": { - "type": "string" + "AuthenticationType": { + "type": "string" + }, + "BrowserSettingsArn": { + "type": "string" + }, + "CustomerManagedKey": { + "type": "string" + }, + "DisplayName": { + "type": "string" + }, + "IpAccessSettingsArn": { + "type": "string" + }, + "NetworkSettingsArn": { + "type": "string" + }, + "Tags": { + "items": { + "$ref": "#/definitions/Tag" + }, + "type": "array" + }, + "TrustStoreArn": { + "type": "string" + }, + "UserAccessLoggingSettingsArn": { + "type": "string" + }, + "UserSettingsArn": { + "type": "string" + } + }, + "type": "object" + }, + "Type": { + "enum": [ + "AWS::WorkSpacesWeb::Portal" + ], + "type": "string" + }, + "UpdateReplacePolicy": { + "enum": [ + "Delete", + "Retain", + "Snapshot" + ], + "type": "string" + } + }, + "required": [ + "Type" + ], + "type": "object" + }, + "AWS::WorkSpacesWeb::TrustStore": { + "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": { + "CertificateList": { + "items": { + "type": "string" + }, + "type": "array" + }, + "Tags": { + "items": { + "$ref": "#/definitions/Tag" + }, + "type": "array" + } + }, + "required": [ + "CertificateList" + ], + "type": "object" + }, + "Type": { + "enum": [ + "AWS::WorkSpacesWeb::TrustStore" + ], + "type": "string" + }, + "UpdateReplacePolicy": { + "enum": [ + "Delete", + "Retain", + "Snapshot" + ], + "type": "string" + } + }, + "required": [ + "Type", + "Properties" + ], + "type": "object" + }, + "AWS::WorkSpacesWeb::UserAccessLoggingSettings": { + "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": { + "KinesisStreamArn": { + "type": "string" + }, + "Tags": { + "items": { + "$ref": "#/definitions/Tag" + }, + "type": "array" + } + }, + "required": [ + "KinesisStreamArn" + ], + "type": "object" + }, + "Type": { + "enum": [ + "AWS::WorkSpacesWeb::UserAccessLoggingSettings" + ], + "type": "string" + }, + "UpdateReplacePolicy": { + "enum": [ + "Delete", + "Retain", + "Snapshot" + ], + "type": "string" + } + }, + "required": [ + "Type", + "Properties" + ], + "type": "object" + }, + "AWS::WorkSpacesWeb::UserSettings": { + "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": { + "AdditionalEncryptionContext": { + "additionalProperties": true, + "patternProperties": { + "^[a-zA-Z0-9]+$": { + "type": "string" + } + }, + "type": "object" + }, + "CookieSynchronizationConfiguration": { + "$ref": "#/definitions/AWS::WorkSpacesWeb::UserSettings.CookieSynchronizationConfiguration" }, - "BrowserSettingsArn": { + "CopyAllowed": { "type": "string" }, "CustomerManagedKey": { "type": "string" }, - "DisplayName": { - "type": "string" - }, - "IpAccessSettingsArn": { - "type": "string" + "DisconnectTimeoutInMinutes": { + "type": "number" }, - "NetworkSettingsArn": { + "DownloadAllowed": { "type": "string" }, - "Tags": { - "items": { - "$ref": "#/definitions/Tag" - }, - "type": "array" - }, - "TrustStoreArn": { - "type": "string" + "IdleDisconnectTimeoutInMinutes": { + "type": "number" }, - "UserAccessLoggingSettingsArn": { + "PasteAllowed": { "type": "string" }, - "UserSettingsArn": { - "type": "string" - } - }, - "type": "object" - }, - "Type": { - "enum": [ - "AWS::WorkSpacesWeb::Portal" - ], - "type": "string" - }, - "UpdateReplacePolicy": { - "enum": [ - "Delete", - "Retain", - "Snapshot" - ], - "type": "string" - } - }, - "required": [ - "Type" - ], - "type": "object" - }, - "AWS::WorkSpacesWeb::TrustStore": { - "additionalProperties": false, - "properties": { - "Condition": { - "type": "string" - }, - "DeletionPolicy": { - "enum": [ - "Delete", - "Retain", - "Snapshot" - ], - "type": "string" - }, - "DependsOn": { - "anyOf": [ - { - "pattern": "^[a-zA-Z0-9]+$", + "PrintAllowed": { "type": "string" }, - { - "items": { - "pattern": "^[a-zA-Z0-9]+$", - "type": "string" - }, - "type": "array" - } - ] - }, - "Metadata": { - "type": "object" - }, - "Properties": { - "additionalProperties": false, - "properties": { - "CertificateList": { - "items": { - "type": "string" - }, - "type": "array" - }, "Tags": { "items": { "$ref": "#/definitions/Tag" }, "type": "array" + }, + "UploadAllowed": { + "type": "string" } }, "required": [ - "CertificateList" + "CopyAllowed", + "DownloadAllowed", + "PasteAllowed", + "PrintAllowed", + "UploadAllowed" ], "type": "object" }, "Type": { "enum": [ - "AWS::WorkSpacesWeb::TrustStore" + "AWS::WorkSpacesWeb::UserSettings" ], "type": "string" }, @@ -198620,167 +199398,42 @@ var CloudformationSchema = `{ ], "type": "object" }, - "AWS::WorkSpacesWeb::UserAccessLoggingSettings": { + "AWS::WorkSpacesWeb::UserSettings.CookieSpecification": { "additionalProperties": false, "properties": { - "Condition": { - "type": "string" - }, - "DeletionPolicy": { - "enum": [ - "Delete", - "Retain", - "Snapshot" - ], + "Domain": { "type": "string" }, - "DependsOn": { - "anyOf": [ - { - "pattern": "^[a-zA-Z0-9]+$", - "type": "string" - }, - { - "items": { - "pattern": "^[a-zA-Z0-9]+$", - "type": "string" - }, - "type": "array" - } - ] - }, - "Metadata": { - "type": "object" - }, - "Properties": { - "additionalProperties": false, - "properties": { - "KinesisStreamArn": { - "type": "string" - }, - "Tags": { - "items": { - "$ref": "#/definitions/Tag" - }, - "type": "array" - } - }, - "required": [ - "KinesisStreamArn" - ], - "type": "object" - }, - "Type": { - "enum": [ - "AWS::WorkSpacesWeb::UserAccessLoggingSettings" - ], + "Name": { "type": "string" }, - "UpdateReplacePolicy": { - "enum": [ - "Delete", - "Retain", - "Snapshot" - ], + "Path": { "type": "string" } }, "required": [ - "Type", - "Properties" + "Domain" ], "type": "object" }, - "AWS::WorkSpacesWeb::UserSettings": { + "AWS::WorkSpacesWeb::UserSettings.CookieSynchronizationConfiguration": { "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": { - "CopyAllowed": { - "type": "string" - }, - "DisconnectTimeoutInMinutes": { - "type": "number" - }, - "DownloadAllowed": { - "type": "string" - }, - "IdleDisconnectTimeoutInMinutes": { - "type": "number" - }, - "PasteAllowed": { - "type": "string" - }, - "PrintAllowed": { - "type": "string" - }, - "Tags": { - "items": { - "$ref": "#/definitions/Tag" - }, - "type": "array" - }, - "UploadAllowed": { - "type": "string" - } + "Allowlist": { + "items": { + "$ref": "#/definitions/AWS::WorkSpacesWeb::UserSettings.CookieSpecification" }, - "required": [ - "CopyAllowed", - "DownloadAllowed", - "PasteAllowed", - "PrintAllowed", - "UploadAllowed" - ], - "type": "object" - }, - "Type": { - "enum": [ - "AWS::WorkSpacesWeb::UserSettings" - ], - "type": "string" + "type": "array" }, - "UpdateReplacePolicy": { - "enum": [ - "Delete", - "Retain", - "Snapshot" - ], - "type": "string" + "Blocklist": { + "items": { + "$ref": "#/definitions/AWS::WorkSpacesWeb::UserSettings.CookieSpecification" + }, + "type": "array" } }, "required": [ - "Type", - "Properties" + "Allowlist" ], "type": "object" }, @@ -201643,6 +202296,21 @@ var CloudformationSchema = `{ { "$ref": "#/definitions/AWS::MediaPackage::PackagingGroup" }, + { + "$ref": "#/definitions/AWS::MediaPackageV2::Channel" + }, + { + "$ref": "#/definitions/AWS::MediaPackageV2::ChannelGroup" + }, + { + "$ref": "#/definitions/AWS::MediaPackageV2::ChannelPolicy" + }, + { + "$ref": "#/definitions/AWS::MediaPackageV2::OriginEndpoint" + }, + { + "$ref": "#/definitions/AWS::MediaPackageV2::OriginEndpointPolicy" + }, { "$ref": "#/definitions/AWS::MediaStore::Container" }, diff --git a/schema/cloudformation.schema.json b/schema/cloudformation.schema.json index 2bd3cd8ef4..00021e0342 100644 --- a/schema/cloudformation.schema.json +++ b/schema/cloudformation.schema.json @@ -39406,6 +39406,9 @@ "ObjectTypeName": { "type": "string" }, + "SourceLastUpdatedTimestampFormat": { + "type": "string" + }, "Tags": { "items": { "$ref": "#/definitions/Tag" @@ -51398,6 +51401,9 @@ "NetworkInterfaceId": { "type": "string" }, + "PrimaryIpv6": { + "type": "boolean" + }, "PrivateIpAddress": { "type": "string" }, @@ -118162,6 +118168,590 @@ }, "type": "object" }, + "AWS::MediaPackageV2::Channel": { + "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": { + "ChannelGroupName": { + "type": "string" + }, + "ChannelName": { + "type": "string" + }, + "Description": { + "type": "string" + }, + "Tags": { + "items": { + "$ref": "#/definitions/Tag" + }, + "type": "array" + } + }, + "type": "object" + }, + "Type": { + "enum": [ + "AWS::MediaPackageV2::Channel" + ], + "type": "string" + }, + "UpdateReplacePolicy": { + "enum": [ + "Delete", + "Retain", + "Snapshot" + ], + "type": "string" + } + }, + "required": [ + "Type" + ], + "type": "object" + }, + "AWS::MediaPackageV2::Channel.IngestEndpoint": { + "additionalProperties": false, + "properties": { + "Id": { + "type": "string" + }, + "Url": { + "type": "string" + } + }, + "type": "object" + }, + "AWS::MediaPackageV2::ChannelGroup": { + "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": { + "ChannelGroupName": { + "type": "string" + }, + "Description": { + "type": "string" + }, + "Tags": { + "items": { + "$ref": "#/definitions/Tag" + }, + "type": "array" + } + }, + "type": "object" + }, + "Type": { + "enum": [ + "AWS::MediaPackageV2::ChannelGroup" + ], + "type": "string" + }, + "UpdateReplacePolicy": { + "enum": [ + "Delete", + "Retain", + "Snapshot" + ], + "type": "string" + } + }, + "required": [ + "Type" + ], + "type": "object" + }, + "AWS::MediaPackageV2::ChannelPolicy": { + "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": { + "ChannelGroupName": { + "type": "string" + }, + "ChannelName": { + "type": "string" + }, + "Policy": { + "type": "object" + } + }, + "required": [ + "Policy" + ], + "type": "object" + }, + "Type": { + "enum": [ + "AWS::MediaPackageV2::ChannelPolicy" + ], + "type": "string" + }, + "UpdateReplacePolicy": { + "enum": [ + "Delete", + "Retain", + "Snapshot" + ], + "type": "string" + } + }, + "required": [ + "Type", + "Properties" + ], + "type": "object" + }, + "AWS::MediaPackageV2::OriginEndpoint": { + "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": { + "ChannelGroupName": { + "type": "string" + }, + "ChannelName": { + "type": "string" + }, + "ContainerType": { + "type": "string" + }, + "Description": { + "type": "string" + }, + "HlsManifests": { + "items": { + "$ref": "#/definitions/AWS::MediaPackageV2::OriginEndpoint.HlsManifestConfiguration" + }, + "type": "array" + }, + "LowLatencyHlsManifests": { + "items": { + "$ref": "#/definitions/AWS::MediaPackageV2::OriginEndpoint.LowLatencyHlsManifestConfiguration" + }, + "type": "array" + }, + "OriginEndpointName": { + "type": "string" + }, + "Segment": { + "$ref": "#/definitions/AWS::MediaPackageV2::OriginEndpoint.Segment" + }, + "StartoverWindowSeconds": { + "type": "number" + }, + "Tags": { + "items": { + "$ref": "#/definitions/Tag" + }, + "type": "array" + } + }, + "required": [ + "ContainerType" + ], + "type": "object" + }, + "Type": { + "enum": [ + "AWS::MediaPackageV2::OriginEndpoint" + ], + "type": "string" + }, + "UpdateReplacePolicy": { + "enum": [ + "Delete", + "Retain", + "Snapshot" + ], + "type": "string" + } + }, + "required": [ + "Type", + "Properties" + ], + "type": "object" + }, + "AWS::MediaPackageV2::OriginEndpoint.Encryption": { + "additionalProperties": false, + "properties": { + "ConstantInitializationVector": { + "type": "string" + }, + "EncryptionMethod": { + "$ref": "#/definitions/AWS::MediaPackageV2::OriginEndpoint.EncryptionMethod" + }, + "KeyRotationIntervalSeconds": { + "type": "number" + }, + "SpekeKeyProvider": { + "$ref": "#/definitions/AWS::MediaPackageV2::OriginEndpoint.SpekeKeyProvider" + } + }, + "required": [ + "EncryptionMethod", + "SpekeKeyProvider" + ], + "type": "object" + }, + "AWS::MediaPackageV2::OriginEndpoint.EncryptionContractConfiguration": { + "additionalProperties": false, + "properties": { + "PresetSpeke20Audio": { + "type": "string" + }, + "PresetSpeke20Video": { + "type": "string" + } + }, + "required": [ + "PresetSpeke20Audio", + "PresetSpeke20Video" + ], + "type": "object" + }, + "AWS::MediaPackageV2::OriginEndpoint.EncryptionMethod": { + "additionalProperties": false, + "properties": { + "CmafEncryptionMethod": { + "type": "string" + }, + "TsEncryptionMethod": { + "type": "string" + } + }, + "type": "object" + }, + "AWS::MediaPackageV2::OriginEndpoint.HlsManifestConfiguration": { + "additionalProperties": false, + "properties": { + "ChildManifestName": { + "type": "string" + }, + "ManifestName": { + "type": "string" + }, + "ManifestWindowSeconds": { + "type": "number" + }, + "ProgramDateTimeIntervalSeconds": { + "type": "number" + }, + "ScteHls": { + "$ref": "#/definitions/AWS::MediaPackageV2::OriginEndpoint.ScteHls" + }, + "Url": { + "type": "string" + } + }, + "required": [ + "ManifestName" + ], + "type": "object" + }, + "AWS::MediaPackageV2::OriginEndpoint.LowLatencyHlsManifestConfiguration": { + "additionalProperties": false, + "properties": { + "ChildManifestName": { + "type": "string" + }, + "ManifestName": { + "type": "string" + }, + "ManifestWindowSeconds": { + "type": "number" + }, + "ProgramDateTimeIntervalSeconds": { + "type": "number" + }, + "ScteHls": { + "$ref": "#/definitions/AWS::MediaPackageV2::OriginEndpoint.ScteHls" + }, + "Url": { + "type": "string" + } + }, + "required": [ + "ManifestName" + ], + "type": "object" + }, + "AWS::MediaPackageV2::OriginEndpoint.Scte": { + "additionalProperties": false, + "properties": { + "ScteFilter": { + "items": { + "type": "string" + }, + "type": "array" + } + }, + "type": "object" + }, + "AWS::MediaPackageV2::OriginEndpoint.ScteHls": { + "additionalProperties": false, + "properties": { + "AdMarkerHls": { + "type": "string" + } + }, + "type": "object" + }, + "AWS::MediaPackageV2::OriginEndpoint.Segment": { + "additionalProperties": false, + "properties": { + "Encryption": { + "$ref": "#/definitions/AWS::MediaPackageV2::OriginEndpoint.Encryption" + }, + "IncludeIframeOnlyStreams": { + "type": "boolean" + }, + "Scte": { + "$ref": "#/definitions/AWS::MediaPackageV2::OriginEndpoint.Scte" + }, + "SegmentDurationSeconds": { + "type": "number" + }, + "SegmentName": { + "type": "string" + }, + "TsIncludeDvbSubtitles": { + "type": "boolean" + }, + "TsUseAudioRenditionGroup": { + "type": "boolean" + } + }, + "type": "object" + }, + "AWS::MediaPackageV2::OriginEndpoint.SpekeKeyProvider": { + "additionalProperties": false, + "properties": { + "DrmSystems": { + "items": { + "type": "string" + }, + "type": "array" + }, + "EncryptionContractConfiguration": { + "$ref": "#/definitions/AWS::MediaPackageV2::OriginEndpoint.EncryptionContractConfiguration" + }, + "ResourceId": { + "type": "string" + }, + "RoleArn": { + "type": "string" + }, + "Url": { + "type": "string" + } + }, + "required": [ + "DrmSystems", + "EncryptionContractConfiguration", + "ResourceId", + "RoleArn", + "Url" + ], + "type": "object" + }, + "AWS::MediaPackageV2::OriginEndpointPolicy": { + "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": { + "ChannelGroupName": { + "type": "string" + }, + "ChannelName": { + "type": "string" + }, + "OriginEndpointName": { + "type": "string" + }, + "Policy": { + "type": "object" + } + }, + "required": [ + "Policy" + ], + "type": "object" + }, + "Type": { + "enum": [ + "AWS::MediaPackageV2::OriginEndpointPolicy" + ], + "type": "string" + }, + "UpdateReplacePolicy": { + "enum": [ + "Delete", + "Retain", + "Snapshot" + ], + "type": "string" + } + }, + "required": [ + "Type", + "Properties" + ], + "type": "object" + }, "AWS::MediaStore::Container": { "additionalProperties": false, "properties": { @@ -162784,9 +163374,24 @@ "Domain": { "type": "string" }, + "DomainAuthSecretArn": { + "type": "string" + }, + "DomainDnsIps": { + "items": { + "type": "string" + }, + "type": "array" + }, + "DomainFqdn": { + "type": "string" + }, "DomainIAMRoleName": { "type": "string" }, + "DomainOu": { + "type": "string" + }, "EnableCloudwatchLogsExports": { "items": { "type": "string" @@ -175724,12 +176329,6 @@ "type": "string" }, "Tags": { - "additionalProperties": true, - "patternProperties": { - "^[a-zA-Z0-9]+$": { - "type": "string" - } - }, "type": "object" }, "Tier": { @@ -198485,118 +199084,297 @@ }, "type": "object" }, - "AuthenticationType": { - "type": "string" + "AuthenticationType": { + "type": "string" + }, + "BrowserSettingsArn": { + "type": "string" + }, + "CustomerManagedKey": { + "type": "string" + }, + "DisplayName": { + "type": "string" + }, + "IpAccessSettingsArn": { + "type": "string" + }, + "NetworkSettingsArn": { + "type": "string" + }, + "Tags": { + "items": { + "$ref": "#/definitions/Tag" + }, + "type": "array" + }, + "TrustStoreArn": { + "type": "string" + }, + "UserAccessLoggingSettingsArn": { + "type": "string" + }, + "UserSettingsArn": { + "type": "string" + } + }, + "type": "object" + }, + "Type": { + "enum": [ + "AWS::WorkSpacesWeb::Portal" + ], + "type": "string" + }, + "UpdateReplacePolicy": { + "enum": [ + "Delete", + "Retain", + "Snapshot" + ], + "type": "string" + } + }, + "required": [ + "Type" + ], + "type": "object" + }, + "AWS::WorkSpacesWeb::TrustStore": { + "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": { + "CertificateList": { + "items": { + "type": "string" + }, + "type": "array" + }, + "Tags": { + "items": { + "$ref": "#/definitions/Tag" + }, + "type": "array" + } + }, + "required": [ + "CertificateList" + ], + "type": "object" + }, + "Type": { + "enum": [ + "AWS::WorkSpacesWeb::TrustStore" + ], + "type": "string" + }, + "UpdateReplacePolicy": { + "enum": [ + "Delete", + "Retain", + "Snapshot" + ], + "type": "string" + } + }, + "required": [ + "Type", + "Properties" + ], + "type": "object" + }, + "AWS::WorkSpacesWeb::UserAccessLoggingSettings": { + "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": { + "KinesisStreamArn": { + "type": "string" + }, + "Tags": { + "items": { + "$ref": "#/definitions/Tag" + }, + "type": "array" + } + }, + "required": [ + "KinesisStreamArn" + ], + "type": "object" + }, + "Type": { + "enum": [ + "AWS::WorkSpacesWeb::UserAccessLoggingSettings" + ], + "type": "string" + }, + "UpdateReplacePolicy": { + "enum": [ + "Delete", + "Retain", + "Snapshot" + ], + "type": "string" + } + }, + "required": [ + "Type", + "Properties" + ], + "type": "object" + }, + "AWS::WorkSpacesWeb::UserSettings": { + "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": { + "AdditionalEncryptionContext": { + "additionalProperties": true, + "patternProperties": { + "^[a-zA-Z0-9]+$": { + "type": "string" + } + }, + "type": "object" + }, + "CookieSynchronizationConfiguration": { + "$ref": "#/definitions/AWS::WorkSpacesWeb::UserSettings.CookieSynchronizationConfiguration" }, - "BrowserSettingsArn": { + "CopyAllowed": { "type": "string" }, "CustomerManagedKey": { "type": "string" }, - "DisplayName": { - "type": "string" - }, - "IpAccessSettingsArn": { - "type": "string" + "DisconnectTimeoutInMinutes": { + "type": "number" }, - "NetworkSettingsArn": { + "DownloadAllowed": { "type": "string" }, - "Tags": { - "items": { - "$ref": "#/definitions/Tag" - }, - "type": "array" - }, - "TrustStoreArn": { - "type": "string" + "IdleDisconnectTimeoutInMinutes": { + "type": "number" }, - "UserAccessLoggingSettingsArn": { + "PasteAllowed": { "type": "string" }, - "UserSettingsArn": { - "type": "string" - } - }, - "type": "object" - }, - "Type": { - "enum": [ - "AWS::WorkSpacesWeb::Portal" - ], - "type": "string" - }, - "UpdateReplacePolicy": { - "enum": [ - "Delete", - "Retain", - "Snapshot" - ], - "type": "string" - } - }, - "required": [ - "Type" - ], - "type": "object" - }, - "AWS::WorkSpacesWeb::TrustStore": { - "additionalProperties": false, - "properties": { - "Condition": { - "type": "string" - }, - "DeletionPolicy": { - "enum": [ - "Delete", - "Retain", - "Snapshot" - ], - "type": "string" - }, - "DependsOn": { - "anyOf": [ - { - "pattern": "^[a-zA-Z0-9]+$", + "PrintAllowed": { "type": "string" }, - { - "items": { - "pattern": "^[a-zA-Z0-9]+$", - "type": "string" - }, - "type": "array" - } - ] - }, - "Metadata": { - "type": "object" - }, - "Properties": { - "additionalProperties": false, - "properties": { - "CertificateList": { - "items": { - "type": "string" - }, - "type": "array" - }, "Tags": { "items": { "$ref": "#/definitions/Tag" }, "type": "array" + }, + "UploadAllowed": { + "type": "string" } }, "required": [ - "CertificateList" + "CopyAllowed", + "DownloadAllowed", + "PasteAllowed", + "PrintAllowed", + "UploadAllowed" ], "type": "object" }, "Type": { "enum": [ - "AWS::WorkSpacesWeb::TrustStore" + "AWS::WorkSpacesWeb::UserSettings" ], "type": "string" }, @@ -198615,167 +199393,42 @@ ], "type": "object" }, - "AWS::WorkSpacesWeb::UserAccessLoggingSettings": { + "AWS::WorkSpacesWeb::UserSettings.CookieSpecification": { "additionalProperties": false, "properties": { - "Condition": { - "type": "string" - }, - "DeletionPolicy": { - "enum": [ - "Delete", - "Retain", - "Snapshot" - ], + "Domain": { "type": "string" }, - "DependsOn": { - "anyOf": [ - { - "pattern": "^[a-zA-Z0-9]+$", - "type": "string" - }, - { - "items": { - "pattern": "^[a-zA-Z0-9]+$", - "type": "string" - }, - "type": "array" - } - ] - }, - "Metadata": { - "type": "object" - }, - "Properties": { - "additionalProperties": false, - "properties": { - "KinesisStreamArn": { - "type": "string" - }, - "Tags": { - "items": { - "$ref": "#/definitions/Tag" - }, - "type": "array" - } - }, - "required": [ - "KinesisStreamArn" - ], - "type": "object" - }, - "Type": { - "enum": [ - "AWS::WorkSpacesWeb::UserAccessLoggingSettings" - ], + "Name": { "type": "string" }, - "UpdateReplacePolicy": { - "enum": [ - "Delete", - "Retain", - "Snapshot" - ], + "Path": { "type": "string" } }, "required": [ - "Type", - "Properties" + "Domain" ], "type": "object" }, - "AWS::WorkSpacesWeb::UserSettings": { + "AWS::WorkSpacesWeb::UserSettings.CookieSynchronizationConfiguration": { "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": { - "CopyAllowed": { - "type": "string" - }, - "DisconnectTimeoutInMinutes": { - "type": "number" - }, - "DownloadAllowed": { - "type": "string" - }, - "IdleDisconnectTimeoutInMinutes": { - "type": "number" - }, - "PasteAllowed": { - "type": "string" - }, - "PrintAllowed": { - "type": "string" - }, - "Tags": { - "items": { - "$ref": "#/definitions/Tag" - }, - "type": "array" - }, - "UploadAllowed": { - "type": "string" - } + "Allowlist": { + "items": { + "$ref": "#/definitions/AWS::WorkSpacesWeb::UserSettings.CookieSpecification" }, - "required": [ - "CopyAllowed", - "DownloadAllowed", - "PasteAllowed", - "PrintAllowed", - "UploadAllowed" - ], - "type": "object" - }, - "Type": { - "enum": [ - "AWS::WorkSpacesWeb::UserSettings" - ], - "type": "string" + "type": "array" }, - "UpdateReplacePolicy": { - "enum": [ - "Delete", - "Retain", - "Snapshot" - ], - "type": "string" + "Blocklist": { + "items": { + "$ref": "#/definitions/AWS::WorkSpacesWeb::UserSettings.CookieSpecification" + }, + "type": "array" } }, "required": [ - "Type", - "Properties" + "Allowlist" ], "type": "object" }, @@ -201638,6 +202291,21 @@ { "$ref": "#/definitions/AWS::MediaPackage::PackagingGroup" }, + { + "$ref": "#/definitions/AWS::MediaPackageV2::Channel" + }, + { + "$ref": "#/definitions/AWS::MediaPackageV2::ChannelGroup" + }, + { + "$ref": "#/definitions/AWS::MediaPackageV2::ChannelPolicy" + }, + { + "$ref": "#/definitions/AWS::MediaPackageV2::OriginEndpoint" + }, + { + "$ref": "#/definitions/AWS::MediaPackageV2::OriginEndpointPolicy" + }, { "$ref": "#/definitions/AWS::MediaStore::Container" }, diff --git a/schema/sam.go b/schema/sam.go index 95b9887566..d16baf8ffd 100644 --- a/schema/sam.go +++ b/schema/sam.go @@ -39411,6 +39411,9 @@ var SamSchema = `{ "ObjectTypeName": { "type": "string" }, + "SourceLastUpdatedTimestampFormat": { + "type": "string" + }, "Tags": { "items": { "$ref": "#/definitions/Tag" @@ -51403,6 +51406,9 @@ var SamSchema = `{ "NetworkInterfaceId": { "type": "string" }, + "PrimaryIpv6": { + "type": "boolean" + }, "PrivateIpAddress": { "type": "string" }, @@ -118167,6 +118173,590 @@ var SamSchema = `{ }, "type": "object" }, + "AWS::MediaPackageV2::Channel": { + "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": { + "ChannelGroupName": { + "type": "string" + }, + "ChannelName": { + "type": "string" + }, + "Description": { + "type": "string" + }, + "Tags": { + "items": { + "$ref": "#/definitions/Tag" + }, + "type": "array" + } + }, + "type": "object" + }, + "Type": { + "enum": [ + "AWS::MediaPackageV2::Channel" + ], + "type": "string" + }, + "UpdateReplacePolicy": { + "enum": [ + "Delete", + "Retain", + "Snapshot" + ], + "type": "string" + } + }, + "required": [ + "Type" + ], + "type": "object" + }, + "AWS::MediaPackageV2::Channel.IngestEndpoint": { + "additionalProperties": false, + "properties": { + "Id": { + "type": "string" + }, + "Url": { + "type": "string" + } + }, + "type": "object" + }, + "AWS::MediaPackageV2::ChannelGroup": { + "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": { + "ChannelGroupName": { + "type": "string" + }, + "Description": { + "type": "string" + }, + "Tags": { + "items": { + "$ref": "#/definitions/Tag" + }, + "type": "array" + } + }, + "type": "object" + }, + "Type": { + "enum": [ + "AWS::MediaPackageV2::ChannelGroup" + ], + "type": "string" + }, + "UpdateReplacePolicy": { + "enum": [ + "Delete", + "Retain", + "Snapshot" + ], + "type": "string" + } + }, + "required": [ + "Type" + ], + "type": "object" + }, + "AWS::MediaPackageV2::ChannelPolicy": { + "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": { + "ChannelGroupName": { + "type": "string" + }, + "ChannelName": { + "type": "string" + }, + "Policy": { + "type": "object" + } + }, + "required": [ + "Policy" + ], + "type": "object" + }, + "Type": { + "enum": [ + "AWS::MediaPackageV2::ChannelPolicy" + ], + "type": "string" + }, + "UpdateReplacePolicy": { + "enum": [ + "Delete", + "Retain", + "Snapshot" + ], + "type": "string" + } + }, + "required": [ + "Type", + "Properties" + ], + "type": "object" + }, + "AWS::MediaPackageV2::OriginEndpoint": { + "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": { + "ChannelGroupName": { + "type": "string" + }, + "ChannelName": { + "type": "string" + }, + "ContainerType": { + "type": "string" + }, + "Description": { + "type": "string" + }, + "HlsManifests": { + "items": { + "$ref": "#/definitions/AWS::MediaPackageV2::OriginEndpoint.HlsManifestConfiguration" + }, + "type": "array" + }, + "LowLatencyHlsManifests": { + "items": { + "$ref": "#/definitions/AWS::MediaPackageV2::OriginEndpoint.LowLatencyHlsManifestConfiguration" + }, + "type": "array" + }, + "OriginEndpointName": { + "type": "string" + }, + "Segment": { + "$ref": "#/definitions/AWS::MediaPackageV2::OriginEndpoint.Segment" + }, + "StartoverWindowSeconds": { + "type": "number" + }, + "Tags": { + "items": { + "$ref": "#/definitions/Tag" + }, + "type": "array" + } + }, + "required": [ + "ContainerType" + ], + "type": "object" + }, + "Type": { + "enum": [ + "AWS::MediaPackageV2::OriginEndpoint" + ], + "type": "string" + }, + "UpdateReplacePolicy": { + "enum": [ + "Delete", + "Retain", + "Snapshot" + ], + "type": "string" + } + }, + "required": [ + "Type", + "Properties" + ], + "type": "object" + }, + "AWS::MediaPackageV2::OriginEndpoint.Encryption": { + "additionalProperties": false, + "properties": { + "ConstantInitializationVector": { + "type": "string" + }, + "EncryptionMethod": { + "$ref": "#/definitions/AWS::MediaPackageV2::OriginEndpoint.EncryptionMethod" + }, + "KeyRotationIntervalSeconds": { + "type": "number" + }, + "SpekeKeyProvider": { + "$ref": "#/definitions/AWS::MediaPackageV2::OriginEndpoint.SpekeKeyProvider" + } + }, + "required": [ + "EncryptionMethod", + "SpekeKeyProvider" + ], + "type": "object" + }, + "AWS::MediaPackageV2::OriginEndpoint.EncryptionContractConfiguration": { + "additionalProperties": false, + "properties": { + "PresetSpeke20Audio": { + "type": "string" + }, + "PresetSpeke20Video": { + "type": "string" + } + }, + "required": [ + "PresetSpeke20Audio", + "PresetSpeke20Video" + ], + "type": "object" + }, + "AWS::MediaPackageV2::OriginEndpoint.EncryptionMethod": { + "additionalProperties": false, + "properties": { + "CmafEncryptionMethod": { + "type": "string" + }, + "TsEncryptionMethod": { + "type": "string" + } + }, + "type": "object" + }, + "AWS::MediaPackageV2::OriginEndpoint.HlsManifestConfiguration": { + "additionalProperties": false, + "properties": { + "ChildManifestName": { + "type": "string" + }, + "ManifestName": { + "type": "string" + }, + "ManifestWindowSeconds": { + "type": "number" + }, + "ProgramDateTimeIntervalSeconds": { + "type": "number" + }, + "ScteHls": { + "$ref": "#/definitions/AWS::MediaPackageV2::OriginEndpoint.ScteHls" + }, + "Url": { + "type": "string" + } + }, + "required": [ + "ManifestName" + ], + "type": "object" + }, + "AWS::MediaPackageV2::OriginEndpoint.LowLatencyHlsManifestConfiguration": { + "additionalProperties": false, + "properties": { + "ChildManifestName": { + "type": "string" + }, + "ManifestName": { + "type": "string" + }, + "ManifestWindowSeconds": { + "type": "number" + }, + "ProgramDateTimeIntervalSeconds": { + "type": "number" + }, + "ScteHls": { + "$ref": "#/definitions/AWS::MediaPackageV2::OriginEndpoint.ScteHls" + }, + "Url": { + "type": "string" + } + }, + "required": [ + "ManifestName" + ], + "type": "object" + }, + "AWS::MediaPackageV2::OriginEndpoint.Scte": { + "additionalProperties": false, + "properties": { + "ScteFilter": { + "items": { + "type": "string" + }, + "type": "array" + } + }, + "type": "object" + }, + "AWS::MediaPackageV2::OriginEndpoint.ScteHls": { + "additionalProperties": false, + "properties": { + "AdMarkerHls": { + "type": "string" + } + }, + "type": "object" + }, + "AWS::MediaPackageV2::OriginEndpoint.Segment": { + "additionalProperties": false, + "properties": { + "Encryption": { + "$ref": "#/definitions/AWS::MediaPackageV2::OriginEndpoint.Encryption" + }, + "IncludeIframeOnlyStreams": { + "type": "boolean" + }, + "Scte": { + "$ref": "#/definitions/AWS::MediaPackageV2::OriginEndpoint.Scte" + }, + "SegmentDurationSeconds": { + "type": "number" + }, + "SegmentName": { + "type": "string" + }, + "TsIncludeDvbSubtitles": { + "type": "boolean" + }, + "TsUseAudioRenditionGroup": { + "type": "boolean" + } + }, + "type": "object" + }, + "AWS::MediaPackageV2::OriginEndpoint.SpekeKeyProvider": { + "additionalProperties": false, + "properties": { + "DrmSystems": { + "items": { + "type": "string" + }, + "type": "array" + }, + "EncryptionContractConfiguration": { + "$ref": "#/definitions/AWS::MediaPackageV2::OriginEndpoint.EncryptionContractConfiguration" + }, + "ResourceId": { + "type": "string" + }, + "RoleArn": { + "type": "string" + }, + "Url": { + "type": "string" + } + }, + "required": [ + "DrmSystems", + "EncryptionContractConfiguration", + "ResourceId", + "RoleArn", + "Url" + ], + "type": "object" + }, + "AWS::MediaPackageV2::OriginEndpointPolicy": { + "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": { + "ChannelGroupName": { + "type": "string" + }, + "ChannelName": { + "type": "string" + }, + "OriginEndpointName": { + "type": "string" + }, + "Policy": { + "type": "object" + } + }, + "required": [ + "Policy" + ], + "type": "object" + }, + "Type": { + "enum": [ + "AWS::MediaPackageV2::OriginEndpointPolicy" + ], + "type": "string" + }, + "UpdateReplacePolicy": { + "enum": [ + "Delete", + "Retain", + "Snapshot" + ], + "type": "string" + } + }, + "required": [ + "Type", + "Properties" + ], + "type": "object" + }, "AWS::MediaStore::Container": { "additionalProperties": false, "properties": { @@ -162789,9 +163379,24 @@ var SamSchema = `{ "Domain": { "type": "string" }, + "DomainAuthSecretArn": { + "type": "string" + }, + "DomainDnsIps": { + "items": { + "type": "string" + }, + "type": "array" + }, + "DomainFqdn": { + "type": "string" + }, "DomainIAMRoleName": { "type": "string" }, + "DomainOu": { + "type": "string" + }, "EnableCloudwatchLogsExports": { "items": { "type": "string" @@ -175729,12 +176334,6 @@ var SamSchema = `{ "type": "string" }, "Tags": { - "additionalProperties": true, - "patternProperties": { - "^[a-zA-Z0-9]+$": { - "type": "string" - } - }, "type": "object" }, "Tier": { @@ -201271,118 +201870,297 @@ var SamSchema = `{ }, "type": "object" }, - "AuthenticationType": { - "type": "string" + "AuthenticationType": { + "type": "string" + }, + "BrowserSettingsArn": { + "type": "string" + }, + "CustomerManagedKey": { + "type": "string" + }, + "DisplayName": { + "type": "string" + }, + "IpAccessSettingsArn": { + "type": "string" + }, + "NetworkSettingsArn": { + "type": "string" + }, + "Tags": { + "items": { + "$ref": "#/definitions/Tag" + }, + "type": "array" + }, + "TrustStoreArn": { + "type": "string" + }, + "UserAccessLoggingSettingsArn": { + "type": "string" + }, + "UserSettingsArn": { + "type": "string" + } + }, + "type": "object" + }, + "Type": { + "enum": [ + "AWS::WorkSpacesWeb::Portal" + ], + "type": "string" + }, + "UpdateReplacePolicy": { + "enum": [ + "Delete", + "Retain", + "Snapshot" + ], + "type": "string" + } + }, + "required": [ + "Type" + ], + "type": "object" + }, + "AWS::WorkSpacesWeb::TrustStore": { + "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": { + "CertificateList": { + "items": { + "type": "string" + }, + "type": "array" + }, + "Tags": { + "items": { + "$ref": "#/definitions/Tag" + }, + "type": "array" + } + }, + "required": [ + "CertificateList" + ], + "type": "object" + }, + "Type": { + "enum": [ + "AWS::WorkSpacesWeb::TrustStore" + ], + "type": "string" + }, + "UpdateReplacePolicy": { + "enum": [ + "Delete", + "Retain", + "Snapshot" + ], + "type": "string" + } + }, + "required": [ + "Type", + "Properties" + ], + "type": "object" + }, + "AWS::WorkSpacesWeb::UserAccessLoggingSettings": { + "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": { + "KinesisStreamArn": { + "type": "string" + }, + "Tags": { + "items": { + "$ref": "#/definitions/Tag" + }, + "type": "array" + } + }, + "required": [ + "KinesisStreamArn" + ], + "type": "object" + }, + "Type": { + "enum": [ + "AWS::WorkSpacesWeb::UserAccessLoggingSettings" + ], + "type": "string" + }, + "UpdateReplacePolicy": { + "enum": [ + "Delete", + "Retain", + "Snapshot" + ], + "type": "string" + } + }, + "required": [ + "Type", + "Properties" + ], + "type": "object" + }, + "AWS::WorkSpacesWeb::UserSettings": { + "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": { + "AdditionalEncryptionContext": { + "additionalProperties": true, + "patternProperties": { + "^[a-zA-Z0-9]+$": { + "type": "string" + } + }, + "type": "object" + }, + "CookieSynchronizationConfiguration": { + "$ref": "#/definitions/AWS::WorkSpacesWeb::UserSettings.CookieSynchronizationConfiguration" }, - "BrowserSettingsArn": { + "CopyAllowed": { "type": "string" }, "CustomerManagedKey": { "type": "string" }, - "DisplayName": { - "type": "string" - }, - "IpAccessSettingsArn": { - "type": "string" + "DisconnectTimeoutInMinutes": { + "type": "number" }, - "NetworkSettingsArn": { + "DownloadAllowed": { "type": "string" }, - "Tags": { - "items": { - "$ref": "#/definitions/Tag" - }, - "type": "array" - }, - "TrustStoreArn": { - "type": "string" + "IdleDisconnectTimeoutInMinutes": { + "type": "number" }, - "UserAccessLoggingSettingsArn": { + "PasteAllowed": { "type": "string" }, - "UserSettingsArn": { - "type": "string" - } - }, - "type": "object" - }, - "Type": { - "enum": [ - "AWS::WorkSpacesWeb::Portal" - ], - "type": "string" - }, - "UpdateReplacePolicy": { - "enum": [ - "Delete", - "Retain", - "Snapshot" - ], - "type": "string" - } - }, - "required": [ - "Type" - ], - "type": "object" - }, - "AWS::WorkSpacesWeb::TrustStore": { - "additionalProperties": false, - "properties": { - "Condition": { - "type": "string" - }, - "DeletionPolicy": { - "enum": [ - "Delete", - "Retain", - "Snapshot" - ], - "type": "string" - }, - "DependsOn": { - "anyOf": [ - { - "pattern": "^[a-zA-Z0-9]+$", + "PrintAllowed": { "type": "string" }, - { - "items": { - "pattern": "^[a-zA-Z0-9]+$", - "type": "string" - }, - "type": "array" - } - ] - }, - "Metadata": { - "type": "object" - }, - "Properties": { - "additionalProperties": false, - "properties": { - "CertificateList": { - "items": { - "type": "string" - }, - "type": "array" - }, "Tags": { "items": { "$ref": "#/definitions/Tag" }, "type": "array" + }, + "UploadAllowed": { + "type": "string" } }, "required": [ - "CertificateList" + "CopyAllowed", + "DownloadAllowed", + "PasteAllowed", + "PrintAllowed", + "UploadAllowed" ], "type": "object" }, "Type": { "enum": [ - "AWS::WorkSpacesWeb::TrustStore" + "AWS::WorkSpacesWeb::UserSettings" ], "type": "string" }, @@ -201401,167 +202179,42 @@ var SamSchema = `{ ], "type": "object" }, - "AWS::WorkSpacesWeb::UserAccessLoggingSettings": { + "AWS::WorkSpacesWeb::UserSettings.CookieSpecification": { "additionalProperties": false, "properties": { - "Condition": { - "type": "string" - }, - "DeletionPolicy": { - "enum": [ - "Delete", - "Retain", - "Snapshot" - ], + "Domain": { "type": "string" }, - "DependsOn": { - "anyOf": [ - { - "pattern": "^[a-zA-Z0-9]+$", - "type": "string" - }, - { - "items": { - "pattern": "^[a-zA-Z0-9]+$", - "type": "string" - }, - "type": "array" - } - ] - }, - "Metadata": { - "type": "object" - }, - "Properties": { - "additionalProperties": false, - "properties": { - "KinesisStreamArn": { - "type": "string" - }, - "Tags": { - "items": { - "$ref": "#/definitions/Tag" - }, - "type": "array" - } - }, - "required": [ - "KinesisStreamArn" - ], - "type": "object" - }, - "Type": { - "enum": [ - "AWS::WorkSpacesWeb::UserAccessLoggingSettings" - ], + "Name": { "type": "string" }, - "UpdateReplacePolicy": { - "enum": [ - "Delete", - "Retain", - "Snapshot" - ], + "Path": { "type": "string" } }, "required": [ - "Type", - "Properties" + "Domain" ], "type": "object" }, - "AWS::WorkSpacesWeb::UserSettings": { + "AWS::WorkSpacesWeb::UserSettings.CookieSynchronizationConfiguration": { "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": { - "CopyAllowed": { - "type": "string" - }, - "DisconnectTimeoutInMinutes": { - "type": "number" - }, - "DownloadAllowed": { - "type": "string" - }, - "IdleDisconnectTimeoutInMinutes": { - "type": "number" - }, - "PasteAllowed": { - "type": "string" - }, - "PrintAllowed": { - "type": "string" - }, - "Tags": { - "items": { - "$ref": "#/definitions/Tag" - }, - "type": "array" - }, - "UploadAllowed": { - "type": "string" - } + "Allowlist": { + "items": { + "$ref": "#/definitions/AWS::WorkSpacesWeb::UserSettings.CookieSpecification" }, - "required": [ - "CopyAllowed", - "DownloadAllowed", - "PasteAllowed", - "PrintAllowed", - "UploadAllowed" - ], - "type": "object" - }, - "Type": { - "enum": [ - "AWS::WorkSpacesWeb::UserSettings" - ], - "type": "string" + "type": "array" }, - "UpdateReplacePolicy": { - "enum": [ - "Delete", - "Retain", - "Snapshot" - ], - "type": "string" + "Blocklist": { + "items": { + "$ref": "#/definitions/AWS::WorkSpacesWeb::UserSettings.CookieSpecification" + }, + "type": "array" } }, "required": [ - "Type", - "Properties" + "Allowlist" ], "type": "object" }, @@ -204725,6 +205378,21 @@ var SamSchema = `{ { "$ref": "#/definitions/AWS::MediaPackage::PackagingGroup" }, + { + "$ref": "#/definitions/AWS::MediaPackageV2::Channel" + }, + { + "$ref": "#/definitions/AWS::MediaPackageV2::ChannelGroup" + }, + { + "$ref": "#/definitions/AWS::MediaPackageV2::ChannelPolicy" + }, + { + "$ref": "#/definitions/AWS::MediaPackageV2::OriginEndpoint" + }, + { + "$ref": "#/definitions/AWS::MediaPackageV2::OriginEndpointPolicy" + }, { "$ref": "#/definitions/AWS::MediaStore::Container" }, diff --git a/schema/sam.schema.json b/schema/sam.schema.json index 9142338775..e8e5af7e9c 100644 --- a/schema/sam.schema.json +++ b/schema/sam.schema.json @@ -39406,6 +39406,9 @@ "ObjectTypeName": { "type": "string" }, + "SourceLastUpdatedTimestampFormat": { + "type": "string" + }, "Tags": { "items": { "$ref": "#/definitions/Tag" @@ -51398,6 +51401,9 @@ "NetworkInterfaceId": { "type": "string" }, + "PrimaryIpv6": { + "type": "boolean" + }, "PrivateIpAddress": { "type": "string" }, @@ -118162,6 +118168,590 @@ }, "type": "object" }, + "AWS::MediaPackageV2::Channel": { + "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": { + "ChannelGroupName": { + "type": "string" + }, + "ChannelName": { + "type": "string" + }, + "Description": { + "type": "string" + }, + "Tags": { + "items": { + "$ref": "#/definitions/Tag" + }, + "type": "array" + } + }, + "type": "object" + }, + "Type": { + "enum": [ + "AWS::MediaPackageV2::Channel" + ], + "type": "string" + }, + "UpdateReplacePolicy": { + "enum": [ + "Delete", + "Retain", + "Snapshot" + ], + "type": "string" + } + }, + "required": [ + "Type" + ], + "type": "object" + }, + "AWS::MediaPackageV2::Channel.IngestEndpoint": { + "additionalProperties": false, + "properties": { + "Id": { + "type": "string" + }, + "Url": { + "type": "string" + } + }, + "type": "object" + }, + "AWS::MediaPackageV2::ChannelGroup": { + "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": { + "ChannelGroupName": { + "type": "string" + }, + "Description": { + "type": "string" + }, + "Tags": { + "items": { + "$ref": "#/definitions/Tag" + }, + "type": "array" + } + }, + "type": "object" + }, + "Type": { + "enum": [ + "AWS::MediaPackageV2::ChannelGroup" + ], + "type": "string" + }, + "UpdateReplacePolicy": { + "enum": [ + "Delete", + "Retain", + "Snapshot" + ], + "type": "string" + } + }, + "required": [ + "Type" + ], + "type": "object" + }, + "AWS::MediaPackageV2::ChannelPolicy": { + "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": { + "ChannelGroupName": { + "type": "string" + }, + "ChannelName": { + "type": "string" + }, + "Policy": { + "type": "object" + } + }, + "required": [ + "Policy" + ], + "type": "object" + }, + "Type": { + "enum": [ + "AWS::MediaPackageV2::ChannelPolicy" + ], + "type": "string" + }, + "UpdateReplacePolicy": { + "enum": [ + "Delete", + "Retain", + "Snapshot" + ], + "type": "string" + } + }, + "required": [ + "Type", + "Properties" + ], + "type": "object" + }, + "AWS::MediaPackageV2::OriginEndpoint": { + "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": { + "ChannelGroupName": { + "type": "string" + }, + "ChannelName": { + "type": "string" + }, + "ContainerType": { + "type": "string" + }, + "Description": { + "type": "string" + }, + "HlsManifests": { + "items": { + "$ref": "#/definitions/AWS::MediaPackageV2::OriginEndpoint.HlsManifestConfiguration" + }, + "type": "array" + }, + "LowLatencyHlsManifests": { + "items": { + "$ref": "#/definitions/AWS::MediaPackageV2::OriginEndpoint.LowLatencyHlsManifestConfiguration" + }, + "type": "array" + }, + "OriginEndpointName": { + "type": "string" + }, + "Segment": { + "$ref": "#/definitions/AWS::MediaPackageV2::OriginEndpoint.Segment" + }, + "StartoverWindowSeconds": { + "type": "number" + }, + "Tags": { + "items": { + "$ref": "#/definitions/Tag" + }, + "type": "array" + } + }, + "required": [ + "ContainerType" + ], + "type": "object" + }, + "Type": { + "enum": [ + "AWS::MediaPackageV2::OriginEndpoint" + ], + "type": "string" + }, + "UpdateReplacePolicy": { + "enum": [ + "Delete", + "Retain", + "Snapshot" + ], + "type": "string" + } + }, + "required": [ + "Type", + "Properties" + ], + "type": "object" + }, + "AWS::MediaPackageV2::OriginEndpoint.Encryption": { + "additionalProperties": false, + "properties": { + "ConstantInitializationVector": { + "type": "string" + }, + "EncryptionMethod": { + "$ref": "#/definitions/AWS::MediaPackageV2::OriginEndpoint.EncryptionMethod" + }, + "KeyRotationIntervalSeconds": { + "type": "number" + }, + "SpekeKeyProvider": { + "$ref": "#/definitions/AWS::MediaPackageV2::OriginEndpoint.SpekeKeyProvider" + } + }, + "required": [ + "EncryptionMethod", + "SpekeKeyProvider" + ], + "type": "object" + }, + "AWS::MediaPackageV2::OriginEndpoint.EncryptionContractConfiguration": { + "additionalProperties": false, + "properties": { + "PresetSpeke20Audio": { + "type": "string" + }, + "PresetSpeke20Video": { + "type": "string" + } + }, + "required": [ + "PresetSpeke20Audio", + "PresetSpeke20Video" + ], + "type": "object" + }, + "AWS::MediaPackageV2::OriginEndpoint.EncryptionMethod": { + "additionalProperties": false, + "properties": { + "CmafEncryptionMethod": { + "type": "string" + }, + "TsEncryptionMethod": { + "type": "string" + } + }, + "type": "object" + }, + "AWS::MediaPackageV2::OriginEndpoint.HlsManifestConfiguration": { + "additionalProperties": false, + "properties": { + "ChildManifestName": { + "type": "string" + }, + "ManifestName": { + "type": "string" + }, + "ManifestWindowSeconds": { + "type": "number" + }, + "ProgramDateTimeIntervalSeconds": { + "type": "number" + }, + "ScteHls": { + "$ref": "#/definitions/AWS::MediaPackageV2::OriginEndpoint.ScteHls" + }, + "Url": { + "type": "string" + } + }, + "required": [ + "ManifestName" + ], + "type": "object" + }, + "AWS::MediaPackageV2::OriginEndpoint.LowLatencyHlsManifestConfiguration": { + "additionalProperties": false, + "properties": { + "ChildManifestName": { + "type": "string" + }, + "ManifestName": { + "type": "string" + }, + "ManifestWindowSeconds": { + "type": "number" + }, + "ProgramDateTimeIntervalSeconds": { + "type": "number" + }, + "ScteHls": { + "$ref": "#/definitions/AWS::MediaPackageV2::OriginEndpoint.ScteHls" + }, + "Url": { + "type": "string" + } + }, + "required": [ + "ManifestName" + ], + "type": "object" + }, + "AWS::MediaPackageV2::OriginEndpoint.Scte": { + "additionalProperties": false, + "properties": { + "ScteFilter": { + "items": { + "type": "string" + }, + "type": "array" + } + }, + "type": "object" + }, + "AWS::MediaPackageV2::OriginEndpoint.ScteHls": { + "additionalProperties": false, + "properties": { + "AdMarkerHls": { + "type": "string" + } + }, + "type": "object" + }, + "AWS::MediaPackageV2::OriginEndpoint.Segment": { + "additionalProperties": false, + "properties": { + "Encryption": { + "$ref": "#/definitions/AWS::MediaPackageV2::OriginEndpoint.Encryption" + }, + "IncludeIframeOnlyStreams": { + "type": "boolean" + }, + "Scte": { + "$ref": "#/definitions/AWS::MediaPackageV2::OriginEndpoint.Scte" + }, + "SegmentDurationSeconds": { + "type": "number" + }, + "SegmentName": { + "type": "string" + }, + "TsIncludeDvbSubtitles": { + "type": "boolean" + }, + "TsUseAudioRenditionGroup": { + "type": "boolean" + } + }, + "type": "object" + }, + "AWS::MediaPackageV2::OriginEndpoint.SpekeKeyProvider": { + "additionalProperties": false, + "properties": { + "DrmSystems": { + "items": { + "type": "string" + }, + "type": "array" + }, + "EncryptionContractConfiguration": { + "$ref": "#/definitions/AWS::MediaPackageV2::OriginEndpoint.EncryptionContractConfiguration" + }, + "ResourceId": { + "type": "string" + }, + "RoleArn": { + "type": "string" + }, + "Url": { + "type": "string" + } + }, + "required": [ + "DrmSystems", + "EncryptionContractConfiguration", + "ResourceId", + "RoleArn", + "Url" + ], + "type": "object" + }, + "AWS::MediaPackageV2::OriginEndpointPolicy": { + "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": { + "ChannelGroupName": { + "type": "string" + }, + "ChannelName": { + "type": "string" + }, + "OriginEndpointName": { + "type": "string" + }, + "Policy": { + "type": "object" + } + }, + "required": [ + "Policy" + ], + "type": "object" + }, + "Type": { + "enum": [ + "AWS::MediaPackageV2::OriginEndpointPolicy" + ], + "type": "string" + }, + "UpdateReplacePolicy": { + "enum": [ + "Delete", + "Retain", + "Snapshot" + ], + "type": "string" + } + }, + "required": [ + "Type", + "Properties" + ], + "type": "object" + }, "AWS::MediaStore::Container": { "additionalProperties": false, "properties": { @@ -162784,9 +163374,24 @@ "Domain": { "type": "string" }, + "DomainAuthSecretArn": { + "type": "string" + }, + "DomainDnsIps": { + "items": { + "type": "string" + }, + "type": "array" + }, + "DomainFqdn": { + "type": "string" + }, "DomainIAMRoleName": { "type": "string" }, + "DomainOu": { + "type": "string" + }, "EnableCloudwatchLogsExports": { "items": { "type": "string" @@ -175724,12 +176329,6 @@ "type": "string" }, "Tags": { - "additionalProperties": true, - "patternProperties": { - "^[a-zA-Z0-9]+$": { - "type": "string" - } - }, "type": "object" }, "Tier": { @@ -201266,118 +201865,297 @@ }, "type": "object" }, - "AuthenticationType": { - "type": "string" + "AuthenticationType": { + "type": "string" + }, + "BrowserSettingsArn": { + "type": "string" + }, + "CustomerManagedKey": { + "type": "string" + }, + "DisplayName": { + "type": "string" + }, + "IpAccessSettingsArn": { + "type": "string" + }, + "NetworkSettingsArn": { + "type": "string" + }, + "Tags": { + "items": { + "$ref": "#/definitions/Tag" + }, + "type": "array" + }, + "TrustStoreArn": { + "type": "string" + }, + "UserAccessLoggingSettingsArn": { + "type": "string" + }, + "UserSettingsArn": { + "type": "string" + } + }, + "type": "object" + }, + "Type": { + "enum": [ + "AWS::WorkSpacesWeb::Portal" + ], + "type": "string" + }, + "UpdateReplacePolicy": { + "enum": [ + "Delete", + "Retain", + "Snapshot" + ], + "type": "string" + } + }, + "required": [ + "Type" + ], + "type": "object" + }, + "AWS::WorkSpacesWeb::TrustStore": { + "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": { + "CertificateList": { + "items": { + "type": "string" + }, + "type": "array" + }, + "Tags": { + "items": { + "$ref": "#/definitions/Tag" + }, + "type": "array" + } + }, + "required": [ + "CertificateList" + ], + "type": "object" + }, + "Type": { + "enum": [ + "AWS::WorkSpacesWeb::TrustStore" + ], + "type": "string" + }, + "UpdateReplacePolicy": { + "enum": [ + "Delete", + "Retain", + "Snapshot" + ], + "type": "string" + } + }, + "required": [ + "Type", + "Properties" + ], + "type": "object" + }, + "AWS::WorkSpacesWeb::UserAccessLoggingSettings": { + "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": { + "KinesisStreamArn": { + "type": "string" + }, + "Tags": { + "items": { + "$ref": "#/definitions/Tag" + }, + "type": "array" + } + }, + "required": [ + "KinesisStreamArn" + ], + "type": "object" + }, + "Type": { + "enum": [ + "AWS::WorkSpacesWeb::UserAccessLoggingSettings" + ], + "type": "string" + }, + "UpdateReplacePolicy": { + "enum": [ + "Delete", + "Retain", + "Snapshot" + ], + "type": "string" + } + }, + "required": [ + "Type", + "Properties" + ], + "type": "object" + }, + "AWS::WorkSpacesWeb::UserSettings": { + "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": { + "AdditionalEncryptionContext": { + "additionalProperties": true, + "patternProperties": { + "^[a-zA-Z0-9]+$": { + "type": "string" + } + }, + "type": "object" + }, + "CookieSynchronizationConfiguration": { + "$ref": "#/definitions/AWS::WorkSpacesWeb::UserSettings.CookieSynchronizationConfiguration" }, - "BrowserSettingsArn": { + "CopyAllowed": { "type": "string" }, "CustomerManagedKey": { "type": "string" }, - "DisplayName": { - "type": "string" - }, - "IpAccessSettingsArn": { - "type": "string" + "DisconnectTimeoutInMinutes": { + "type": "number" }, - "NetworkSettingsArn": { + "DownloadAllowed": { "type": "string" }, - "Tags": { - "items": { - "$ref": "#/definitions/Tag" - }, - "type": "array" - }, - "TrustStoreArn": { - "type": "string" + "IdleDisconnectTimeoutInMinutes": { + "type": "number" }, - "UserAccessLoggingSettingsArn": { + "PasteAllowed": { "type": "string" }, - "UserSettingsArn": { - "type": "string" - } - }, - "type": "object" - }, - "Type": { - "enum": [ - "AWS::WorkSpacesWeb::Portal" - ], - "type": "string" - }, - "UpdateReplacePolicy": { - "enum": [ - "Delete", - "Retain", - "Snapshot" - ], - "type": "string" - } - }, - "required": [ - "Type" - ], - "type": "object" - }, - "AWS::WorkSpacesWeb::TrustStore": { - "additionalProperties": false, - "properties": { - "Condition": { - "type": "string" - }, - "DeletionPolicy": { - "enum": [ - "Delete", - "Retain", - "Snapshot" - ], - "type": "string" - }, - "DependsOn": { - "anyOf": [ - { - "pattern": "^[a-zA-Z0-9]+$", + "PrintAllowed": { "type": "string" }, - { - "items": { - "pattern": "^[a-zA-Z0-9]+$", - "type": "string" - }, - "type": "array" - } - ] - }, - "Metadata": { - "type": "object" - }, - "Properties": { - "additionalProperties": false, - "properties": { - "CertificateList": { - "items": { - "type": "string" - }, - "type": "array" - }, "Tags": { "items": { "$ref": "#/definitions/Tag" }, "type": "array" + }, + "UploadAllowed": { + "type": "string" } }, "required": [ - "CertificateList" + "CopyAllowed", + "DownloadAllowed", + "PasteAllowed", + "PrintAllowed", + "UploadAllowed" ], "type": "object" }, "Type": { "enum": [ - "AWS::WorkSpacesWeb::TrustStore" + "AWS::WorkSpacesWeb::UserSettings" ], "type": "string" }, @@ -201396,167 +202174,42 @@ ], "type": "object" }, - "AWS::WorkSpacesWeb::UserAccessLoggingSettings": { + "AWS::WorkSpacesWeb::UserSettings.CookieSpecification": { "additionalProperties": false, "properties": { - "Condition": { - "type": "string" - }, - "DeletionPolicy": { - "enum": [ - "Delete", - "Retain", - "Snapshot" - ], + "Domain": { "type": "string" }, - "DependsOn": { - "anyOf": [ - { - "pattern": "^[a-zA-Z0-9]+$", - "type": "string" - }, - { - "items": { - "pattern": "^[a-zA-Z0-9]+$", - "type": "string" - }, - "type": "array" - } - ] - }, - "Metadata": { - "type": "object" - }, - "Properties": { - "additionalProperties": false, - "properties": { - "KinesisStreamArn": { - "type": "string" - }, - "Tags": { - "items": { - "$ref": "#/definitions/Tag" - }, - "type": "array" - } - }, - "required": [ - "KinesisStreamArn" - ], - "type": "object" - }, - "Type": { - "enum": [ - "AWS::WorkSpacesWeb::UserAccessLoggingSettings" - ], + "Name": { "type": "string" }, - "UpdateReplacePolicy": { - "enum": [ - "Delete", - "Retain", - "Snapshot" - ], + "Path": { "type": "string" } }, "required": [ - "Type", - "Properties" + "Domain" ], "type": "object" }, - "AWS::WorkSpacesWeb::UserSettings": { + "AWS::WorkSpacesWeb::UserSettings.CookieSynchronizationConfiguration": { "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": { - "CopyAllowed": { - "type": "string" - }, - "DisconnectTimeoutInMinutes": { - "type": "number" - }, - "DownloadAllowed": { - "type": "string" - }, - "IdleDisconnectTimeoutInMinutes": { - "type": "number" - }, - "PasteAllowed": { - "type": "string" - }, - "PrintAllowed": { - "type": "string" - }, - "Tags": { - "items": { - "$ref": "#/definitions/Tag" - }, - "type": "array" - }, - "UploadAllowed": { - "type": "string" - } + "Allowlist": { + "items": { + "$ref": "#/definitions/AWS::WorkSpacesWeb::UserSettings.CookieSpecification" }, - "required": [ - "CopyAllowed", - "DownloadAllowed", - "PasteAllowed", - "PrintAllowed", - "UploadAllowed" - ], - "type": "object" - }, - "Type": { - "enum": [ - "AWS::WorkSpacesWeb::UserSettings" - ], - "type": "string" + "type": "array" }, - "UpdateReplacePolicy": { - "enum": [ - "Delete", - "Retain", - "Snapshot" - ], - "type": "string" + "Blocklist": { + "items": { + "$ref": "#/definitions/AWS::WorkSpacesWeb::UserSettings.CookieSpecification" + }, + "type": "array" } }, "required": [ - "Type", - "Properties" + "Allowlist" ], "type": "object" }, @@ -204720,6 +205373,21 @@ { "$ref": "#/definitions/AWS::MediaPackage::PackagingGroup" }, + { + "$ref": "#/definitions/AWS::MediaPackageV2::Channel" + }, + { + "$ref": "#/definitions/AWS::MediaPackageV2::ChannelGroup" + }, + { + "$ref": "#/definitions/AWS::MediaPackageV2::ChannelPolicy" + }, + { + "$ref": "#/definitions/AWS::MediaPackageV2::OriginEndpoint" + }, + { + "$ref": "#/definitions/AWS::MediaPackageV2::OriginEndpointPolicy" + }, { "$ref": "#/definitions/AWS::MediaStore::Container" },