mirror of
https://github.com/tendermint/tendermint.git
synced 2026-02-03 10:32:05 +00:00
Automatically notify the team when pre-releases and releases are cut. [Pre-release notification rendered](https://app.slack.com/block-kit-builder/TREF53MTJ#%7B%22blocks%22:%5B%7B%22type%22:%22section%22,%22text%22:%7B%22type%22:%22mrkdwn%22,%22text%22:%22✨%20New%20Tendermint%20pre-release:%20%3Chttps://github.com/tendermint/tendermint/releases/tag/v0.37.0-rc1%7Cv0.37.0-rc1%3E%22%7D%7D%5D%7D) [Release notification rendered](https://app.slack.com/block-kit-builder/TREF53MTJ#%7B%22blocks%22:%5B%7B%22type%22:%22section%22,%22text%22:%7B%22type%22:%22mrkdwn%22,%22text%22:%22🚀%20New%20Tendermint%20release:%20%3Chttps://github.com/tendermint/tendermint/releases/tag/v0.34.22%7Cv0.34.22%3E%22%7D%7D%5D%7D) --- #### PR checklist - [x] Tests written/updated, or no tests needed - [x] `CHANGELOG_PENDING.md` updated, or no changelog entry needed - [x] Updated relevant documentation (`docs/`) and code comments, or no documentation updates needed
66 lines
2.1 KiB
YAML
66 lines
2.1 KiB
YAML
name: "Pre-release"
|
|
|
|
on:
|
|
push:
|
|
tags:
|
|
- "v[0-9]+.[0-9]+.[0-9]+-alpha.[0-9]+" # e.g. v0.37.0-alpha.1, v0.38.0-alpha.10
|
|
- "v[0-9]+.[0-9]+.[0-9]+-beta.[0-9]+" # e.g. v0.37.0-beta.1, v0.38.0-beta.10
|
|
- "v[0-9]+.[0-9]+.[0-9]+-rc[0-9]+" # e.g. v0.37.0-rc1, v0.38.0-rc10
|
|
|
|
jobs:
|
|
prerelease:
|
|
runs-on: ubuntu-latest
|
|
steps:
|
|
- name: Checkout
|
|
uses: actions/checkout@v3
|
|
with:
|
|
fetch-depth: 0
|
|
|
|
- uses: actions/setup-go@v3
|
|
with:
|
|
go-version: '1.18'
|
|
|
|
- name: Build
|
|
uses: goreleaser/goreleaser-action@v3
|
|
if: ${{ github.event_name == 'pull_request' }}
|
|
with:
|
|
version: latest
|
|
args: build --skip-validate # skip validate skips initial sanity checks in order to be able to fully run
|
|
|
|
# Link to CHANGELOG_PENDING.md as release notes.
|
|
- run: echo https://github.com/tendermint/tendermint/blob/${GITHUB_REF#refs/tags/}/CHANGELOG_PENDING.md > ../release_notes.md
|
|
|
|
- name: Release
|
|
uses: goreleaser/goreleaser-action@v3
|
|
if: startsWith(github.ref, 'refs/tags/')
|
|
with:
|
|
version: latest
|
|
args: release --rm-dist --release-notes=../release_notes.md
|
|
env:
|
|
GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }}
|
|
|
|
prerelease-success:
|
|
needs: prerelease
|
|
if: ${{ success() }}
|
|
runs-on: ubuntu-latest
|
|
steps:
|
|
- name: Notify Slack upon pre-release
|
|
uses: slackapi/slack-github-action@v1.22.0
|
|
env:
|
|
SLACK_WEBHOOK_URL: ${{ secrets.SLACK_WEBHOOK_URL }}
|
|
SLACK_WEBHOOK_TYPE: INCOMING_WEBHOOK
|
|
RELEASE_URL: "${{ github.server_url }}/${{ github.repository }}/releases/tag/${{ github.ref_name }}"
|
|
with:
|
|
payload: |
|
|
{
|
|
"blocks": [
|
|
{
|
|
"type": "section",
|
|
"text": {
|
|
"type": "mrkdwn",
|
|
"text": ":sparkles: New Tendermint pre-release: <${{ env.RELEASE_URL }}|${{ github.ref_name }}>"
|
|
}
|
|
}
|
|
]
|
|
}
|