build(deps): update rust crate uuid to v1.25.0 (#362) #1
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
| name: Release-plz | |
| permissions: {} | |
| on: | |
| push: | |
| branches: | |
| - main | |
| jobs: | |
| # Create GitHub releases and publish to crates.io. | |
| release-plz-release: | |
| name: Release-plz release | |
| runs-on: ubuntu-latest | |
| if: ${{ github.repository_owner == 'eryx-org' }} | |
| environment: crates-io | |
| permissions: | |
| contents: write | |
| id-token: write | |
| steps: | |
| # Mint a GitHub App installation token. release-plz must NOT use the | |
| # default GITHUB_TOKEN to push tags / create releases: GitHub suppresses | |
| # workflow runs triggered by the default token, so the cargo-dist | |
| # (release.yml) and Python/JS release workflows downstream of these | |
| # tags/releases never fire. An App token is exempt from that rule. | |
| - name: Generate GitHub App token | |
| id: app-token | |
| uses: actions/create-github-app-token@v3 | |
| with: | |
| app-id: ${{ vars.RELEASE_PLZ_APP_ID }} | |
| private-key: ${{ secrets.RELEASE_PLZ_APP_PRIVATE_KEY }} | |
| - name: Checkout repository | |
| uses: actions/checkout@v7 | |
| with: | |
| fetch-depth: 0 | |
| persist-credentials: true | |
| token: ${{ steps.app-token.outputs.token }} | |
| - name: Install Rust toolchain | |
| uses: dtolnay/rust-toolchain@stable | |
| - name: Run release-plz | |
| uses: release-plz/action@v0.5 | |
| with: | |
| command: release | |
| config: release-plz.toml | |
| env: | |
| GITHUB_TOKEN: ${{ steps.app-token.outputs.token }} | |
| # Create a PR with the new versions and changelog, preparing the next release. | |
| release-plz-pr: | |
| name: Release-plz PR | |
| runs-on: ubuntu-latest | |
| if: ${{ github.repository_owner == 'eryx-org' }} | |
| permissions: | |
| contents: write | |
| pull-requests: write | |
| concurrency: | |
| group: release-plz-${{ github.ref }} | |
| cancel-in-progress: false | |
| steps: | |
| # Use an App token so the release PR is opened by the App (not the | |
| # default token), which lets the PR's CI checks run. See the note in the | |
| # release job above. | |
| - name: Generate GitHub App token | |
| id: app-token | |
| uses: actions/create-github-app-token@v3 | |
| with: | |
| app-id: ${{ vars.RELEASE_PLZ_APP_ID }} | |
| private-key: ${{ secrets.RELEASE_PLZ_APP_PRIVATE_KEY }} | |
| - name: Checkout repository | |
| uses: actions/checkout@v7 | |
| with: | |
| fetch-depth: 0 | |
| persist-credentials: true | |
| token: ${{ steps.app-token.outputs.token }} | |
| - name: Install Rust toolchain | |
| uses: dtolnay/rust-toolchain@stable | |
| # release-plz runs cargo-semver-checks with its default (all-features) | |
| # heuristic, which enables the `embedded` feature. That feature's build | |
| # script requires a `runtime.cwasm`; without one it panics, the semver | |
| # check silently no-ops, and API-breaking changes (e.g. new public struct | |
| # fields) slip through as a patch bump instead of a minor one. | |
| # | |
| # For the semver check the cwasm is only embedded as bytes for rustdoc and | |
| # is never deserialized or executed, so an empty placeholder is sufficient | |
| # (identical to how the crate's own build.rs handles docs.rs builds). This | |
| # avoids building the real WASM runtime here just to satisfy the check. | |
| - name: Provide placeholder runtime.cwasm for cargo-semver-checks | |
| run: | | |
| : > "$RUNNER_TEMP/runtime.cwasm" | |
| echo "ERYX_RUNTIME_CWASM=$RUNNER_TEMP/runtime.cwasm" >> "$GITHUB_ENV" | |
| - name: Run release-plz | |
| uses: release-plz/action@v0.5 | |
| with: | |
| command: release-pr | |
| config: release-plz.toml | |
| env: | |
| GITHUB_TOKEN: ${{ steps.app-token.outputs.token }} |