4 Commits

Author SHA1 Message Date
Clark Boylan
f981042733 Fix zuul reboot playbook flock location
We were using /var/run/ansible/zuul_reboot.lock to flock around this
cron job. Unfortauntely it seems /var/run/ansible does not exist so the
flock command fails. Move the file to /var/run/zuul_reboot.lock to work
around this.

Note that we want to use /var/run since it is a tmpfs which means if the
server unexpectedly reboots we'll automatically clear the lock.

Change-Id: Ib0f4a434cbbf2152722493e80b5cc7a945c1f235
2022-06-27 09:03:50 -07:00
Clark Boylan
03987a8009 Run zuul cluster reboots and updates automatically
This adds a weekly cronjob that will reboot and update our entire zuul
cluster gracefully. The time frame chosen for this should be after North
America begins its weekend and before Europe starts their week. The idea
is that we're doing this during the quiet time of our week.

Change-Id: Ib9a54f273e11744fa1ddbf367c291289f86bddb7
2022-06-21 16:00:42 -07:00
Clark Boylan
4cbc5ee254 Perform package upgrades prior to zuul cluster node reboots
This serves two purposes. The first is that not all packages are updated
by unattended-upgrades beacuse it may not be safe to upgrade packages
while services are running. We should be safe in this situation because
we've gracefully stopped services and can proceed with package updates.
The other is unattended upgrades runs daily which means we could end up
almost 24 hours out of date prior to rebooting. This ensures we have the
latest and greatest packages installed just prior to rebooting.

Change-Id: Id351b5478e925ed1b4fbb6b3e27f2c0b6af8b897
2022-05-26 14:04:24 -07:00
Clark Boylan
88425158a1 Add playbook to gracefully stop and reboot the zuul cluster
This should simplify the process of applying patches to the cluster.

Change-Id: I28756e32c2f42186e11d78e4ca461e808026f632
2022-05-25 11:05:22 -07:00