Class: AWSCDK::ECS::EFSVolumeConfiguration
- Inherits:
-
Jsii::Struct
- Object
- Jsii::Struct
- AWSCDK::ECS::EFSVolumeConfiguration
- Defined in:
- ecs/efs_volume_configuration.rb
Overview
The configuration for an Elastic FileSystem volume.
Instance Attribute Summary collapse
-
#authorization_config ⇒ AWSCDK::ECS::AuthorizationConfig?
readonly
The authorization configuration details for the Amazon EFS file system.
-
#file_system_id ⇒ String
readonly
The Amazon EFS file system ID to use.
-
#root_directory ⇒ String?
readonly
The directory within the Amazon EFS file system to mount as the root directory inside the host.
-
#transit_encryption ⇒ String?
readonly
Whether or not to enable encryption for Amazon EFS data in transit between the Amazon ECS host and the Amazon EFS server.
-
#transit_encryption_port ⇒ Numeric?
readonly
The port to use when sending encrypted data between the Amazon ECS host and the Amazon EFS server.
Class Method Summary collapse
Instance Method Summary collapse
-
#initialize(file_system_id:, authorization_config: nil, root_directory: nil, transit_encryption: nil, transit_encryption_port: nil) ⇒ EFSVolumeConfiguration
constructor
A new instance of EFSVolumeConfiguration.
- #to_jsii ⇒ Object
Constructor Details
#initialize(file_system_id:, authorization_config: nil, root_directory: nil, transit_encryption: nil, transit_encryption_port: nil) ⇒ EFSVolumeConfiguration
Returns a new instance of EFSVolumeConfiguration.
12 13 14 15 16 17 18 19 20 21 22 23 |
# File 'ecs/efs_volume_configuration.rb', line 12 def initialize(file_system_id:, authorization_config: nil, root_directory: nil, transit_encryption: nil, transit_encryption_port: nil) @file_system_id = file_system_id Jsii::Type.check_type(@file_system_id, JSON.parse(Base64.strict_decode64("eyJwcmltaXRpdmUiOiJzdHJpbmcifQ==")), "fileSystemId") @authorization_config = .is_a?(Hash) ? ::AWSCDK::ECS::AuthorizationConfig.new(**.transform_keys(&:to_sym)) : Jsii::Type.check_type(@authorization_config, JSON.parse(Base64.strict_decode64("eyJmcW4iOiJhd3MtY2RrLWxpYi5hd3NfZWNzLkF1dGhvcml6YXRpb25Db25maWcifQ==")), "authorizationConfig") unless @authorization_config.nil? @root_directory = root_directory Jsii::Type.check_type(@root_directory, JSON.parse(Base64.strict_decode64("eyJwcmltaXRpdmUiOiJzdHJpbmcifQ==")), "rootDirectory") unless @root_directory.nil? @transit_encryption = transit_encryption Jsii::Type.check_type(@transit_encryption, JSON.parse(Base64.strict_decode64("eyJwcmltaXRpdmUiOiJzdHJpbmcifQ==")), "transitEncryption") unless @transit_encryption.nil? @transit_encryption_port = transit_encryption_port Jsii::Type.check_type(@transit_encryption_port, JSON.parse(Base64.strict_decode64("eyJwcmltaXRpdmUiOiJudW1iZXIifQ==")), "transitEncryptionPort") unless @transit_encryption_port.nil? end |
Instance Attribute Details
#authorization_config ⇒ AWSCDK::ECS::AuthorizationConfig? (readonly)
Default: No configuration.
The authorization configuration details for the Amazon EFS file system.
33 34 35 |
# File 'ecs/efs_volume_configuration.rb', line 33 def @authorization_config end |
#file_system_id ⇒ String (readonly)
The Amazon EFS file system ID to use.
28 29 30 |
# File 'ecs/efs_volume_configuration.rb', line 28 def file_system_id @file_system_id end |
#root_directory ⇒ String? (readonly)
Default: The root of the Amazon EFS volume
The directory within the Amazon EFS file system to mount as the root directory inside the host.
Specifying / will have the same effect as omitting this parameter.
40 41 42 |
# File 'ecs/efs_volume_configuration.rb', line 40 def root_directory @root_directory end |
#transit_encryption ⇒ String? (readonly)
Default: DISABLED
Whether or not to enable encryption for Amazon EFS data in transit between the Amazon ECS host and the Amazon EFS server.
Transit encryption must be enabled if Amazon EFS IAM authorization is used.
Valid values: ENABLED | DISABLED
49 50 51 |
# File 'ecs/efs_volume_configuration.rb', line 49 def transit_encryption @transit_encryption end |
#transit_encryption_port ⇒ Numeric? (readonly)
Default: Port selection strategy that the Amazon EFS mount helper uses.
The port to use when sending encrypted data between the Amazon ECS host and the Amazon EFS server.
EFS mount helper uses.
56 57 58 |
# File 'ecs/efs_volume_configuration.rb', line 56 def transit_encryption_port @transit_encryption_port end |
Class Method Details
.jsii_properties ⇒ Object
58 59 60 61 62 63 64 65 66 |
# File 'ecs/efs_volume_configuration.rb', line 58 def self.jsii_properties { :file_system_id => "fileSystemId", :authorization_config => "authorizationConfig", :root_directory => "rootDirectory", :transit_encryption => "transitEncryption", :transit_encryption_port => "transitEncryptionPort", } end |
Instance Method Details
#to_jsii ⇒ Object
68 69 70 71 72 73 74 75 76 77 78 |
# File 'ecs/efs_volume_configuration.rb', line 68 def to_jsii result = {} result.merge!({ "fileSystemId" => @file_system_id, "authorizationConfig" => @authorization_config, "rootDirectory" => @root_directory, "transitEncryption" => @transit_encryption, "transitEncryptionPort" => @transit_encryption_port, }) result.compact end |