Class: SDM::Postgres
- Inherits:
-
Object
- Object
- SDM::Postgres
- 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) ⇒ Postgres
constructor
A new instance of Postgres.
- #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) ⇒ Postgres
Returns a new instance of Postgres.
7638 7639 7640 7641 7642 7643 7644 7645 7646 7647 7648 7649 7650 7651 7652 7653 7654 7655 7656 7657 7658 7659 7660 7661 7662 7663 7664 7665 7666 7667 7668 7669 7670 |
# File 'lib/models/porcelain.rb', line 7638 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 = == 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.
7608 7609 7610 |
# File 'lib/models/porcelain.rb', line 7608 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.
7610 7611 7612 |
# File 'lib/models/porcelain.rb', line 7610 def database @database end |
#egress_filter ⇒ Object
A filter applied to the routing logic to pin datasource to nodes.
7612 7613 7614 |
# File 'lib/models/porcelain.rb', line 7612 def egress_filter @egress_filter end |
#healthy ⇒ Object
True if the datasource is reachable and the credentials are valid.
7614 7615 7616 |
# File 'lib/models/porcelain.rb', line 7614 def healthy @healthy end |
#hostname ⇒ Object
The host to dial to initiate a connection from the egress node to this resource.
7616 7617 7618 |
# File 'lib/models/porcelain.rb', line 7616 def hostname @hostname end |
#id ⇒ Object
Unique identifier of the Resource.
7618 7619 7620 |
# File 'lib/models/porcelain.rb', line 7618 def id @id end |
#name ⇒ Object
Unique human-readable name of the Resource.
7620 7621 7622 |
# File 'lib/models/porcelain.rb', line 7620 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.
7622 7623 7624 |
# File 'lib/models/porcelain.rb', line 7622 def override_database @override_database end |
#password ⇒ Object
The password to authenticate with.
7624 7625 7626 |
# File 'lib/models/porcelain.rb', line 7624 def password @password end |
#port ⇒ Object
The port to dial to initiate a connection from the egress node to this resource.
7626 7627 7628 |
# File 'lib/models/porcelain.rb', line 7626 def port @port end |
#port_override ⇒ Object
The local port used by clients to connect to this resource.
7628 7629 7630 |
# File 'lib/models/porcelain.rb', line 7628 def port_override @port_override end |
#secret_store_id ⇒ Object
ID of the secret store containing credentials for this resource, if any.
7630 7631 7632 |
# File 'lib/models/porcelain.rb', line 7630 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)
7632 7633 7634 |
# File 'lib/models/porcelain.rb', line 7632 def subdomain @subdomain end |
#tags ⇒ Object
Tags is a map of key, value pairs.
7634 7635 7636 |
# File 'lib/models/porcelain.rb', line 7634 def end |
#username ⇒ Object
The username to authenticate with.
7636 7637 7638 |
# File 'lib/models/porcelain.rb', line 7636 def username @username end |
Instance Method Details
#to_json(options = {}) ⇒ Object
7672 7673 7674 7675 7676 7677 7678 |
# File 'lib/models/porcelain.rb', line 7672 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 |