autofix PR #60525 #1378
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
| # Generated from xtask::workflows::autofix_pr | |
| # Rebuild with `cargo xtask workflows`. | |
| name: autofix_pr | |
| run-name: 'autofix PR #${{ inputs.pr_number }}' | |
| on: | |
| workflow_dispatch: | |
| inputs: | |
| pr_number: | |
| description: pr_number | |
| required: true | |
| type: string | |
| run_clippy: | |
| description: run_clippy | |
| type: boolean | |
| default: 'true' | |
| permissions: | |
| contents: read | |
| jobs: | |
| run_autofix: | |
| runs-on: namespace-profile-16x32-ubuntu-2204 | |
| permissions: | |
| contents: read | |
| pull-requests: read | |
| env: | |
| CC: clang | |
| CXX: clang++ | |
| steps: | |
| - name: steps::checkout_repo | |
| uses: actions/checkout@93cb6efe18208431cddfb8368fd83d5badbf9bfd | |
| with: | |
| clean: false | |
| - name: autofix_pr::run_autofix::checkout_pr | |
| run: gh pr checkout "$PR_NUMBER" | |
| env: | |
| PR_NUMBER: ${{ inputs.pr_number }} | |
| GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }} | |
| - name: steps::setup_cargo_config | |
| run: | | |
| mkdir -p ./../.cargo | |
| cp ./.cargo/ci-config.toml ./../.cargo/config.toml | |
| - name: steps::cache_rust_dependencies_namespace | |
| uses: namespacelabs/nscloud-cache-action@a90bb5d4b27522ce881c6e98eebd7d7e6d1653f9 | |
| with: | |
| cache: rust | |
| path: ~/.rustup | |
| - name: steps::setup_linux | |
| run: ./script/linux | |
| - name: steps::download_wasi_sdk | |
| run: ./script/download-wasi-sdk | |
| - name: steps::setup_pnpm | |
| uses: pnpm/action-setup@fe02b34f77f8bc703788d5817da081398fad5dd2 | |
| with: | |
| version: '9' | |
| - name: autofix_pr::run_autofix::install_cargo_machete | |
| if: ${{ inputs.run_clippy }} | |
| uses: taiki-e/install-action@02cc5f8ca9f2301050c0c099055816a41ee05507 | |
| with: | |
| tool: cargo-machete@0.7.0 | |
| - name: autofix_pr::run_autofix::run_cargo_fix | |
| if: ${{ inputs.run_clippy }} | |
| run: cargo fix --workspace --allow-dirty --allow-staged | |
| - name: autofix_pr::run_autofix::run_cargo_machete_fix | |
| if: ${{ inputs.run_clippy }} | |
| run: cargo machete --fix | |
| - name: autofix_pr::run_autofix::run_clippy_fix | |
| if: ${{ inputs.run_clippy }} | |
| run: cargo clippy --workspace --fix --allow-dirty --allow-staged | |
| - name: autofix_pr::run_autofix::run_prettier_fix | |
| run: ./script/prettier --write | |
| - name: autofix_pr::run_autofix::run_cargo_fmt | |
| run: cargo fmt --all | |
| - id: create-patch | |
| name: autofix_pr::run_autofix::create_patch | |
| run: | | |
| if git diff --quiet; then | |
| echo "No changes to commit" | |
| echo "has_changes=false" >> "$GITHUB_OUTPUT" | |
| else | |
| git diff > autofix.patch | |
| echo "has_changes=true" >> "$GITHUB_OUTPUT" | |
| fi | |
| - name: autofix_pr::upload_patch_artifact | |
| uses: actions/upload-artifact@043fb46d1a93c77aae656e7c1c64a875d1fc6a0a | |
| with: | |
| name: autofix-patch | |
| path: autofix.patch | |
| if-no-files-found: ignore | |
| retention-days: '1' | |
| - name: steps::cleanup_cargo_config | |
| if: always() | |
| run: | | |
| rm -rf ./../.cargo | |
| outputs: | |
| has_changes: ${{ steps.create-patch.outputs.has_changes }} | |
| commit_changes: | |
| needs: | |
| - run_autofix | |
| if: needs.run_autofix.outputs.has_changes == 'true' | |
| runs-on: namespace-profile-2x4-ubuntu-2404 | |
| steps: | |
| - id: generate-token | |
| name: steps::authenticate_as_zippy | |
| uses: actions/create-github-app-token@f8d387b68d61c58ab83c6c016672934102569859 | |
| with: | |
| app-id: ${{ secrets.ZED_ZIPPY_APP_ID }} | |
| private-key: ${{ secrets.ZED_ZIPPY_APP_PRIVATE_KEY }} | |
| permission-contents: write | |
| permission-workflows: write | |
| - name: steps::checkout_repo | |
| uses: actions/checkout@93cb6efe18208431cddfb8368fd83d5badbf9bfd | |
| with: | |
| clean: false | |
| token: ${{ steps.generate-token.outputs.token }} | |
| - name: autofix_pr::commit_changes::checkout_pr | |
| run: gh pr checkout "$PR_NUMBER" | |
| env: | |
| PR_NUMBER: ${{ inputs.pr_number }} | |
| GITHUB_TOKEN: ${{ steps.generate-token.outputs.token }} | |
| - name: autofix_pr::download_patch_artifact | |
| uses: actions/download-artifact@3e5f45b2cfb9172054b4087a40e8e0b5a5461e7c | |
| with: | |
| name: autofix-patch | |
| - name: autofix_pr::commit_changes::apply_patch | |
| run: git apply autofix.patch | |
| - name: autofix_pr::commit_changes::commit_and_push | |
| run: | | |
| git commit -am "Autofix" | |
| git push | |
| env: | |
| GIT_AUTHOR_NAME: zed-zippy[bot] | |
| GIT_AUTHOR_EMAIL: 234243425+zed-zippy[bot]@users.noreply.github.com | |
| GIT_COMMITTER_NAME: zed-zippy[bot] | |
| GIT_COMMITTER_EMAIL: 234243425+zed-zippy[bot]@users.noreply.github.com | |
| GITHUB_TOKEN: ${{ steps.generate-token.outputs.token }} | |
| concurrency: | |
| group: ${{ github.workflow }}-${{ inputs.pr_number }} | |
| cancel-in-progress: true | |
| defaults: | |
| run: | |
| shell: bash -euxo pipefail {0} |