oxc/.github/workflows/reusable_prepare_release.yml
Boshen 0726581f4f
chore(deps): update github-actions (#8409)
Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
2025-01-10 14:06:49 +08:00

66 lines
2 KiB
YAML

name: Prepare Release
on:
workflow_call:
inputs:
name:
required: true
type: string
description: "The name defined in oxc_release.toml"
secrets:
OXC_BOT_PAT:
required: true
outputs:
pull-request-number:
value: ${{ jobs.run.outputs.pull-request-number }}
version:
value: ${{ jobs.run.outputs.version }}
jobs:
run:
name: Prepare Release
runs-on: ubuntu-latest
outputs:
pull-request-number: ${{ steps.pr.outputs.pull-request-number }}
version: ${{ steps.run.outputs.VERSION }}
steps:
- uses: actions/checkout@11bd71901bbe5b1630ceea73d27597364c9af683 # v4
with:
fetch-depth: 0
persist-credentials: false
- uses: oxc-project/setup-rust@cd82e1efec7fef815e2c23d296756f31c7cdc03d # v1.0.0
with:
cache-key: warm
tools: cargo-release-oxc
- name: Run
id: run
env:
RELEASE_NAME: ${{ inputs.name }}
run: |
cargo ck
cargo release-oxc update --release ${RELEASE_NAME}
echo "VERSION=$(cat ./target/OXC_VERSION)" >> $GITHUB_OUTPUT
{
echo 'CHANGELOG<<EOF'
cat ./target/OXC_CHANGELOG
echo EOF
} >> $GITHUB_OUTPUT
# update `Cargo.lock`
- run: cargo check
- uses: peter-evans/create-pull-request@67ccf781d68cd99b580ae25a5c18a1cc84ffff1f # v7
id: pr
with:
# bot account with PAT required for triggering workflow runs
# See https://github.com/peter-evans/create-pull-request/blob/main/docs/concepts-guidelines.md#triggering-further-workflow-runs
token: ${{ secrets.OXC_BOT_PAT }}
commit-message: "release(${{ inputs.name }}): v${{ steps.run.outputs.VERSION }}"
branch: release/${{ inputs.name }}
branch-suffix: timestamp
base: main
title: "release(${{ inputs.name }}): v${{ steps.run.outputs.VERSION }}"
body: ${{ steps.run.outputs.CHANGELOG }}
assignees: Boshen