module Kubes::Compiler::Dsl::Core::Files

Public Instance Methods

current_dir() click to toggle source
# File lib/kubes/compiler/dsl/core/files.rb, line 22
def current_dir
  resources_line = caller.find { |l| l.include?('.kubes/resources') }
  path = resources_line.split(':').first
  File.dirname(path) # IE: /full/path/.kubes/resources
end
files(*list) click to toggle source
# File lib/kubes/compiler/dsl/core/files.rb, line 3
def files(*list)
  dir = current_dir
  list.each do |file|
    path = "#{dir}/#{file}"
    load_data_from_file(path)
  end
end
load_data_from_file(path) click to toggle source
# File lib/kubes/compiler/dsl/core/files.rb, line 11
def load_data_from_file(path)
  parser = Kubes::Compiler::Dsl::Core::Parser.new(path)
  items = parser.parse
  items.transform_values! { |v| base64(v) } if secret_class?
  data(items)
end
secret_class?() click to toggle source
# File lib/kubes/compiler/dsl/core/files.rb, line 18
def secret_class?
  self.class == Kubes::Compiler::Dsl::Syntax::Secret
end