class ProbeDockProbe::UID
Constants
- ENVIRONMENT_VARIABLE
- OLD_ENVIRONMENT_VARIABLE
Public Class Methods
new(options = {})
click to toggle source
# File lib/probe_dock_ruby/uid.rb, line 11 def initialize options = {} @workspace = options[:workspace] end
Public Instance Methods
clean_uid()
click to toggle source
# File lib/probe_dock_ruby/uid.rb, line 35 def clean_uid ENV.delete ENVIRONMENT_VARIABLE ENV.delete OLD_ENVIRONMENT_VARIABLE FileUtils.remove_entry_secure uid_file if @workspace and File.exists?(uid_file) end
generate_uid_to_env()
click to toggle source
# File lib/probe_dock_ruby/uid.rb, line 28 def generate_uid_to_env raise Error.new("$PROBEDOCK_TEST_REPORT_UID is already defined") if env_var ENV[ENVIRONMENT_VARIABLE] = generate_uid ENV.delete OLD_ENVIRONMENT_VARIABLE ENV[ENVIRONMENT_VARIABLE] end
generate_uid_to_file()
click to toggle source
# File lib/probe_dock_ruby/uid.rb, line 23 def generate_uid_to_file raise Error.new("No workspace specified; cannot save test run UID") if !@workspace generate_uid.tap{ |uid| save_uid uid } end
load_uid()
click to toggle source
# File lib/probe_dock_ruby/uid.rb, line 15 def load_uid if env_var return env_var elsif @workspace current_uid end end
Private Instance Methods
current_uid()
click to toggle source
# File lib/probe_dock_ruby/uid.rb, line 52 def current_uid File.file?(uid_file) ? File.read(uid_file) : nil end
env_var()
click to toggle source
# File lib/probe_dock_ruby/uid.rb, line 48 def env_var ENV[ENVIRONMENT_VARIABLE] || ENV[OLD_ENVIRONMENT_VARIABLE] end
generate_uid()
click to toggle source
# File lib/probe_dock_ruby/uid.rb, line 60 def generate_uid "#{Time.now.utc.strftime '%Y%m%d%H%M%S'}-#{SecureRandom.uuid}" end
save_uid(uid)
click to toggle source
# File lib/probe_dock_ruby/uid.rb, line 43 def save_uid uid FileUtils.mkdir_p File.dirname(uid_file) File.open(uid_file, 'w'){ |f| f.write uid } end
uid_file()
click to toggle source
# File lib/probe_dock_ruby/uid.rb, line 56 def uid_file @uid_file ||= File.join(@workspace, 'uid') end