Class: AWSCDK::EC2::CfnEIPProps
- Inherits:
-
Jsii::Struct
- Object
- Jsii::Struct
- AWSCDK::EC2::CfnEIPProps
- Defined in:
- ec2/cfn_eip_props.rb
Overview
Properties for defining a CfnEIP.
Instance Attribute Summary collapse
-
#address ⇒ String?
readonly
An Elastic IP address or a carrier IP address in a Wavelength Zone.
-
#domain ⇒ String?
readonly
The network (
vpc). -
#instance_id ⇒ String, ...
readonly
The ID of the instance.
-
#ipam_pool_id ⇒ String?
readonly
The ID of an IPAM pool which has an Amazon-provided or BYOIP public IPv4 CIDR provisioned to it.
-
#network_border_group ⇒ String?
readonly
A unique set of Availability Zones, Local Zones, or Wavelength Zones from which AWS advertises IP addresses.
-
#public_ipv4_pool ⇒ String?
readonly
The ID of an address pool that you own.
-
#tags ⇒ Array<AWSCDK::CfnTag>?
readonly
Any tags assigned to the Elastic IP address.
-
#transfer_address ⇒ String?
readonly
The Elastic IP address you are accepting for transfer.
Class Method Summary collapse
Instance Method Summary collapse
-
#initialize(address: nil, domain: nil, instance_id: nil, ipam_pool_id: nil, network_border_group: nil, public_ipv4_pool: nil, tags: nil, transfer_address: nil) ⇒ CfnEIPProps
constructor
A new instance of CfnEIPProps.
- #to_jsii ⇒ Object
Constructor Details
#initialize(address: nil, domain: nil, instance_id: nil, ipam_pool_id: nil, network_border_group: nil, public_ipv4_pool: nil, tags: nil, transfer_address: nil) ⇒ CfnEIPProps
Returns a new instance of CfnEIPProps.
17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 |
# File 'ec2/cfn_eip_props.rb', line 17 def initialize(address: nil, domain: nil, instance_id: nil, ipam_pool_id: nil, network_border_group: nil, public_ipv4_pool: nil, tags: nil, transfer_address: nil) @address = address Jsii::Type.check_type(@address, JSON.parse(Base64.strict_decode64("eyJwcmltaXRpdmUiOiJzdHJpbmcifQ==")), "address") unless @address.nil? @domain = domain Jsii::Type.check_type(@domain, JSON.parse(Base64.strict_decode64("eyJwcmltaXRpdmUiOiJzdHJpbmcifQ==")), "domain") unless @domain.nil? @instance_id = instance_id Jsii::Type.check_type(@instance_id, JSON.parse(Base64.strict_decode64("eyJ1bmlvbiI6eyJ0eXBlcyI6W3sicHJpbWl0aXZlIjoic3RyaW5nIn0seyJmcW4iOiJhd3MtY2RrLWxpYi5pbnRlcmZhY2VzLmF3c19lYzIuSUluc3RhbmNlUmVmIn1dfX0=")), "instanceId") unless @instance_id.nil? @ipam_pool_id = ipam_pool_id Jsii::Type.check_type(@ipam_pool_id, JSON.parse(Base64.strict_decode64("eyJwcmltaXRpdmUiOiJzdHJpbmcifQ==")), "ipamPoolId") unless @ipam_pool_id.nil? @network_border_group = network_border_group Jsii::Type.check_type(@network_border_group, JSON.parse(Base64.strict_decode64("eyJwcmltaXRpdmUiOiJzdHJpbmcifQ==")), "networkBorderGroup") unless @network_border_group.nil? @public_ipv4_pool = public_ipv4_pool Jsii::Type.check_type(@public_ipv4_pool, JSON.parse(Base64.strict_decode64("eyJwcmltaXRpdmUiOiJzdHJpbmcifQ==")), "publicIpv4Pool") unless @public_ipv4_pool.nil? @tags = .is_a?(Array) ? .map { |jsii_v0| jsii_v0.is_a?(Hash) ? ::AWSCDK::CfnTag.new(**jsii_v0.transform_keys(&:to_sym)) : jsii_v0 } : Jsii::Type.check_type(@tags, JSON.parse(Base64.strict_decode64("eyJjb2xsZWN0aW9uIjp7ImVsZW1lbnR0eXBlIjp7ImZxbiI6ImF3cy1jZGstbGliLkNmblRhZyJ9LCJraW5kIjoiYXJyYXkifX0=")), "tags") unless @tags.nil? @transfer_address = transfer_address Jsii::Type.check_type(@transfer_address, JSON.parse(Base64.strict_decode64("eyJwcmltaXRpdmUiOiJzdHJpbmcifQ==")), "transferAddress") unless @transfer_address.nil? end |
Instance Attribute Details
#address ⇒ String? (readonly)
An Elastic IP address or a carrier IP address in a Wavelength Zone.
40 41 42 |
# File 'ec2/cfn_eip_props.rb', line 40 def address @address end |
#domain ⇒ String? (readonly)
The network ( vpc ).
If you define an Elastic IP address and associate it with a VPC that is defined in the same template, you must declare a dependency on the VPC-gateway attachment by using the DependsOn Attribute on this resource.
47 48 49 |
# File 'ec2/cfn_eip_props.rb', line 47 def domain @domain end |
#instance_id ⇒ String, ... (readonly)
The ID of the instance.
Updates to the
InstanceIdproperty may require some interruptions . Updates on an EIP reassociates the address on its associated resource.
54 55 56 |
# File 'ec2/cfn_eip_props.rb', line 54 def instance_id @instance_id end |
#ipam_pool_id ⇒ String? (readonly)
The ID of an IPAM pool which has an Amazon-provided or BYOIP public IPv4 CIDR provisioned to it.
For more information, see Allocate sequential Elastic IP addresses from an IPAM pool in the Amazon VPC IPAM User Guide .
61 62 63 |
# File 'ec2/cfn_eip_props.rb', line 61 def ipam_pool_id @ipam_pool_id end |
#network_border_group ⇒ String? (readonly)
A unique set of Availability Zones, Local Zones, or Wavelength Zones from which AWS advertises IP addresses.
Use this parameter to limit the IP address to this location. IP addresses cannot move between network border groups.
Use DescribeAvailabilityZones to view the network border groups.
70 71 72 |
# File 'ec2/cfn_eip_props.rb', line 70 def network_border_group @network_border_group end |
#public_ipv4_pool ⇒ String? (readonly)
The ID of an address pool that you own.
Use this parameter to let Amazon EC2 select an address from the address pool.
Updates to the
PublicIpv4Poolproperty may require some interruptions . Updates on an EIP reassociates the address on its associated resource.
79 80 81 |
# File 'ec2/cfn_eip_props.rb', line 79 def public_ipv4_pool @public_ipv4_pool end |
#tags ⇒ Array<AWSCDK::CfnTag>? (readonly)
Any tags assigned to the Elastic IP address.
Updates to the
Tagsproperty may require some interruptions . Updates on an EIP reassociates the address on its associated resource.
86 87 88 |
# File 'ec2/cfn_eip_props.rb', line 86 def @tags end |
#transfer_address ⇒ String? (readonly)
The Elastic IP address you are accepting for transfer.
You can only accept one transferred address. For more information on Elastic IP address transfers, see Transfer Elastic IP addresses in the Amazon Virtual Private Cloud User Guide .
93 94 95 |
# File 'ec2/cfn_eip_props.rb', line 93 def transfer_address @transfer_address end |
Class Method Details
.jsii_properties ⇒ Object
95 96 97 98 99 100 101 102 103 104 105 106 |
# File 'ec2/cfn_eip_props.rb', line 95 def self.jsii_properties { :address => "address", :domain => "domain", :instance_id => "instanceId", :ipam_pool_id => "ipamPoolId", :network_border_group => "networkBorderGroup", :public_ipv4_pool => "publicIpv4Pool", :tags => "tags", :transfer_address => "transferAddress", } end |
Instance Method Details
#to_jsii ⇒ Object
108 109 110 111 112 113 114 115 116 117 118 119 120 121 |
# File 'ec2/cfn_eip_props.rb', line 108 def to_jsii result = {} result.merge!({ "address" => @address, "domain" => @domain, "instanceId" => @instance_id, "ipamPoolId" => @ipam_pool_id, "networkBorderGroup" => @network_border_group, "publicIpv4Pool" => @public_ipv4_pool, "tags" => @tags, "transferAddress" => @transfer_address, }) result.compact end |