Class: AWSCDK::ECS::AppMeshProxyConfigurationProps

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

Overview

Interface for setting the properties of proxy configuration.

Instance Attribute Summary collapse

Class Method Summary collapse

Instance Method Summary collapse

Constructor Details

#initialize(app_ports:, proxy_egress_port:, proxy_ingress_port:, egress_ignored_i_ps: nil, egress_ignored_ports: nil, ignored_gid: nil, ignored_uid: nil) ⇒ AppMeshProxyConfigurationProps

Returns a new instance of AppMeshProxyConfigurationProps.

Parameters:

  • app_ports (Array<Numeric>)

    The list of ports that the application uses.

  • proxy_egress_port (Numeric)

    Specifies the port that outgoing traffic from the AppPorts is directed to.

  • proxy_ingress_port (Numeric)

    Specifies the port that incoming traffic to the AppPorts is directed to.

  • egress_ignored_i_ps (Array<String>, nil) (defaults to: nil)

    The egress traffic going to these specified IP addresses is ignored and not redirected to the ProxyEgressPort.

  • egress_ignored_ports (Array<Numeric>, nil) (defaults to: nil)

    The egress traffic going to these specified ports is ignored and not redirected to the ProxyEgressPort.

  • ignored_gid (Numeric, nil) (defaults to: nil)

    The group ID (GID) of the proxy container as defined by the user parameter in a container definition.

  • ignored_uid (Numeric, nil) (defaults to: nil)

    The user ID (UID) of the proxy container as defined by the user parameter in a container definition.



14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
# File 'ecs/app_mesh_proxy_configuration_props.rb', line 14

def initialize(app_ports:, proxy_egress_port:, proxy_ingress_port:, egress_ignored_i_ps: nil, egress_ignored_ports: nil, ignored_gid: nil, ignored_uid: nil)
  @app_ports = app_ports
  Jsii::Type.check_type(@app_ports, JSON.parse(Base64.strict_decode64("eyJjb2xsZWN0aW9uIjp7ImVsZW1lbnR0eXBlIjp7InByaW1pdGl2ZSI6Im51bWJlciJ9LCJraW5kIjoiYXJyYXkifX0=")), "appPorts")
  @proxy_egress_port = proxy_egress_port
  Jsii::Type.check_type(@proxy_egress_port, JSON.parse(Base64.strict_decode64("eyJwcmltaXRpdmUiOiJudW1iZXIifQ==")), "proxyEgressPort")
  @proxy_ingress_port = proxy_ingress_port
  Jsii::Type.check_type(@proxy_ingress_port, JSON.parse(Base64.strict_decode64("eyJwcmltaXRpdmUiOiJudW1iZXIifQ==")), "proxyIngressPort")
  @egress_ignored_i_ps = egress_ignored_i_ps
  Jsii::Type.check_type(@egress_ignored_i_ps, JSON.parse(Base64.strict_decode64("eyJjb2xsZWN0aW9uIjp7ImVsZW1lbnR0eXBlIjp7InByaW1pdGl2ZSI6InN0cmluZyJ9LCJraW5kIjoiYXJyYXkifX0=")), "egressIgnoredIPs") unless @egress_ignored_i_ps.nil?
  @egress_ignored_ports = egress_ignored_ports
  Jsii::Type.check_type(@egress_ignored_ports, JSON.parse(Base64.strict_decode64("eyJjb2xsZWN0aW9uIjp7ImVsZW1lbnR0eXBlIjp7InByaW1pdGl2ZSI6Im51bWJlciJ9LCJraW5kIjoiYXJyYXkifX0=")), "egressIgnoredPorts") unless @egress_ignored_ports.nil?
  @ignored_gid = ignored_gid
  Jsii::Type.check_type(@ignored_gid, JSON.parse(Base64.strict_decode64("eyJwcmltaXRpdmUiOiJudW1iZXIifQ==")), "ignoredGID") unless @ignored_gid.nil?
  @ignored_uid = ignored_uid
  Jsii::Type.check_type(@ignored_uid, JSON.parse(Base64.strict_decode64("eyJwcmltaXRpdmUiOiJudW1iZXIifQ==")), "ignoredUID") unless @ignored_uid.nil?
