aboutsummaryrefslogtreecommitdiff
path: root/modules/base_installation/files
diff options
context:
space:
mode:
authorIsmaël Bouya <ismael.bouya@normalesup.org>2018-03-17 12:46:37 +0100
committerIsmaël Bouya <ismael.bouya@normalesup.org>2018-03-19 16:19:17 +0100
commitcfa8eb925ff0115d5d4b2298f7d9a054b869fa75 (patch)
tree7ec29ae80af561a848a9c9da7f01731345afe587 /modules/base_installation/files
parent82caf31189f11a9bca4836260e8ee8ba954690f2 (diff)
downloadPuppet-cfa8eb925ff0115d5d4b2298f7d9a054b869fa75.tar.gz
Puppet-cfa8eb925ff0115d5d4b2298f7d9a054b869fa75.tar.zst
Puppet-cfa8eb925ff0115d5d4b2298f7d9a054b869fa75.zip
Add puppet_apply script with lockfile
Diffstat (limited to 'modules/base_installation/files')
-rw-r--r--modules/base_installation/files/cronie/puppet-post-merge4
-rw-r--r--modules/base_installation/files/scripts/puppet_apply23
-rw-r--r--modules/base_installation/files/scripts/puppet_reset_and_apply2
3 files changed, 26 insertions, 3 deletions
diff --git a/modules/base_installation/files/cronie/puppet-post-merge b/modules/base_installation/files/cronie/puppet-post-merge
index ac5e3ff..f5c21a7 100644
--- a/modules/base_installation/files/cronie/puppet-post-merge
+++ b/modules/base_installation/files/cronie/puppet-post-merge
@@ -1,7 +1,7 @@
1#!/bin/bash 1#!/bin/bash
2## Run Puppet locally using puppet apply 2## Run Puppet locally using puppet_apply
3git submodule update --init 3git submodule update --init
4/usr/bin/puppet apply `pwd`/manifests/site.pp 4/usr/local/sbin/puppet_apply `pwd`/manifests/site.pp
5 5
6## Log status of the Puppet run 6## Log status of the Puppet run
7if [ $? -eq 0 ] 7if [ $? -eq 0 ]
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 @@
1#!/bin/bash
2
3lockfile=/var/run/puppet-apply.lock
4path=`dirname $0`
5path=`cd $path/..; pwd`
6
7if [ $(id -u) -gt 0 ]; then
8 echo "You must be root to run this script." >&2
9 exit 2
10fi
11
12if (set -o noclobber; echo "$$" > "$lockfile") 2> /dev/null; then
13 trap 'rm -f "$lockfile"; exit $?' INT TERM EXIT
14
15 puppet apply "$@"
16
17 rm -f "$lockfile"
18 trap - INT TERM EXIT
19else
20 echo "Failed to acquire lockfile: $lockfile." >&2
21 echo "Held by $(cat $lockfile 2>/dev/null)" >&2
22 exit 1
23fi
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
11git reset --hard origin/$branch 11git reset --hard origin/$branch
12 12
13git submodule update --init 13git submodule update --init
14puppet apply --test manifests/site.pp 14puppet_apply --test manifests/site.pp