From ac5a87a65d3e78b02cc1624b424fad32c7cd36a6 Mon Sep 17 00:00:00 2001 From: Alexander Lyon Date: Tue, 17 Jan 2023 11:29:16 +0100 Subject: [PATCH] fix: add automated release config --- .github/workflows/release.yml | 28 ++++++++++++++++++++++++++++ .releaserc.json | 29 +++++++++++++++++++++++++++++ 2 files changed, 57 insertions(+) create mode 100644 .github/workflows/release.yml create mode 100644 .releaserc.json diff --git a/.github/workflows/release.yml b/.github/workflows/release.yml new file mode 100644 index 000000000..d2698d38c --- /dev/null +++ b/.github/workflows/release.yml @@ -0,0 +1,28 @@ +name: Release + +on: + workflow_run: + workflows: [CI] + types: [completed] + branches: [master] + workflow_dispatch: {} + +# Only allow one release workflow to execute at a time, since each release +# workflow uses shared resources (git tags, package registries) +concurrency: + group: ${{ github.workflow }} + +jobs: + release: + name: Release + runs-on: ubuntu-latest + steps: + - name: Checkout + uses: actions/checkout@v2 + with: + token: ${{ secrets.REPO_SCOPED_TOKEN }} + - uses: dtolnay/rust-toolchain@1.60 + - uses: cycjimmy/semantic-release-action@v3 + env: + GITHUB_TOKEN: ${{ secrets.REPO_SCOPED_TOKEN }} + CARGO_REGISTRY_TOKEN: ${{ secrets.CARGO_REGISTRY_TOKEN }} diff --git a/.releaserc.json b/.releaserc.json new file mode 100644 index 000000000..ed627cd14 --- /dev/null +++ b/.releaserc.json @@ -0,0 +1,29 @@ +{ + "branches": ["master"], + "plugins": [ + "@semantic-release/commit-analyzer", + "@semantic-release/release-notes-generator", + "@semantic-release/changelog", + [ + "@semantic-release-cargo/semantic-release-cargo", + { + "features": { + "async_stripe": "runtime-tokio-hyper" + } + } + ], + [ + "@semantic-release/git", + { + "assets": ["CHANGELOG.md", "package.json", "Cargo.toml"], + "message": "chore(release): ${nextRelease.version} [skip ci]\n\n${nextRelease.notes}" + } + ], + [ + "@semantic-release/github", + { + "release": true + } + ] + ] +}