Create engine kubernetes stack
[infra/stack/kubernetes.git] / install.sh
1 #!/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
20 set -o errexit
21 set -o nounset
22 set -o pipefail
23
24 #-------------------------------------------------------------------------------
25 # Bootstrap stack software configuration
26 #-------------------------------------------------------------------------------
27 echo "Info  : Bootstrap stack software configuration"
28 echo "-------------------------------------------------------------------------"
29 cd "${ENGINE_PATH}"
30 ansible-playbook "${ENGINE_ANSIBLE_PARAMS[@]}" \
31     -i "${ENGINE_PATH}/engine/inventory/localhost.ini" \
32     engine/stack/kubernetes/playbooks/bootstrap-swconfig.yaml
33 echo "-------------------------------------------------------------------------"
34
35 #-------------------------------------------------------------------------------
36 # Provision nodes using the selected provisioning tool
37 #-------------------------------------------------------------------------------
38 # NOTE: shellcheck SC1090 is disabled since the script becomes available during runtime
39 # shellcheck disable=SC1090
40 source "${ENGINE_PATH}/engine/provisioner/provision.sh"
41
42 #-------------------------------------------------------------------------------
43 # Provision local apt repo, docker registry, and ntp server services
44 #-------------------------------------------------------------------------------
45 # NOTE: shellcheck SC1090 is disabled since the script becomes available during runtime
46 # shellcheck disable=SC1090
47 source "${ENGINE_PATH}/engine/library/engine-services.sh"
48
49 #-------------------------------------------------------------------------------
50 # Prepare artifacts for offline deployment
51 #-------------------------------------------------------------------------------
52 cd "${ENGINE_PATH}"
53 ansible-playbook "${ENGINE_ANSIBLE_PARAMS[@]}" \
54     -i "${ENGINE_PATH}/engine/inventory/inventory.ini" \
55     engine/stack/kubernetes/playbooks/prepare-artifacts.yaml
56 echo "-------------------------------------------------------------------------"
57
58 #-------------------------------------------------------------------------------
59 # Install the stack using the selected installer
60 #-------------------------------------------------------------------------------
61 # NOTE: shellcheck SC1090 is disabled since the script becomes available during runtime
62 # shellcheck disable=SC1090
63 source "${ENGINE_PATH}/engine/installer/install.sh"
64
65 # vim: set ts=2 sw=2 expandtab: