Gardience Documentation gardience.com →
Docs / Using Gardience

Change windows and locks

Change windows and locks protect production nodes from changes at the wrong time.

Both are managed by Gardience admins.

Change windows

Add a change window

  1. Open Automation > Change control.
  2. Under Change windows, pick the node group.
  3. Tick the days. Saturday and Sunday are ticked by default.
  4. Set the start and end times (HH:MM) and the time zone.
  5. Choose Add window.

The Now column shows whether each window is "Open now" or "Closed". To remove a window, choose Remove. Adding and removing windows is recorded in the audit log.

A window can run past midnight. For example, Saturday 22:00 to 02:00 is open from 22:00 on Saturday until 02:00 on Sunday.

What a change window covers

A window applies to any change aimed at a node in its group, whether the change names the group or reaches the node through another target. If a node is in several groups, a closed window on any of them holds the change. If Gardience cannot find out which nodes are in a group, it holds the change rather than guess.

How each kind of work is treated outside the window:

WorkOutside the window
Dashboard fix buttonsHeld per node. Nodes outside the window wait; the others run now.
Runbook run from the console, or from an API key that does not require approvalThe whole run is held if the target group or any target node is outside its window.
Workflow steps, schedules, and API requests that require approvalHeld per node. The step runs on the nodes whose window is open.
Ansible playbook runbooksSame as any runbook run.
Drift Correct nowRefused with a message. It is not held; correct the node when the window opens.
Drift auto-correctNodes outside their window are skipped until a later check.

Held work is listed under Held and queued work on the same page. See Held work.

Exceptions

These are not held by a change window:

Locks

Lock or unlock a node

  1. Open Machines > Inventory.
  2. In the System lock column, choose Lock… on the node.
  3. Enter the reason. A reason is required and goes in the audit log.

To unlock it, choose Unlock in the same column. Locked nodes are also listed under Locked nodes on Automation > Change control.

When you lock or unlock a node, Gardience pushes the change to it and waits up to 20 seconds for the node to confirm.

What a lock does

Gardience turns on Salt's blackout mode for the node. While it is on, the node's agent refuses every Salt command except a short list of read-only ones:

Because the node enforces it, a lock also refuses jobs sent directly to Salt, and event rule restarts.

In Gardience:

When a node's key is removed from the fleet, its lock is removed too, so a new machine enrolled later under the same name does not inherit it. The audit log records this as node.unlocked with the reason "node removed from the fleet".

Gardience by Bouziden Management LLC.