jenkins_pipeline_builder 0.15.4 → 0.16.0
Sign up to get free protection for your applications and to get access to all the features.
- checksums.yaml +5 -13
- data/example/pipeline/Example-Pipeline.yaml +21 -21
- data/example/pipeline/Example-Promotion.yaml +32 -0
- data/example/pipeline/Example-Release.yaml +2 -0
- data/example/pipeline/project.yaml +2 -0
- data/jenkins_pipeline_builder.gemspec +1 -0
- data/lib/jenkins_pipeline_builder.rb +5 -0
- data/lib/jenkins_pipeline_builder/cli/describe.rb +5 -3
- data/lib/jenkins_pipeline_builder/custom_errors.rb +20 -0
- data/lib/jenkins_pipeline_builder/extension_dsl.rb +2 -2
- data/lib/jenkins_pipeline_builder/extension_set.rb +12 -5
- data/lib/jenkins_pipeline_builder/extensions.rb +7 -6
- data/lib/jenkins_pipeline_builder/extensions/build_steps.rb +93 -0
- data/lib/jenkins_pipeline_builder/extensions/helpers/build_steps/triggered_job.rb +36 -0
- data/lib/jenkins_pipeline_builder/extensions/helpers/builders/blocking_downstream_helper.rb +2 -2
- data/lib/jenkins_pipeline_builder/extensions/helpers/builders/maven3_helper.rb +2 -2
- data/lib/jenkins_pipeline_builder/extensions/helpers/extension_helper.rb +7 -7
- data/lib/jenkins_pipeline_builder/extensions/helpers/triggers/upstream_helper.rb +2 -2
- data/lib/jenkins_pipeline_builder/extensions/job_attributes.rb +60 -1
- data/lib/jenkins_pipeline_builder/extensions/promotion_conditions.rb +80 -0
- data/lib/jenkins_pipeline_builder/generator.rb +65 -57
- data/lib/jenkins_pipeline_builder/job.rb +1 -7
- data/lib/jenkins_pipeline_builder/job_collection.rb +16 -14
- data/lib/jenkins_pipeline_builder/module_registry.rb +4 -4
- data/lib/jenkins_pipeline_builder/promotion.rb +82 -0
- data/lib/jenkins_pipeline_builder/utils.rb +6 -0
- data/lib/jenkins_pipeline_builder/version.rb +1 -1
- data/lib/jenkins_pipeline_builder/view.rb +1 -4
- data/spec/lib/jenkins_pipeline_builder/extensions/build_steps_spec.rb +198 -0
- data/spec/lib/jenkins_pipeline_builder/extensions/builders_spec.rb +1 -3
- data/spec/lib/jenkins_pipeline_builder/extensions/job_attributes_spec.rb +63 -0
- data/spec/lib/jenkins_pipeline_builder/extensions/promotion_conditions_spec.rb +281 -0
- data/spec/lib/jenkins_pipeline_builder/extensions/registered_spec.rb +11 -3
- data/spec/lib/jenkins_pipeline_builder/fixtures/generator_tests/sample_pipeline/SamplePipeline-30-Release.yaml +3 -1
- data/spec/lib/jenkins_pipeline_builder/fixtures/generator_tests/sample_pipeline/SamplePipeline-40-Promotion.yaml +31 -0
- data/spec/lib/jenkins_pipeline_builder/fixtures/generator_tests/sample_pipeline/project.yaml +3 -1
- data/spec/lib/jenkins_pipeline_builder/fixtures/promotions_test/sample_promotion.yaml +31 -0
- data/spec/lib/jenkins_pipeline_builder/generator_spec.rb +2 -2
- data/spec/lib/jenkins_pipeline_builder/job_spec.rb +1 -19
- data/spec/lib/jenkins_pipeline_builder/promotion_spec.rb +88 -0
- data/spec/lib/jenkins_pipeline_builder/spec_helper.rb +6 -0
- metadata +86 -59
- data/lib/jenkins_pipeline_builder/project.rb +0 -26
@@ -1,26 +0,0 @@
|
|
1
|
-
module JenkinsPipelineBuilder
|
2
|
-
class Project
|
3
|
-
attr_reader :input
|
4
|
-
attr_accessor :errors
|
5
|
-
def initialize(name, input)
|
6
|
-
@name = name
|
7
|
-
@input = input
|
8
|
-
@errors = {}
|
9
|
-
end
|
10
|
-
|
11
|
-
def publish
|
12
|
-
success, payload = resolve_project(input)
|
13
|
-
return { project_name: 'Failed to resolve' } unless success
|
14
|
-
|
15
|
-
logger.info 'successfully resolved project'
|
16
|
-
compiled_project = payload
|
17
|
-
|
18
|
-
self.errors = publish_jobs(compiled_project[:value][:jobs]) if compiled_project[:value][:jobs]
|
19
|
-
return unless compiled_project[:value][:views]
|
20
|
-
compiled_project[:value][:views].each do |v|
|
21
|
-
compiled_view = v[:result]
|
22
|
-
view.create(compiled_view)
|
23
|
-
end
|
24
|
-
end
|
25
|
-
end
|
26
|
-
end
|