Commit Graph

6 Commits (1f535e980fc149cf4543cebbbad8cab35b7a9967)

Author SHA1 Message Date
Dustin b7381b3fb1 ci: Use lockable resource to enforce serial runs
It is important that only one configuration management job run at a
time. Currently, this is enforced by having only one agent with the
*ansible* label, and that agent has only one executor. This is not an
ideal solution, because it requires maintaining a separate machine for
this purpose.

The *Lockable Resources Plugin* provides an alternate solution to this
problem. Using this plugin, jobs can acquire an exclusive lock on a
"resource" that prevents other jobs that require the same resource from
running. Any job that starts while the lock is held will wait until it
is released before executing. This will enforce the same serial
execution policy, but does not require a separate, dedicated machine.
Jobs will be able to run on any executor with the appropriate label.

Using this option, it is now possible to run configuration management
jobs on the normal agents, defining the execution environment in a
Docker image, so the *cm0.pyrocufflink.blue* agent can be
decommissioned.
2019-05-02 09:58:20 -05:00
Dustin 1d2e581a85 ci: Send emails on failed builds 2018-05-19 10:00:34 -05:00
Dustin 168f542d6b ci: pyrocufflink: Remount filesystems 2018-04-16 08:35:34 -05:00
Dustin cccb442c08 ci: pyrocufflink: Switch to ansiblePlaybook steps 2018-04-15 10:12:22 -05:00
Dustin be876c1053 ci: Schedule daily runs 2018-04-14 09:43:19 -05:00
Dustin a4aeda6371 ci: pyrocufflink: Add pipline for domain members
The `pyrocufflink` Jenkins pipleline applies the `pyrocufflink.yml`
playbook to ensure AD domain member configuration is correct.
2018-04-08 14:24:43 -05:00