4 LIBDIR="$(dirname "$(dirname "$PWD")")"
6 source $LIBDIR/env/lib/common.sh
8 export KUBESPRAY_VERSION=2.16.0
10 function get_kud_repo {
12 if [ "$1" == "v1" ] ; then
13 export KUD_ADDONS=multus
17 function set_ssh_key {
18 if ! [ -f ~/.ssh/id_rsa ]; then
19 echo "Generating rsa key for this host"
20 ssh-keygen -t rsa -N "" -f ~/.ssh/id_rsa <&-
23 if ! grep -qF "$(ssh-keygen -y -f ~/.ssh/id_rsa)" ~/.ssh/authorized_keys; then
24 ssh-keygen -y -f ~/.ssh/id_rsa >> ~/.ssh/authorized_keys
27 chmod og-wx ~/.ssh/authorized_keys
31 pushd ${KUDPATH}/kud/hosting_providers/vagrant/inventory
32 HOST_IP=${HOST_IP:-$(hostname -I | cut -d ' ' -f 1)}
34 if [[ ! -z "${DOCKER_REGISTRY_MIRRORS+x}" ]]; then
36 for mirror in ${DOCKER_REGISTRY_MIRRORS}; do
37 OPTIONS="${OPTIONS} --registry-mirror=${mirror}"
39 DOCKER_OPTIONS="docker_options=\"${OPTIONS# }\""
41 if [ "$1" == "minimal" ] ; then
44 $HOSTNAME ansible_ssh_host=${HOST_IP} ansible_ssh_port=22 ${DOCKER_OPTIONS}
55 [k8s-cluster:children]
62 $HOSTNAME ansible_ssh_host=${HOST_IP} ansible_ssh_port=22 ${DOCKER_OPTIONS}
82 [k8s-cluster:children]
90 function kud_install {
91 pushd ${KUDPATH}/kud/hosting_providers/vagrant/
92 if [ "$1" == "all" ]; then
93 sed -i -e 's/testing_enabled=${KUD_ENABLE_TESTS:-false}/testing_enabled=${KUD_ENABLE_TESTS:-true}/g' installer.sh
95 ./installer.sh | tee kud_deploy.log
97 if [ "$1" == "bm" ]; then
98 for addon in ${KUD_ADDONS:-multus ovn4nfv nfd sriov qat cmk optane}; do
99 pushd ${KUDPATH}/kud/tests/
108 pushd ${KUDPATH}/kud/hosting_providers/vagrant/
109 ansible-playbook -i inventory/hosts.ini /opt/kubespray-${KUBESPRAY_VERSION}/reset.yml \
110 --become --become-user=root -e reset_confirmation=yes
115 APISERVER=$(kubectl config view --minify -o \
116 jsonpath='{.clusters[0].cluster.server}')
117 TOKEN=$(kubectl get secret \
118 $(kubectl get serviceaccount default -o \
119 jsonpath='{.secrets[0].name}') -o jsonpath='{.data.token}' | \
121 call_api $APISERVER/api --header "Authorization: Bearer $TOKEN" --insecure
124 if [ "$1" == "reset" ] ; then