Sha256: c98a252300fff8ff74ecd95e04980b4220522ed64b86e83dca526c88c2f06ddc

Contents?: true

Size: 1.08 KB

Versions: 10

Compression:

Stored size: 1.08 KB

Contents

class KuberKit::ServiceGenerator::Strategies::Helm < KuberKit::ServiceGenerator::Strategies::Abstract
  include KuberKit::Import[
    "service_reader.reader",
    "shell.bash_commands",
    "configs",
  ]

  Contract KuberKit::Shell::AbstractShell, KuberKit::Core::Service, String => Any
  def generate(shell, service, export_path)
    service_config        = reader.read(shell, service)
    chart_root_path       = File.join(export_path, "#{service.name}_chart")
    chart_templates_path  = File.join(chart_root_path, "templates")
    chart_config_path     = File.join(chart_root_path, "Chart.yaml")
    release_path          = File.join(chart_templates_path, "release.yaml")

    bash_commands.mkdir_p(shell, chart_root_path)
    bash_commands.mkdir_p(shell, chart_templates_path)

    shell.write(release_path, service_config)
    shell.write(chart_config_path, chart_config_content(service.uri))
  end

  def chart_config_content(release_name)
    query = <<-CHART
apiVersion: v2
name: #{release_name}
description: #{release_name}
type: application
version: 1.0.0
appVersion: "1.0.0"
    CHART
  end
end

Version data entries

10 entries across 10 versions & 1 rubygems

Version Path
kuber_kit-1.3.8 lib/kuber_kit/service_generator/strategies/helm.rb
kuber_kit-1.3.7 lib/kuber_kit/service_generator/strategies/helm.rb
kuber_kit-1.1.8 lib/kuber_kit/service_generator/strategies/helm.rb
kuber_kit-1.3.6 lib/kuber_kit/service_generator/strategies/helm.rb
kuber_kit-1.1.7 lib/kuber_kit/service_generator/strategies/helm.rb
kuber_kit-1.3.5 lib/kuber_kit/service_generator/strategies/helm.rb
kuber_kit-1.3.4 lib/kuber_kit/service_generator/strategies/helm.rb
kuber_kit-1.1.6 lib/kuber_kit/service_generator/strategies/helm.rb
kuber_kit-1.3.3 lib/kuber_kit/service_generator/strategies/helm.rb
kuber_kit-1.3.2 lib/kuber_kit/service_generator/strategies/helm.rb