From 2b54fab02cbe85a8b26bcdeaf3a2316f81a1d625 Mon Sep 17 00:00:00 2001 From: Charlie Marsh Date: Fri, 28 Jun 2024 07:29:04 -0400 Subject: [PATCH] Publish docs and playground on `cargo-dist` release (#12079) ## Summary These are now `post-announce-jobs`. So if they fail, the release itself will still succeed, which seems ok. (If we make them `publish-jobs`, then we might end up publishing to PyPI but failing the release itself if one of these fails.) The intent is that these are still runnable via `workflow_dispatch` too. Closes https://github.com/astral-sh/ruff/issues/12074. --- .../workflows/{docs.yaml => publish-docs.yaml} | 11 +++++++++-- ...playground.yaml => publish-playground.yaml} | 11 +++++++++-- .github/workflows/release.yml | 18 ++++++++++++++++++ Cargo.toml | 2 +- 4 files changed, 37 insertions(+), 5 deletions(-) rename .github/workflows/{docs.yaml => publish-docs.yaml} (89%) rename .github/workflows/{playground.yaml => publish-playground.yaml} (86%) diff --git a/.github/workflows/docs.yaml b/.github/workflows/publish-docs.yaml similarity index 89% rename from .github/workflows/docs.yaml rename to .github/workflows/publish-docs.yaml index a0f31aba62..b2f5f4e0ce 100644 --- a/.github/workflows/docs.yaml +++ b/.github/workflows/publish-docs.yaml @@ -1,3 +1,7 @@ +# Publish the Ruff documentation. +# +# Assumed to run as a subworkflow of .github/workflows/release.yml; specifically, as a post-announce +# job within `cargo-dist`. name: mkdocs on: @@ -7,8 +11,11 @@ on: description: "The commit SHA, tag, or branch to publish. Uses the default branch if not specified." default: "" type: string - release: - types: [published] + workflow_call: + inputs: + plan: + required: true + type: string jobs: mkdocs: diff --git a/.github/workflows/playground.yaml b/.github/workflows/publish-playground.yaml similarity index 86% rename from .github/workflows/playground.yaml rename to .github/workflows/publish-playground.yaml index a0128f7d3e..f29f99f43f 100644 --- a/.github/workflows/playground.yaml +++ b/.github/workflows/publish-playground.yaml @@ -1,9 +1,16 @@ +# Publish the Ruff playground. +# +# Assumed to run as a subworkflow of .github/workflows/release.yml; specifically, as a post-announce +# job within `cargo-dist`. name: "[Playground] Release" on: workflow_dispatch: - release: - types: [published] + workflow_call: + inputs: + plan: + required: true + type: string env: CARGO_INCREMENTAL: 0 diff --git a/.github/workflows/release.yml b/.github/workflows/release.yml index b1172dd811..1b906e4545 100644 --- a/.github/workflows/release.yml +++ b/.github/workflows/release.yml @@ -247,3 +247,21 @@ jobs: with: plan: ${{ needs.plan.outputs.val }} secrets: inherit + + custom-publish-docs: + needs: + - plan + - announce + uses: ./.github/workflows/publish-docs.yml + with: + plan: ${{ needs.plan.outputs.val }} + secrets: inherit + + custom-publish-playground: + needs: + - plan + - announce + uses: ./.github/workflows/publish-playground.yml + with: + plan: ${{ needs.plan.outputs.val }} + secrets: inherit diff --git a/Cargo.toml b/Cargo.toml index aad3db53bc..613a5fd920 100644 --- a/Cargo.toml +++ b/Cargo.toml @@ -271,7 +271,7 @@ local-artifacts-jobs = ["./build-binaries", "./build-docker"] # Publish jobs to run in CI publish-jobs = ["./publish-pypi"] # Announcement jobs to run in CI -post-announce-jobs = ["./notify-dependents"] +post-announce-jobs = ["./notify-dependents", "./publish-docs", "./publish-playground"] # Skip checking whether the specified configuration files are up to date allow-dirty = ["ci"] # Whether to install an updater program