Class: AvoDeploy::Task::TaskExecutionEnvironment

Inherits:
Object
  • Object
show all
Defined in:
lib/avodeploy/task/task_execution_environment.rb

Instance Method Summary collapse

Constructor Details

#initialize(config) ⇒ TaskExecutionEnvironment

Initialized the environment

Parameters:

  • config (Hash)

    deployment configuration


26
27
28
29
# File 'lib/avodeploy/task/task_execution_environment.rb', line 26

def initialize(config)
	# @todo check
	@config = config
end

Instance Method Details

#check_util_availability(utils, system_name) ⇒ Object

Checks, if all utilities are available for the deployment process to be executed

Parameters:

  • utils (Array)

    array with utilities to check


42
43
44
45
46
47
48
49
50
51
52
53
54
# File 'lib/avodeploy/task/task_execution_environment.rb', line 42

def check_util_availability(utils, system_name)
	begin
		utils.each do |util|
			if command("command -v #{util} >/dev/null 2>&1 || exit 1;").retval == 1
				msg = "command line utility '#{util}' is not installed #{system_name}"

				raise RuntimeError, msg
			end
		end
	rescue Exception => e
		handle_abort e
	end
end

#get(key) ⇒ mixed

Returns a configuration item if set

Parameters:

  • key (Symbol)

    configuration key

Returns:

  • (mixed)

    configuration value


75
76
77
# File 'lib/avodeploy/task/task_execution_environment.rb', line 75

def get(key)
	@config[key]
end

#handle_abort(e) ⇒ Object

Shorthand for exception handling

Parameters:

  • e (Exception)

    the exception to handle


82
83
84
# File 'lib/avodeploy/task/task_execution_environment.rb', line 82

def handle_abort(e)
	AvoDeploy::Deployment.instance.handle_abort(e)
end

#logLogger

Returns the logger instance

Returns:

  • (Logger)

    log instance


59
60
61
# File 'lib/avodeploy/task/task_execution_environment.rb', line 59

def log
	AvoDeploy::Deployment.instance.log
end

#scm_provider=(scm_provider) ⇒ Object

Assigns the scm provider

Parameters:

  • scm_provider (ScmProvider)

    the scm provider to assign


34
35
36
# File 'lib/avodeploy/task/task_execution_environment.rb', line 34

def scm_provider=(scm_provider)
	@scm = scm_provider
end

#set(key, value) ⇒ Object

Sets a configuration item

Parameters:

  • key (Symbol)

    configuration key

  • value (mixed)

    configuration value


67
68
69
# File 'lib/avodeploy/task/task_execution_environment.rb', line 67

def set(key, value)
	@config[key] = value
end