Skip to content

Commit aff7928

Browse files
authored
Merge pull request #2 from esnya/copilot/fix-auto-release-tag-v0-1-0
Add release event trigger to support UI-created releases
2 parents d11f315 + dac3409 commit aff7928

1 file changed

Lines changed: 23 additions & 6 deletions

File tree

.github/workflows/ci.yml

Lines changed: 23 additions & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -7,6 +7,8 @@ on:
77
tags:
88
- v*
99
pull_request:
10+
release:
11+
types: [created, published]
1012
workflow_dispatch:
1113

1214
permissions:
@@ -106,7 +108,7 @@ jobs:
106108
dotnet test WhileLoopTimeout.sln --configuration Release --no-build
107109
108110
- name: Prepare release assets
109-
if: startsWith(github.ref, 'refs/tags/v')
111+
if: startsWith(github.ref, 'refs/tags/v') || github.event_name == 'release'
110112
shell: bash
111113
run: |
112114
set -euo pipefail
@@ -118,7 +120,7 @@ jobs:
118120
fi
119121
120122
- name: Upload release artifacts
121-
if: startsWith(github.ref, 'refs/tags/v')
123+
if: startsWith(github.ref, 'refs/tags/v') || github.event_name == 'release'
122124
uses: actions/upload-artifact@v4
123125
with:
124126
name: while-loop-timeout
@@ -128,7 +130,7 @@ jobs:
128130
release:
129131
runs-on: ubuntu-latest
130132
needs: build
131-
if: startsWith(github.ref, 'refs/tags/v')
133+
if: startsWith(github.ref, 'refs/tags/v') || github.event_name == 'release'
132134
permissions:
133135
contents: write
134136
steps:
@@ -138,12 +140,27 @@ jobs:
138140
name: while-loop-timeout
139141
path: release-artifacts
140142

143+
- name: Determine release tag
144+
id: tag
145+
shell: bash
146+
run: |
147+
if [ "${{ github.event_name }}" = "release" ]; then
148+
echo "tag_name=${{ github.event.release.tag_name }}" >> "$GITHUB_OUTPUT"
149+
elif [[ "${{ github.ref }}" == refs/tags/* ]]; then
150+
echo "tag_name=${{ github.ref_name }}" >> "$GITHUB_OUTPUT"
151+
else
152+
echo "::error::Unexpected event: ${{ github.event_name }} with ref: ${{ github.ref }}"
153+
exit 1
154+
fi
155+
141156
- name: Publish GitHub release
142157
uses: softprops/action-gh-release@v2
143158
with:
144-
tag_name: ${{ github.ref_name }}
145-
name: While Loop Timeout ${{ github.ref_name }}
146-
generate_release_notes: true
159+
tag_name: ${{ steps.tag.outputs.tag_name }}
160+
name: While Loop Timeout ${{ steps.tag.outputs.tag_name }}
161+
# When triggered by release event, this updates the existing release
162+
# When triggered by tag push, this creates a new release
163+
generate_release_notes: ${{ github.event_name != 'release' }}
147164
files: |
148165
release-artifacts/WhileLoopTimeout.dll
149166
release-artifacts/WhileLoopTimeout.pdb

0 commit comments

Comments
 (0)