Class: SDM::AKS

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, certificate_authority: nil, client_certificate: nil, client_key: nil, egress_filter: nil, healthcheck_namespace: nil, healthy: nil, hostname: nil, id: nil, name: nil, port: nil, port_override: nil, remote_identity_group_id: nil, remote_identity_healthcheck_username: nil, secret_store_id: nil, subdomain: nil, tags: nil) ⇒ AKS

Returns a new instance of AKS.



55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
# File 'lib/models/porcelain.rb', line 55

def initialize(
  bind_interface: nil,
  certificate_authority: nil,
  client_certificate: nil,
  client_key: nil,
  egress_filter: nil,
  healthcheck_namespace: nil,
  healthy: nil,
  hostname: nil,
  id: nil,
  name: nil,
  port: nil,
  port_override: nil,
  remote_identity_group_id: nil,
  remote_identity_healthcheck_username: nil,
  secret_store_id: nil,
  subdomain: nil,
  tags: nil
)
  @bind_interface = bind_interface == nil ? "" : bind_interface
  @certificate_authority = certificate_authority == nil ? "" : certificate_authority
  @client_certificate = client_certificate == nil ? "" : client_certificate
  @client_key = client_key == nil ? "" : client_key
  @egress_filter = egress_filter == nil ? "" : egress_filter
  @healthcheck_namespace = healthcheck_namespace == nil ? "" : healthcheck_namespace
  @healthy = healthy == nil ? false : healthy
  @hostname = hostname == nil ? "" : hostname
  @id = id == nil ? "" : id
  @name = name == nil ? "" : name
  @port = port == nil ? 0 : port
  @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
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.



21
22
23
# File 'lib/models/porcelain.rb', line 21

def bind_interface
  @bind_interface
end

#certificate_authorityObject

The CA to authenticate TLS connections with.



23
24
25
# File 'lib/models/porcelain.rb', line 23

def certificate_authority
  @certificate_authority
end

#client_certificateObject

The certificate to authenticate TLS connections with.



25
26
27
# File 'lib/models/porcelain.rb', line 25

def client_certificate
  @client_certificate
end

#client_keyObject

The key to authenticate TLS connections with.



27
28
29
# File 'lib/models/porcelain.rb', line 27

def client_key
  @client_key
end

#egress_filterObject

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



29
30
31
# File 'lib/models/porcelain.rb', line 29

def egress_filter
  @egress_filter
end

#healthcheck_namespaceObject

The path used to check the health of your connection. Defaults to default.



31
32
33
# File 'lib/models/porcelain.rb', line 31

def healthcheck_namespace
  @healthcheck_namespace
end

#healthyObject

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



33
34
35
# File 'lib/models/porcelain.rb', line 33

def healthy
  @healthy
end

#hostnameObject

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



35
36
37
# File 'lib/models/porcelain.rb', line 35

def hostname
  @hostname
end

#idObject

Unique identifier of the Resource.



37
38
39
# File 'lib/models/porcelain.rb', line 37

def id
  @id
end

#nameObject

Unique human-readable name of the Resource.



39
40
41
# File 'lib/models/porcelain.rb', line 39

def name
  @name
end

#portObject

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



41
42
43
# File 'lib/models/porcelain.rb', line 41

def port
  @port
end

#port_overrideObject

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



43
44
45
# File 'lib/models/porcelain.rb', line 43

def port_override
  @port_override
end

#remote_identity_group_idObject

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



45
46
47
# File 'lib/models/porcelain.rb', line 45

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.



47
48
49
# File 'lib/models/porcelain.rb', line 47

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.



49
50
51
# File 'lib/models/porcelain.rb', line 49

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)



51
52
53
# File 'lib/models/porcelain.rb', line 51

def subdomain
  @subdomain
end

#tagsObject

Tags is a map of key, value pairs.



53
54
55
# File 'lib/models/porcelain.rb', line 53

def tags
  @tags
end

Instance Method Details

#to_json(options = {}) ⇒ Object



93
94
95
96
97
98
99
# File 'lib/models/porcelain.rb', line 93

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