Module: KubernetesHarness::Clusters::Metadata

Defined in:
lib/k8s_harness/clusters/metadata.rb

Overview

k8s-harness relies on storing things like Ansible playbooks for our disposable cluster and extra files that users might use. This module handles all of that.

Class Method Summary collapse

Class Method Details

.create_dir!Object



17
18
19
# File 'lib/k8s_harness/clusters/metadata.rb', line 17

def self.create_dir!
  ::FileUtils.mkdir_p default_dir unless Dir.exist? default_dir
end

.default_dirObject



13
14
15
# File 'lib/k8s_harness/clusters/metadata.rb', line 13

def self.default_dir
  "#{ENV['PWD']}/.k8sharness_data"
end

.delete!(file_name) ⇒ Object



32
33
34
35
36
# File 'lib/k8s_harness/clusters/metadata.rb', line 32

def self.delete!(file_name)
  KubernetesHarness.logger.debug "Deleting from metadata: #{file_name}"
  fp = File.join default_dir, file_name
  FileUtils.rm(fp)
end

.initialize!Object



21
22
23
24
# File 'lib/k8s_harness/clusters/metadata.rb', line 21

def self.initialize!
  create_dir!
  FileUtils.cp_r("#{KubernetesHarness::Paths.include_dir}/.", default_dir)
end

.write!(file_name, content) ⇒ Object



26
27
28
29
30
# File 'lib/k8s_harness/clusters/metadata.rb', line 26

def self.write!(file_name, content)
  KubernetesHarness.logger.debug "Creating new metadata: #{file_name}"
  fp = File.join default_dir, file_name
  File.write(fp, content)
end