aboutsummaryrefslogblamecommitdiff
path: root/modules/base_installation/files/scripts/puppet_apply
blob: 69673ccc6adc3160e3fd6957d1a8cc3755f57666 (plain) (tree)






















                                                                 
#!/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