Class: AWSCDK::CloudFormation::CfnTypeActivationProps

Inherits:
Jsii::Struct
  • Object
show all
Defined in:
cloud_formation/cfn_type_activation_props.rb

Overview

Properties for defining a CfnTypeActivation.

Instance Attribute Summary collapse

Class Method Summary collapse

Instance Method Summary collapse

Constructor Details

#initialize(auto_update: nil, execution_role_arn: nil, logging_config: nil, major_version: nil, public_type_arn: nil, publisher_id: nil, type: nil, type_name: nil, type_name_alias: nil, version_bump: nil) ⇒ CfnTypeActivationProps

Returns a new instance of CfnTypeActivationProps.

Parameters:

  • auto_update (Boolean, AWSCDK::IResolvable, nil) (defaults to: nil)

    Whether to automatically update the extension in this account and Region when a new minor version is published by the extension publisher.

  • execution_role_arn (String, nil) (defaults to: nil)

    The name of the IAM execution role to use to activate the extension.

  • logging_config (AWSCDK::IResolvable, AWSCDK::CloudFormation::CfnTypeActivation::LoggingConfigProperty, nil) (defaults to: nil)

    Specifies logging configuration information for an extension.

  • major_version (String, nil) (defaults to: nil)

    The major version of this extension you want to activate, if multiple major versions are available.

  • public_type_arn (String, nil) (defaults to: nil)

    The Amazon Resource Number (ARN) of the public extension.

  • publisher_id (String, nil) (defaults to: nil)

    The ID of the extension publisher.

  • type (String, nil) (defaults to: nil)

    The extension type.

  • type_name (String, nil) (defaults to: nil)

    The name of the extension.

  • type_name_alias (String, nil) (defaults to: nil)

    An alias to assign to the public extension in this account and Region.

  • version_bump (String, nil) (defaults to: nil)

    Manually updates a previously-activated type to a new major or minor version, if available.



19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
# File 'cloud_formation/cfn_type_activation_props.rb', line 19

def initialize(auto_update: nil, execution_role_arn: nil, logging_config: nil, major_version: nil, public_type_arn: nil, publisher_id: nil, type: nil, type_name: nil, type_name_alias: nil, version_bump: nil)
  @auto_update = auto_update
  Jsii::Type.check_type(@auto_update, JSON.parse(Base64.strict_decode64("eyJ1bmlvbiI6eyJ0eXBlcyI6W3sicHJpbWl0aXZlIjoiYm9vbGVhbiJ9LHsiZnFuIjoiYXdzLWNkay1saWIuSVJlc29sdmFibGUifV19fQ==")), "autoUpdate") unless @auto_update.nil?
  @execution_role_arn = execution_role_arn
  Jsii::Type.check_type(@execution_role_arn, JSON.parse(Base64.strict_decode64("eyJwcmltaXRpdmUiOiJzdHJpbmcifQ==")), "executionRoleArn") unless @execution_role_arn.nil?
  @logging_config = logging_config.is_a?(Hash) ? ::AWSCDK::CloudFormation::CfnTypeActivation::LoggingConfigProperty.new(**logging_config.transform_keys(&:to_sym)) : logging_config
  Jsii::Type.check_type(@logging_config, JSON.parse(Base64.strict_decode64("eyJ1bmlvbiI6eyJ0eXBlcyI6W3siZnFuIjoiYXdzLWNkay1saWIuSVJlc29sdmFibGUifSx7ImZxbiI6ImF3cy1jZGstbGliLmF3c19jbG91ZGZvcm1hdGlvbi5DZm5UeXBlQWN0aXZhdGlvbi5Mb2dnaW5nQ29uZmlnUHJvcGVydHkifV19fQ==")), "loggingConfig") unless @logging_config.nil?
  @major_version = major_version
  Jsii::Type.check_type(@major_version, JSON.parse(Base64.strict_decode64("eyJwcmltaXRpdmUiOiJzdHJpbmcifQ==")), "majorVersion") unless @major_version.nil?
  @public_type_arn = public_type_arn
  Jsii::Type.check_type(@public_type_arn, JSON.parse(Base64.strict_decode64("eyJwcmltaXRpdmUiOiJzdHJpbmcifQ==")), "publicTypeArn") unless @public_type_arn.nil?
  @publisher_id = publisher_id
  Jsii::Type.check_type(@publisher_id, JSON.parse(Base64.strict_decode64("eyJwcmltaXRpdmUiOiJzdHJpbmcifQ==")), "publisherId") unless @publisher_id.nil?
  @type = type
  Jsii::Type.check_type(@type, JSON.parse(Base64.strict_decode64("eyJwcmltaXRpdmUiOiJzdHJpbmcifQ==")), "type") unless @type.nil?
  @type_name = type_name
  Jsii::Type.check_type(@type_name, JSON.parse(Base64.strict_decode64("eyJwcmltaXRpdmUiOiJzdHJpbmcifQ==")), "typeName") unless @type_name.nil?
  @type_name_alias = type_name_alias
  Jsii::Type.check_type(@type_name_alias, JSON.parse(Base64.strict_decode64("eyJwcmltaXRpdmUiOiJzdHJpbmcifQ==")), "typeNameAlias") unless @type_name_alias.nil?
  @version_bump = version_bump
  Jsii::Type.check_type(@version_bump, JSON.parse(Base64.strict_decode64("eyJwcmltaXRpdmUiOiJzdHJpbmcifQ==")), "versionBump") unless @version_bump.nil?
