Class: SDM::Relay
- Inherits:
-
Object
- Object
- SDM::Relay
- Defined in:
- lib/models/porcelain.rb
Overview
Relay represents a StrongDM CLI installation running in relay mode.
Instance Attribute Summary collapse
-
#device ⇒ Object
Device is a read only device name uploaded by the gateway process when it comes online.
-
#gateway_filter ⇒ Object
GatewayFilter can be used to restrict the peering between relays and gateways.
-
#id ⇒ Object
Unique identifier of the Relay.
-
#location ⇒ Object
Location is a read only network location uploaded by the gateway process when it comes online.
-
#maintenance_windows ⇒ Object
Maintenance Windows define when this node is allowed to restart.
-
#name ⇒ Object
Unique human-readable name of the Relay.
-
#state ⇒ Object
The current state of the relay, one of the NodeState constants.
-
#tags ⇒ Object
Tags is a map of key, value pairs.
-
#version ⇒ Object
Version is a read only sdm binary version uploaded by the gateway process when it comes online.
Instance Method Summary collapse
-
#initialize(device: nil, gateway_filter: nil, id: nil, location: nil, maintenance_windows: nil, name: nil, state: nil, tags: nil, version: nil) ⇒ Relay
constructor
A new instance of Relay.
- #to_json(options = {}) ⇒ Object
Constructor Details
#initialize(device: nil, gateway_filter: nil, id: nil, location: nil, maintenance_windows: nil, name: nil, state: nil, tags: nil, version: nil) ⇒ Relay
Returns a new instance of Relay.
12266 12267 12268 12269 12270 12271 12272 12273 12274 12275 12276 12277 12278 12279 12280 12281 12282 12283 12284 12285 12286 |
# File 'lib/models/porcelain.rb', line 12266 def initialize( device: nil, gateway_filter: nil, id: nil, location: nil, maintenance_windows: nil, name: nil, state: nil, tags: nil, version: nil ) @device = device == nil ? "" : device @gateway_filter = gateway_filter == nil ? "" : gateway_filter @id = id == nil ? "" : id @location = location == nil ? "" : location @maintenance_windows = maintenance_windows == nil ? [] : maintenance_windows @name = name == nil ? "" : name @state = state == nil ? "" : state @tags = == nil ? SDM::() : @version = version == nil ? "" : version end |
Instance Attribute Details
#device ⇒ Object
Device is a read only device name uploaded by the gateway process when it comes online.
12234 12235 12236 |
# File 'lib/models/porcelain.rb', line 12234 def device @device end |
#gateway_filter ⇒ Object
GatewayFilter can be used to restrict the peering between relays and gateways. Deprecated.
12237 12238 12239 |
# File 'lib/models/porcelain.rb', line 12237 def gateway_filter @gateway_filter end |
#id ⇒ Object
Unique identifier of the Relay.
12239 12240 12241 |
# File 'lib/models/porcelain.rb', line 12239 def id @id end |
#location ⇒ Object
Location is a read only network location uploaded by the gateway process when it comes online.
12242 12243 12244 |
# File 'lib/models/porcelain.rb', line 12242 def location @location end |
#maintenance_windows ⇒ Object
Maintenance Windows define when this node is allowed to restart. If a node is requested to restart, it will check each window to determine if any of them permit it to restart, and if any do, it will. This check is repeated per window until the restart is successfully completed.
If not set here, may be set on the command line or via an environment variable on the process itself; any server setting will take precedence over local settings. This setting is ineffective for nodes below version 38.44.0.
If this setting is not applied via this remote configuration or via local configuration, the default setting is used: always allow restarts if serving no connections, and allow a restart even if serving connections between 7-8 UTC, any day.
12255 12256 12257 |
# File 'lib/models/porcelain.rb', line 12255 def maintenance_windows @maintenance_windows end |
#name ⇒ Object
Unique human-readable name of the Relay. Node names must include only letters, numbers, and hyphens (no spaces, underscores, or other special characters). Generated if not provided on create.
12257 12258 12259 |
# File 'lib/models/porcelain.rb', line 12257 def name @name end |
#state ⇒ Object
The current state of the relay, one of the NodeState constants.
12259 12260 12261 |
# File 'lib/models/porcelain.rb', line 12259 def state @state end |
#tags ⇒ Object
Tags is a map of key, value pairs.
12261 12262 12263 |
# File 'lib/models/porcelain.rb', line 12261 def @tags end |
#version ⇒ Object
Version is a read only sdm binary version uploaded by the gateway process when it comes online.
12264 12265 12266 |
# File 'lib/models/porcelain.rb', line 12264 def version @version end |
Instance Method Details
#to_json(options = {}) ⇒ Object
12288 12289 12290 12291 12292 12293 12294 |
# File 'lib/models/porcelain.rb', line 12288 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 |