Sha256: aaf5fdc2e43d3af48f1546d7d5de6c70727cb9f3bc7c3e44dc87f8b9b81f5f79

Contents?: true

Size: 881 Bytes

Versions: 10

Compression:

Stored size: 881 Bytes

Contents

class KuberKit::Actions::KubectlConsole
  include KuberKit::Import[
    "shell.kubectl_commands",
    "shell.local_shell",
    "kubernetes.resource_selector",
    "ui"
  ]

  Contract Maybe[String], Hash => Any
  def call(pod_name, options)
    kubeconfig_path    = KuberKit.current_configuration.kubeconfig_path
    kubectl_entrypoint = KuberKit.current_configuration.kubectl_entrypoint
    deployer_namespace = KuberKit.current_configuration.deployer_namespace

    if !pod_name 
      pod_name = resource_selector.call("attach")
    end

    kubectl_commands.exec(
      local_shell, pod_name, "bin/console", args: "-it", 
      kubeconfig_path: kubeconfig_path, 
      interactive:  true,
      namespace:    deployer_namespace,
      entrypoint:   kubectl_entrypoint
    )

    true
  rescue KuberKit::Error => e
    ui.print_error("Error", e.message)
    
    false
  end
end

Version data entries

10 entries across 10 versions & 1 rubygems

Version Path
kuber_kit-0.9.8 lib/kuber_kit/actions/kubectl_console.rb
kuber_kit-0.9.7 lib/kuber_kit/actions/kubectl_console.rb
kuber_kit-0.9.6 lib/kuber_kit/actions/kubectl_console.rb
kuber_kit-0.9.5 lib/kuber_kit/actions/kubectl_console.rb
kuber_kit-0.9.4 lib/kuber_kit/actions/kubectl_console.rb
kuber_kit-0.9.3 lib/kuber_kit/actions/kubectl_console.rb
kuber_kit-0.9.2 lib/kuber_kit/actions/kubectl_console.rb
kuber_kit-0.9.1 lib/kuber_kit/actions/kubectl_console.rb
kuber_kit-0.9.0 lib/kuber_kit/actions/kubectl_console.rb
kuber_kit-0.8.8 lib/kuber_kit/actions/kubectl_console.rb