Class: SDM::GCP

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, healthy: nil, id: nil, keyfile: nil, name: nil, port_override: nil, proxy_cluster_id: nil, scopes: nil, secret_store_id: nil, subdomain: nil, tags: nil) ⇒ GCP



5966
5967
5968
5969
5970
5971
5972
5973
5974
5975
5976
5977
5978
5979
5980
5981
5982
5983
5984
5985
5986
5987
5988
5989
5990
5991
5992
# File 'lib/models/porcelain.rb', line 5966

def initialize(
  bind_interface: nil,
  egress_filter: nil,
  healthy: nil,
  id: nil,
  keyfile: nil,
  name: nil,
  port_override: nil,
  proxy_cluster_id: nil,
  scopes: nil,
  secret_store_id: nil,
  subdomain: nil,
  tags: nil
)
  @bind_interface = bind_interface == nil ? "" : bind_interface
  @egress_filter = egress_filter == nil ? "" : egress_filter
  @healthy = healthy == nil ? false : healthy
  @id = id == nil ? "" : id
  @keyfile = keyfile == nil ? "" : keyfile
  @name = name == nil ? "" : name
  @port_override = port_override == nil ? 0 : port_override
  @proxy_cluster_id = proxy_cluster_id == nil ? "" : proxy_cluster_id
  @scopes = scopes == nil ? "" : scopes
  @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.



5942
5943
5944
# File 'lib/models/porcelain.rb', line 5942

def bind_interface
  @bind_interface
end

#egress_filterObject

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



5944
5945
5946
# File 'lib/models/porcelain.rb', line 5944

def egress_filter
  @egress_filter
end

#healthyObject

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



5946
5947
5948
# File 'lib/models/porcelain.rb', line 5946

def healthy
  @healthy
end

#idObject

Unique identifier of the Resource.



5948
5949
5950
# File 'lib/models/porcelain.rb', line 5948

def id
  @id
end

#keyfileObject

The service account keyfile to authenticate with.



5950
5951
5952
# File 'lib/models/porcelain.rb', line 5950

def keyfile
  @keyfile
end

#nameObject

Unique human-readable name of the Resource.



5952
5953
5954
# File 'lib/models/porcelain.rb', line 5952

def name
  @name
end

#port_overrideObject

The local port used by clients to connect to this resource.



5954
5955
5956
# File 'lib/models/porcelain.rb', line 5954

def port_override
  @port_override
end

#proxy_cluster_idObject

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



5956
5957
5958
# File 'lib/models/porcelain.rb', line 5956

def proxy_cluster_id
  @proxy_cluster_id
end

#scopesObject

Space separated scopes that this login should assume into when authenticating.



5958
5959
5960
# File 'lib/models/porcelain.rb', line 5958

def scopes
  @scopes
end

#secret_store_idObject

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



5960
5961
5962
# File 'lib/models/porcelain.rb', line 5960

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)



5962
5963
5964
# File 'lib/models/porcelain.rb', line 5962

def subdomain
  @subdomain
end

#tagsObject

Tags is a map of key, value pairs.



5964
5965
5966
# File 'lib/models/porcelain.rb', line 5964

def tags
  @tags
end

Instance Method Details

#to_json(options = {}) ⇒ Object



5994
5995
5996
5997
5998
5999
6000
# File 'lib/models/porcelain.rb', line 5994

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