1
0
mirror of https://github.com/projectatomic/atomic.git synced 2026-02-06 21:45:24 +01:00
Files
atomic/vagrant.sh
Brent Baude 119304a11c Add fedora25_cloud target for vagrant
This allows us to test on Fedora 25 via make vagrant-check.

Closes: #772
Approved by: cgwalters
2016-11-30 21:26:51 +00:00

61 lines
1.4 KiB
Bash

#!/bin/bash
set -euo pipefail
_FINISH(){
RESULT=($?)
if [ ${RESULT} -eq 0 ]; then
echo ""
echo "Tests completed normally..."
vagrant destroy ${BOX}
echo ""
else
echo ""
echo "** Test failed. Leaving '${BOX}' running for debug." 2>&1 | tee -a ${tee_file}
echo "** Be sure to halt or destroy prior to re-running the check" 2>&1 | tee -a ${tee_file}
echo "** Logs are stored at ${tee_file}"
echo ""
exit 1
fi
}
# When make calls bash, the real signals are not surfaced
# correctly to trap. So we trap on EXIT and then sort it
# out in _FINISH
trap _FINISH EXIT
BOXES="fedora_atomic centos_atomic fedora_cloud"
is_running() {
status=$(vagrant status | grep ${BOX} | awk '{print $2}')
if [ ${status} == "running" ]; then
RUNNING=true
else
RUNNING=false
fi
}
if [[ ! $BOXES =~ $BOX ]]; then
echo ""
echo "Invalid BOX name: $BOX. Valid choices are $BOXES"
echo ""
exit 1
fi
echo "Testing on ${BOX}"
timestamp=$(date +%Y_%m_%d_%H_%M)
tee_file="${BOX}_${timestamp}.log"
is_running
if ${RUNNING}; then
echo ""
echo "*** '${BOX}' is already running. Re-syncing and rerunning test ..."
echo ""
vagrant rsync ${BOX}
else
vagrant up ${BOX} 2>&1 | tee ${tee_file}
fi
vagrant ssh ${BOX} -c "cd /home/vagrant/atomic && sudo sh ./.redhat-ci.sh" 2>&1 | tee -a ${tee_file}