module Kubes::Compiler::Layering

Public Instance Methods

add_exts(layers) click to toggle source
# File lib/kubes/compiler/layering.rb, line 22
def add_exts(layers)
  layers.map do |layer|
    [
      "#{layer}.rb",
      "#{layer}.yaml",
      "#{layer}.yml",
    ]
  end.flatten
end
post_layers() click to toggle source
# File lib/kubes/compiler/layering.rb, line 32
def post_layers
  return [] if Kubes.kustomize?

  ext = File.extname(@path)
  kind_path = @path.sub(ext,'')

  layers = [
    "base",
    Kubes.env.to_s
  ]
  layers = add_exts(layers)
  layers.map! do |layer|
    "#{kind_path}/#{layer}"
  end
  layers.select { |layer| File.exist?(layer) }
end
pre_layers() click to toggle source
# File lib/kubes/compiler/layering.rb, line 3
def pre_layers
  return [] if Kubes.kustomize?

  ext = File.extname(@path)
  kind = File.basename(@path).sub(ext,'') # IE: deployment
  kind = kind.pluralize if @block_form
  layers = [
    "all",
    "all/#{Kubes.env}",
    "#{kind}",
    "#{kind}/#{Kubes.env}",
  ]
  layers = add_exts(layers)
  layers.map! do |layer|
    "#{Kubes.root}/.kubes/resources/base/#{layer}"
  end
  layers.select { |layer| File.exist?(layer) }
end