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.



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
8603
# File 'lib/models/porcelain.rb', line 8567

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.



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

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.



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

def bind_interface
  @bind_interface
end

#egress_filterObject

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



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

def egress_filter
  @egress_filter
end

#healthyObject

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



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

def healthy
  @healthy
end

#hostnameObject

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



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

def hostname
  @hostname
end

#idObject

Unique identifier of the Resource.



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

def id
  @id
end

#key_typeObject

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



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

def key_type
  @key_type
end

#nameObject

Unique human-readable name of the Resource.



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

def name
  @name
end

#portObject

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



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

def port
  @port
end

#port_forwardingObject

Whether port forwarding is allowed through this server.



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

def port_forwarding
  @port_forwarding
end

#port_overrideObject

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



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

def port_override
  @port_override
end

#remote_identity_group_idObject

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



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

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.



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

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.



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

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)



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

def subdomain
  @subdomain
end

#tagsObject

Tags is a map of key, value pairs.



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

def tags
  @tags
end

#usernameObject

The username to authenticate with.



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

def username
  @username
end

Instance Method Details

#to_json(options = {}) ⇒ Object



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

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