Fix mariadb sync

These two jobs share the same volume, so use the common name as the
argument, otherwise we fail to release.

Also, avoid them running at the same time so one doesn't release the
volume while the other is still updating it.

Change-Id: Ied4feaec7fe5f0bfd459fa080b55b452e21416d4
This commit is contained in:
Ian Wienand 2018-03-15 09:23:15 +11:00
parent c1ed9e0684
commit 271f6dd434

View File

@ -11,11 +11,15 @@ define openstack_project::mariadb_mirror (
releases => [ 'trusty', 'xenial' ],
}
# NOTE(ianw) we have several versions, but they all share the same
# mirror.ubuntu-mariadb volume. Start them at offset times, but
# also share the lock so that one doesn't release the volume when
# the other is half-complete.
cron { "reprepro ubuntu mariadb $name":
user => $user,
hour => '*/2',
minute => '0',
command => "flock -n /var/run/reprepro/ubuntu-mariadb-$name.lock reprepro-mirror-update /etc/reprepro/ubuntu-mariadb-$name mirror.ubuntu-mariadb-$name >>/var/log/reprepro/ubuntu-mariadb-$name-mirror.log 2>&1",
minute => fqdn_rand(30, $name),
command => "flock -w 3600 /var/run/reprepro/ubuntu-mariadb.lock reprepro-mirror-update /etc/reprepro/ubuntu-mariadb-$name mirror.ubuntu-mariadb >>/var/log/reprepro/ubuntu-mariadb-$name-mirror.log 2>&1",
environment => 'PATH=/usr/local/bin:/usr/bin:/bin:/usr/sbin:/sbin',
}
}