Skip to content

Commit 19af9e4

Browse files
committed
Attempt to improve nuget publishing
This now generates a GitHub release for me, in a draft state, along with release notes.
1 parent 2a314be commit 19af9e4

1 file changed

Lines changed: 35 additions & 0 deletions

File tree

.github/workflows/releaseBuild.yml

Lines changed: 35 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -90,6 +90,7 @@ jobs:
9090
permissions:
9191
actions: read
9292
id-token: write
93+
contents: write
9394
steps:
9495
- name: Add .NET global tools location to PATH
9596
run: echo "$HOME/.dotnet/tools" >> "$GITHUB_PATH"
@@ -110,5 +111,39 @@ jobs:
110111
user: ${{ secrets.NUGET_USER }}
111112
- name: Publish to NuGet
112113
run: dotnet nuget push ./packages/*.nupkg --source https://api.nuget.org/v3/index.json --api-key ${{ steps.nuget-login.outputs.NUGET_API_KEY }}
114+
- name: Determine release properties
115+
id: get-release-props
116+
run: |
117+
VERSION="${GITHUB_REF_NAME#v}"
118+
PRERELEASE="$([[ "$VERSION" =~ "-" ]] && echo "true" || echo "false")"
119+
echo "version=$VERSION" >> "$GITHUB_OUTPUT"
120+
echo "prerelease=$PRERELEASE" >> "$GITHUB_OUTPUT"
121+
- name: Generate release notes (first part)
122+
run: |
123+
PACKAGE_LIST=$(for package in packages/*.nupkg; do echo $(basename "$package" | sed -r 's/^([A-Za-z.]+)\.[0-9.A-Za-z-]*\.nupkg$/\1/'); done)
124+
VERSION="${{ steps.get-release-props.outputs.version }}"
125+
cat <<EOF > release_notes.md
126+
# CSF.Screenplay version $VERSION
127+
128+
## NuGet packages
129+
130+
These are the NuGet packages which are published for this release.
131+
132+
| Package | Version |
133+
| ------- | ------- |
134+
EOF
135+
136+
for package in $PACKAGE_LIST
137+
do
138+
echo "| [${package}](https://www.nuget.org/packages/${package}/${VERSION}) | $VERSION |" >> release_notes.md
139+
done
140+
echo "" >> release_notes.md
141+
- name: Create release
142+
uses: softprops/action-gh-release@v3
143+
with:
144+
draft: true
145+
name: ${{ steps.get-release-props.outputs.version }}
146+
prerelease: ${{ steps.get-release-props.outputs.prerelease }}
147+
generate_release_notes: true
113148

114149

0 commit comments

Comments
 (0)