Class: AgentsControl::Secrets::Providers::Env
- Inherits:
-
Object
- Object
- AgentsControl::Secrets::Providers::Env
- Defined in:
- lib/agents_control/secrets.rb
Overview
Environment variables. Read-only — writing into someone else's process isn't possible. Needed for CI, containers, and headless machines with no keyring daemon.
Instance Method Summary collapse
- #available? ⇒ Boolean
- #delete(_key) ⇒ Object
- #get(key) ⇒ Object
- #name ⇒ Object
- #set(_key, _value) ⇒ Object
- #variable_for(key) ⇒ Object
- #writable? ⇒ Boolean
Instance Method Details
#available? ⇒ Boolean
77 |
# File 'lib/agents_control/secrets.rb', line 77 def available? = true |
#delete(_key) ⇒ Object
84 |
# File 'lib/agents_control/secrets.rb', line 84 def delete(_key) = nil |
#get(key) ⇒ Object
80 |
# File 'lib/agents_control/secrets.rb', line 80 def get(key) = ENV.fetch(variable_for(key), nil) |
#name ⇒ Object
76 |
# File 'lib/agents_control/secrets.rb', line 76 def name = "environment variable" |
#set(_key, _value) ⇒ Object
82 |
# File 'lib/agents_control/secrets.rb', line 82 def set(_key, _value) = raise(Error, "cannot write an environment variable") |
#variable_for(key) ⇒ Object
86 |
# File 'lib/agents_control/secrets.rb', line 86 def variable_for(key) = "AGENTS_CONTROL_#{key.upcase}" |
#writable? ⇒ Boolean
78 |
# File 'lib/agents_control/secrets.rb', line 78 def writable? = false |