end

Instance Attribute Details

#app_portsArray<Numeric> (readonly)

The list of ports that the application uses.

Network traffic to these ports is forwarded to the ProxyIngressPort and ProxyEgressPort.

Returns:

  • (Array<Numeric>)


36
37
38
# File 'ecs/app_mesh_proxy_configuration_props.rb', line 36

def app_ports
  @app_ports
end

#egress_ignored_i_psArray<String>? (readonly)

The egress traffic going to these specified IP addresses is ignored and not redirected to the ProxyEgressPort.

It can be an empty list.

Returns:

  • (Array<String>, nil)


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

def egress_ignored_i_ps
  @egress_ignored_i_ps
end

#egress_ignored_portsArray<Numeric>? (readonly)

The egress traffic going to these specified ports is ignored and not redirected to the ProxyEgressPort.

It can be an empty list.

Returns:

  • (Array<Numeric>, nil)


56
57
58
# File 'ecs/app_mesh_proxy_configuration_props.rb', line 56

def egress_ignored_ports
  @egress_ignored_ports
end

#ignored_gidNumeric? (readonly)

The group ID (GID) of the proxy container as defined by the user parameter in a container definition.

This is used to ensure the proxy ignores its own traffic. If IgnoredUID is specified, this field can be empty.

Returns:

  • (Numeric, nil)


62
63
64
# File 'ecs/app_mesh_proxy_configuration_props.rb', line 62

def ignored_gid
  @ignored_gid
end

#ignored_uidNumeric? (readonly)

The user ID (UID) of the proxy container as defined by the user parameter in a container definition.

This is used to ensure the proxy ignores its own traffic. If IgnoredGID is specified, this field can be empty.

Returns:

  • (Numeric, nil)


68
69
70
# File 'ecs/app_mesh_proxy_configuration_props.rb', line 68

def ignored_uid
  @ignored_uid
end

#proxy_egress_portNumeric (readonly)

Specifies the port that outgoing traffic from the AppPorts is directed to.

Returns:

  • (Numeric)


40
41
42
# File 'ecs/app_mesh_proxy_configuration_props.rb', line 40

def proxy_egress_port
  @proxy_egress_port
end

#proxy_ingress_portNumeric (readonly)

Specifies the port that incoming traffic to the AppPorts is directed to.

Returns:

  • (Numeric)


44
45
46
# File 'ecs/app_mesh_proxy_configuration_props.rb', line 44

def proxy_ingress_port
  @proxy_ingress_port
end

Class Method Details

.jsii_propertiesObject



70
71
72
73
74
75
76
77
78
79
80
# File 'ecs/app_mesh_proxy_configuration_props.rb', line 70

def self.jsii_properties
  {
    :app_ports => "appPorts",
    :proxy_egress_port => "proxyEgressPort",
    :proxy_ingress_port => "proxyIngressPort",
    :egress_ignored_i_ps => "egressIgnoredIPs",
    :egress_ignored_ports => "egressIgnoredPorts",
    :ignored_gid => "ignoredGID",
    :ignored_uid => "ignoredUID",
  }
end

Instance Method Details

#to_jsiiObject



82
83
84
85
86
87
88
89
90
91
92
93
94
# File 'ecs/app_mesh_proxy_configuration_props.rb', line 82

def to_jsii
  result = {}
  result.merge!({
    "appPorts" => @app_ports,
    "proxyEgressPort" => @proxy_egress_port,
    "proxyIngressPort" => @proxy_ingress_port,
    "egressIgnoredIPs" => @egress_ignored_i_ps,
    "egressIgnoredPorts" => @egress_ignored_ports,
    "ignoredGID" => @ignored_gid,
    "ignoredUID" => @ignored_uid,
  })
  result.compact
end