end

Instance Attribute Details

#auto_updateBoolean, ... (readonly)

Whether to automatically update the extension in this account and Region when a new minor version is published by the extension publisher.

Major versions released by the publisher must be manually updated.

The default is true .



50
51
52
# File 'cloud_formation/cfn_type_activation_props.rb', line 50

def auto_update
  @auto_update
end

#execution_role_arnString? (readonly)

The name of the IAM execution role to use to activate the extension.



55
56
57
# File 'cloud_formation/cfn_type_activation_props.rb', line 55

def execution_role_arn
  @execution_role_arn
end

#logging_configAWSCDK::IResolvable, ... (readonly)

Specifies logging configuration information for an extension.



60
61
62
# File 'cloud_formation/cfn_type_activation_props.rb', line 60

def logging_config
  @logging_config
end

#major_versionString? (readonly)

The major version of this extension you want to activate, if multiple major versions are available.

The default is the latest major version. CloudFormation uses the latest available minor version of the major version selected.

You can specify MajorVersion or VersionBump , but not both.



69
70
71
# File 'cloud_formation/cfn_type_activation_props.rb', line 69

def major_version
  @major_version
end

#public_type_arnString? (readonly)

The Amazon Resource Number (ARN) of the public extension.

Conditional: You must specify PublicTypeArn , or TypeName , Type , and PublisherId .



76
77
78
# File 'cloud_formation/cfn_type_activation_props.rb', line 76

def public_type_arn
  @public_type_arn
end

#publisher_idString? (readonly)

The ID of the extension publisher.

Conditional: You must specify PublicTypeArn , or TypeName , Type , and PublisherId .



83
84
85
# File 'cloud_formation/cfn_type_activation_props.rb', line 83

def publisher_id
  @publisher_id
end

#typeString? (readonly)

The extension type.

Conditional: You must specify PublicTypeArn , or TypeName , Type , and PublisherId .



90
91
92
# File 'cloud_formation/cfn_type_activation_props.rb', line 90

def type
  @type
end

#type_nameString? (readonly)

The name of the extension.

Conditional: You must specify PublicTypeArn , or TypeName , Type , and PublisherId .



97
98
99
# File 'cloud_formation/cfn_type_activation_props.rb', line 97

def type_name
  @type_name
end

#type_name_aliasString? (readonly)

An alias to assign to the public extension in this account and Region.

If you specify an alias for the extension, CloudFormation treats the alias as the extension type name within this account and Region. You must use the alias to refer to the extension in your templates, API calls, and CloudFormation console.

An extension alias must be unique within a given account and Region. You can activate the same public resource multiple times in the same account and Region, using different type name aliases.



106
107
108
# File 'cloud_formation/cfn_type_activation_props.rb', line 106

def type_name_alias
  @type_name_alias
end

#version_bumpString? (readonly)

Manually updates a previously-activated type to a new major or minor version, if available.

You can also use this parameter to update the value of AutoUpdate .

  • MAJOR : CloudFormation updates the extension to the newest major version, if one is available.
  • MINOR : CloudFormation updates the extension to the newest minor version, if one is available.


116
117
118
# File 'cloud_formation/cfn_type_activation_props.rb', line 116

def version_bump
  @version_bump
end

Class Method Details

.jsii_propertiesObject



118
119
120
121
122
123
124
125
126
127
128
129
130
131
# File 'cloud_formation/cfn_type_activation_props.rb', line 118

def self.jsii_properties
  {
    :auto_update => "autoUpdate",
    :execution_role_arn => "executionRoleArn",
    :logging_config => "loggingConfig",
    :major_version => "majorVersion",
    :public_type_arn => "publicTypeArn",
    :publisher_id => "publisherId",
    :type => "type",
    :type_name => "typeName",
    :type_name_alias => "typeNameAlias",
    :version_bump => "versionBump",
  }
end

Instance Method Details

#to_jsiiObject



133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
# File 'cloud_formation/cfn_type_activation_props.rb', line 133

def to_jsii
  result = {}
  result.merge!({
    "autoUpdate" => @auto_update,
    "executionRoleArn" => @execution_role_arn,
    "loggingConfig" => @logging_config,
    "majorVersion" => @major_version,
    "publicTypeArn" => @public_type_arn,
    "publisherId" => @publisher_id,
    "type" => @type,
    "typeName" => @type_name,
    "typeNameAlias" => @type_name_alias,
    "versionBump" => @version_bump,
  })
  result.compact
end