c5cfab36dc98b040512a76a9c9943f0a89dd5dbf
[releng.git] / prototypes / xci / xci-deploy.sh
1 #!/bin/bash
2 set -o errexit
3 set -o nounset
4 set -o pipefail
5 set -o xtrace
6
7 # This script must run as root
8 if [[ $(whoami) != "root" ]]; then
9     echo "Error: This script must be run as root!"
10     exit 1
11 fi
12
13 # find where are we
14 XCI_PATH="$( cd "$( dirname "${BASH_SOURCE[0]}" )" && pwd )"
15
16 # source user vars
17 source $XCI_PATH/config/user-vars
18
19 # source pinned versions
20 source $XCI_PATH/config/pinned-versions
21
22 # source flavor configuration
23 source "$XCI_PATH/flavors/${XCI_FLAVOR}-vars"
24
25 # source xci configuration
26 source $XCI_PATH/config/env-vars
27
28 # log info to console
29 echo "Info: Starting XCI Deployment"
30 echo "Info: Deployment parameters"
31 echo "-------------------------------------------------------------------------"
32 echo "xci flavor: $XCI_FLAVOR"
33 echo "opnfv/releng version: $OPNFV_RELENG_VERSION"
34 echo "openstack/bifrost version: $OPENSTACK_BIFROST_VERSION"
35 echo "openstack/openstack-ansible version: $OPENSTACK_OSA_VERSION"
36 echo "-------------------------------------------------------------------------"
37
38 #-------------------------------------------------------------------------------
39 # install ansible on localhost
40 #-------------------------------------------------------------------------------
41 pip install ansible==$XCI_ANSIBLE_PIP_VERSION
42
43 #-------------------------------------------------------------------------------
44 # Start provisioning VM nodes
45 #-------------------------------------------------------------------------------
46 echo "Info: Starting provisining VM nodes using openstack/bifrost"
47 echo "-------------------------------------------------------------------------"
48 cd $XCI_PATH/playbooks
49 ansible-playbook $ANSIBLE_VERBOSITY -i inventory provision-vm-nodes.yml
50 echo "-----------------------------------------------------------------------"
51 echo "Info: VM nodes are provisioned!"