diff options
author | 2020-12-16 16:31:02 +0100 | |
---|---|---|
committer | 2020-12-16 16:31:02 +0100 | |
commit | 9e96b656b9a4057887d486897f02415a768f5bd8 (patch) | |
tree | a5783153ded50ce30eebb107ff3887914eb5a1ea | |
parent | Add enhanced status embed workflow (diff) |
Upload artifact with pull request payload sebastiaan/ci/status-embed
To access information about the PR in the status embed workflow, we need
to upload an artifact whenever the forms-backend.yml workflow runs for a
`pull_request` trigger. This artifact will be downloaded in the workflow
that sends the status embed.
-rw-r--r-- | .github/workflows/test_and_lint.yml | 30 |
1 files changed, 25 insertions, 5 deletions
diff --git a/.github/workflows/test_and_lint.yml b/.github/workflows/test_and_lint.yml index c8d9949..24e2180 100644 --- a/.github/workflows/test_and_lint.yml +++ b/.github/workflows/test_and_lint.yml @@ -13,10 +13,10 @@ jobs: steps: - uses: actions/checkout@v2 - uses: EgorDm/gha-yarn-node-cache@v1 - + - name: Install dependencies run: yarn install - + - name: Install dependencies run: yarn build @@ -26,11 +26,31 @@ jobs: steps: - uses: actions/checkout@v2 - uses: EgorDm/gha-yarn-node-cache@v1 - + - name: Install dependencies run: yarn install - name: Run tests run: yarn test - - + + # Prepare the Pull Request Payload artifact. If this fails, we + # we fail silently using the `continue-on-error` option. It's + # nice if this succeeds, but if it fails for any reason, it + # does not mean that our lint-test checks failed. + - name: Prepare Pull Request Payload artifact + id: prepare-artifact + if: always() && github.event_name == 'pull_request' + continue-on-error: true + run: cat $GITHUB_EVENT_PATH | jq '.pull_request' > pull_request_payload.json + + # This only makes sense if the previous step succeeded. To + # get the original outcome of the previous step before the + # `continue-on-error` conclusion is applied, we use the + # `.outcome` value. This step also fails silently. + - name: Upload a Build Artifact + if: always() && steps.prepare-artifact.outcome == 'success' + continue-on-error: true + uses: actions/upload-artifact@v2 + with: + name: pull-request-payload + path: pull_request_payload.json |