diff --git a/.github/release-please-config.json b/.github/release-please-config.json new file mode 100644 index 0000000..e80b768 --- /dev/null +++ b/.github/release-please-config.json @@ -0,0 +1,34 @@ +{ + "$schema": "https://raw.githubusercontent.com/googleapis/release-please/main/schemas/config.json", + "changelog-sections": [ + { "type": "feat", "section": "Features" }, + { "type": "fix", "section": "Bug Fixes" }, + { "type": "perf", "section": "Performance Improvements" }, + { "type": "refactor", "section": "Code Refactoring" }, + { "type": "docs", "section": "Documentation" }, + { "type": "ci", "section": "Continuous Integration" }, + { "type": "build", "section": "Build System" }, + { "type": "chore", "section": "Miscellaneous" }, + { "type": "style", "section": "Styles", "hidden": true }, + { "type": "test", "section": "Tests", "hidden": true } + ], + "bump-minor-pre-major": true, + "always-update": true, + "bump-patch-for-minor-pre-major": true, + "include-v-in-tag": true, + "include-component-in-tag": false, + "plugins": ["sentence-case"], + "packages": { + ".": { + "release-type": "rust", + "exclude-paths": [".vscode", "docs"], + "extra-files": [ + { + "type": "toml", + "path": "Cargo.lock", + "jsonpath": "$.package[?(@.name=='banner')].version" + } + ] + } + } +} diff --git a/.github/release-please-manifest.json b/.github/release-please-manifest.json new file mode 100644 index 0000000..3f707ef --- /dev/null +++ b/.github/release-please-manifest.json @@ -0,0 +1,3 @@ +{ + ".": "0.6.0" +} diff --git a/.github/workflows/release.yml b/.github/workflows/release.yml new file mode 100644 index 0000000..bc37307 --- /dev/null +++ b/.github/workflows/release.yml @@ -0,0 +1,27 @@ +name: Release Please + +on: + workflow_dispatch: + + workflow_run: + workflows: ["CI"] + types: + - completed + branches: + - master + +permissions: + contents: write + pull-requests: write + +jobs: + release-please: + name: Create Release PR + runs-on: ubuntu-latest + if: ${{ github.event_name == 'workflow_dispatch' || github.event.workflow_run.conclusion == 'success' }} + steps: + - uses: googleapis/release-please-action@v4 + with: + token: ${{ secrets.RELEASE_PLEASE_TOKEN }} + config-file: .github/release-please-config.json + manifest-file: .github/release-please-manifest.json diff --git a/docs/CHANGELOG.md b/CHANGELOG.md similarity index 100% rename from docs/CHANGELOG.md rename to CHANGELOG.md