Class: Jenkins::Template

Inherits:
Object
  • Object
show all
Defined in:
lib/jenkins-capistrano/template.rb

Instance Method Summary collapse

Constructor Details

#initialize(template, variables) ⇒ Template

Returns a new instance of Template.

Raises:

  • (ArgumentError)


5
6
7
8
9
10
# File 'lib/jenkins-capistrano/template.rb', line 5

def initialize(template, variables)
  raise ArgumentError, "Template #{template} does not exist." unless File.exists? template
  raise ArgumentError, "variables must be a Hash, but was #{variables.class}" unless variables.is_a? Hash
  @template = template
  @variables = variables
end

Instance Method Details

#evaluateObject



12
13
14
15
16
17
18
# File 'lib/jenkins-capistrano/template.rb', line 12

def evaluate
  @variables.each do |param, value|
    var = "@#{param.to_s}"
    instance_variable_set(var, value)
  end
  ERB.new(File.read(@template), 0, '-').result(binding)
end