Class: SDM::SSHCert

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, remote_identity_group_id: nil, remote_identity_healthcheck_username: nil, secret_store_id: nil, subdomain: nil, tags: nil, username: nil) ⇒ SSHCert

Returns a new instance of SSHCert.



8566
8567
8568
8569
8570
8571
8572
8573
8574
8575
8576
8577
8578
8579
8580
8581
8582
8583
8584
8585
8586
8587
8588
8589
8590
8591
8592
8593
8594
8595
8596
8597
8598
8599
8600
8601
8602
# File 'lib/models/porcelain.rb', line 8566

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,
  remote_identity_group_id: nil,
  remote_identity_healthcheck_username: 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
  @remote_identity_group_id = remote_identity_group_id == nil ? "" : remote_identity_group_id
  @remote_identity_healthcheck_username = remote_identity_healthcheck_username == nil ? "" : remote_identity_healthcheck_username
  @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.



8532
8533
8534
# File 'lib/models/porcelain.rb', line 8532

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.



8534
8535
8536
# File 'lib/models/porcelain.rb', line 8534

def bind_interface
  @bind_interface
end

#egress_filterObject

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



8536
8537
8538
# File 'lib/models/porcelain.rb', line 8536

def egress_filter
  @egress_filter
end

#healthyObject

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



8538
8539
8540
# File 'lib/models/porcelain.rb', line 8538

def healthy
  @healthy
end

#hostnameObject

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



8540
8541
8542
# File 'lib/models/porcelain.rb', line 8540

def hostname
  @hostname
end

#idObject

Unique identifier of the Resource.



8542
8543
8544
# File 'lib/models/porcelain.rb', line 8542

def id
  @id
end

#key_typeObject

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



8544
8545
8546
# File 'lib/models/porcelain.rb', line 8544

def key_type
  @key_type
end

#nameObject

Unique human-readable name of the Resource.



8546
8547
8548
# File 'lib/models/porcelain.rb', line 8546

def name
  @name
end

#portObject

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



8548
8549
8550
# File 'lib/models/porcelain.rb', line 8548

def port
  @port
end

#port_forwardingObject

Whether port forwarding is allowed through this server.



8550
8551
8552
# File 'lib/models/porcelain.rb', line 8550

def port_forwarding
  @port_forwarding
end

#port_overrideObject

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



8552
8553
8554
# File 'lib/models/porcelain.rb', line 8552

def port_override
  @port_override
end

#remote_identity_group_idObject

The ID of the remote identity group to use for remote identity connections.



8554
8555
8556
# File 'lib/models/porcelain.rb', line 8554

def remote_identity_group_id
  @remote_identity_group_id
end

#remote_identity_healthcheck_usernameObject

The username to use for healthchecks, when clients otherwise connect with their own remote identity username.



8556
8557
8558
# File 'lib/models/porcelain.rb', line 8556

def remote_identity_healthcheck_username
  @remote_identity_healthcheck_username
end

#secret_store_idObject

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



8558
8559
8560
# File 'lib/models/porcelain.rb', line 8558

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)



8560
8561
8562
# File 'lib/models/porcelain.rb', line 8560

def subdomain
  @subdomain
end

#tagsObject

Tags is a map of key, value pairs.



8562
8563
8564
# File 'lib/models/porcelain.rb', line 8562

def tags
  @tags
end

#usernameObject

The username to authenticate with.



8564
8565
8566
# File 'lib/models/porcelain.rb', line 8564

def username
  @username
end

Instance Method Details

#to_json(options = {}) ⇒ Object



8604
8605
8606
8607
8608
8609
8610
# File 'lib/models/porcelain.rb', line 8604

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