Module: Kubernetes::Secret

Extended by:
Secret
Included in:
Secret
Defined in:
lib/kubernetes/secret.rb,
lib/kubernetes/secret/rails/railtie.rb,
lib/kubernetes/secret/rails/version.rb

Defined Under Namespace

Modules: Rails

Instance Method Summary collapse

Instance Method Details

#load_secretsObject



21
22
23
24
25
# File 'lib/kubernetes/secret.rb', line 21

def load_secrets
  secrets_list.inject({}) do |hash, file_name|
    hash.merge(:"#{file_name.underscore}" => File.read(File.join(path, file_name)).strip)
  end
end

#on_kubernetes?Boolean

Returns:

  • (Boolean)


17
18
19
# File 'lib/kubernetes/secret.rb', line 17

def on_kubernetes?
  secrets_list.present?
end

#pathObject



5
6
7
# File 'lib/kubernetes/secret.rb', line 5

def path
  "/etc/#{::Rails.application.secrets.kubernetes_secret_name}"
end

#secrets_listObject



9
10
11
12
13
14
15
# File 'lib/kubernetes/secret.rb', line 9

def secrets_list
  begin
    Dir.entries(path) - ['.', '..']
  rescue => e
    puts "-----> No secret mounted or not on kubernetes. No secrets injected."
  end
end