Thanks to visit codestin.com
Credit goes to github.com

Skip to content

Commit 7381383

Browse files
committed
Use release notes file
1 parent c5a6ead commit 7381383

File tree

2 files changed

+14
-15
lines changed

2 files changed

+14
-15
lines changed

.github/workflows/release.yaml

Lines changed: 9 additions & 7 deletions
Original file line numberDiff line numberDiff line change
@@ -113,7 +113,7 @@ jobs:
113113

114114
- name: Create release tag and release notes
115115
run: |
116-
set -eu
116+
set -euo pipefail
117117
ref=HEAD
118118
old_version="$(git describe --abbrev=0 "$ref^1")"
119119
@@ -134,13 +134,14 @@ jobs:
134134
)"
135135
136136
# Generate notes.
137-
release_notes="$(./scripts/release/generate_release_notes.sh --old-version "$old_version" --new-version "$version" --ref "$ref")"
138-
echo 'CODER_RELEASE_NOTES<<RN_EOF' >> $GITHUB_ENV
139-
echo "$release_notes" >> $GITHUB_ENV
140-
echo 'RN_EOF' >> $GITHUB_ENV
137+
release_notes_file="$(mktemp -t release_notes.XXXXXX)"
138+
./scripts/release/generate_release_notes.sh --old-version "$old_version" --new-version "$version" --ref "$ref" >> "release_notes_file"
139+
echo CODER_RELEASE_NOTES_FILE="$release_notes_file" >> $GITHUB_ENV
141140
142141
- name: Echo release notes
143-
run: echo "$CODER_RELEASE_NOTES"
142+
run: |
143+
set -euo pipefail
144+
cat "$CODER_RELEASE_NOTES_FILE"
144145
145146
- name: Build binaries
146147
run: |
@@ -199,10 +200,11 @@ jobs:
199200

200201
- name: Publish release
201202
run: |
203+
set -euo pipefail
202204
./scripts/release/publish.sh \
203205
${{ github.event.inputs.draft && '--draft' }} \
204206
${{ (github.event.inputs.dry_run || github.event.inputs.snapshot) && '--dry-run' }} \
205-
--release-notes "$CODER_RELEASE_NOTES" \
207+
--release-notes-file "$CODER_RELEASE_NOTES_FILE" \
206208
./build/*_installer.exe \
207209
./build/*.zip \
208210
./build/*.tar.gz \

scripts/release/publish.sh

Lines changed: 5 additions & 8 deletions
Original file line numberDiff line numberDiff line change
@@ -34,20 +34,20 @@ if [[ "${CI:-}" == "" ]]; then
3434
fi
3535

3636
version=""
37-
release_notes=""
37+
release_notes_file=""
3838
draft=0
3939
dry_run=0
4040

41-
args="$(getopt -o "" -l version:,release-notes:,draft,dry-run -- "$@")"
41+
args="$(getopt -o "" -l version:,release-notes-file:,draft,dry-run -- "$@")"
4242
eval set -- "$args"
4343
while true; do
4444
case "$1" in
4545
--version)
4646
version="$2"
4747
shift 2
4848
;;
49-
--release-notes)
50-
release_notes="$2"
49+
--release-notes-file)
50+
release_notes_file="$2"
5151
shift 2
5252
;;
5353
--draft)
@@ -110,9 +110,6 @@ if [[ "$(git describe --always)" != "$new_tag" ]]; then
110110
log "The provided version does not match the current git tag, but --dry-run was supplied so continuing..."
111111
fi
112112

113-
release_notes_file="$(mktemp)"
114-
echo "$release_notes" >"$release_notes_file"
115-
116113
# Create temporary release folder so we can generate checksums. Both the
117114
# sha256sum and gh binaries support symlinks as input files so this works well.
118115
temp_dir="$(mktemp -d)"
@@ -128,7 +125,7 @@ popd
128125
log "--- Publishing release $new_tag on GitHub"
129126
log
130127
log "Description:"
131-
echo "$release_notes" | sed -e 's/^/\t/' - 1>&2
128+
sed -e 's/^/\t/' - <"$release_notes_file" 1>&2
132129
log
133130
log "Contents:"
134131
pushd "$temp_dir"

0 commit comments

Comments
 (0)