Class: SDM::NodeMaintenanceWindow
- Inherits:
-
Object
- Object
- SDM::NodeMaintenanceWindow
- Defined in:
- lib/models/porcelain.rb
Instance Attribute Summary collapse
-
#cron_schedule ⇒ Object
Cron job syntax for when this maintenance window is active.
-
#require_idleness ⇒ Object
Require Idleness defines whether this window can sever live connections.
Instance Method Summary collapse
-
#initialize(cron_schedule: nil, require_idleness: nil) ⇒ NodeMaintenanceWindow
constructor
A new instance of NodeMaintenanceWindow.
- #to_json(options = {}) ⇒ Object
Constructor Details
#initialize(cron_schedule: nil, require_idleness: nil) ⇒ NodeMaintenanceWindow
Returns a new instance of NodeMaintenanceWindow.
10144 10145 10146 10147 10148 10149 10150 |
# File 'lib/models/porcelain.rb', line 10144 def initialize( cron_schedule: nil, require_idleness: nil ) @cron_schedule = cron_schedule == nil ? "" : cron_schedule @require_idleness = require_idleness == nil ? false : require_idleness end |
Instance Attribute Details
#cron_schedule ⇒ Object
Cron job syntax for when this maintenance window is active. On this schedule, associated nodes will restart if requested, provided other checks allow the restart to proceed. Times are represented in UTC. e.g. * 7 * * 0,6 to check for a restart at every minute from 7:00 to 8:00 UTC on Sunday and Saturday. Not all possible inputs are supported: the month and day of month selections must be '*'.
10136 10137 10138 |
# File 'lib/models/porcelain.rb', line 10136 def cron_schedule @cron_schedule end |
#require_idleness ⇒ Object
Require Idleness defines whether this window can sever live connections. If true, this window will not allow a node to be restarted unless it is serving no connections. If false, given a restart of the node has been requested (for an update, usually), the node will restart as soon as it enters an allowed day / hour combination. At least one maintenance window, out of all configured windows for a node, must have this as false.
10142 10143 10144 |
# File 'lib/models/porcelain.rb', line 10142 def require_idleness @require_idleness end |
Instance Method Details
#to_json(options = {}) ⇒ Object
10152 10153 10154 10155 10156 10157 10158 |
# File 'lib/models/porcelain.rb', line 10152 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 |