Module: Kdep::Helm

Defined in:
lib/kdep/helm.rb

Defined Under Namespace

Classes: Error

Class Method Summary collapse

Class Method Details

.repo_add(name, url) ⇒ Object



26
27
28
# File 'lib/kdep/helm.rb', line 26

def self.repo_add(name, url)
  run("repo", "add", name, url, "--force-update")
end

.repo_updateObject



30
31
32
# File 'lib/kdep/helm.rb', line 30

def self.repo_update
  run("repo", "update")
end

.run(*args) ⇒ Object



7
8
9
10
11
12
13
# File 'lib/kdep/helm.rb', line 7

def self.run(*args)
  stdout, stderr, status = Open3.capture3("helm", *args)
  unless status.success?
    raise Error, "helm #{args.first} failed: #{stderr.strip}"
  end
  stdout
end

.upgrade_install(release:, chart:, namespace:, values_file: nil, sets: {}, dry_run: false) ⇒ Object

helm upgrade –install <release> <chart> -n <namespace> [-f values.yml] [–set k=v …]



16
17
18
19
20
21
22
23
24
# File 'lib/kdep/helm.rb', line 16

def self.upgrade_install(release:, chart:, namespace:, values_file: nil, sets: {}, dry_run: false)
  args = ["upgrade", "--install", release, chart, "-n", namespace]
  args += ["-f", values_file] if values_file
  sets.each do |key, value|
    args += ["--set", "#{key}=#{value}"]
  end
  args << "--dry-run" if dry_run
  run(*args)
end