buildkite-builder 4.1.2 → 4.2.1

Sign up to get free protection for your applications and to get access to all the features.
checksums.yaml CHANGED
@@ -1,7 +1,7 @@
1
1
  ---
2
2
  SHA256:
3
- metadata.gz: 1a02f80263e1373648688276099006c4d2c6870803bb82196cdce5be97d89ad5
4
- data.tar.gz: bee2180eac619b4bc4931434f12e02d199fd95c82bcf43e9798b96d01f76f263
3
+ metadata.gz: 9a8781f1d4e933a20eae5cc484f9c7d8fe11e1606fb89981819d3b94c6b79622
4
+ data.tar.gz: 9c48682aaed76cf3d72a25a6c8633395243b153c0cd3a7ea4d1310ac6776546d
5
5
  SHA512:
6
- metadata.gz: c8f8028dbc2b311ed71a5dd287d805e8cf417832495172405e2d5556f6535163ab5400a8506c7c9ecd0a32099a0cf7283c32f854f86781c1615284e3032c9319
7
- data.tar.gz: eda46a592c6f8630e177f539369c3bbf1d619429b32407db7fbf461420592ef9263982dbe4ed4e6f0203baeac8a5a06362aa493e5a6b26680a52f05c904f73f2
6
+ metadata.gz: 45973c8d81a01fd188822260e62d60d2c2a5ed7cb6dde21d530d3a31c0327e4d065639934c82d7528a218505d902b67d1cfe11c1d088b61bff5ddbb3997a8a08
7
+ data.tar.gz: 5a37e559b446888b8812ecca4a2fd3592138c6adbd6a3f56f82d80bd5b5adb6b64d411ac986b678c42e3537e7dab16c91b8e289f0171707d2d4f69da4aeaf4de
data/CHANGELOG.md CHANGED
@@ -1,3 +1,36 @@
1
+ ### 4.2.1
2
+ * Allow uploading pipeline to different jobs
3
+
4
+ ### 4.2.0
5
+ * Add shared global templates
6
+
7
+ ### 4.1.2
8
+ * Raise error with stderr/stdout message when `buildkite-agent` command failed while using bang commands (`artifact!`, `annotate!`, `pipeline!`, and `meta_data!`)
9
+ * Add `signal_reason` as an automatic retry option
10
+
11
+ ### 4.1.1
12
+ * Fix `PluginManager`'s error message when plugin was not registered
13
+
14
+ ### 4.1.0
15
+ * Remove `skip` step since it's only mimicing `command` step with a skip.
16
+
17
+ ### 4.0.0
18
+ * Remove `subpipeline` since it's not a Buildkite standard.
19
+ * Refactor template handling
20
+ * Simplify `group` step implementation
21
+
22
+ ### 3.9.0
23
+ * Create a `Plugins` extension to take care named plugins from the plugin manager.
24
+
25
+ ### 3.8.1...3.8.3
26
+ * Expose extension manager to be accessible in dsl
27
+ * Removes an extra definition of `attr_reader :extensions` in pipeline
28
+ * Allow `group` steps to be able to use extension's dsl methods
29
+ * Show buildkite builder version at the beginning of the command
30
+
31
+ ### 3.8.0
32
+ * Extensions can now take block as argument [example](https://github.com/Gusto/buildkite-builder/blob/v3.8.0/.buildkite/pipelines/showcase/pipeline.rb#L6-L13)
33
+
1
34
  ## 3.6.0
2
35
  * `Buildkite::Pipelines::Command#run` now uses `Open3.capture3` to run system commands, and accepts an optional arg `capture`. When `capture` is true, it returns the stdout of the command. `capture` is true for the meta_data subcommands `get` and `keys` and for the artifact subcommands `shasum` and `search`.
3
36
 
data/VERSION CHANGED
@@ -1 +1 @@
1
- 4.1.2
1
+ 4.2.1
@@ -17,8 +17,8 @@ module Buildkite
17
17
  # variables to be set. It also uploads the pipeline to Buildkite.
18
18
  log.info "+++ 🧰 #{'Buildkite Builder'.color(:springgreen)} v#{Buildkite::Builder.version} ─ #{relative_pipeline_path.to_s.yellow}"
19
19
 
20
- if Buildkite::Pipelines::Command.meta_data(:exists, Builder::META_DATA.fetch(:job))
21
- log.info 'Pipeline already uploaded'.color(:dimgray)
20
+ if Buildkite::Pipelines::Command.meta_data(:get, Builder::META_DATA.fetch(:job)) == Buildkite.env.job_id
21
+ log.info "Pipeline already uploaded in #{Buildkite.env.job_id}".color(:dimgray)
22
22
  else
23
23
  Pipeline.new(pipeline_path, logger: log).upload
24
24
  end
@@ -9,16 +9,27 @@ module Buildkite
9
9
  TEMPLATES_PATH = Pathname.new('templates').freeze
10
10
 
11
11
  def load
12
- return unless templates_path.directory?
12
+ load_from_path(global_path)
13
+ load_from_path(pipeline_path)
14
+ end
15
+
16
+ private
17
+
18
+ def load_from_path(path)
19
+ return unless path.directory?
13
20
 
14
- templates_path.children.sort.each do |file|
21
+ path.children.sort.each do |file|
15
22
  add(file.basename('.rb'), load_definition(file, Definition::Template))
16
23
  end
17
24
  end
18
25
 
19
- def templates_path
26
+ def pipeline_path
20
27
  root.join(TEMPLATES_PATH)
21
28
  end
29
+
30
+ def global_path
31
+ buildkite_path.join(TEMPLATES_PATH)
32
+ end
22
33
  end
23
34
  end
24
35
  end
metadata CHANGED
@@ -1,7 +1,7 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: buildkite-builder
3
3
  version: !ruby/object:Gem::Version
4
- version: 4.1.2
4
+ version: 4.2.1
5
5
  platform: ruby
6
6
  authors:
7
7
  - Ngan Pham
@@ -9,7 +9,7 @@ authors:
9
9
  autorequire:
10
10
  bindir: exe
11
11
  cert_chain: []
12
- date: 2023-04-11 00:00:00.000000000 Z
12
+ date: 2023-06-21 00:00:00.000000000 Z
13
13
  dependencies:
14
14
  - !ruby/object:Gem::Dependency
15
15
  name: rainbow
@@ -174,7 +174,7 @@ required_rubygems_version: !ruby/object:Gem::Requirement
174
174
  - !ruby/object:Gem::Version
175
175
  version: '0'
176
176
  requirements: []
177
- rubygems_version: 3.3.13
177
+ rubygems_version: 3.4.10
178
178
  signing_key:
179
179
  specification_version: 4
180
180
  summary: A gem for programmatically creating Buildkite pipelines.