Class: SDM::AuroraMysql

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, database: nil, egress_filter: nil, healthy: nil, hostname: nil, id: nil, name: nil, password: nil, port: nil, port_override: nil, proxy_cluster_id: nil, require_native_auth: nil, secret_store_id: nil, subdomain: nil, tags: nil, use_azure_single_server_usernames: nil, username: nil) ⇒ AuroraMysql

Returns a new instance of AuroraMysql.



3171
3172
3173
3174
3175
3176
3177
3178
3179
3180
3181
3182
3183
3184
3185
3186
3187
3188
3189
3190
3191
3192
3193
3194
3195
3196
3197
3198
3199
3200
3201
3202
3203
3204
3205
3206
3207
# File 'lib/models/porcelain.rb', line 3171

def initialize(
  bind_interface: nil,
  database: nil,
  egress_filter: nil,
  healthy: nil,
  hostname: nil,
  id: nil,
  name: nil,
  password: nil,
  port: nil,
  port_override: nil,
  proxy_cluster_id: nil,
  require_native_auth: nil,
  secret_store_id: nil,
  subdomain: nil,
  tags: nil,
  use_azure_single_server_usernames: 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
  @password = password == nil ? "" : password
  @port = port == nil ? 0 : port
  @port_override = port_override == nil ? 0 : port_override
  @proxy_cluster_id = proxy_cluster_id == nil ? "" : proxy_cluster_id
  @require_native_auth = require_native_auth == nil ? false : require_native_auth
  @secret_store_id = secret_store_id == nil ? "" : secret_store_id
  @subdomain = subdomain == nil ? "" : subdomain
  @tags = tags == nil ? SDM::_porcelain_zero_value_tags() : tags
  @use_azure_single_server_usernames = use_azure_single_server_usernames == nil ? false : use_azure_single_server_usernames
  @username = username == nil ? "" : username
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.



3137
3138
3139
# File 'lib/models/porcelain.rb', line 3137

def bind_interface
  @bind_interface
end

#databaseObject

The database for healthchecks. Does not affect client requests



3139
3140
3141
# File 'lib/models/porcelain.rb', line 3139

def database
  @database
end

#egress_filterObject

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



3141
3142
3143
# File 'lib/models/porcelain.rb', line 3141

def egress_filter
  @egress_filter
end

#healthyObject

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



3143
3144
3145
# File 'lib/models/porcelain.rb', line 3143

def healthy
  @healthy
end

#hostnameObject

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



3145
3146
3147
# File 'lib/models/porcelain.rb', line 3145

def hostname
  @hostname
end

#idObject

Unique identifier of the Resource.



3147
3148
3149
# File 'lib/models/porcelain.rb', line 3147

def id
  @id
end

#nameObject

Unique human-readable name of the Resource.



3149
3150
3151
# File 'lib/models/porcelain.rb', line 3149

def name
  @name
end

#passwordObject

The password to authenticate with.



3151
3152
3153
# File 'lib/models/porcelain.rb', line 3151

def password
  @password
end

#portObject

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



3153
3154
3155
# File 'lib/models/porcelain.rb', line 3153

def port
  @port
end

#port_overrideObject

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



3155
3156
3157
# File 'lib/models/porcelain.rb', line 3155

def port_override
  @port_override
end

#proxy_cluster_idObject

ID of the proxy cluster for this resource, if any.



3157
3158
3159
# File 'lib/models/porcelain.rb', line 3157

def proxy_cluster_id
  @proxy_cluster_id
end

#require_native_authObject

Whether native auth (mysql_native_password) is used for all connections (for backwards compatibility)



3159
3160
3161
# File 'lib/models/porcelain.rb', line 3159

def require_native_auth
  @require_native_auth
end

#secret_store_idObject

ID of the secret store containing credentials for this resource, if any.



3161
3162
3163
# File 'lib/models/porcelain.rb', line 3161

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)



3163
3164
3165
# File 'lib/models/porcelain.rb', line 3163

def subdomain
  @subdomain
end

#tagsObject

Tags is a map of key, value pairs.



3165
3166
3167
# File 'lib/models/porcelain.rb', line 3165

def tags
  @tags
end

#use_azure_single_server_usernamesObject

If true, appends the hostname to the username when hitting a database.azure.com address



3167
3168
3169
# File 'lib/models/porcelain.rb', line 3167

def use_azure_single_server_usernames
  @use_azure_single_server_usernames
end

#usernameObject

The username to authenticate with.



3169
3170
3171
# File 'lib/models/porcelain.rb', line 3169

def username
  @username
end

Instance Method Details

#to_json(options = {}) ⇒ Object



3209
3210
3211
3212
3213
3214
3215
# File 'lib/models/porcelain.rb', line 3209

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