class Njord::Commands::KubernetesSetup

Constants

APPNAME
ENVIRONMENT
HOSTNAME
NAMESPACE

Attributes

config[RW]

Public Class Methods

banner(command, _namespace = nil, _subcommand = false) click to toggle source
source_root() click to toggle source
# File lib/njord/commands/kubernetes_setup.rb, line 49
def self.source_root
  "#{__dir__}/../templates/kubernetes"
end

Public Instance Methods

all() click to toggle source
# File lib/njord/commands/kubernetes_setup.rb, line 13
def all
  init
  setup(:deployment)
  setup(:service)
  setup(:configmap)
  setup(:ingress)
end
configmap() click to toggle source
# File lib/njord/commands/kubernetes_setup.rb, line 34
def configmap
  init
  setup(:configmap)
end
deployment() click to toggle source
# File lib/njord/commands/kubernetes_setup.rb, line 22
def deployment
  init
  setup(:deployment)
end
ingress() click to toggle source
# File lib/njord/commands/kubernetes_setup.rb, line 40
def ingress
  init
  setup(:ingress)
end
service() click to toggle source
# File lib/njord/commands/kubernetes_setup.rb, line 28
def service
  init
  setup(:service)
end

Private Instance Methods

full_image_name() click to toggle source
# File lib/njord/commands/kubernetes_setup.rb, line 72
def full_image_name
  image = Njord.config.images.first
  "#{image.docker_repo}/#{image.image_name}:latest"
end
init() click to toggle source
# File lib/njord/commands/kubernetes_setup.rb, line 54
def init
  @config = {}
  @config[:appname] = ask("Name of your app [#{APPNAME}]", default: APPNAME)
  @config[:namespace] = ask("Namespace of your app [#{NAMESPACE}]", default: NAMESPACE)
  @config[:environment] = ask("Environment your app is running in [#{ENVIRONMENT}]", default: ENVIRONMENT)
  @config[:hostname] = ask("Hostname of your app [#{HOSTNAME}]", default: HOSTNAME)
  @config[:imagename] = ask("Name of your Dockerimage including repo [#{full_image_name}]", default: full_image_name)
end
setup(resource) click to toggle source
# File lib/njord/commands/kubernetes_setup.rb, line 63
def setup(resource)
  case resource
  when :deployment then template("deployments.yaml.tt", "deployment/deployments.yaml", @config)
  when :service then template("services.yaml.tt", "deployment/services.yaml", @config)
  when :configmap then template("configmaps.yaml.tt", "deployment/configmaps.yaml", @config)
  when :ingress then template("ingresses.yaml.tt", "deployment/ingresses.yaml", @config)
  end
end