Class: SDM::Cockroach
- Inherits:
-
Object
- Object
- SDM::Cockroach
- Defined in:
- lib/models/porcelain.rb
Instance Attribute Summary collapse
-
#bind_interface ⇒ Object
The bind interface is the IP address to which the port override of a resource is bound (for example, 127.0.0.1).
-
#database ⇒ Object
The initial database to connect to.
-
#egress_filter ⇒ Object
A filter applied to the routing logic to pin datasource to nodes.
-
#healthy ⇒ Object
True if the datasource is reachable and the credentials are valid.
-
#hostname ⇒ Object
The host to dial to initiate a connection from the egress node to this resource.
-
#id ⇒ Object
Unique identifier of the Resource.
-
#name ⇒ Object
Unique human-readable name of the Resource.
-
#override_database ⇒ Object
If set, the database configured cannot be changed by users.
-
#password ⇒ Object
The password to authenticate with.
-
#port ⇒ Object
The port to dial to initiate a connection from the egress node to this resource.
-
#port_override ⇒ Object
The local port used by clients to connect to this resource.
-
#secret_store_id ⇒ Object
ID of the secret store containing credentials for this resource, if any.
-
#subdomain ⇒ Object
Subdomain is the local DNS address.
-
#tags ⇒ Object
Tags is a map of key, value pairs.
-
#username ⇒ Object
The username to authenticate with.
Instance Method Summary collapse
-
#initialize(bind_interface: nil, database: nil, egress_filter: nil, healthy: nil, hostname: nil, id: nil, name: nil, override_database: nil, password: nil, port: nil, port_override: nil, secret_store_id: nil, subdomain: nil, tags: nil, username: nil) ⇒ Cockroach
constructor
A new instance of Cockroach.
- #to_json(options = {}) ⇒ Object
Constructor Details
#initialize(bind_interface: nil, database: nil, egress_filter: nil, healthy: nil, hostname: nil, id: nil, name: nil, override_database: nil, password: nil, port: nil, port_override: nil, secret_store_id: nil, subdomain: nil, tags: nil, username: nil) ⇒ Cockroach
Returns a new instance of Cockroach.
3185 3186 3187 3188 3189 3190 3191 3192 3193 3194 3195 3196 3197 3198 3199 3200 3201 3202 3203 3204 3205 3206 3207 3208 3209 3210 3211 3212 3213 3214 3215 3216 3217 |
# File 'lib/models/porcelain.rb', line 3185 def initialize( bind_interface: nil, database: nil, egress_filter: nil, healthy: nil, hostname: nil, id: nil, name: nil, override_database: nil, password: nil, port: nil, port_override: nil, secret_store_id: nil, subdomain: nil, tags: nil, username: nil ) @bind_interface = bind_interface == nil ? "" : bind_interface @database = database == nil ? "" : database @egress_filter = egress_filter == nil ? "" : egress_filter @healthy = healthy == nil ? false : healthy @hostname = hostname == nil ? "" : hostname @id = id == nil ? "" : id @name = name == nil ? "" : name @override_database = override_database == nil ? false : override_database @password = password == nil ? "" : password @port = port == nil ? 0 : port @port_override = port_override == nil ? 0 : port_override @secret_store_id = secret_store_id == nil ? "" : secret_store_id @subdomain = subdomain == nil ? "" : subdomain @tags = == nil ? SDM::() : @username = username == nil ? "" : username end |
Instance Attribute Details
#bind_interface ⇒ Object
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.
3155 3156 3157 |
# File 'lib/models/porcelain.rb', line 3155 def bind_interface @bind_interface end |
#database ⇒ Object
The initial database to connect to. This setting does not by itself prevent switching to another database after connecting.
3157 3158 3159 |
# File 'lib/models/porcelain.rb', line 3157 def database @database end |
#egress_filter ⇒ Object
A filter applied to the routing logic to pin datasource to nodes.
3159 3160 3161 |
# File 'lib/models/porcelain.rb', line 3159 def egress_filter @egress_filter end |
#healthy ⇒ Object
True if the datasource is reachable and the credentials are valid.
3161 3162 3163 |
# File 'lib/models/porcelain.rb', line 3161 def healthy @healthy end |
#hostname ⇒ Object
The host to dial to initiate a connection from the egress node to this resource.
3163 3164 3165 |
# File 'lib/models/porcelain.rb', line 3163 def hostname @hostname end |
#id ⇒ Object
Unique identifier of the Resource.
3165 3166 3167 |
# File 'lib/models/porcelain.rb', line 3165 def id @id end |
#name ⇒ Object
Unique human-readable name of the Resource.
3167 3168 3169 |
# File 'lib/models/porcelain.rb', line 3167 def name @name end |
#override_database ⇒ Object
If set, the database configured cannot be changed by users. This setting is not recommended for most use cases, as some clients will insist their database has changed when it has not, leading to user confusion.
3169 3170 3171 |
# File 'lib/models/porcelain.rb', line 3169 def override_database @override_database end |
#password ⇒ Object
The password to authenticate with.
3171 3172 3173 |
# File 'lib/models/porcelain.rb', line 3171 def password @password end |
#port ⇒ Object
The port to dial to initiate a connection from the egress node to this resource.
3173 3174 3175 |
# File 'lib/models/porcelain.rb', line 3173 def port @port end |
#port_override ⇒ Object
The local port used by clients to connect to this resource.
3175 3176 3177 |
# File 'lib/models/porcelain.rb', line 3175 def port_override @port_override end |
#secret_store_id ⇒ Object
ID of the secret store containing credentials for this resource, if any.
3177 3178 3179 |
# File 'lib/models/porcelain.rb', line 3177 def secret_store_id @secret_store_id end |
#subdomain ⇒ Object
Subdomain is the local DNS address. (e.g. app-prod1 turns into app-prod1.your-org-name.sdm.network)
3179 3180 3181 |
# File 'lib/models/porcelain.rb', line 3179 def subdomain @subdomain end |
#tags ⇒ Object
Tags is a map of key, value pairs.
3181 3182 3183 |
# File 'lib/models/porcelain.rb', line 3181 def @tags end |
#username ⇒ Object
The username to authenticate with.
3183 3184 3185 |
# File 'lib/models/porcelain.rb', line 3183 def username @username end |
Instance Method Details
#to_json(options = {}) ⇒ Object
3219 3220 3221 3222 3223 3224 3225 |
# File 'lib/models/porcelain.rb', line 3219 def to_json( = {}) hash = {} self.instance_variables.each do |var| hash[var.id2name.delete_prefix("@")] = self.instance_variable_get var end hash.to_json end |