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.
15105 15106 15107 15108 15109 15110 15111 15112 15113 15114 15115 15116 15117 15118 15119 15120 15121 15122 15123 15124 15125 |
# File 'lib/models/porcelain.rb', line 15105 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 = == 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.
15073 15074 15075 |
# File 'lib/models/porcelain.rb', line 15073 def device @device end |
#gateway_filter ⇒ Object
GatewayFilter can be used to restrict the peering between relays and gateways. Deprecated.
15076 15077 15078 |
# File 'lib/models/porcelain.rb', line 15076 def gateway_filter @gateway_filter end |
#id ⇒ Object
Unique identifier of the Relay.
15078 15079 15080 |
# File 'lib/models/porcelain.rb', line 15078 def id @id end |
#location ⇒ Object
Location is a read only network location uploaded by the gateway process when it comes online.
15081 15082 15083 |
# File 'lib/models/porcelain.rb', line 15081 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.
15094 15095 15096 |
# File 'lib/models/porcelain.rb', line 15094 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.
15096 15097 15098 |
# File 'lib/models/porcelain.rb', line 15096 def name @name end |
#state ⇒ Object
The current state of the relay, one of the NodeState constants.
15098 15099 15100 |
# File 'lib/models/porcelain.rb', line 15098 def state @state end |
#tags ⇒ Object
Tags is a map of key, value pairs.
15100 15101 15102 |
# File 'lib/models/porcelain.rb', line 15100 def end |
#version ⇒ Object
Version is a read only sdm binary version uploaded by the gateway process when it comes online.
15103 15104 15105 |
# File 'lib/models/porcelain.rb', line 15103 def version @version end |
Instance Method Details
#to_json(options = {}) ⇒ Object
15127 15128 15129 15130 15131 15132 15133 |
# File 'lib/models/porcelain.rb', line 15127 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 |