56010749b6965ea4df69c874185c592d72b4421a
[infra/cicd.git] / jjb / engine / scripts / deploy.sh
1 #!/bin/bash
2
3 # ============LICENSE_START=======================================================
4 #  Copyright (C) 2019 The Nordix Foundation. All rights reserved.
5 # ================================================================================
6 # Licensed under the Apache License, Version 2.0 (the "License");
7 # you may not use this file except in compliance with the License.
8 # You may obtain a copy of the License at
9 #
10 #      http://www.apache.org/licenses/LICENSE-2.0
11 #
12 # Unless required by applicable law or agreed to in writing, software
13 # distributed under the License is distributed on an "AS IS" BASIS,
14 # WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
15 # See the License for the specific language governing permissions and
16 # limitations under the License.
17 #
18 # SPDX-License-Identifier: Apache-2.0
19 # ============LICENSE_END=========================================================
20
21 set -o nounset
22 set -o errexit
23 set -o pipefail
24
25 if [[ "$EXECUTION_MODE" == "offline-deployment" && "$PROVISIONER_TYPE" == "heat" ]]; then
26   echo "Info  : Offline deployments on cloud instances is not currently supported!"
27   exit 0
28 fi
29
30 if [[ "$GERRIT_PROJECT" == "infra/installer/kolla" ]]; then
31   echo "Info  : Setting installer to kolla and scenario to os-nosdn-nofeature"
32   export INSTALLER_TYPE="kolla"
33   export DEPLOY_SCENARIO="os-nosdn-nofeature"
34 fi
35
36 if [[ "$EXECUTION_MODE" == "offline-deployment" ]]; then
37   ENGINE_ROOT_DIR="/opt/engine/offline/git/engine"
38 else
39   ENGINE_ROOT_DIR="$WORKSPACE"
40 fi
41
42 # NOTE (fdegir): for bifrost based deployments, we don't need these files so we fake them
43 OPENRC_FILE=${OPENRC_FILE:-/tmp/openrc}
44 HEAT_ENVIRONMENT_FILENAME=${HEAT_ENVIRONMENT_FILENAME:-/tmp/heat}
45
46 [[ ${PROVISIONER_TYPE} == "heat" ]] && /bin/cp -f $OPENRC_FILE /tmp/openrc
47
48 cd "$ENGINE_ROOT_DIR/engine"
49 ./deploy.sh -d "$INSTALLER_TYPE" -s "$DEPLOY_SCENARIO" -b "file://$ENGINE_ROOT_DIR/engine/inventory/group_vars/all/sdf.yaml" \
50     -r "$PROVISIONER_TYPE" -p "$PDF" -i "$IDF" -u /tmp/openrc \
51     -e "file://$ENGINE_ROOT_DIR/engine/provisioner/heat/playbooks/roles/bootstrap-hwconfig/files/$HEAT_ENVIRONMENT_FILENAME"