Class: AWSCDK::ECS::Secret

Inherits:
Jsii::Object
  • Object
show all
Defined in:
ecs/secret.rb

Overview

A secret environment variable.

Class Method Summary collapse

Instance Method Summary collapse

Constructor Details

#initializeSecret

Returns a new instance of Secret.



8
9
10
# File 'ecs/secret.rb', line 8

def initialize
  Jsii::Object.instance_method(:initialize).bind(self).call
end

Class Method Details

.from_secrets_manager(secret, field = nil) ⇒ AWSCDK::ECS::Secret

Creates a environment variable value from a secret stored in AWS Secrets Manager.

Parameters:

  • secret (AWSCDK::SecretsManager::ISecret)

    the secret stored in AWS Secrets Manager.

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

    the name of the field with the value that you want to set as the environment variable value.

Returns:

  • (AWSCDK::ECS::Secret)


25
26
27
28
29
# File 'ecs/secret.rb', line 25

def self.from_secrets_manager(secret, field = nil)
  Jsii::Type.check_type(secret, JSON.parse(Base64.strict_decode64("eyJmcW4iOiJhd3MtY2RrLWxpYi5hd3Nfc2VjcmV0c21hbmFnZXIuSVNlY3JldCJ9")), "secret")
  Jsii::Type.check_type(field, JSON.parse(Base64.strict_decode64("eyJwcmltaXRpdmUiOiJzdHJpbmcifQ==")), "field") unless field.nil?
  Jsii::Kernel.instance.call_static("aws-cdk-lib.aws_ecs.Secret", "fromSecretsManager", [secret, field])
end

.from_secrets_manager_version(secret, version_info, field = nil) ⇒ AWSCDK::ECS::Secret

Creates a environment variable value from a secret stored in AWS Secrets Manager.

Parameters:

  • secret (AWSCDK::SecretsManager::ISecret)

    the secret stored in AWS Secrets Manager.

  • version_info (AWSCDK::ECS::SecretVersionInfo)

    the version information to reference the secret.

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

    the name of the field with the value that you want to set as the environment variable value.

Returns:

  • (AWSCDK::ECS::Secret)


37
38
39
40
41
42
43
# File 'ecs/secret.rb', line 37

def self.from_secrets_manager_version(secret, version_info, field = nil)
  Jsii::Type.check_type(secret, JSON.parse(Base64.strict_decode64("eyJmcW4iOiJhd3MtY2RrLWxpYi5hd3Nfc2VjcmV0c21hbmFnZXIuSVNlY3JldCJ9")), "secret")
  version_info = version_info.is_a?(Hash) ? ::AWSCDK::ECS::SecretVersionInfo.new(**version_info.transform_keys(&:to_sym)) : version_info
  Jsii::Type.check_type(version_info, JSON.parse(Base64.strict_decode64("eyJmcW4iOiJhd3MtY2RrLWxpYi5hd3NfZWNzLlNlY3JldFZlcnNpb25JbmZvIn0=")), "versionInfo")
  Jsii::Type.check_type(field, JSON.parse(Base64.strict_decode64("eyJwcmltaXRpdmUiOiJzdHJpbmcifQ==")), "field") unless field.nil?
  Jsii::Kernel.instance.call_static("aws-cdk-lib.aws_ecs.Secret", "fromSecretsManagerVersion", [secret, version_info, field])
end

.from_ssm_parameter(parameter) ⇒ AWSCDK::ECS::Secret

Creates an environment variable value from a parameter stored in AWS Systems Manager Parameter Store.

Parameters:

Returns:

  • (AWSCDK::ECS::Secret)


49
50
51
52
# File 'ecs/secret.rb', line 49

def self.from_ssm_parameter(parameter)
  Jsii::Type.check_type(parameter, JSON.parse(Base64.strict_decode64("eyJmcW4iOiJhd3MtY2RrLWxpYi5hd3Nfc3NtLklQYXJhbWV0ZXIifQ==")), "parameter")
  Jsii::Kernel.instance.call_static("aws-cdk-lib.aws_ecs.Secret", "fromSsmParameter", [parameter])
end

.jsii_overridable_methodsObject



12
13
14
15
16
17
18
# File 'ecs/secret.rb', line 12

def self.jsii_overridable_methods
  {
    :arn => { kind: :property, name: "arn", is_optional: false },
    :has_field => { kind: :property, name: "hasField", is_optional: true },
    :grant_read => { kind: :method, name: "grantRead", is_optional: false },
  }
end

Instance Method Details

#arnString

The ARN of the secret.

Returns:

  • (String)


57
58
59
# File 'ecs/secret.rb', line 57

def arn()
  jsii_get_property("arn")
end

#grant_read(grantee) ⇒ AWSCDK::IAM::Grant

Grants reading the secret to a principal.

[disable-awslint:no-grants]

Parameters:

Returns:



74
75
76
77
# File 'ecs/secret.rb', line 74

def grant_read(grantee)
  Jsii::Type.check_type(grantee, JSON.parse(Base64.strict_decode64("eyJmcW4iOiJhd3MtY2RrLWxpYi5hd3NfaWFtLklHcmFudGFibGUifQ==")), "grantee")
  jsii_call_method("grantRead", [grantee])
end

#has_fieldBoolean?

Whether this secret uses a specific JSON field.

Returns:

  • (Boolean, nil)


64
65
66
# File 'ecs/secret.rb', line 64

def has_field()
  jsii_get_property("hasField")
end