Class: SDM::PostgresEngine

Inherits:
Object
  • Object
show all
Defined in:
lib/models/porcelain.rb

Overview

PostgresEngine is currently unstable, and its API may change, or it may be removed, without a major version bump.

Instance Attribute Summary collapse

Instance Method Summary collapse

Constructor Details

#initialize(hostname: nil, id: nil, key_rotation_interval_days: nil, name: nil, password: nil, port: nil, public_key: nil, secret_store_id: nil, secret_store_root_path: nil, tags: nil, username: nil) ⇒ PostgresEngine



12174
12175
12176
12177
12178
12179
12180
12181
12182
12183
12184
12185
12186
12187
12188
12189
12190
12191
12192
12193
12194
12195
12196
12197
12198
# File 'lib/models/porcelain.rb', line 12174

def initialize(
  hostname: nil,
  id: nil,
  key_rotation_interval_days: nil,
  name: nil,
  password: nil,
  port: nil,
  public_key: nil,
  secret_store_id: nil,
  secret_store_root_path: nil,
  tags: nil,
  username: nil
)
  @hostname = hostname == nil ? "" : hostname
  @id = id == nil ? "" : id
  @key_rotation_interval_days = key_rotation_interval_days == nil ? 0 : key_rotation_interval_days
  @name = name == nil ? "" : name
  @password = password == nil ? "" : password
  @port = port == nil ? 0 : port
  @public_key = public_key == nil ? "" : public_key
  @secret_store_id = secret_store_id == nil ? "" : secret_store_id
  @secret_store_root_path = secret_store_root_path == nil ? "" : secret_store_root_path
  @tags = tags == nil ? SDM::_porcelain_zero_value_tags() : tags
  @username = username == nil ? "" : username
end

Instance Attribute Details

#hostnameObject

Hostname is the hostname or IP address of the Postgres server.



12152
12153
12154
# File 'lib/models/porcelain.rb', line 12152

def hostname
  @hostname
end

#idObject

Unique identifier of the Secret Engine.



12154
12155
12156
# File 'lib/models/porcelain.rb', line 12154

def id
  @id
end

#key_rotation_interval_daysObject

An interval of public/private key rotation for secret engine in days



12156
12157
12158
# File 'lib/models/porcelain.rb', line 12156

def key_rotation_interval_days
  @key_rotation_interval_days
end

#nameObject

Unique human-readable name of the Secret Engine.



12158
12159
12160
# File 'lib/models/porcelain.rb', line 12158

def name
  @name
end

#passwordObject

Password is the password to connect to the Postgres server.



12160
12161
12162
# File 'lib/models/porcelain.rb', line 12160

def password
  @password
end

#portObject

Port is the port number of the Postgres server.



12162
12163
12164
# File 'lib/models/porcelain.rb', line 12162

def port
  @port
end

#public_keyObject

Public key linked with a secret engine



12164
12165
12166
# File 'lib/models/porcelain.rb', line 12164

def public_key
  @public_key
end

#secret_store_idObject

Backing secret store identifier



12166
12167
12168
# File 'lib/models/porcelain.rb', line 12166

def secret_store_id
  @secret_store_id
end

#secret_store_root_pathObject

Backing Secret Store root path where managed secrets are going to be stored



12168
12169
12170
# File 'lib/models/porcelain.rb', line 12168

def secret_store_root_path
  @secret_store_root_path
end

#tagsObject

Tags is a map of key, value pairs.



12170
12171
12172
# File 'lib/models/porcelain.rb', line 12170

def tags
  @tags
end

#usernameObject

Username is the username to connect to the Postgres server.



12172
12173
12174
# File 'lib/models/porcelain.rb', line 12172

def username
  @username
end

Instance Method Details

#to_json(options = {}) ⇒ Object



12200
12201
12202
12203
12204
12205
12206
# File 'lib/models/porcelain.rb', line 12200

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