summaryrefslogtreecommitdiff
path: root/pcr/puppet/puppet.install
diff options
context:
space:
mode:
Diffstat (limited to 'pcr/puppet/puppet.install')
-rw-r--r--pcr/puppet/puppet.install46
1 files changed, 46 insertions, 0 deletions
diff --git a/pcr/puppet/puppet.install b/pcr/puppet/puppet.install
new file mode 100644
index 000000000..928df566b
--- /dev/null
+++ b/pcr/puppet/puppet.install
@@ -0,0 +1,46 @@
+# Puppet: Installer: Arch
+# Maintainer: Thomas S Hatch <thatch45 (at) Gmail (dot) com>
+# Contributor: Xavion <Xavion (dot) 0 (at) Gmail (dot) com>
+# Contributor: Miah Johnson <Miah (at) chia-pet dot org>
+
+pre_install() {
+ getent group puppet &>/dev/null || groupadd -r puppet -g 52 &>/dev/null
+ getent passwd puppet &>/dev/null || useradd -r -u 52 -g puppet -d /var/lib/puppet -s /sbin/nologin -c "Puppet" puppet &>/dev/null || :
+}
+
+pre_upgrade() {
+ pre_install
+ usermod -d /var/lib/puppet puppet &>/dev/null || :
+}
+
+post_install() {
+ :
+}
+
+pre_remove() {
+if [ -f /var/run/puppetmasterd.pid ]; then
+ PIDOF=$(pidof -xo %PPID puppetmasterd)
+ PIDFILE=$(cat /var/run/puppetmasterd.pid)
+ if [ $PIDOF -eq $PIDFILE ]; then
+ /etc/rc.d/puppetmaster stop
+ fi
+fi
+
+if [ -f /var/run/puppetd.pid ]; then
+ PIDOF=$(pidof -xo %PPID puppetd)
+ PIDFILE=$(cat /var/run/puppetd.pid)
+ if [ $PIDOF -eq $PIDFILE ]; then
+ /etc/rc.d/puppet stop
+ fi
+fi
+}
+
+post_remove() {
+ # Remove user and group
+ userdel puppet
+}
+
+op=$1
+shift
+
+$op "$@"