48 lines
1.4 KiB
Bash
Executable File
48 lines
1.4 KiB
Bash
Executable File
#!/bin/bash
|
|
|
|
|
|
HOST='xxx.datenpol.at'
|
|
PORT=22
|
|
|
|
if [ $# -lt 1 ] || [ $# -gt 1 ]; then
|
|
echo "Usage: ./setup_server.sh <init|update>"
|
|
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"
|