From f1176daf78a691d31a13b698d9401a20ce51c5b4 Mon Sep 17 00:00:00 2001 From: Pawel Wieczorek Date: Thu, 5 Dec 2019 13:45:45 +0100 Subject: [PATCH] Add helm provisioners (downloading and setting up with OOM plugins) Issue-ID: ONAPARC-537 Change-Id: I3b3d731ae016c78b3e00841157c69aded14635e2 Signed-off-by: Pawel Wieczorek --- bootstrap/vagrant-minimal-onap/Vagrantfile | 10 +++++ bootstrap/vagrant-minimal-onap/tools/get_helm.sh | 48 ++++++++++++++++++++++++ 2 files changed, 58 insertions(+) create mode 100644 bootstrap/vagrant-minimal-onap/tools/get_helm.sh diff --git a/bootstrap/vagrant-minimal-onap/Vagrantfile b/bootstrap/vagrant-minimal-onap/Vagrantfile index 53d78b5a2..0f26ec8f2 100644 --- a/bootstrap/vagrant-minimal-onap/Vagrantfile +++ b/bootstrap/vagrant-minimal-onap/Vagrantfile @@ -106,6 +106,13 @@ SCRIPT $rke_up = "rke up" $rke_down = "rke remove --force" +$get_oom = <<-SCRIPT + BRANCH="${1:-5.0.1-ONAP}" + git clone -b "$BRANCH" https://git.onap.org/oom --recurse-submodules +SCRIPT + +$get_helm_plugins = "cp -R ${HOME}/oom/kubernetes/helm/plugins/ ${HOME}/.helm" + Vagrant.configure('2') do |config| all.each do |machine| config.vm.define machine[:name] do |config| @@ -192,6 +199,9 @@ Vagrant.configure('2') do |config| s.privileged = false s.path = "tools/setup_kubectl.sh" end + config.vm.provision "get_helm", type: :shell, path: "tools/get_helm.sh" + config.vm.provision "get_oom", type: :shell, privileged: false, inline: $get_oom + config.vm.provision "get_helm_plugins", type: :shell, privileged: false, inline: $get_helm_plugins end end end diff --git a/bootstrap/vagrant-minimal-onap/tools/get_helm.sh b/bootstrap/vagrant-minimal-onap/tools/get_helm.sh new file mode 100644 index 000000000..ad678e984 --- /dev/null +++ b/bootstrap/vagrant-minimal-onap/tools/get_helm.sh @@ -0,0 +1,48 @@ +#!/usr/bin/env bash + +# +# @file test/security/k8s/tools/dublin/get_helm.sh +# @author Pawel Wieczorek +# @brief Utility for obtaining helm tool +# + +# Dependencies: +# wget +# tar +# coreutils +# +# Privileges: +# Script expects to be run with administrative privileges for accessing /usr/local/bin +# +# Usage: +# # ./get_helm.sh [VERSION [ARCH [SYSTEM]]] +# + +# Constants +BINARY='helm' +INSTALL_DIR='/usr/local/bin/' + +DEFAULT_VERSION='v2.14.2' +DEFAULT_ARCH='amd64' +DEFAULT_SYSTEM='linux' + +# Variables +VERSION="${1:-$DEFAULT_VERSION}" +ARCH="${2:-$DEFAULT_ARCH}" +SYSTEM="${3:-$DEFAULT_SYSTEM}" + +URL="https://storage.googleapis.com/kubernetes-helm/${BINARY}-${VERSION}-${SYSTEM}-${ARCH}.tar.gz" +ARCHIVE="${URL##*/}" +DIR="${SYSTEM}-${ARCH}" + + +# Prerequistes +wget "$URL" +tar xf "$ARCHIVE" + +# Installation +mv "${DIR}/${BINARY}" "$INSTALL_DIR" + +# Cleanup +rm "$ARCHIVE" +rm -r "$DIR" -- 2.16.6