Class: Jendle::Job

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

Instance Method Summary collapse

Methods inherited from Base

#initialize

Constructor Details

This class inherits a constructor from Jendle::Base

Instance Method Details

#apply(options) ⇒ Object



28
29
30
31
32
33
# File 'lib/jendle/job.rb', line 28

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

#delete_jobs(options) ⇒ Object



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

def delete_jobs(options)
  get_config_pairs.keys.each do |job_name|
    @client.job.delete(job_name)
  end
end

#export(options) ⇒ Object



23
24
25
26
# File 'lib/jendle/job.rb', line 23

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

#restore(options, source_config, apply_job_name = nil) ⇒ Object



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

def restore(options, source_config, apply_job_name = nil)
  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|
    if (job_name == apply_job_name) || apply_job_name.nil?
      apply_proc(job_name, xml, options[:'dry-run'])
    end
  end
end