#!/bin/bash HOST='xxx.datenpol.at' PORT=22 if [ $# -lt 1 ] || [ $# -gt 1 ]; then echo "Usage: ./setup_server.sh " exit 1 fi echo "Are you sure? [Press Y to confirm!]" read ANSWER if [ "$ANSWER" != "Y" ]; then echo "Ok, good bye!" exit 1 fi TYPE=$1 USER=root if [ "$TYPE" = "init" ]; then ssh -p ${PORT} ${USER}@$HOST "apt-get update; apt-get install puppet;" ssh -p ${PORT} ${USER}@${HOST} "sudo apt-get install rsync" ssh -p ${PORT} ${USER}@${HOST} "sudo puppet module install puppetlabs-postgresql" ssh -p ${PORT} ${USER}@${HOST} "sudo puppet module install saz-sudo" ssh -p ${PORT} ${USER}@${HOST} "sudo puppet module install maestrodev-ssh_keygen" ssh -p ${PORT} ${USER}@${HOST} "sudo puppet module install puppetlabs-vcsrepo" ssh -p ${PORT} ${USER}@${HOST} "sudo puppet module install maestrodev-wget" fi if [ "$TYPE" = "update" ]; then USER=odoo fi # Copy to server rsync -av -e "ssh -p ${PORT}" --copy-links "site.pp" "${USER}@${HOST}:/tmp/site.pp" rsync -arv -e "ssh -p ${PORT}" --copy-links "modules" "${USER}@${HOST}:/tmp" ssh -p ${PORT} ${USER}@${HOST} "sudo mv -f /tmp/site.pp /etc/puppet/manifests/site.pp" # Achtung für Debian werden die Puppet-Module unter /etc/puppet/code/modules abgelegt ssh -p ${PORT} ${USER}@${HOST} "sudo rm -rf /etc/puppet/modules/odoo; sudo mv /tmp/modules/odoo /etc/puppet/modules; sudo rm -rf /tmp/modules" ssh -p ${PORT} ${USER}@${HOST} "sudo puppet apply /etc/puppet/manifests/site.pp"