-
Notifications
You must be signed in to change notification settings - Fork 2
/
_setup-minikube.sh
executable file
·44 lines (34 loc) · 1.55 KB
/
_setup-minikube.sh
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
#!/bin/bash
# Copyright 2021, 2022 Hewlett Packard Enterprise Development LP
# Other additional copyright holders may be indicated within.
#
# The entirety of this work is licensed under the Apache License,
# Version 2.0 (the "License"); you may not use this file except
# in compliance with the License.
#
# You may obtain a copy of the License at
#
# http://www.apache.org/licenses/LICENSE-2.0
#
# Unless required by applicable law or agreed to in writing, software
# distributed under the License is distributed on an "AS IS" BASIS,
# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
# See the License for the specific language governing permissions and
# limitations under the License.
CMD=$1
if [[ "$CMD" == "reset" ]]; then
minikube delete
fi
echo "$(tput bold)Creating temporary source file for data movement $(tput sgr 0)"
mkdir -p /tmp/nnf && dd if=/dev/zero of=/tmp/nnf/file.in bs=128 count=0 seek=$[1024 * 1024]
echo "$(tput bold)Creating cluster with two worker nodes and /nnf mount $(tput sgr 0)"
minikube start --nodes 3
kubectl taint node minikube node-role.kubernetes.io/master:NoSchedule-
NODES=$(kubectl get nodes --no-headers | grep --invert-match "control-plane" | awk '{print $1}')
for NODE in $NODES; do
kubectl label node "$NODE" cray.nnf.node=true
kubectl label node "$NODE" cray.nnf.x-name="$NODE"
done
kubectl taint nodes "$(echo $NODES | paste -d" " -s -)" cray.nnf.node=true:NoSchedule
certver="v1.7.0"
kubectl apply -f https://github.com/jetstack/cert-manager/releases/download/"$certver"/cert-manager.yaml