Class: AWSCDK::Proton::CfnEnvironmentAccountConnectionProps

Inherits:
Jsii::Struct
  • Object
show all
Defined in:
proton/cfn_environment_account_connection_props.rb

Overview

Properties for defining a CfnEnvironmentAccountConnection.

Instance Attribute Summary collapse

Class Method Summary collapse

Instance Method Summary collapse

Constructor Details

#initialize(codebuild_role_arn: nil, component_role_arn: nil, environment_account_id: nil, environment_name: nil, management_account_id: nil, role_arn: nil, tags: nil) ⇒ CfnEnvironmentAccountConnectionProps

Returns a new instance of CfnEnvironmentAccountConnectionProps.

Parameters:

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

    The Amazon Resource Name (ARN) of an IAM service role in the environment account.

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

    The Amazon Resource Name (ARN) of the IAM service role that AWS Proton uses when provisioning directly defined components in the associated environment account.

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

    The environment account that's connected to the environment account connection.

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

    The name of the environment that's associated with the environment account connection.

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

    The ID of the management account that's connected to the environment account connection.

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

    The IAM service role that's associated with the environment account connection.

  • tags (Array<AWSCDK::CfnTag>, nil) (defaults to: nil)

    An optional list of metadata items that you can associate with the AWS Proton environment account connection.



16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
# File 'proton/cfn_environment_account_connection_props.rb', line 16

def initialize(codebuild_role_arn: nil, component_role_arn: nil, environment_account_id: nil, environment_name: nil, management_account_id: nil, role_arn: nil, tags: nil)
  @codebuild_role_arn = codebuild_role_arn
  Jsii::Type.check_type(@codebuild_role_arn, JSON.parse(Base64.strict_decode64("eyJwcmltaXRpdmUiOiJzdHJpbmcifQ==")), "codebuildRoleArn") unless @codebuild_role_arn.nil?
  @component_role_arn = component_role_arn
  Jsii::Type.check_type(@component_role_arn, JSON.parse(Base64.strict_decode64("eyJwcmltaXRpdmUiOiJzdHJpbmcifQ==")), "componentRoleArn") unless @component_role_arn.nil?
  @environment_account_id = 
  Jsii::Type.check_type(@environment_account_id, JSON.parse(Base64.strict_decode64("eyJwcmltaXRpdmUiOiJzdHJpbmcifQ==")), "environmentAccountId") unless @environment_account_id.nil?
  @environment_name = environment_name
  Jsii::Type.check_type(@environment_name, JSON.parse(Base64.strict_decode64("eyJwcmltaXRpdmUiOiJzdHJpbmcifQ==")), "environmentName") unless @environment_name.nil?
  @management_account_id = 
  Jsii::Type.check_type(@management_account_id, JSON.parse(Base64.strict_decode64("eyJwcmltaXRpdmUiOiJzdHJpbmcifQ==")), "managementAccountId") unless @management_account_id.nil?
  @role_arn = role_arn
  Jsii::Type.check_type(@role_arn, JSON.parse(Base64.strict_decode64("eyJwcmltaXRpdmUiOiJzdHJpbmcifQ==")), "roleArn") unless @role_arn.nil?
  @tags = tags.is_a?(Array) ? tags.map { |jsii_v0| jsii_v0.is_a?(Hash) ? ::AWSCDK::CfnTag.new(**jsii_v0.transform_keys(&:to_sym)) : jsii_v0 } : tags
  Jsii::Type.check_type(@tags, JSON.parse(Base64.strict_decode64("eyJjb2xsZWN0aW9uIjp7ImVsZW1lbnR0eXBlIjp7ImZxbiI6ImF3cy1jZGstbGliLkNmblRhZyJ9LCJraW5kIjoiYXJyYXkifX0=")), "tags") unless @tags.nil?
end

Instance Attribute Details

#codebuild_role_arnString? (readonly)

The Amazon Resource Name (ARN) of an IAM service role in the environment account.

AWS Proton uses this role to provision infrastructure resources using CodeBuild-based provisioning in the associated environment account.



39
40
41
# File 'proton/cfn_environment_account_connection_props.rb', line 39

def codebuild_role_arn
  @codebuild_role_arn
end

#component_role_arnString? (readonly)

The Amazon Resource Name (ARN) of the IAM service role that AWS Proton uses when provisioning directly defined components in the associated environment account.

It determines the scope of infrastructure that a component can provision in the account.

The environment account connection must have a component_role_arn to allow directly defined components to be associated with any environments running in the account.

For more information about components, see AWS Proton components in the AWS Proton User Guide .



50
51
52
# File 'proton/cfn_environment_account_connection_props.rb', line 50

def component_role_arn
  @component_role_arn
end

#environment_account_idString? (readonly)

The environment account that's connected to the environment account connection.



55
56
57
# File 'proton/cfn_environment_account_connection_props.rb', line 55

def 
  @environment_account_id
end

#environment_nameString? (readonly)

The name of the environment that's associated with the environment account connection.



60
61
62
# File 'proton/cfn_environment_account_connection_props.rb', line 60

def environment_name
  @environment_name
end

#management_account_idString? (readonly)

The ID of the management account that's connected to the environment account connection.



65
66
67
# File 'proton/cfn_environment_account_connection_props.rb', line 65

def 
  @management_account_id
end

#role_arnString? (readonly)

The IAM service role that's associated with the environment account connection.



70
71
72
# File 'proton/cfn_environment_account_connection_props.rb', line 70

def role_arn
  @role_arn
end

#tagsArray<AWSCDK::CfnTag>? (readonly)

An optional list of metadata items that you can associate with the AWS Proton environment account connection.

A tag is a key-value pair.

For more information, see AWS Proton resources and tagging in the AWS Proton User Guide .



79
80
81
# File 'proton/cfn_environment_account_connection_props.rb', line 79

def tags
  @tags
end

Class Method Details

.jsii_propertiesObject



81
82
83
84
85
86
87
88
89
90
91
# File 'proton/cfn_environment_account_connection_props.rb', line 81

def self.jsii_properties
  {
    :codebuild_role_arn => "codebuildRoleArn",
    :component_role_arn => "componentRoleArn",
    :environment_account_id => "environmentAccountId",
    :environment_name => "environmentName",
    :management_account_id => "managementAccountId",
    :role_arn => "roleArn",
    :tags => "tags",
  }
end

Instance Method Details

#to_jsiiObject



93
94
95
96
97
98
99
100
101
102
103
104
105
# File 'proton/cfn_environment_account_connection_props.rb', line 93

def to_jsii
  result = {}
  result.merge!({
    "codebuildRoleArn" => @codebuild_role_arn,
    "componentRoleArn" => @component_role_arn,
    "environmentAccountId" => @environment_account_id,
    "environmentName" => @environment_name,
    "managementAccountId" => @management_account_id,
    "roleArn" => @role_arn,
    "tags" => @tags,
  })
  result.compact
end