blob: cbde9de7d906410e709e135f7f98518b999b777c [file] [log] [blame]
Fatih Degirmencibecbba02019-02-25 00:37:19 +00001#!/bin/bash
2# ============LICENSE_START=======================================================
3# Copyright (C) 2019 The Nordix Foundation. All rights reserved.
4# ================================================================================
5# Licensed under the Apache License, Version 2.0 (the "License");
6# you may not use this file except in compliance with the License.
7# You may obtain a copy of the License at
8#
9# http://www.apache.org/licenses/LICENSE-2.0
10#
11# Unless required by applicable law or agreed to in writing, software
12# distributed under the License is distributed on an "AS IS" BASIS,
13# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
14# See the License for the specific language governing permissions and
15# limitations under the License.
16#
17# SPDX-License-Identifier: Apache-2.0
18# ============LICENSE_END=========================================================
19
20set -o errexit
21set -o nounset
22set -o pipefail
23
Fatih Degirmenci45956ac2019-12-16 10:53:15 +010024INSTALLER_ROOT_DIR="$(dirname "$(realpath "${BASH_SOURCE[0]}")")"
Fatih Degirmencibecbba02019-02-25 00:37:19 +000025export ANSIBLE_ROLES_PATH="$HOME/.ansible/roles:/usr/share/ansible/roles:/etc/ansible/roles:${ENGINE_PATH}/engine/playbooks/roles:${ENGINE_CACHE}/repos/bifrost/playbooks/roles"
26export ANSIBLE_LIBRARY="$HOME/.ansible/plugins/modules:/usr/share/ansible/plugins/modules:${ENGINE_CACHE}/repos/bifrost/playbooks/library"
27
28# configure target hosts
29echo "-------------------------------------------------------------------------"
Fatih Degirmenciae729c12020-02-27 06:39:30 +000030echo "Info : Configure target hosts"
Fatih Degirmencibecbba02019-02-25 00:37:19 +000031echo "-------------------------------------------------------------------------"
Fatih Degirmenci45956ac2019-12-16 10:53:15 +010032cd "${ENGINE_PATH}"
Sriram Yagnaraman1abbc262019-12-25 01:40:00 +000033ansible-playbook "${ENGINE_ANSIBLE_PARAMS[@]}" \
Fatih Degirmenci71e0ebc2020-01-09 07:26:08 +000034 -i "${ENGINE_PATH}/engine/inventory/inventory.ini" \
35 "${INSTALLER_ROOT_DIR}/playbooks/configure-targethosts.yml"
Fatih Degirmencibecbba02019-02-25 00:37:19 +000036
Fatih Degirmenciccc68892019-02-27 09:16:45 +000037# configure installer
38echo "-------------------------------------------------------------------------"
Fatih Degirmenciae729c12020-02-27 06:39:30 +000039echo "Info : Configure installer"
Fatih Degirmenciccc68892019-02-27 09:16:45 +000040echo "-------------------------------------------------------------------------"
Fatih Degirmenci45956ac2019-12-16 10:53:15 +010041cd "${ENGINE_PATH}"
Sriram Yagnaraman1abbc262019-12-25 01:40:00 +000042ansible-playbook "${ENGINE_ANSIBLE_PARAMS[@]}" \
Fatih Degirmenci71e0ebc2020-01-09 07:26:08 +000043 -i "${ENGINE_PATH}/engine/inventory/inventory.ini" \
44 "${INSTALLER_ROOT_DIR}/playbooks/configure-installer.yml"
Fatih Degirmenciccc68892019-02-27 09:16:45 +000045
Fatih Degirmenci18c7c312019-04-09 16:44:45 +000046# bootstrap scenario
47echo "-------------------------------------------------------------------------"
Fatih Degirmenciae729c12020-02-27 06:39:30 +000048echo "Info : Execute scenario pre deployment tasks"
Fatih Degirmenci18c7c312019-04-09 16:44:45 +000049echo "-------------------------------------------------------------------------"
Fatih Degirmenci45956ac2019-12-16 10:53:15 +010050cd "${ENGINE_PATH}"
Sriram Yagnaraman1abbc262019-12-25 01:40:00 +000051ansible-playbook "${ENGINE_ANSIBLE_PARAMS[@]}" \
Fatih Degirmenci71e0ebc2020-01-09 07:26:08 +000052 -i "${ENGINE_PATH}/engine/inventory/inventory.ini" \
53 "${INSTALLER_ROOT_DIR}/playbooks/pre-deployment.yml"
Fatih Degirmenci18c7c312019-04-09 16:44:45 +000054
Fatih Degirmenci3646fcd2019-06-12 16:21:11 +020055# install scenario
Fatih Degirmenci58120462019-02-27 14:29:45 +000056echo "-------------------------------------------------------------------------"
Fatih Degirmenciae729c12020-02-27 06:39:30 +000057echo "Info : Install scenario ${DEPLOY_SCENARIO}"
Fatih Degirmenci58120462019-02-27 14:29:45 +000058echo "-------------------------------------------------------------------------"
Fatih Degirmenci45956ac2019-12-16 10:53:15 +010059cd "${ENGINE_CACHE}/repos/kubespray"
Sriram Yagnaraman1abbc262019-12-25 01:40:00 +000060ansible-playbook "${ENGINE_ANSIBLE_PARAMS[@]}" \
Fatih Degirmenci71e0ebc2020-01-09 07:26:08 +000061 -i inventory/engine/inventory.ini \
Fatih Degirmencicd2ab352020-02-28 22:15:18 +000062 -e "@${ENGINE_CACHE}/config/kubespray-vars.yml" \
Fatih Degirmenci71e0ebc2020-01-09 07:26:08 +000063 --flush-cache \
64 cluster.yml
Fatih Degirmenci58120462019-02-27 14:29:45 +000065
Fatih Degirmencie7995082019-03-24 20:49:21 +000066# run post-deployment tasks
67echo "-------------------------------------------------------------------------"
Fatih Degirmenciae729c12020-02-27 06:39:30 +000068echo "Info : Execute scenario and common post deployment tasks"
Fatih Degirmencie7995082019-03-24 20:49:21 +000069echo "-------------------------------------------------------------------------"
Fatih Degirmenci45956ac2019-12-16 10:53:15 +010070cd "${ENGINE_PATH}"
Sriram Yagnaraman1abbc262019-12-25 01:40:00 +000071ansible-playbook "${ENGINE_ANSIBLE_PARAMS[@]}" \
Fatih Degirmenci71e0ebc2020-01-09 07:26:08 +000072 -i "${ENGINE_PATH}/engine/inventory/inventory.ini" \
73 "${INSTALLER_ROOT_DIR}/playbooks/post-deployment.yml"
Fatih Degirmencie7995082019-03-24 20:49:21 +000074
Fatih Degirmencibecbba02019-02-25 00:37:19 +000075# vim: set ts=2 sw=2 expandtab: