pre_install() {
  getent group puppet &>/dev/null || groupadd -r puppet -g 52
  getent passwd puppet &>/dev/null || useradd -r -u 52 -g puppet \
    -d /var/lib/puppet -s /usr/bin/nologin -c "Puppet" puppet
}

pre_upgrade() {
  pre_install

  # puppetmaster has been dropped
  if [[ -f /run/puppetlabs/master.pid ]]; then
    systemctl stop puppetmaster
  fi
}

pre_remove() {
  if [[ -f /run/puppetlabs/agent.pid ]]; then
    systemctl stop puppet
  fi
}
