Class: Jendle::Job

Inherits:
Object
  • Object
show all
Defined in:
lib/jendle/job.rb

Instance Method Summary collapse

Constructor Details

#initialize(core) ⇒ Job

Returns a new instance of Job.



4
5
6
7
8
# File 'lib/jendle/job.rb', line 4

def initialize(core)
  @core = core
  @client = core.client
  @logger = core.logger
end

Instance Method Details

#apply(options) ⇒ Object



26
27
28
29
30
31
# File 'lib/jendle/job.rb', line 26

def apply(options)
  jobs = YAML.load_file(options[:file])
  jobs.each do |job_name, xml|
    apply_proc(job_name, xml, options[:'dry-run'])
  end
end

#export(options) ⇒ Object



21
22
23
24
# File 'lib/jendle/job.rb', line 21

def export(options)
  File.write(options[:output], get_config_pairs.to_yaml)
  @logger.info("exported => #{options[:output]}")
end

#restore(options, source_config) ⇒ Object



10
11
12
13
14
15
16
17
18
19
# File 'lib/jendle/job.rb', line 10

def restore(options, source_config)
  source_client = @core.get_client(
    source_config['server_ip'],
    source_config['username'],
    source_config['password']
  )
  get_config_pairs(source_client).each do |job_name, xml|
    apply_proc(job_name, xml, options[:'dry-run'])
  end
end