diff options
| author | Philip Kuryloski <kuryloskip@vmware.com> | 2020-11-23 11:59:25 +0100 |
|---|---|---|
| committer | Philip Kuryloski <kuryloskip@vmware.com> | 2020-11-23 12:00:50 +0100 |
| commit | 7bd87313a703a4f184adb77b40bf262bc71102da (patch) | |
| tree | 39ad4f3954826f28f96aa02aa2571c9adfd2665a | |
| parent | 810dcb2cfe45f3a82445b6b04eaea32c0d99fc2c (diff) | |
| download | rabbitmq-server-git-7bd87313a703a4f184adb77b40bf262bc71102da.tar.gz | |
Use workflow matrix for ci base images [ci skip]
Project the jobs over the erlang versions natively instead of via
workflow file templating
| -rw-r--r-- | .github/workflows/base-images.yaml | 47 | ||||
| -rw-r--r-- | workflow_sources/base_image/workflow.yml | 72 |
2 files changed, 47 insertions, 72 deletions
diff --git a/.github/workflows/base-images.yaml b/.github/workflows/base-images.yaml index ea670b73f5..674968e0c8 100644 --- a/.github/workflows/base-images.yaml +++ b/.github/workflows/base-images.yaml @@ -2,22 +2,28 @@ name: Workflow Base Images on: - workflow_dispatch jobs: - ci-base-22_3: - name: ci-base-22_3 + ci-base: + name: ci-base runs-on: ubuntu-18.04 + strategy: + matrix: + erlang_version: + - "22.3" + - "23.1" + fail-fast: false steps: - name: CHECKOUT REPOSITORY uses: actions/checkout@v2 - - name: CREATE ERLANG+ELIXIR IMAGE (22.3) + - name: CREATE ERLANG+ELIXIR IMAGE (${{ matrix.erlang_version }}) uses: docker/build-push-action@v1 with: username: _json_key password: ${{ secrets.GCR_JSON_KEY }} registry: eu.gcr.io repository: cf-rabbitmq-core/erlang_elixir - dockerfile: ci/dockerfiles/22.3/erlang_elixir - tags: "22.3" - - name: CREATE BASE CI IMAGE (22.3) + dockerfile: ci/dockerfiles/${{ matrix.erlang_version }}/erlang_elixir + tags: ${{ matrix.erlang_version }} + - name: CREATE BASE CI IMAGE (${{ matrix.erlang_version }}) uses: docker/build-push-action@v1 with: username: _json_key @@ -25,30 +31,5 @@ jobs: registry: eu.gcr.io repository: cf-rabbitmq-core/ci-base dockerfile: ci/dockerfiles/ci-base - build_args: ERLANG_VERSION=22.3,SECONDARY_UMBRELLA_GITREFS=v3.7.28 v3.8.9 - tags: "22.3" - ci-base-23_1: - name: ci-base-23_1 - runs-on: ubuntu-18.04 - steps: - - name: CHECKOUT REPOSITORY - uses: actions/checkout@v2 - - name: CREATE ERLANG+ELIXIR IMAGE (23.1) - uses: docker/build-push-action@v1 - with: - username: _json_key - password: ${{ secrets.GCR_JSON_KEY }} - registry: eu.gcr.io - repository: cf-rabbitmq-core/erlang_elixir - dockerfile: ci/dockerfiles/23.1/erlang_elixir - tags: "23.1" - - name: CREATE BASE CI IMAGE (23.1) - uses: docker/build-push-action@v1 - with: - username: _json_key - password: ${{ secrets.GCR_JSON_KEY }} - registry: eu.gcr.io - repository: cf-rabbitmq-core/ci-base - dockerfile: ci/dockerfiles/ci-base - build_args: ERLANG_VERSION=23.1,SECONDARY_UMBRELLA_GITREFS=v3.7.28 v3.8.9 - tags: "23.1" + build_args: ERLANG_VERSION=${{ matrix.erlang_version }},SECONDARY_UMBRELLA_GITREFS=v3.7.28 v3.8.9 + tags: ${{ matrix.erlang_version }} diff --git a/workflow_sources/base_image/workflow.yml b/workflow_sources/base_image/workflow.yml index e1b32c708b..f5e86b7827 100644 --- a/workflow_sources/base_image/workflow.yml +++ b/workflow_sources/base_image/workflow.yml @@ -1,49 +1,43 @@ #@ load("@ytt:data", "data") -#@ def jobs_map_from_list(list_of_jobs): -#@ jobs = {} -#@ for job in list_of_jobs: -#@ name = job['name'] -#@ jobs[name] = job -#@ end -#@ return jobs -#@ end - #@ def to_build_args(d): #@ return ",".join(['{0}={1}'.format(k,d[k]) for k in d.keys()]) #@ end -#@ def base_image_job(erlang_version): -name: #@ ("ci-base-" + erlang_version).replace(".", "_") -runs-on: ubuntu-18.04 -steps: - - name: CHECKOUT REPOSITORY - uses: actions/checkout@v2 - - name: #@ 'CREATE ERLANG+ELIXIR IMAGE ({})'.format(erlang_version) - uses: docker/build-push-action@v1 - with: - username: _json_key - password: ${{ secrets.GCR_JSON_KEY }} - registry: eu.gcr.io - repository: cf-rabbitmq-core/erlang_elixir - dockerfile: #@ 'ci/dockerfiles/{}/erlang_elixir'.format(erlang_version) - tags: #@ erlang_version - - name: #@ 'CREATE BASE CI IMAGE ({})'.format(erlang_version) - uses: docker/build-push-action@v1 - with: - username: _json_key - password: ${{ secrets.GCR_JSON_KEY }} - registry: eu.gcr.io - repository: cf-rabbitmq-core/ci-base - dockerfile: ci/dockerfiles/ci-base - #@ build_args = {} - #@ build_args["ERLANG_VERSION"] = erlang_version - #@ build_args["SECONDARY_UMBRELLA_GITREFS"] = ' '.join(data.values.secondary_umbrella_gitrefs) - build_args: #@ to_build_args(build_args) - tags: #@ erlang_version -#@ end --- name: Workflow Base Images #! https://github.com/k14s/ytt/issues/189 a_magic_string_that_we_will_sed_to_on: [workflow_dispatch] -jobs: #@ jobs_map_from_list([base_image_job(v) for v in data.values.erlang_versions]) +jobs: + ci-base: + name: ci-base + runs-on: ubuntu-18.04 + strategy: + matrix: + erlang_version: #@ data.values.erlang_versions + fail-fast: false + steps: + - name: CHECKOUT REPOSITORY + uses: actions/checkout@v2 + - name: CREATE ERLANG+ELIXIR IMAGE (${{ matrix.erlang_version }}) + uses: docker/build-push-action@v1 + with: + username: _json_key + password: ${{ secrets.GCR_JSON_KEY }} + registry: eu.gcr.io + repository: cf-rabbitmq-core/erlang_elixir + dockerfile: ci/dockerfiles/${{ matrix.erlang_version }}/erlang_elixir + tags: ${{ matrix.erlang_version }} + - name: CREATE BASE CI IMAGE (${{ matrix.erlang_version }}) + uses: docker/build-push-action@v1 + with: + username: _json_key + password: ${{ secrets.GCR_JSON_KEY }} + registry: eu.gcr.io + repository: cf-rabbitmq-core/ci-base + dockerfile: ci/dockerfiles/ci-base + #@ build_args = {} + #@ build_args["ERLANG_VERSION"] = "${{ matrix.erlang_version }}" + #@ build_args["SECONDARY_UMBRELLA_GITREFS"] = ' '.join(data.values.secondary_umbrella_gitrefs) + build_args: #@ to_build_args(build_args) + tags: ${{ matrix.erlang_version }} |
