Class: JobSeeder
- Inherits:
-
Object
- Object
- JobSeeder
- Defined in:
- lib/job_seeder.rb
Overview
i guess also consider using local jenkins cli from user data?
Instance Method Summary collapse
-
#patch_job_seed(jobs_location:) ⇒ Object
only exposed for testing, don’t call me ok yea ERB more elegant but i’m feeling lazy.
- #seed_jobs(jenkins_connection_info:, jobs_location:) ⇒ Object
Instance Method Details
#patch_job_seed(jobs_location:) ⇒ Object
only exposed for testing, don’t call me ok yea ERB more elegant but i’m feeling lazy
25 26 27 28 29 30 31 |
# File 'lib/job_seeder.rb', line 25 def patch_job_seed(jobs_location:) seed_xml = IO.read path_to_seed seed_xml.gsub!(/<%= @job_definition_relative_path %>/, jobs_location['job_definition_relative_path']) seed_xml.gsub!(/<%= @job_repo_branch %>/, jobs_location['job_repo_branch']) seed_xml.gsub!(/<%= @job_repo %>/, jobs_location['job_repo']) seed_xml end |
#seed_jobs(jenkins_connection_info:, jobs_location:) ⇒ Object
5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 |
# File 'lib/job_seeder.rb', line 5 def seed_jobs(jenkins_connection_info:, jobs_location:) client = jenkins_api_client jenkins_connection_info: jenkins_connection_info job_name = 'job-seed' if client.job.exists? job_name client.job.delete job_name end seed_xml = patch_job_seed jobs_location: jobs_location client.job.create job_name, seed_xml client.job.build job_name end |