Class: Voxpupuli::Acceptance::Facts
- Inherits:
-
Object
- Object
- Voxpupuli::Acceptance::Facts
- Defined in:
- lib/voxpupuli/acceptance/facts.rb
Constant Summary collapse
- ENV_VAR_PREFIX =
'BEAKER_FACTER_'
- FACT_FILE =
'/etc/facter/facts.d/voxpupuli-acceptance-env.json'
Class Method Summary collapse
Class Method Details
.beaker_facts_from_env ⇒ Object
8 9 10 11 12 13 14 15 16 17 18 19 |
# File 'lib/voxpupuli/acceptance/facts.rb', line 8 def beaker_facts_from_env facts = {} ENV.each do |var, value| next unless var.start_with?(ENV_VAR_PREFIX) fact = var.sub(ENV_VAR_PREFIX, '').downcase facts[fact] = value end facts end |
.write_beaker_facts_on(hosts) ⇒ Object
21 22 23 24 25 26 27 28 29 30 |
# File 'lib/voxpupuli/acceptance/facts.rb', line 21 def write_beaker_facts_on(hosts) beaker_facts = beaker_facts_from_env if beaker_facts.any? require 'json' on(hosts, "mkdir -p #{File.dirname(FACT_FILE)} && cat <<VOXPUPULI_BEAKER_ENV_VARS > #{FACT_FILE}\n#{beaker_facts.to_json}\nVOXPUPULI_BEAKER_ENV_VARS") else on(hosts, "rm -f #{FACT_FILE}") end end |