43 lines
		
	
	
		
			1.1 KiB
		
	
	
	
		
			Bash
		
	
	
		
			Executable File
		
	
			
		
		
	
	
			43 lines
		
	
	
		
			1.1 KiB
		
	
	
	
		
			Bash
		
	
	
		
			Executable File
		
	
#!/bin/bash
 | 
						|
 | 
						|
 | 
						|
HOST='tbd'
 | 
						|
 | 
						|
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 ${USER}@$HOST "apt-get update; apt-get install puppet; sudo echo '$HOST' > /etc/hostname; sudo /etc/init.d/hostname.sh start;"
 | 
						|
	ssh ${USER}@${HOST} "sudo apt-get install rsync"
 | 
						|
	ssh ${USER}@${HOST} "sudo puppet module install puppetlabs-postgresql"
 | 
						|
	ssh ${USER}@${HOST} "sudo puppet module install saz-sudo"
 | 
						|
	ssh ${USER}@${HOST} "sudo puppet module install thias-postfix"
 | 
						|
fi
 | 
						|
 | 
						|
if [ "$TYPE" = "update" ]; then
 | 
						|
	USER=odoo
 | 
						|
fi
 | 
						|
 | 
						|
# Copy to server
 | 
						|
rsync -av --copy-links "site.pp" "${USER}@${HOST}:/tmp/site.pp"
 | 
						|
rsync -arv --copy-links "modules" "${USER}@${HOST}:/tmp"
 | 
						|
 | 
						|
ssh ${USER}@${HOST} "sudo mv -f /tmp/site.pp /etc/puppet/manifests/site.pp"
 | 
						|
ssh ${USER}@${HOST} "sudo rm -rf /etc/puppet/modules/odoo; sudo mv /tmp/modules/odoo /etc/puppet/modules; sudo rm -rf /tmp/modules"
 | 
						|
 | 
						|
ssh ${USER}@${HOST} "sudo puppet apply /etc/puppet/manifests/site.pp"
 |