1
0
mirror of https://github.com/ansible/awx.git synced 2024-11-02 01:21:21 +03:00
awx/tools/scripts/request_tower_configuration.sh
2016-08-12 11:25:16 -04:00

29 lines
760 B
Bash

#!/bin/bash
usage() {
echo -e "Requests server configuration from Ansible Tower\n"
echo "Usage: $0 <server address>[:server port] <host config key> <job template id>"
echo "Example: $0 example.towerhost.net 44d7507f2ead49af5fca80aa18fd24bc 38"
exit 1
}
[ $# -lt 3 ] && usage
retry_attempts=10
attempt=0
while [[ $attempt -lt $retry_attempts ]]
do
status_code=`curl -s -i --data "host_config_key=$2" http://$1/api/v1/job_templates/$3/callback/ | head -n 1 | awk '{print $2}'`
if [[ $status_code -ge 300 ]]
then
echo "${status_code} received, encountered problem, halting."
exit 1
else
exit 0
fi
attempt=$(( attempt + 1 ))
echo "${status_code} received... retrying in 1 minute. (Attempt ${attempt})"
sleep 60
done
exit 1