github.com/massongit/reviewdog@v0.0.0-20240331071725-4a16675475a8/.github/workflows/release.yml (about)

     1  name: release
     2  on:
     3    push:
     4      branches:
     5        - master
     6        - release-*
     7      tags:
     8        - 'v*.*.*'
     9    pull_request:
    10      types:
    11        - labeled
    12  
    13  jobs:
    14    release:
    15      permissions:
    16        contents: write
    17        pull-requests: write
    18      if: github.event.action != 'labeled'
    19      runs-on: ubuntu-latest
    20      steps:
    21        - uses: actions/checkout@v4
    22  
    23        # Bump version on merging Pull Requests with specific labels.
    24        # (bump:major,bump:minor,bump:patch)
    25        - id: bumpr
    26          if: "!startsWith(github.ref, 'refs/tags/')"
    27          uses: haya14busa/action-bumpr@v1
    28  
    29        # Get tag name.
    30        - id: tag
    31          uses: haya14busa/action-cond@v1
    32          with:
    33            cond: "${{ startsWith(github.ref, 'refs/tags/') }}"
    34            if_true: ${{ github.ref }}
    35            if_false: ${{ steps.bumpr.outputs.next_version }}
    36  
    37        # Setup Go for building reviewdog binary.
    38        - uses: actions/setup-go@v5
    39          with:
    40            go-version-file: "go.mod"
    41  
    42        # Test goreleaser if the tag is empty.
    43        - name: Test goreleaser
    44          uses: goreleaser/goreleaser-action@v5
    45          if: "steps.tag.outputs.value == ''"
    46          with:
    47            version: latest
    48            args: check
    49  
    50        # Create release.
    51        - name: Create release with goreleaser
    52          uses: goreleaser/goreleaser-action@v5
    53          if: "steps.tag.outputs.value != ''"
    54          with:
    55            version: latest
    56            args: release --rm-dist --release-header .github/goreleaser-header.md
    57          env:
    58            # Need to use personal access token instead of default token to
    59            # update https://github.com/reviewdog/homebrew-tap.
    60            GITHUB_TOKEN: ${{ secrets.RELEASE_GITHUB_TOKEN }}
    61  
    62        - name: Trigger depup workflows
    63          if: "steps.tag.outputs.value != ''"
    64          env:
    65            # Need to use personal access token instead of default token to
    66            # trigger workflow of other repositories.
    67            DEPUP_GITHUB_API_TOKEN: ${{ secrets.RELEASE_GITHUB_TOKEN }}
    68          run: go run ./scripts/trigger-depup/main.go
    69  
    70    release-check:
    71      permissions:
    72        contents: write
    73        pull-requests: write
    74      if: github.event.action == 'labeled'
    75      runs-on: ubuntu-latest
    76      steps:
    77        - uses: actions/checkout@v4
    78        - name: Post bumpr status comment
    79          uses: haya14busa/action-bumpr@v1