Class: SDM::SSH

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

Instance Attribute Summary collapse

Instance Method Summary collapse

Constructor Details

#initialize(allow_deprecated_key_exchanges: nil, bind_interface: nil, egress_filter: nil, healthy: nil, hostname: nil, id: nil, key_type: nil, name: nil, port: nil, port_forwarding: nil, port_override: nil, proxy_cluster_id: nil, public_key: nil, secret_store_id: nil, subdomain: nil, tags: nil, username: nil) ⇒ SSH

Returns a new instance of SSH.



11921
11922
11923
11924
11925
11926
11927
11928
11929
11930
11931
11932
11933
11934
11935
11936
11937
11938
11939
11940
11941
11942
11943
11944
11945
11946
11947
11948
11949
11950
11951
11952
11953
11954
11955
11956
11957
# File 'lib/models/porcelain.rb', line 11921

def initialize(
  allow_deprecated_key_exchanges: nil,
  bind_interface: nil,
  egress_filter: nil,
  healthy: nil,
  hostname: nil,
  id: nil,
  key_type: nil,
  name: nil,
  port: nil,
  port_forwarding: nil,
  port_override: nil,
  proxy_cluster_id: nil,
  public_key: nil,
  secret_store_id: nil,
  subdomain: nil,
  tags: nil,
  username: nil
)
  @allow_deprecated_key_exchanges = allow_deprecated_key_exchanges == nil ? false : allow_deprecated_key_exchanges
  @bind_interface = bind_interface == nil ? "" : bind_interface
  @egress_filter = egress_filter == nil ? "" : egress_filter
  @healthy = healthy == nil ? false : healthy
  @hostname = hostname == nil ? "" : hostname
  @id = id == nil ? "" : id
  @key_type = key_type == nil ? "" : key_type
  @name = name == nil ? "" : name
  @port = port == nil ? 0 : port
  @port_forwarding = port_forwarding == nil ? false : port_forwarding
  @port_override = port_override == nil ? 0 : port_override
  @proxy_cluster_id = proxy_cluster_id == nil ? "" : proxy_cluster_id
  @public_key = public_key == nil ? "" : public_key
  @secret_store_id = secret_store_id == nil ? "" : secret_store_id
  @subdomain = subdomain == nil ? "" : subdomain
  @tags = tags == nil ? SDM::_porcelain_zero_value_tags() : tags
  @username = username == nil ? "" : username
end

Instance Attribute Details

#allow_deprecated_key_exchangesObject

Whether deprecated, insecure key exchanges are allowed for use to connect to the target ssh server.



11887
11888
11889
# File 'lib/models/porcelain.rb', line 11887

def allow_deprecated_key_exchanges
  @allow_deprecated_key_exchanges
end

#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.



11889
11890
11891
# File 'lib/models/porcelain.rb', line 11889

def bind_interface
  @bind_interface
end

#egress_filterObject

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



11891
11892
11893
# File 'lib/models/porcelain.rb', line 11891

def egress_filter
  @egress_filter
end

#healthyObject

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



11893
11894
11895
# File 'lib/models/porcelain.rb', line 11893

def healthy
  @healthy
end

#hostnameObject

The host to dial to initiate a connection from the egress node to this resource.



11895
11896
11897
# File 'lib/models/porcelain.rb', line 11895

def hostname
  @hostname
end

#idObject

Unique identifier of the Resource.



11897
11898
11899
# File 'lib/models/porcelain.rb', line 11897

def id
  @id
end

#key_typeObject

The key type to use e.g. rsa-2048 or ed25519



11899
11900
11901
# File 'lib/models/porcelain.rb', line 11899

def key_type
  @key_type
end

#nameObject

Unique human-readable name of the Resource.



11901
11902
11903
# File 'lib/models/porcelain.rb', line 11901

def name
  @name
end

#portObject

The port to dial to initiate a connection from the egress node to this resource.



11903
11904
11905
# File 'lib/models/porcelain.rb', line 11903

def port
  @port
end

#port_forwardingObject

Whether port forwarding is allowed through this server.



11905
11906
11907
# File 'lib/models/porcelain.rb', line 11905

def port_forwarding
  @port_forwarding
end

#port_overrideObject

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



11907
11908
11909
# File 'lib/models/porcelain.rb', line 11907

def port_override
  @port_override
end

#proxy_cluster_idObject

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



11909
11910
11911
# File 'lib/models/porcelain.rb', line 11909

def proxy_cluster_id
  @proxy_cluster_id
end

#public_keyObject

The public key to append to a server's authorized keys. This will be generated after resource creation.



11911
11912
11913
# File 'lib/models/porcelain.rb', line 11911

def public_key
  @public_key
end

#secret_store_idObject

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



11913
11914
11915
# File 'lib/models/porcelain.rb', line 11913

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)



11915
11916
11917
# File 'lib/models/porcelain.rb', line 11915

def subdomain
  @subdomain
end

#tagsObject

Tags is a map of key, value pairs.



11917
11918
11919
# File 'lib/models/porcelain.rb', line 11917

def tags
  @tags
end

#usernameObject

The username to authenticate with.



11919
11920
11921
# File 'lib/models/porcelain.rb', line 11919

def username
  @username
end

Instance Method Details

#to_json(options = {}) ⇒ Object



11959
11960
11961
11962
11963
11964
11965
# File 'lib/models/porcelain.rb', line 11959

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