From 661fd213de41d06ebdbecb92f37668f0009c838d Mon Sep 17 00:00:00 2001 From: Chris Baumbauer Date: Wed, 24 Oct 2018 15:13:33 -0700 Subject: Update helm version 1.7.2 -> 2.11.0 --- lib/gitlab/kubernetes/helm/base_command.rb | 2 +- lib/gitlab/kubernetes/helm/install_command.rb | 23 ++++++++++++++++++++--- 2 files changed, 21 insertions(+), 4 deletions(-) (limited to 'lib/gitlab/kubernetes/helm') diff --git a/lib/gitlab/kubernetes/helm/base_command.rb b/lib/gitlab/kubernetes/helm/base_command.rb index 6752f2cff43..74efe4bc8bb 100644 --- a/lib/gitlab/kubernetes/helm/base_command.rb +++ b/lib/gitlab/kubernetes/helm/base_command.rb @@ -14,7 +14,7 @@ module Gitlab ALPINE_VERSION=$(cat /etc/alpine-release | cut -d '.' -f 1,2) echo http://mirror.clarkson.edu/alpine/v$ALPINE_VERSION/main >> /etc/apk/repositories echo http://mirror1.hs-esslingen.de/pub/Mirrors/alpine/v$ALPINE_VERSION/main >> /etc/apk/repositories - apk add -U wget ca-certificates openssl >/dev/null + apk add -U wget ca-certificates openssl git >/dev/null wget -q -O - https://kubernetes-helm.storage.googleapis.com/helm-v#{Gitlab::Kubernetes::Helm::HELM_VERSION}-linux-amd64.tar.gz | tar zxC /tmp >/dev/null mv /tmp/linux-amd64/helm /usr/bin/ HEREDOC diff --git a/lib/gitlab/kubernetes/helm/install_command.rb b/lib/gitlab/kubernetes/helm/install_command.rb index 1be7924d6ac..e7907c033c0 100644 --- a/lib/gitlab/kubernetes/helm/install_command.rb +++ b/lib/gitlab/kubernetes/helm/install_command.rb @@ -4,21 +4,23 @@ module Gitlab class InstallCommand include BaseCommand - attr_reader :name, :files, :chart, :version, :repository + attr_reader :name, :files, :chart, :version, :repository, :setargs - def initialize(name:, chart:, files:, rbac:, version: nil, repository: nil) + def initialize(name:, chart:, files:, rbac:, version: nil, repository: nil, setargs: nil) @name = name @chart = chart @version = version @rbac = rbac @files = files @repository = repository + @setargs = setargs end def generate_script super + [ init_command, repository_command, + repository_update_command, script_command ].compact.join("\n") end @@ -37,6 +39,10 @@ module Gitlab ['helm', 'repo', 'add', name, repository].shelljoin if repository end + def repository_update_command + 'helm repo update >/dev/null' if repository + end + def script_command command = ['helm', 'install', chart] + install_command_flags @@ -47,13 +53,15 @@ module Gitlab name_flag = ['--name', name] namespace_flag = ['--namespace', Gitlab::Kubernetes::Helm::NAMESPACE] value_flag = ['-f', "/data/helm/#{name}/config/values.yaml"] + args_flag = optional_install_set_args_flag name_flag + optional_tls_flags + optional_version_flag + optional_rbac_create_flag + namespace_flag + - value_flag + value_flag + + args_flag end def optional_rbac_create_flag @@ -64,6 +72,15 @@ module Gitlab %w[--set rbac.create=true,rbac.enabled=true] end + def optional_install_set_args_flag + return [] unless setargs + + args = [] + setargs.each do |s| + args.push("--set", s) + end + end + def optional_version_flag return [] unless version -- cgit v1.2.1