From cfa8eb925ff0115d5d4b2298f7d9a054b869fa75 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Isma=C3=ABl=20Bouya?= Date: Sat, 17 Mar 2018 12:46:37 +0100 Subject: Add puppet_apply script with lockfile --- .../base_installation/files/scripts/puppet_apply | 23 ++++++++++++++++++++++ .../files/scripts/puppet_reset_and_apply | 2 +- 2 files changed, 24 insertions(+), 1 deletion(-) create mode 100644 modules/base_installation/files/scripts/puppet_apply (limited to 'modules/base_installation/files/scripts') diff --git a/modules/base_installation/files/scripts/puppet_apply b/modules/base_installation/files/scripts/puppet_apply new file mode 100644 index 0000000..69673cc --- /dev/null +++ b/modules/base_installation/files/scripts/puppet_apply @@ -0,0 +1,23 @@ +#!/bin/bash + +lockfile=/var/run/puppet-apply.lock +path=`dirname $0` +path=`cd $path/..; pwd` + +if [ $(id -u) -gt 0 ]; then + echo "You must be root to run this script." >&2 + exit 2 +fi + +if (set -o noclobber; echo "$$" > "$lockfile") 2> /dev/null; then + trap 'rm -f "$lockfile"; exit $?' INT TERM EXIT + + puppet apply "$@" + + rm -f "$lockfile" + trap - INT TERM EXIT +else + echo "Failed to acquire lockfile: $lockfile." >&2 + echo "Held by $(cat $lockfile 2>/dev/null)" >&2 + exit 1 +fi diff --git a/modules/base_installation/files/scripts/puppet_reset_and_apply b/modules/base_installation/files/scripts/puppet_reset_and_apply index 6743044..0350e6e 100644 --- a/modules/base_installation/files/scripts/puppet_reset_and_apply +++ b/modules/base_installation/files/scripts/puppet_reset_and_apply @@ -11,4 +11,4 @@ fi git reset --hard origin/$branch git submodule update --init -puppet apply --test manifests/site.pp +puppet_apply --test manifests/site.pp -- cgit v1.2.3