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.



8551
8552
8553
8554
8555
8556
8557
8558
8559
8560
8561
8562
8563
8564
8565
8566
8567
8568
8569
8570
8571
8572
8573
8574
8575
8576
8577
8578
8579
8580
8581
8582
8583
8584
8585
8586
8587
# File 'lib/models/porcelain.rb', line 8551

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.



8517
8518
8519
# File 'lib/models/porcelain.rb', line 8517

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.



8519
8520
8521
# File 'lib/models/porcelain.rb', line 8519

def bind_interface
  @bind_interface
end

#egress_filterObject

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



8521
8522
8523
# File 'lib/models/porcelain.rb', line 8521

def egress_filter
  @egress_filter
end

#healthyObject

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



8523
8524
8525
# File 'lib/models/porcelain.rb', line 8523

def healthy
  @healthy
end

#hostnameObject

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



8525
8526
8527
# File 'lib/models/porcelain.rb', line 8525

def hostname
  @hostname
end

#idObject

Unique identifier of the Resource.



8527
8528
8529
# File 'lib/models/porcelain.rb', line 8527

def id
  @id
end

#key_typeObject

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



8529
8530
8531
# File 'lib/models/porcelain.rb', line 8529

def key_type
  @key_type
end

#nameObject

Unique human-readable name of the Resource.



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

def name
  @name
end

#portObject

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



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

def port
  @port
end

#port_forwardingObject

Whether port forwarding is allowed through this server.



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

def port_forwarding
  @port_forwarding
end

#port_overrideObject

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



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

def port_override
  @port_override
end

#remote_identity_group_idObject

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



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

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.



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

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.



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

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)



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

def subdomain
  @subdomain
end

#tagsObject

Tags is a map of key, value pairs.



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

def tags
  @tags
end

#usernameObject

The username to authenticate with.



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

def username
  @username
end

Instance Method Details

#to_json(options = {}) ⇒ Object



8589
8590
8591
8592
8593
8594
8595
# File 'lib/models/porcelain.rb', line 8589

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