Class: SDM::AWSInstanceProfile

Inherits:
Object
  • Object
show all
Defined in:
lib/models/porcelain.rb

Instance Attribute Summary collapse

Instance Method Summary collapse

Constructor Details

#initialize(bind_interface: nil, egress_filter: nil, enable_env_variables: nil, healthy: nil, id: nil, name: nil, port_override: nil, proxy_cluster_id: nil, region: nil, role_arn: nil, role_external_id: nil, secret_store_id: nil, subdomain: nil, tags: nil) ⇒ AWSInstanceProfile

Returns a new instance of AWSInstanceProfile.



839
840
841
842
843
844
845
846
847
848
849
850
851
852
853
854
855
856
857
858
859
860
861
862
863
864
865
866
867
868
869
# File 'lib/models/porcelain.rb', line 839

def initialize(
  bind_interface: nil,
  egress_filter: nil,
  enable_env_variables: nil,
  healthy: nil,
  id: nil,
  name: nil,
  port_override: nil,
  proxy_cluster_id: nil,
  region: nil,
  role_arn: nil,
  role_external_id: nil,
  secret_store_id: nil,
  subdomain: nil,
  tags: nil
)
  @bind_interface = bind_interface == nil ? "" : bind_interface
  @egress_filter = egress_filter == nil ? "" : egress_filter
  @enable_env_variables = enable_env_variables == nil ? false : enable_env_variables
  @healthy = healthy == nil ? false : healthy
  @id = id == nil ? "" : id
  @name = name == nil ? "" : name
  @port_override = port_override == nil ? 0 : port_override
  @proxy_cluster_id = proxy_cluster_id == nil ? "" : proxy_cluster_id
  @region = region == nil ? "" : region
  @role_arn = role_arn == nil ? "" : role_arn
  @role_external_id = role_external_id == nil ? "" : role_external_id
  @secret_store_id = secret_store_id == nil ? "" : secret_store_id
  @subdomain = subdomain == nil ? "" : subdomain
  @tags = tags == nil ? SDM::_porcelain_zero_value_tags() : tags
end

Instance Attribute Details

#bind_interfaceObject

The bind interface is the IP address to which the port override of a resource is bound (for example, 127.0.0.1). It is automatically generated if not provided and may also be set to one of the ResourceIPAllocationMode constants to select between VNM, loopback, or default allocation.



811
812
813
# File 'lib/models/porcelain.rb', line 811

def bind_interface
  @bind_interface
end

#egress_filterObject

A filter applied to the routing logic to pin datasource to nodes.



813
814
815
# File 'lib/models/porcelain.rb', line 813

def egress_filter
  @egress_filter
end

#enable_env_variablesObject

If true, prefer environment variables to authenticate connection even if EC2 roles are configured.



815
816
817
# File 'lib/models/porcelain.rb', line 815

def enable_env_variables
  @enable_env_variables
end

#healthyObject

True if the datasource is reachable and the credentials are valid.



817
818
819
# File 'lib/models/porcelain.rb', line 817

def healthy
  @healthy
end

#idObject

Unique identifier of the Resource.



819
820
821
# File 'lib/models/porcelain.rb', line 819

def id
  @id
end

#nameObject

Unique human-readable name of the Resource.



821
822
823
# File 'lib/models/porcelain.rb', line 821

def name
  @name
end

#port_overrideObject

The local port used by clients to connect to this resource. It is automatically generated if not provided on create and may be re-generated on update by specifying a value of -1.



823
824
825
# File 'lib/models/porcelain.rb', line 823

def port_override
  @port_override
end

#proxy_cluster_idObject

ID of the proxy cluster for this resource, if any.



825
826
827
# File 'lib/models/porcelain.rb', line 825

def proxy_cluster_id
  @proxy_cluster_id
end

#regionObject

The AWS region to connect to.



827
828
829
# File 'lib/models/porcelain.rb', line 827

def region
  @region
end

#role_arnObject

The role to assume after logging in.



829
830
831
# File 'lib/models/porcelain.rb', line 829

def role_arn
  @role_arn
end

#role_external_idObject

The external ID to associate with assume role requests. Does nothing if a role ARN is not provided.



831
832
833
# File 'lib/models/porcelain.rb', line 831

def role_external_id
  @role_external_id
end

#secret_store_idObject

ID of the secret store containing credentials for this resource, if any.



833
834
835
# File 'lib/models/porcelain.rb', line 833

def secret_store_id
  @secret_store_id
end

#subdomainObject

Subdomain is the local DNS address. (e.g. app-prod1 turns into app-prod1.your-org-name.sdm.network)



835
836
837
# File 'lib/models/porcelain.rb', line 835

def subdomain
  @subdomain
end

#tagsObject

Tags is a map of key, value pairs.



837
838
839
# File 'lib/models/porcelain.rb', line 837

def tags
  @tags
end

Instance Method Details

#to_json(options = {}) ⇒ Object



871
872
873
874
875
876
877
# File 'lib/models/porcelain.rb', line 871

def to_json(options = {})
  hash = {}
  self.instance_variables.each do |var|
    hash[var.id2name.delete_prefix("@")] = self.instance_variable_get var
  end
  hash.to_json
end