From 8d1373bdd741e1bc7ced089b527d3e3aa2244116 Mon Sep 17 00:00:00 2001 From: Dan Nicholson Date: Sun, 15 Sep 2024 13:59:36 -0600 Subject: [PATCH] workflow/docs: Fix deployments A couple fixes to make PRs and non-PRs work correctly: * In a conditional expression, `true` or `false` are returned unless you terminate both sides in a ternary. That was causing 2 strings to be suffixed with `false` instead of an empty string. * For a PR, we do actually want to cancel in progress runs since there's no danger of breaking an in progress deployment. * For PRs, just use the same `github-pages-pr` name for the artifact. The important part is that it's not called `github-pages` where an in progress deployment could pick it up. Otherwise it can use the same name all the time. --- .github/workflows/docs.yml | 13 +++++++------ 1 file changed, 7 insertions(+), 6 deletions(-) diff --git a/.github/workflows/docs.yml b/.github/workflows/docs.yml index 73bca62715..9d9fe30ede 100644 --- a/.github/workflows/docs.yml +++ b/.github/workflows/docs.yml @@ -15,10 +15,11 @@ on: # want to allow these production deployments to complete. # # Since pull requests use a unique artifact name and won't be deployed, they -# shouldn't be limited. Use a unique group name in that case. +# shouldn't be limited. Use a unique group name in that case and let in +# progress runs be cancelled. concurrency: - group: "pages${{ github.event_name == 'pull_request' && format('-pr{0}', github.event.number) }}" - cancel-in-progress: false + group: "pages${{ github.event_name == 'pull_request' && format('-pr{0}', github.event.number) || '' }}" + cancel-in-progress: ${{ github.event_name == 'pull_request' }} jobs: build: @@ -57,9 +58,9 @@ jobs: with: path: docs/_site # The default name is github-pages to match actions/deploy-pages. For - # PRs use a unique name so results can be inspected without - # interfering with real deployments. - name: "github-pages${{ github.event_name == 'pull_request' && format('-pr{0}', github.event.number) }}" + # PRs use a different name so results can be inspected without real + # deployments accidentally getting the wrong artifact. + name: "github-pages${{ github.event_name == 'pull_request' && '-pr' || '' }}" deploy: name: Deploy documentation