From ceab354f940a2ad48d1430acfdee0bf5ea6032e9 Mon Sep 17 00:00:00 2001 From: Rin Kuryloski Date: Thu, 25 Apr 2024 16:33:32 +0200 Subject: [PATCH] eliminate separate build step, since it's cached --- .github/workflows/test-make.template.yaml | 45 ++-- .github/workflows/test-make.yaml | 237 ++++++---------------- 2 files changed, 84 insertions(+), 198 deletions(-) diff --git a/.github/workflows/test-make.template.yaml b/.github/workflows/test-make.template.yaml index ef80754f1470..c1926eda81e7 100644 --- a/.github/workflows/test-make.template.yaml +++ b/.github/workflows/test-make.template.yaml @@ -50,10 +50,8 @@ with: otp-version: ${{ matrix.otp_version }} elixir-version: 1.15 - - name: BUILD + - name: PREPARE run: | - make \ - RABBITMQ_METADATA_STORE=${{ matrix.metadata_store }} mkdir -p ${{ env.SUCCESS_PATH }} - name: XREF run: | @@ -145,47 +143,40 @@ ${{ runner.os }}-test-result-cache-${{ needs.prepare.outputs.hash }}-${{ github.run_number }}-${{ needs.prepare.outputs.previous_run_attempt }} ${{ runner.os }}-test-result-cache-${{ needs.prepare.outputs.hash }}-${{ github.run_number }}- ${{ runner.os }}-test-result-cache-${{ needs.prepare.outputs.hash }}- - - name: CHECK IF ALREADY PASSED - id: check + - name: PRINT CACHED RESULTS run: | - if [[ -f ${{ env.SUCCESS_PATH }} ]]; then - echo "passed=true" | tee -a $GITHUB_OUTPUT - else - echo "passed=false" | tee -a $GITHUB_OUTPUT - fi + set -x + tree /home/runner/test-result-cache - name: SETUP ERLANG/ELIXIR if: steps.check.outputs.passed != 'true' uses: erlef/setup-beam@v1 with: otp-version: ${{ matrix.otp_version }} elixir-version: 1.15 - - name: BUILD - if: steps.check.outputs.passed != 'true' + - name: PREPARE run: | - make \ - RABBITMQ_METADATA_STORE=${{ matrix.metadata_store }} + mkdir -p ${{ env.SUCCESS_PATH }} - name: TEST id: test if: steps.check.outputs.passed != 'true' run: | - make -C deps/rabbitmq_cli \ - checks \ - RABBITMQ_METADATA_STORE=${{ matrix.metadata_store }} - - name: RECORD SUCCESS rabbitmq_cli - if: steps.check.outputs.passed != 'true' - run: | - set -x - mkdir -p $(dirname ${{ env.SUCCESS_PATH }}) - echo "passed" > ${{ env.SUCCESS_PATH }} - - name: UPDATE CACHE - if: steps.check.outputs.passed != 'true' + if [[ -f ${{ env.SUCCESS_PATH }}/checks ]]; then + echo "checks already passed for this key ${{ needs.prepare.outputs.hash }}" + else + make -C deps/rabbitmq_cli \ + checks \ + RABBITMQ_METADATA_STORE=${{ matrix.metadata_store }} + touch ${{ env.SUCCESS_PATH }}/checks + fi + - name: SAVE CACHE COPY + if: always() uses: actions/upload-artifact@v4.3.1 with: - name: rabbitmq_cli-${{ matrix.metadata_store }}-${{ matrix.otp_version }} + name: trc-rabbitmq_cli-${{ matrix.metadata_store }}-${{ matrix.otp_version }} path: | /home/runner/test-result-cache - name: UPLOAD TEST ARTIFACTS - if: always() && steps.check.outputs.passed != 'true' + if: always() uses: actions/upload-artifact@v4.3.1 with: name: testlogs-rabbitmq_cli-${{ matrix.metadata_store }}-${{ matrix.otp_version }} diff --git a/.github/workflows/test-make.yaml b/.github/workflows/test-make.yaml index d88a768851d9..c531ffb94b7b 100644 --- a/.github/workflows/test-make.yaml +++ b/.github/workflows/test-make.yaml @@ -90,10 +90,8 @@ jobs: with: otp-version: ${{ matrix.otp_version }} elixir-version: 1.15 - - name: BUILD + - name: PREPARE run: | - make \ - RABBITMQ_METADATA_STORE=${{ matrix.metadata_store }} mkdir -p ${{ env.SUCCESS_PATH }} - name: XREF run: | @@ -200,10 +198,8 @@ jobs: with: otp-version: ${{ matrix.otp_version }} elixir-version: 1.15 - - name: BUILD + - name: PREPARE run: | - make \ - RABBITMQ_METADATA_STORE=${{ matrix.metadata_store }} mkdir -p ${{ env.SUCCESS_PATH }} - name: XREF run: | @@ -320,10 +316,8 @@ jobs: with: otp-version: ${{ matrix.otp_version }} elixir-version: 1.15 - - name: BUILD + - name: PREPARE run: | - make \ - RABBITMQ_METADATA_STORE=${{ matrix.metadata_store }} mkdir -p ${{ env.SUCCESS_PATH }} - name: XREF run: | @@ -430,10 +424,8 @@ jobs: with: otp-version: ${{ matrix.otp_version }} elixir-version: 1.15 - - name: BUILD + - name: PREPARE run: | - make \ - RABBITMQ_METADATA_STORE=${{ matrix.metadata_store }} mkdir -p ${{ env.SUCCESS_PATH }} - name: XREF run: | @@ -540,10 +532,8 @@ jobs: with: otp-version: ${{ matrix.otp_version }} elixir-version: 1.15 - - name: BUILD + - name: PREPARE run: | - make \ - RABBITMQ_METADATA_STORE=${{ matrix.metadata_store }} mkdir -p ${{ env.SUCCESS_PATH }} - name: XREF run: | @@ -690,10 +680,8 @@ jobs: with: otp-version: ${{ matrix.otp_version }} elixir-version: 1.15 - - name: BUILD + - name: PREPARE run: | - make \ - RABBITMQ_METADATA_STORE=${{ matrix.metadata_store }} mkdir -p ${{ env.SUCCESS_PATH }} - name: XREF run: | @@ -780,10 +768,8 @@ jobs: with: otp-version: ${{ matrix.otp_version }} elixir-version: 1.15 - - name: BUILD + - name: PREPARE run: | - make \ - RABBITMQ_METADATA_STORE=${{ matrix.metadata_store }} mkdir -p ${{ env.SUCCESS_PATH }} - name: XREF run: | @@ -880,10 +866,8 @@ jobs: with: otp-version: ${{ matrix.otp_version }} elixir-version: 1.15 - - name: BUILD + - name: PREPARE run: | - make \ - RABBITMQ_METADATA_STORE=${{ matrix.metadata_store }} mkdir -p ${{ env.SUCCESS_PATH }} - name: XREF run: | @@ -980,10 +964,8 @@ jobs: with: otp-version: ${{ matrix.otp_version }} elixir-version: 1.15 - - name: BUILD + - name: PREPARE run: | - make \ - RABBITMQ_METADATA_STORE=${{ matrix.metadata_store }} mkdir -p ${{ env.SUCCESS_PATH }} - name: XREF run: | @@ -1079,10 +1061,8 @@ jobs: with: otp-version: ${{ matrix.otp_version }} elixir-version: 1.15 - - name: BUILD + - name: PREPARE run: | - make \ - RABBITMQ_METADATA_STORE=${{ matrix.metadata_store }} mkdir -p ${{ env.SUCCESS_PATH }} - name: XREF run: | @@ -2571,47 +2551,40 @@ jobs: ${{ runner.os }}-test-result-cache-${{ needs.prepare.outputs.hash }}-${{ github.run_number }}-${{ needs.prepare.outputs.previous_run_attempt }} ${{ runner.os }}-test-result-cache-${{ needs.prepare.outputs.hash }}-${{ github.run_number }}- ${{ runner.os }}-test-result-cache-${{ needs.prepare.outputs.hash }}- - - name: CHECK IF ALREADY PASSED - id: check + - name: PRINT CACHED RESULTS run: | - if [[ -f ${{ env.SUCCESS_PATH }} ]]; then - echo "passed=true" | tee -a $GITHUB_OUTPUT - else - echo "passed=false" | tee -a $GITHUB_OUTPUT - fi + set -x + tree /home/runner/test-result-cache - name: SETUP ERLANG/ELIXIR if: steps.check.outputs.passed != 'true' uses: erlef/setup-beam@v1 with: otp-version: ${{ matrix.otp_version }} elixir-version: 1.15 - - name: BUILD - if: steps.check.outputs.passed != 'true' + - name: PREPARE run: | - make \ - RABBITMQ_METADATA_STORE=${{ matrix.metadata_store }} + mkdir -p ${{ env.SUCCESS_PATH }} - name: TEST id: test if: steps.check.outputs.passed != 'true' run: | - make -C deps/rabbitmq_cli \ - checks \ - RABBITMQ_METADATA_STORE=${{ matrix.metadata_store }} - - name: RECORD SUCCESS rabbitmq_cli - if: steps.check.outputs.passed != 'true' - run: | - set -x - mkdir -p $(dirname ${{ env.SUCCESS_PATH }}) - echo "passed" > ${{ env.SUCCESS_PATH }} - - name: UPDATE CACHE - if: steps.check.outputs.passed != 'true' + if [[ -f ${{ env.SUCCESS_PATH }}/checks ]]; then + echo "checks already passed for this key ${{ needs.prepare.outputs.hash }}" + else + make -C deps/rabbitmq_cli \ + checks \ + RABBITMQ_METADATA_STORE=${{ matrix.metadata_store }} + touch ${{ env.SUCCESS_PATH }}/checks + fi + - name: SAVE CACHE COPY + if: always() uses: actions/upload-artifact@v4.3.1 with: - name: rabbitmq_cli-${{ matrix.metadata_store }}-${{ matrix.otp_version }} + name: trc-rabbitmq_cli-${{ matrix.metadata_store }}-${{ matrix.otp_version }} path: | /home/runner/test-result-cache - name: UPLOAD TEST ARTIFACTS - if: always() && steps.check.outputs.passed != 'true' + if: always() uses: actions/upload-artifact@v4.3.1 with: name: testlogs-rabbitmq_cli-${{ matrix.metadata_store }}-${{ matrix.otp_version }} @@ -2659,10 +2632,8 @@ jobs: with: otp-version: ${{ matrix.otp_version }} elixir-version: 1.15 - - name: BUILD + - name: PREPARE run: | - make \ - RABBITMQ_METADATA_STORE=${{ matrix.metadata_store }} mkdir -p ${{ env.SUCCESS_PATH }} - name: XREF run: | @@ -2760,10 +2731,8 @@ jobs: with: otp-version: ${{ matrix.otp_version }} elixir-version: 1.15 - - name: BUILD + - name: PREPARE run: | - make \ - RABBITMQ_METADATA_STORE=${{ matrix.metadata_store }} mkdir -p ${{ env.SUCCESS_PATH }} - name: XREF run: | @@ -2851,10 +2820,8 @@ jobs: with: otp-version: ${{ matrix.otp_version }} elixir-version: 1.15 - - name: BUILD + - name: PREPARE run: | - make \ - RABBITMQ_METADATA_STORE=${{ matrix.metadata_store }} mkdir -p ${{ env.SUCCESS_PATH }} - name: XREF run: | @@ -2972,10 +2939,8 @@ jobs: with: otp-version: ${{ matrix.otp_version }} elixir-version: 1.15 - - name: BUILD + - name: PREPARE run: | - make \ - RABBITMQ_METADATA_STORE=${{ matrix.metadata_store }} mkdir -p ${{ env.SUCCESS_PATH }} - name: XREF run: | @@ -3093,10 +3058,8 @@ jobs: with: otp-version: ${{ matrix.otp_version }} elixir-version: 1.15 - - name: BUILD + - name: PREPARE run: | - make \ - RABBITMQ_METADATA_STORE=${{ matrix.metadata_store }} mkdir -p ${{ env.SUCCESS_PATH }} - name: XREF run: | @@ -3214,10 +3177,8 @@ jobs: with: otp-version: ${{ matrix.otp_version }} elixir-version: 1.15 - - name: BUILD + - name: PREPARE run: | - make \ - RABBITMQ_METADATA_STORE=${{ matrix.metadata_store }} mkdir -p ${{ env.SUCCESS_PATH }} - name: XREF run: | @@ -3395,10 +3356,8 @@ jobs: with: otp-version: ${{ matrix.otp_version }} elixir-version: 1.15 - - name: BUILD + - name: PREPARE run: | - make \ - RABBITMQ_METADATA_STORE=${{ matrix.metadata_store }} mkdir -p ${{ env.SUCCESS_PATH }} - name: XREF run: | @@ -3486,10 +3445,8 @@ jobs: with: otp-version: ${{ matrix.otp_version }} elixir-version: 1.15 - - name: BUILD + - name: PREPARE run: | - make \ - RABBITMQ_METADATA_STORE=${{ matrix.metadata_store }} mkdir -p ${{ env.SUCCESS_PATH }} - name: XREF run: | @@ -3577,10 +3534,8 @@ jobs: with: otp-version: ${{ matrix.otp_version }} elixir-version: 1.15 - - name: BUILD + - name: PREPARE run: | - make \ - RABBITMQ_METADATA_STORE=${{ matrix.metadata_store }} mkdir -p ${{ env.SUCCESS_PATH }} - name: XREF run: | @@ -3678,10 +3633,8 @@ jobs: with: otp-version: ${{ matrix.otp_version }} elixir-version: 1.15 - - name: BUILD + - name: PREPARE run: | - make \ - RABBITMQ_METADATA_STORE=${{ matrix.metadata_store }} mkdir -p ${{ env.SUCCESS_PATH }} - name: XREF run: | @@ -3799,10 +3752,8 @@ jobs: with: otp-version: ${{ matrix.otp_version }} elixir-version: 1.15 - - name: BUILD + - name: PREPARE run: | - make \ - RABBITMQ_METADATA_STORE=${{ matrix.metadata_store }} mkdir -p ${{ env.SUCCESS_PATH }} - name: XREF run: | @@ -3960,10 +3911,8 @@ jobs: with: otp-version: ${{ matrix.otp_version }} elixir-version: 1.15 - - name: BUILD + - name: PREPARE run: | - make \ - RABBITMQ_METADATA_STORE=${{ matrix.metadata_store }} mkdir -p ${{ env.SUCCESS_PATH }} - name: XREF run: | @@ -4061,10 +4010,8 @@ jobs: with: otp-version: ${{ matrix.otp_version }} elixir-version: 1.15 - - name: BUILD + - name: PREPARE run: | - make \ - RABBITMQ_METADATA_STORE=${{ matrix.metadata_store }} mkdir -p ${{ env.SUCCESS_PATH }} - name: XREF run: | @@ -4182,10 +4129,8 @@ jobs: with: otp-version: ${{ matrix.otp_version }} elixir-version: 1.15 - - name: BUILD + - name: PREPARE run: | - make \ - RABBITMQ_METADATA_STORE=${{ matrix.metadata_store }} mkdir -p ${{ env.SUCCESS_PATH }} - name: XREF run: | @@ -4413,10 +4358,8 @@ jobs: with: otp-version: ${{ matrix.otp_version }} elixir-version: 1.15 - - name: BUILD + - name: PREPARE run: | - make \ - RABBITMQ_METADATA_STORE=${{ matrix.metadata_store }} mkdir -p ${{ env.SUCCESS_PATH }} - name: XREF run: | @@ -4544,10 +4487,8 @@ jobs: with: otp-version: ${{ matrix.otp_version }} elixir-version: 1.15 - - name: BUILD + - name: PREPARE run: | - make \ - RABBITMQ_METADATA_STORE=${{ matrix.metadata_store }} mkdir -p ${{ env.SUCCESS_PATH }} - name: XREF run: | @@ -4825,10 +4766,8 @@ jobs: with: otp-version: ${{ matrix.otp_version }} elixir-version: 1.15 - - name: BUILD + - name: PREPARE run: | - make \ - RABBITMQ_METADATA_STORE=${{ matrix.metadata_store }} mkdir -p ${{ env.SUCCESS_PATH }} - name: XREF run: | @@ -4946,10 +4885,8 @@ jobs: with: otp-version: ${{ matrix.otp_version }} elixir-version: 1.15 - - name: BUILD + - name: PREPARE run: | - make \ - RABBITMQ_METADATA_STORE=${{ matrix.metadata_store }} mkdir -p ${{ env.SUCCESS_PATH }} - name: XREF run: | @@ -5047,10 +4984,8 @@ jobs: with: otp-version: ${{ matrix.otp_version }} elixir-version: 1.15 - - name: BUILD + - name: PREPARE run: | - make \ - RABBITMQ_METADATA_STORE=${{ matrix.metadata_store }} mkdir -p ${{ env.SUCCESS_PATH }} - name: XREF run: | @@ -5158,10 +5093,8 @@ jobs: with: otp-version: ${{ matrix.otp_version }} elixir-version: 1.15 - - name: BUILD + - name: PREPARE run: | - make \ - RABBITMQ_METADATA_STORE=${{ matrix.metadata_store }} mkdir -p ${{ env.SUCCESS_PATH }} - name: XREF run: | @@ -5279,10 +5212,8 @@ jobs: with: otp-version: ${{ matrix.otp_version }} elixir-version: 1.15 - - name: BUILD + - name: PREPARE run: | - make \ - RABBITMQ_METADATA_STORE=${{ matrix.metadata_store }} mkdir -p ${{ env.SUCCESS_PATH }} - name: XREF run: | @@ -5390,10 +5321,8 @@ jobs: with: otp-version: ${{ matrix.otp_version }} elixir-version: 1.15 - - name: BUILD + - name: PREPARE run: | - make \ - RABBITMQ_METADATA_STORE=${{ matrix.metadata_store }} mkdir -p ${{ env.SUCCESS_PATH }} - name: XREF run: | @@ -5501,10 +5430,8 @@ jobs: with: otp-version: ${{ matrix.otp_version }} elixir-version: 1.15 - - name: BUILD + - name: PREPARE run: | - make \ - RABBITMQ_METADATA_STORE=${{ matrix.metadata_store }} mkdir -p ${{ env.SUCCESS_PATH }} - name: XREF run: | @@ -5622,10 +5549,8 @@ jobs: with: otp-version: ${{ matrix.otp_version }} elixir-version: 1.15 - - name: BUILD + - name: PREPARE run: | - make \ - RABBITMQ_METADATA_STORE=${{ matrix.metadata_store }} mkdir -p ${{ env.SUCCESS_PATH }} - name: XREF run: | @@ -5713,10 +5638,8 @@ jobs: with: otp-version: ${{ matrix.otp_version }} elixir-version: 1.15 - - name: BUILD + - name: PREPARE run: | - make \ - RABBITMQ_METADATA_STORE=${{ matrix.metadata_store }} mkdir -p ${{ env.SUCCESS_PATH }} - name: XREF run: | @@ -5814,10 +5737,8 @@ jobs: with: otp-version: ${{ matrix.otp_version }} elixir-version: 1.15 - - name: BUILD + - name: PREPARE run: | - make \ - RABBITMQ_METADATA_STORE=${{ matrix.metadata_store }} mkdir -p ${{ env.SUCCESS_PATH }} - name: XREF run: | @@ -5925,10 +5846,8 @@ jobs: with: otp-version: ${{ matrix.otp_version }} elixir-version: 1.15 - - name: BUILD + - name: PREPARE run: | - make \ - RABBITMQ_METADATA_STORE=${{ matrix.metadata_store }} mkdir -p ${{ env.SUCCESS_PATH }} - name: XREF run: | @@ -6116,10 +6035,8 @@ jobs: with: otp-version: ${{ matrix.otp_version }} elixir-version: 1.15 - - name: BUILD + - name: PREPARE run: | - make \ - RABBITMQ_METADATA_STORE=${{ matrix.metadata_store }} mkdir -p ${{ env.SUCCESS_PATH }} - name: XREF run: | @@ -6237,10 +6154,8 @@ jobs: with: otp-version: ${{ matrix.otp_version }} elixir-version: 1.15 - - name: BUILD + - name: PREPARE run: | - make \ - RABBITMQ_METADATA_STORE=${{ matrix.metadata_store }} mkdir -p ${{ env.SUCCESS_PATH }} - name: XREF run: | @@ -6418,10 +6333,8 @@ jobs: with: otp-version: ${{ matrix.otp_version }} elixir-version: 1.15 - - name: BUILD + - name: PREPARE run: | - make \ - RABBITMQ_METADATA_STORE=${{ matrix.metadata_store }} mkdir -p ${{ env.SUCCESS_PATH }} - name: XREF run: | @@ -6579,10 +6492,8 @@ jobs: with: otp-version: ${{ matrix.otp_version }} elixir-version: 1.15 - - name: BUILD + - name: PREPARE run: | - make \ - RABBITMQ_METADATA_STORE=${{ matrix.metadata_store }} mkdir -p ${{ env.SUCCESS_PATH }} - name: XREF run: | @@ -6680,10 +6591,8 @@ jobs: with: otp-version: ${{ matrix.otp_version }} elixir-version: 1.15 - - name: BUILD + - name: PREPARE run: | - make \ - RABBITMQ_METADATA_STORE=${{ matrix.metadata_store }} mkdir -p ${{ env.SUCCESS_PATH }} - name: XREF run: | @@ -6771,10 +6680,8 @@ jobs: with: otp-version: ${{ matrix.otp_version }} elixir-version: 1.15 - - name: BUILD + - name: PREPARE run: | - make \ - RABBITMQ_METADATA_STORE=${{ matrix.metadata_store }} mkdir -p ${{ env.SUCCESS_PATH }} - name: XREF run: | @@ -6872,10 +6779,8 @@ jobs: with: otp-version: ${{ matrix.otp_version }} elixir-version: 1.15 - - name: BUILD + - name: PREPARE run: | - make \ - RABBITMQ_METADATA_STORE=${{ matrix.metadata_store }} mkdir -p ${{ env.SUCCESS_PATH }} - name: XREF run: | @@ -6983,10 +6888,8 @@ jobs: with: otp-version: ${{ matrix.otp_version }} elixir-version: 1.15 - - name: BUILD + - name: PREPARE run: | - make \ - RABBITMQ_METADATA_STORE=${{ matrix.metadata_store }} mkdir -p ${{ env.SUCCESS_PATH }} - name: XREF run: | @@ -7094,10 +6997,8 @@ jobs: with: otp-version: ${{ matrix.otp_version }} elixir-version: 1.15 - - name: BUILD + - name: PREPARE run: | - make \ - RABBITMQ_METADATA_STORE=${{ matrix.metadata_store }} mkdir -p ${{ env.SUCCESS_PATH }} - name: XREF run: | @@ -7225,10 +7126,8 @@ jobs: with: otp-version: ${{ matrix.otp_version }} elixir-version: 1.15 - - name: BUILD + - name: PREPARE run: | - make \ - RABBITMQ_METADATA_STORE=${{ matrix.metadata_store }} mkdir -p ${{ env.SUCCESS_PATH }} - name: XREF run: | @@ -7316,10 +7215,8 @@ jobs: with: otp-version: ${{ matrix.otp_version }} elixir-version: 1.15 - - name: BUILD + - name: PREPARE run: | - make \ - RABBITMQ_METADATA_STORE=${{ matrix.metadata_store }} mkdir -p ${{ env.SUCCESS_PATH }} - name: XREF run: | @@ -7467,10 +7364,8 @@ jobs: with: otp-version: ${{ matrix.otp_version }} elixir-version: 1.15 - - name: BUILD + - name: PREPARE run: | - make \ - RABBITMQ_METADATA_STORE=${{ matrix.metadata_store }} mkdir -p ${{ env.SUCCESS_PATH }} - name: XREF run: |