pvc/build-and-deploy.sh

39 lines
1.0 KiB
Bash
Raw Normal View History

#!/bin/bash
# A useful script for testing out changes to PVC by building the debs and deploying them out to a
# set of hosts automatically, including restarting the daemon (with a pause between) on the remote
# side. Mostly just useful for quickly testing/debugging changes as Ansible should be used for
# production upgrades.
# Check if we're root, or not
if [[ $( id -u ) -eq 0 ]]; then
SUDO=""
else
SUDO="sudo"
fi
HOSTS=( ${@} )
echo "${HOSTS[@]}"
# Build the packages
./build-deb.sh
# Install the client(s) locally
$SUDO dpkg -i ../pvc-client*.deb
for HOST in ${HOSTS[@]}; do
2019-12-14 16:56:33 -05:00
echo "****"
echo "Deploying to host ${HOST}"
echo "****"
2020-01-06 16:52:25 -05:00
ssh $HOST $SUDO rm -rf /tmp/pvc
ssh $HOST mkdir /tmp/pvc
scp ../*.deb $HOST:/tmp/pvc/
ssh $HOST $SUDO dpkg -i /tmp/pvc/{pvc-client-cli,pvc-daemon-common,pvc-daemon-api,pvc-daemon-node}*.deb
ssh $HOST rm -rf /tmp/pvc
ssh $HOST $SUDO systemctl restart pvcnoded
2019-12-14 16:56:33 -05:00
echo "****"
echo "Waiting 15s for host ${HOST} to stabilize"
2019-12-14 16:56:33 -05:00
echo "****"
sleep 15
done