github.com/vipernet-xyz/tm@v0.34.24/.github/workflows/pre-release.yml (about)

     1  name: "Pre-release"
     2  
     3  on:
     4    push:
     5      tags:
     6        - "v[0-9]+.[0-9]+.[0-9]+-alpha.[0-9]+"  # e.g. v0.37.0-alpha.1, v0.38.0-alpha.10
     7        - "v[0-9]+.[0-9]+.[0-9]+-beta.[0-9]+"   # e.g. v0.37.0-beta.1, v0.38.0-beta.10
     8        - "v[0-9]+.[0-9]+.[0-9]+-rc[0-9]+"      # e.g. v0.37.0-rc1, v0.38.0-rc10
     9  
    10  jobs:
    11    prerelease:
    12      runs-on: ubuntu-latest
    13      steps:
    14        - name: Checkout
    15          uses: actions/checkout@v3
    16          with:
    17            fetch-depth: 0
    18  
    19        - uses: actions/setup-go@v3
    20          with:
    21            go-version: '1.18'
    22  
    23        - name: Build
    24          uses: goreleaser/goreleaser-action@v3
    25          if: ${{ github.event_name == 'pull_request' }}
    26          with:
    27            version: latest
    28            args: build --skip-validate   # skip validate skips initial sanity checks in order to be able to fully run
    29  
    30        # Link to CHANGELOG_PENDING.md as release notes.
    31        - run: echo https://github.com/vipernet-xyz/tm/blob/${GITHUB_REF#refs/tags/}/CHANGELOG_PENDING.md > ../release_notes.md
    32  
    33        - name: Release
    34          uses: goreleaser/goreleaser-action@v3
    35          if: startsWith(github.ref, 'refs/tags/')
    36          with:
    37            version: latest
    38            args: release --rm-dist --release-notes=../release_notes.md
    39          env:
    40            GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }}
    41  
    42    prerelease-success:
    43      needs: prerelease
    44      if: ${{ success() }}
    45      runs-on: ubuntu-latest
    46      steps:
    47        - name: Notify Slack upon pre-release
    48          uses: slackapi/slack-github-action@v1.23.0
    49          env:
    50            SLACK_WEBHOOK_URL: ${{ secrets.SLACK_WEBHOOK_URL }}
    51            SLACK_WEBHOOK_TYPE: INCOMING_WEBHOOK
    52            RELEASE_URL: "${{ github.server_url }}/${{ github.repository }}/releases/tag/${{ github.ref_name }}"
    53          with:
    54            payload: |
    55              {
    56                "blocks": [
    57                  {
    58                    "type": "section",
    59                    "text": {
    60                      "type": "mrkdwn",
    61                      "text": ":sparkles: New Tendermint pre-release: <${{ env.RELEASE_URL }}|${{ github.ref_name }}>"
    62                    }
    63                  }
    64                ]
    65              }