From 7395d2a5f0a5d240ca1199113f0b8c068ba1f283 Mon Sep 17 00:00:00 2001 From: Mike Dalessio Date: Sun, 29 Mar 2020 13:30:01 -0400 Subject: [PATCH] ci: add alpine/musl jobs to master and PR pipelines also restructure pipelines to have a second gate related to #1990 and #1845 --- concourse/nokogiri-pr.yml | 157 +++++++++++++++++++--------- concourse/nokogiri-pr.yml.generated | 157 +++++++++++++++++++--------- concourse/nokogiri.yml | 74 +++++++++++-- concourse/nokogiri.yml.generated | 74 +++++++++++-- 4 files changed, 346 insertions(+), 116 deletions(-) diff --git a/concourse/nokogiri-pr.yml b/concourse/nokogiri-pr.yml index 4184ae59d7d..f68c6830bc4 100644 --- a/concourse/nokogiri-pr.yml +++ b/concourse/nokogiri-pr.yml @@ -152,7 +152,7 @@ jobs: on_failure: { in_parallel: [*notify_failure_to_irc, *notify_failure_to_pr] } % end - - name: gate + - name: gate-1 public: true plan: - get: nokogiri-pr @@ -165,7 +165,7 @@ jobs: - "jruby-<%= RUBIES[:jruby].last %>" - - name: gem-test + - name: ruby-vanilla-system public: true serial: true plan: @@ -173,78 +173,102 @@ jobs: - get: nokogiri-pr trigger: true version: every - passed: ["gate"] - - task: gem-build + passed: ["gate-1"] + - task: rake-test config: platform: linux image_resource: type: registry-image - source: {repository: "flavorjones/nokogiri-test", tag: "mri-<%= Concourse.production_rubies.last %>"} + source: {repository: "flavorjones/nokogiri-test", tag: bionic} inputs: - name: ci - name: nokogiri-pr path: nokogiri - outputs: - - name: gems + params: + NOKOGIRI_USE_SYSTEM_LIBRARIES: t run: - path: ci/concourse/tasks/gem-test/gem-build.sh + path: ci/concourse/tasks/rake-test/run.sh on_failure: { in_parallel: [*notify_failure_to_irc, *notify_failure_to_pr] } - - task: gem-install-and-test + + + - name: ruby-musl-system + public: true + serial: true + plan: + - get: ci + - get: nokogiri-pr + trigger: true + passed: ["gate-1"] + - task: rake-test config: platform: linux image_resource: type: registry-image - source: {repository: "flavorjones/nokogiri-test", tag: "mri-<%= Concourse.production_rubies.last %>"} + source: {repository: "flavorjones/nokogiri-test", tag: "alpine"} inputs: - name: ci - name: nokogiri-pr path: nokogiri - - name: gems + params: + NOKOGIRI_USE_SYSTEM_LIBRARIES: t run: - path: ci/concourse/tasks/gem-test/gem-install-and-test.sh - on_failure: { in_parallel: [*notify_failure_to_irc, *notify_failure_to_pr] } + path: ci/concourse/tasks/rake-test/run.sh + on_failure: *notify_failure_to_irc - - name: gem-test-java + + - name: ruby-musl-valgrind public: true serial: true plan: - get: ci - get: nokogiri-pr trigger: true - version: every - passed: ["gate"] - - task: gem-build + passed: ["ruby-musl-system"] + - task: rake-test config: platform: linux image_resource: type: registry-image - source: {repository: "flavorjones/nokogiri-test", tag: "jruby-<%= RUBIES[:jruby].last %>"} + source: {repository: "flavorjones/nokogiri-test", tag: "alpine"} inputs: - name: ci - name: nokogiri-pr path: nokogiri - outputs: - - name: gems + params: + TEST_WITH_VALGRIND: t run: - path: ci/concourse/tasks/gem-test/gem-build-java.sh - on_failure: { in_parallel: [*notify_failure_to_irc, *notify_failure_to_pr] } - - task: gem-install-and-test + path: ci/concourse/tasks/rake-test/run.sh + on_failure: *notify_failure_to_irc + + + - name: ruby-libxmlruby-system + public: true + serial: true + plan: + - get: ci + - get: nokogiri-pr + trigger: true + version: every + passed: ["gate-1"] + - task: rake-test config: platform: linux image_resource: type: registry-image - source: {repository: "flavorjones/nokogiri-test", tag: "jruby-<%= RUBIES[:jruby].last %>"} + source: {repository: "flavorjones/nokogiri-test", tag: "mri-<%= Concourse.production_rubies.last %>"} inputs: - name: ci - name: nokogiri-pr path: nokogiri - - name: gems + params: + BUNDLE_GEMFILE: "Gemfile-libxml-ruby" + NOKOGIRI_USE_SYSTEM_LIBRARIES: t run: - path: ci/concourse/tasks/gem-test/gem-install-and-test.sh + path: ci/concourse/tasks/rake-test/run.sh on_failure: { in_parallel: [*notify_failure_to_irc, *notify_failure_to_pr] } - - name: ruby-vanilla-system + - name: ruby-libxmlruby-valgrind public: true serial: true plan: @@ -252,25 +276,38 @@ jobs: - get: nokogiri-pr trigger: true version: every - passed: ["gate"] + passed: ["ruby-libxmlruby-system"] - task: rake-test config: platform: linux image_resource: type: registry-image - source: {repository: "flavorjones/nokogiri-test", tag: bionic} + source: {repository: "flavorjones/nokogiri-test", tag: "mri-<%= Concourse.production_rubies.last %>"} inputs: - name: ci - name: nokogiri-pr path: nokogiri params: - NOKOGIRI_USE_SYSTEM_LIBRARIES: t + BUNDLE_GEMFILE: "Gemfile-libxml-ruby" + TEST_WITH_VALGRIND: t run: path: ci/concourse/tasks/rake-test/run.sh on_failure: { in_parallel: [*notify_failure_to_irc, *notify_failure_to_pr] } - - name: ruby-libxmlruby-system + - name: gate-2 + public: true + plan: + - get: nokogiri-pr + trigger: true + version: every + passed: + - ruby-vanilla-system + - ruby-libxmlruby-valgrind + - ruby-musl-valgrind + + + - name: gem-test public: true serial: true plan: @@ -278,8 +315,8 @@ jobs: - get: nokogiri-pr trigger: true version: every - passed: ["gate"] - - task: rake-test + passed: ["gate-2"] + - task: gem-build config: platform: linux image_resource: @@ -289,15 +326,27 @@ jobs: - name: ci - name: nokogiri-pr path: nokogiri - params: - BUNDLE_GEMFILE: "Gemfile-libxml-ruby" - NOKOGIRI_USE_SYSTEM_LIBRARIES: t + outputs: + - name: gems run: - path: ci/concourse/tasks/rake-test/run.sh + path: ci/concourse/tasks/gem-test/gem-build.sh + on_failure: { in_parallel: [*notify_failure_to_irc, *notify_failure_to_pr] } + - task: gem-install-and-test + config: + platform: linux + image_resource: + type: registry-image + source: {repository: "flavorjones/nokogiri-test", tag: "mri-<%= Concourse.production_rubies.last %>"} + inputs: + - name: ci + - name: nokogiri-pr + path: nokogiri + - name: gems + run: + path: ci/concourse/tasks/gem-test/gem-install-and-test.sh on_failure: { in_parallel: [*notify_failure_to_irc, *notify_failure_to_pr] } - - - name: ruby-libxmlruby-valgrind + - name: gem-test-java public: true serial: true plan: @@ -305,22 +354,35 @@ jobs: - get: nokogiri-pr trigger: true version: every - passed: ["gate"] - - task: rake-test + passed: ["gate-2"] + - task: gem-build config: platform: linux image_resource: type: registry-image - source: {repository: "flavorjones/nokogiri-test", tag: "mri-<%= Concourse.production_rubies.last %>"} + source: {repository: "flavorjones/nokogiri-test", tag: "jruby-<%= RUBIES[:jruby].last %>"} inputs: - name: ci - name: nokogiri-pr path: nokogiri - params: - BUNDLE_GEMFILE: "Gemfile-libxml-ruby" - TEST_WITH_VALGRIND: t + outputs: + - name: gems run: - path: ci/concourse/tasks/rake-test/run.sh + path: ci/concourse/tasks/gem-test/gem-build-java.sh + on_failure: { in_parallel: [*notify_failure_to_irc, *notify_failure_to_pr] } + - task: gem-install-and-test + config: + platform: linux + image_resource: + type: registry-image + source: {repository: "flavorjones/nokogiri-test", tag: "jruby-<%= RUBIES[:jruby].last %>"} + inputs: + - name: ci + - name: nokogiri-pr + path: nokogiri + - name: gems + run: + path: ci/concourse/tasks/gem-test/gem-install-and-test.sh on_failure: { in_parallel: [*notify_failure_to_irc, *notify_failure_to_pr] } @@ -332,9 +394,6 @@ jobs: trigger: true version: every passed: - - ruby-vanilla-system - - ruby-libxmlruby-system - - ruby-libxmlruby-valgrind - gem-test - gem-test-java - put: nokogiri-pr diff --git a/concourse/nokogiri-pr.yml.generated b/concourse/nokogiri-pr.yml.generated index 04fa25450ea..bda3df33286 100644 --- a/concourse/nokogiri-pr.yml.generated +++ b/concourse/nokogiri-pr.yml.generated @@ -379,7 +379,7 @@ jobs: path: ci/concourse/tasks/rake-test/run.sh on_failure: { in_parallel: [*notify_failure_to_irc, *notify_failure_to_pr] } - - name: gate + - name: gate-1 public: true plan: - get: nokogiri-pr @@ -393,7 +393,7 @@ jobs: - "jruby-9.2" - - name: gem-test + - name: ruby-vanilla-system public: true serial: true plan: @@ -401,78 +401,102 @@ jobs: - get: nokogiri-pr trigger: true version: every - passed: ["gate"] - - task: gem-build + passed: ["gate-1"] + - task: rake-test config: platform: linux image_resource: type: registry-image - source: {repository: "flavorjones/nokogiri-test", tag: "mri-2.7"} + source: {repository: "flavorjones/nokogiri-test", tag: bionic} inputs: - name: ci - name: nokogiri-pr path: nokogiri - outputs: - - name: gems + params: + NOKOGIRI_USE_SYSTEM_LIBRARIES: t run: - path: ci/concourse/tasks/gem-test/gem-build.sh + path: ci/concourse/tasks/rake-test/run.sh on_failure: { in_parallel: [*notify_failure_to_irc, *notify_failure_to_pr] } - - task: gem-install-and-test + + + - name: ruby-musl-system + public: true + serial: true + plan: + - get: ci + - get: nokogiri-pr + trigger: true + passed: ["gate-1"] + - task: rake-test config: platform: linux image_resource: type: registry-image - source: {repository: "flavorjones/nokogiri-test", tag: "mri-2.7"} + source: {repository: "flavorjones/nokogiri-test", tag: "alpine"} inputs: - name: ci - name: nokogiri-pr path: nokogiri - - name: gems + params: + NOKOGIRI_USE_SYSTEM_LIBRARIES: t run: - path: ci/concourse/tasks/gem-test/gem-install-and-test.sh - on_failure: { in_parallel: [*notify_failure_to_irc, *notify_failure_to_pr] } + path: ci/concourse/tasks/rake-test/run.sh + on_failure: *notify_failure_to_irc - - name: gem-test-java + + - name: ruby-musl-valgrind public: true serial: true plan: - get: ci - get: nokogiri-pr trigger: true - version: every - passed: ["gate"] - - task: gem-build + passed: ["ruby-musl-system"] + - task: rake-test config: platform: linux image_resource: type: registry-image - source: {repository: "flavorjones/nokogiri-test", tag: "jruby-9.2"} + source: {repository: "flavorjones/nokogiri-test", tag: "alpine"} inputs: - name: ci - name: nokogiri-pr path: nokogiri - outputs: - - name: gems + params: + TEST_WITH_VALGRIND: t run: - path: ci/concourse/tasks/gem-test/gem-build-java.sh - on_failure: { in_parallel: [*notify_failure_to_irc, *notify_failure_to_pr] } - - task: gem-install-and-test + path: ci/concourse/tasks/rake-test/run.sh + on_failure: *notify_failure_to_irc + + + - name: ruby-libxmlruby-system + public: true + serial: true + plan: + - get: ci + - get: nokogiri-pr + trigger: true + version: every + passed: ["gate-1"] + - task: rake-test config: platform: linux image_resource: type: registry-image - source: {repository: "flavorjones/nokogiri-test", tag: "jruby-9.2"} + source: {repository: "flavorjones/nokogiri-test", tag: "mri-2.7"} inputs: - name: ci - name: nokogiri-pr path: nokogiri - - name: gems + params: + BUNDLE_GEMFILE: "Gemfile-libxml-ruby" + NOKOGIRI_USE_SYSTEM_LIBRARIES: t run: - path: ci/concourse/tasks/gem-test/gem-install-and-test.sh + path: ci/concourse/tasks/rake-test/run.sh on_failure: { in_parallel: [*notify_failure_to_irc, *notify_failure_to_pr] } - - name: ruby-vanilla-system + - name: ruby-libxmlruby-valgrind public: true serial: true plan: @@ -480,25 +504,38 @@ jobs: - get: nokogiri-pr trigger: true version: every - passed: ["gate"] + passed: ["ruby-libxmlruby-system"] - task: rake-test config: platform: linux image_resource: type: registry-image - source: {repository: "flavorjones/nokogiri-test", tag: bionic} + source: {repository: "flavorjones/nokogiri-test", tag: "mri-2.7"} inputs: - name: ci - name: nokogiri-pr path: nokogiri params: - NOKOGIRI_USE_SYSTEM_LIBRARIES: t + BUNDLE_GEMFILE: "Gemfile-libxml-ruby" + TEST_WITH_VALGRIND: t run: path: ci/concourse/tasks/rake-test/run.sh on_failure: { in_parallel: [*notify_failure_to_irc, *notify_failure_to_pr] } - - name: ruby-libxmlruby-system + - name: gate-2 + public: true + plan: + - get: nokogiri-pr + trigger: true + version: every + passed: + - ruby-vanilla-system + - ruby-libxmlruby-valgrind + - ruby-musl-valgrind + + + - name: gem-test public: true serial: true plan: @@ -506,8 +543,8 @@ jobs: - get: nokogiri-pr trigger: true version: every - passed: ["gate"] - - task: rake-test + passed: ["gate-2"] + - task: gem-build config: platform: linux image_resource: @@ -517,15 +554,27 @@ jobs: - name: ci - name: nokogiri-pr path: nokogiri - params: - BUNDLE_GEMFILE: "Gemfile-libxml-ruby" - NOKOGIRI_USE_SYSTEM_LIBRARIES: t + outputs: + - name: gems run: - path: ci/concourse/tasks/rake-test/run.sh + path: ci/concourse/tasks/gem-test/gem-build.sh + on_failure: { in_parallel: [*notify_failure_to_irc, *notify_failure_to_pr] } + - task: gem-install-and-test + config: + platform: linux + image_resource: + type: registry-image + source: {repository: "flavorjones/nokogiri-test", tag: "mri-2.7"} + inputs: + - name: ci + - name: nokogiri-pr + path: nokogiri + - name: gems + run: + path: ci/concourse/tasks/gem-test/gem-install-and-test.sh on_failure: { in_parallel: [*notify_failure_to_irc, *notify_failure_to_pr] } - - - name: ruby-libxmlruby-valgrind + - name: gem-test-java public: true serial: true plan: @@ -533,22 +582,35 @@ jobs: - get: nokogiri-pr trigger: true version: every - passed: ["gate"] - - task: rake-test + passed: ["gate-2"] + - task: gem-build config: platform: linux image_resource: type: registry-image - source: {repository: "flavorjones/nokogiri-test", tag: "mri-2.7"} + source: {repository: "flavorjones/nokogiri-test", tag: "jruby-9.2"} inputs: - name: ci - name: nokogiri-pr path: nokogiri - params: - BUNDLE_GEMFILE: "Gemfile-libxml-ruby" - TEST_WITH_VALGRIND: t + outputs: + - name: gems run: - path: ci/concourse/tasks/rake-test/run.sh + path: ci/concourse/tasks/gem-test/gem-build-java.sh + on_failure: { in_parallel: [*notify_failure_to_irc, *notify_failure_to_pr] } + - task: gem-install-and-test + config: + platform: linux + image_resource: + type: registry-image + source: {repository: "flavorjones/nokogiri-test", tag: "jruby-9.2"} + inputs: + - name: ci + - name: nokogiri-pr + path: nokogiri + - name: gems + run: + path: ci/concourse/tasks/gem-test/gem-install-and-test.sh on_failure: { in_parallel: [*notify_failure_to_irc, *notify_failure_to_pr] } @@ -560,9 +622,6 @@ jobs: trigger: true version: every passed: - - ruby-vanilla-system - - ruby-libxmlruby-system - - ruby-libxmlruby-valgrind - gem-test - gem-test-java - put: nokogiri-pr diff --git a/concourse/nokogiri.yml b/concourse/nokogiri.yml index da6158bd190..482c5c08087 100644 --- a/concourse/nokogiri.yml +++ b/concourse/nokogiri.yml @@ -125,7 +125,7 @@ jobs: % end - - name: gate + - name: gate-1 public: true plan: - get: nokogiri @@ -144,7 +144,7 @@ jobs: - get: ci - get: nokogiri trigger: true - passed: ["gate"] + passed: ["gate-1"] - task: rake-test config: platform: linux @@ -161,6 +161,54 @@ jobs: on_failure: *notify_failure_to_irc + - name: ruby-musl-system + public: true + serial: true + plan: + - get: ci + - get: nokogiri + trigger: true + passed: ["gate-1"] + - task: rake-test + config: + platform: linux + image_resource: + type: registry-image + source: {repository: "flavorjones/nokogiri-test", tag: "alpine"} + inputs: + - name: ci + - name: nokogiri + params: + NOKOGIRI_USE_SYSTEM_LIBRARIES: t + run: + path: ci/concourse/tasks/rake-test/run.sh + on_failure: *notify_failure_to_irc + + + - name: ruby-musl-valgrind + public: true + serial: true + plan: + - get: ci + - get: nokogiri + trigger: true + passed: ["ruby-musl-system"] + - task: rake-test + config: + platform: linux + image_resource: + type: registry-image + source: {repository: "flavorjones/nokogiri-test", tag: "alpine"} + inputs: + - name: ci + - name: nokogiri + params: + TEST_WITH_VALGRIND: t + run: + path: ci/concourse/tasks/rake-test/run.sh + on_failure: *notify_failure_to_irc + + - name: ruby-libxmlruby-system public: true serial: true @@ -168,7 +216,7 @@ jobs: - get: ci - get: nokogiri trigger: true - passed: ["gate"] + passed: ["gate-1"] - task: rake-test config: platform: linux @@ -193,7 +241,7 @@ jobs: - get: ci - get: nokogiri trigger: true - passed: ["gate"] + passed: ["ruby-libxmlruby-system"] - task: rake-test config: platform: linux @@ -211,6 +259,17 @@ jobs: on_failure: *notify_failure_to_irc + - name: gate-2 + public: true + plan: + - get: nokogiri + trigger: true + passed: + - ruby-vanilla-system + - ruby-libxmlruby-valgrind + - ruby-musl-valgrind + + - name: gem-test public: true serial: true @@ -218,7 +277,7 @@ jobs: - get: ci - get: nokogiri trigger: true - passed: ["gate"] + passed: ["gate-2"] - task: gem-build config: platform: linux @@ -254,7 +313,7 @@ jobs: - get: ci - get: nokogiri trigger: true - passed: ["gate"] + passed: ["gate-2"] - task: gem-build config: platform: linux @@ -292,9 +351,6 @@ jobs: trigger: true version: every passed: - - ruby-vanilla-system - - ruby-libxmlruby-system - - ruby-libxmlruby-valgrind - gem-test - gem-test-java - put: nokogiri-irc diff --git a/concourse/nokogiri.yml.generated b/concourse/nokogiri.yml.generated index bece6a873f4..f82345facab 100644 --- a/concourse/nokogiri.yml.generated +++ b/concourse/nokogiri.yml.generated @@ -324,7 +324,7 @@ jobs: on_failure: *notify_failure_to_irc - - name: gate + - name: gate-1 public: true plan: - get: nokogiri @@ -344,7 +344,7 @@ jobs: - get: ci - get: nokogiri trigger: true - passed: ["gate"] + passed: ["gate-1"] - task: rake-test config: platform: linux @@ -361,6 +361,54 @@ jobs: on_failure: *notify_failure_to_irc + - name: ruby-musl-system + public: true + serial: true + plan: + - get: ci + - get: nokogiri + trigger: true + passed: ["gate-1"] + - task: rake-test + config: + platform: linux + image_resource: + type: registry-image + source: {repository: "flavorjones/nokogiri-test", tag: "alpine"} + inputs: + - name: ci + - name: nokogiri + params: + NOKOGIRI_USE_SYSTEM_LIBRARIES: t + run: + path: ci/concourse/tasks/rake-test/run.sh + on_failure: *notify_failure_to_irc + + + - name: ruby-musl-valgrind + public: true + serial: true + plan: + - get: ci + - get: nokogiri + trigger: true + passed: ["ruby-musl-system"] + - task: rake-test + config: + platform: linux + image_resource: + type: registry-image + source: {repository: "flavorjones/nokogiri-test", tag: "alpine"} + inputs: + - name: ci + - name: nokogiri + params: + TEST_WITH_VALGRIND: t + run: + path: ci/concourse/tasks/rake-test/run.sh + on_failure: *notify_failure_to_irc + + - name: ruby-libxmlruby-system public: true serial: true @@ -368,7 +416,7 @@ jobs: - get: ci - get: nokogiri trigger: true - passed: ["gate"] + passed: ["gate-1"] - task: rake-test config: platform: linux @@ -393,7 +441,7 @@ jobs: - get: ci - get: nokogiri trigger: true - passed: ["gate"] + passed: ["ruby-libxmlruby-system"] - task: rake-test config: platform: linux @@ -411,6 +459,17 @@ jobs: on_failure: *notify_failure_to_irc + - name: gate-2 + public: true + plan: + - get: nokogiri + trigger: true + passed: + - ruby-vanilla-system + - ruby-libxmlruby-valgrind + - ruby-musl-valgrind + + - name: gem-test public: true serial: true @@ -418,7 +477,7 @@ jobs: - get: ci - get: nokogiri trigger: true - passed: ["gate"] + passed: ["gate-2"] - task: gem-build config: platform: linux @@ -454,7 +513,7 @@ jobs: - get: ci - get: nokogiri trigger: true - passed: ["gate"] + passed: ["gate-2"] - task: gem-build config: platform: linux @@ -492,9 +551,6 @@ jobs: trigger: true version: every passed: - - ruby-vanilla-system - - ruby-libxmlruby-system - - ruby-libxmlruby-valgrind - gem-test - gem-test-java - put: nokogiri-irc