55 tags :
66 - ' v*.*.*'
77 - ' v*.*.*-rc.*'
8- - ' v*.*.*-alpha.*'
9- - ' v*.*.*-beta.*'
108
119permissions :
1210 contents : write
@@ -108,6 +106,9 @@ jobs:
108106 name : Create GitHub Release
109107 needs : [build, publish-pypi]
110108 runs-on : ubuntu-latest
109+ environment :
110+ name : release
111+ url : https://github.com/kubeflow/sdk/releases
111112
112113 steps :
113114 - uses : actions/checkout@v4
@@ -120,16 +121,23 @@ jobs:
120121 VERSION="${{ needs.build.outputs.version }}"
121122
122123 if [[ -f CHANGELOG.md ]]; then
123- CHANGELOG=$(awk "/^# \[?v?$VERSION\]?/,/^# \[?v?[0-9]/" CHANGELOG.md | sed '$d' | tail -n +2)
124+ NEXT_VERSION=$(sed -n "/^# \[v$VERSION\]/,\$p" CHANGELOG.md | tail -n +2 | grep -m1 "^# \[v[0-9]" || echo "")
125+ if [[ -n "$NEXT_VERSION" ]]; then
126+ CHANGELOG=$(sed -n "/^# \[v$VERSION\]/,/^# \[v[0-9]/p" CHANGELOG.md | sed '$d' | tail -n +2)
127+ else
128+ CHANGELOG=$(sed -n "/^# \[v$VERSION\]/,\$p" CHANGELOG.md | tail -n +2)
129+ fi
124130 if [[ -n "$CHANGELOG" ]]; then
125- echo "changelog<<EOF" >> $GITHUB_OUTPUT
126- echo "$CHANGELOG" >> $GITHUB_OUTPUT
127- echo "EOF" >> $GITHUB_OUTPUT
131+ {
132+ echo "changelog<<EOF"
133+ echo "$CHANGELOG"
134+ echo "EOF"
135+ } >> $GITHUB_OUTPUT
128136 else
129- echo "**Note:** CHANGELOG.md was not updated for this release" >> $GITHUB_OUTPUT
137+ echo "changelog= **Note:** CHANGELOG.md was not updated for this release" >> $GITHUB_OUTPUT
130138 fi
131139 else
132- echo "**Note:** CHANGELOG.md not found" >> $GITHUB_OUTPUT
140+ echo "changelog= **Note:** CHANGELOG.md not found" >> $GITHUB_OUTPUT
133141 fi
134142
135143 - name : Create GitHub Release
0 commit comments