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.
Files changed (43) hide show
  1. checksums.yaml +5 -13
  2. data/example/pipeline/Example-Pipeline.yaml +21 -21
  3. data/example/pipeline/Example-Promotion.yaml +32 -0
  4. data/example/pipeline/Example-Release.yaml +2 -0
  5. data/example/pipeline/project.yaml +2 -0
  6. data/jenkins_pipeline_builder.gemspec +1 -0
  7. data/lib/jenkins_pipeline_builder.rb +5 -0
  8. data/lib/jenkins_pipeline_builder/cli/describe.rb +5 -3
  9. data/lib/jenkins_pipeline_builder/custom_errors.rb +20 -0
  10. data/lib/jenkins_pipeline_builder/extension_dsl.rb +2 -2
  11. data/lib/jenkins_pipeline_builder/extension_set.rb +12 -5
  12. data/lib/jenkins_pipeline_builder/extensions.rb +7 -6
  13. data/lib/jenkins_pipeline_builder/extensions/build_steps.rb +93 -0
  14. data/lib/jenkins_pipeline_builder/extensions/helpers/build_steps/triggered_job.rb +36 -0
  15. data/lib/jenkins_pipeline_builder/extensions/helpers/builders/blocking_downstream_helper.rb +2 -2
  16. data/lib/jenkins_pipeline_builder/extensions/helpers/builders/maven3_helper.rb +2 -2
  17. data/lib/jenkins_pipeline_builder/extensions/helpers/extension_helper.rb +7 -7
  18. data/lib/jenkins_pipeline_builder/extensions/helpers/triggers/upstream_helper.rb +2 -2
  19. data/lib/jenkins_pipeline_builder/extensions/job_attributes.rb +60 -1
  20. data/lib/jenkins_pipeline_builder/extensions/promotion_conditions.rb +80 -0
  21. data/lib/jenkins_pipeline_builder/generator.rb +65 -57
  22. data/lib/jenkins_pipeline_builder/job.rb +1 -7
  23. data/lib/jenkins_pipeline_builder/job_collection.rb +16 -14
  24. data/lib/jenkins_pipeline_builder/module_registry.rb +4 -4
  25. data/lib/jenkins_pipeline_builder/promotion.rb +82 -0
  26. data/lib/jenkins_pipeline_builder/utils.rb +6 -0
  27. data/lib/jenkins_pipeline_builder/version.rb +1 -1
  28. data/lib/jenkins_pipeline_builder/view.rb +1 -4
  29. data/spec/lib/jenkins_pipeline_builder/extensions/build_steps_spec.rb +198 -0
  30. data/spec/lib/jenkins_pipeline_builder/extensions/builders_spec.rb +1 -3
  31. data/spec/lib/jenkins_pipeline_builder/extensions/job_attributes_spec.rb +63 -0
  32. data/spec/lib/jenkins_pipeline_builder/extensions/promotion_conditions_spec.rb +281 -0
  33. data/spec/lib/jenkins_pipeline_builder/extensions/registered_spec.rb +11 -3
  34. data/spec/lib/jenkins_pipeline_builder/fixtures/generator_tests/sample_pipeline/SamplePipeline-30-Release.yaml +3 -1
  35. data/spec/lib/jenkins_pipeline_builder/fixtures/generator_tests/sample_pipeline/SamplePipeline-40-Promotion.yaml +31 -0
  36. data/spec/lib/jenkins_pipeline_builder/fixtures/generator_tests/sample_pipeline/project.yaml +3 -1
  37. data/spec/lib/jenkins_pipeline_builder/fixtures/promotions_test/sample_promotion.yaml +31 -0
  38. data/spec/lib/jenkins_pipeline_builder/generator_spec.rb +2 -2
  39. data/spec/lib/jenkins_pipeline_builder/job_spec.rb +1 -19
  40. data/spec/lib/jenkins_pipeline_builder/promotion_spec.rb +88 -0
  41. data/spec/lib/jenkins_pipeline_builder/spec_helper.rb +6 -0
  42. metadata +86 -59
  43. 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