@@ -15,23 +15,27 @@ if [ -z ${PREVIOUS_TAG+x} ]; then
15
15
echo " Error: PREVIOUS_TAG is not set"
16
16
fi
17
17
18
+ releaseDir=" /tmp/release-notes"
19
+
20
+ mkdir -p ${releaseDir}
21
+
18
22
sudo apt-get -y update
19
23
sudo apt-get -y install wget curl git
20
24
curl -L https://github.com/github/hub/releases/download/v2.14.2/hub-linux-amd64-2.14.2.tgz | tar xzf -
21
25
PWD=" $( pwd) "
22
26
export PATH=$PWD /hub-linux-amd64-2.14.2/bin:$PATH
23
27
git fetch --all --tags --prune --force
24
- echo " # Draft Release changes since ${PREVIOUS_TAG} " > Changes.md
25
- echo > Features.md
26
- echo " ## Features" >> Features.md
27
- echo > Fixes.md
28
- echo " ## Fixes" >> Fixes.md
29
- echo > API.md
30
- echo " ## API Changes" >> API.md
31
- echo > Docs.md
32
- echo " ## Docs" >> Docs.md
33
- echo > Misc.md
34
- echo " ## Misc" >> Misc.md
28
+ echo " # Draft Release changes since ${PREVIOUS_TAG} " > " ${releaseDir} / Changes.md"
29
+ echo > " ${releaseDir} / Features.md"
30
+ echo " ## Features" >> " ${releaseDir} / Features.md"
31
+ echo > " ${releaseDir} / Fixes.md"
32
+ echo " ## Fixes" >> " ${releaseDir} / Fixes.md"
33
+ echo > " ${releaseDir} / API.md"
34
+ echo " ## API Changes" >> " ${releaseDir} / API.md"
35
+ echo > " ${releaseDir} / Docs.md"
36
+ echo " ## Docs" >> " ${releaseDir} / Docs.md"
37
+ echo > " ${releaseDir} / Misc.md"
38
+ echo " ## Misc" >> " ${releaseDir} / Misc.md"
35
39
36
40
# this effectively gets the commit associated with github.event.inputs.tags
37
41
COMMON_ANCESTOR=$( git merge-base $PREVIOUS_TAG HEAD)
@@ -100,42 +104,47 @@ while IFS= read -r pr; do
100
104
echo $pr | grep ' kind/bug'
101
105
rc=$?
102
106
if [ ${rc} -eq 0 ]; then
103
- echo >> Fixes.md
104
- echo " $PR_NUM by $AUTHOR : $PR_RELEASE_NOTE_NO_NEWLINES " >> Fixes.md
107
+ echo >> " ${releaseDir} / Fixes.md"
108
+ echo " $PR_NUM by $AUTHOR : $PR_RELEASE_NOTE_NO_NEWLINES " >> " ${releaseDir} / Fixes.md"
105
109
MISC=no
106
110
fi
107
111
echo $pr | grep ' kind/api-change'
108
112
rc=$?
109
113
if [ ${rc} -eq 0 ]; then
110
- echo >> API.md
111
- echo " $PR_NUM by $AUTHOR : $PR_RELEASE_NOTE_NO_NEWLINES " >> API.md
114
+ echo >> " ${releaseDir} / API.md"
115
+ echo " $PR_NUM by $AUTHOR : $PR_RELEASE_NOTE_NO_NEWLINES " >> " ${releaseDir} / API.md"
112
116
MISC=no
113
117
fi
114
118
echo $pr | grep ' kind/feature'
115
119
rc=$?
116
120
if [ ${rc} -eq 0 ]; then
117
- echo >> Features.md
118
- echo " $PR_NUM by $AUTHOR : $PR_RELEASE_NOTE_NO_NEWLINES " >> Features.md
121
+ echo >> " ${releaseDir} / Features.md"
122
+ echo " $PR_NUM by $AUTHOR : $PR_RELEASE_NOTE_NO_NEWLINES " >> " ${releaseDir} / Features.md"
119
123
MISC=no
120
124
fi
121
125
echo $pr | grep ' kind/documentation'
122
126
rc=$?
123
127
if [ ${rc} -eq 0 ]; then
124
- echo >> Docs.md
125
- echo " $PR_NUM by $AUTHOR : $PR_RELEASE_NOTE_NO_NEWLINES " >> Docs.md
128
+ echo >> " ${releaseDir} / Docs.md"
129
+ echo " $PR_NUM by $AUTHOR : $PR_RELEASE_NOTE_NO_NEWLINES " >> " ${releaseDir} / Docs.md"
126
130
MISC=no
127
131
fi
128
132
if [ " $MISC " == " yes" ]; then
129
- echo >> Misc.md
130
- echo " $PR_NUM by $AUTHOR : $PR_RELEASE_NOTE_NO_NEWLINES " >> Misc.md
133
+ echo >> " ${releaseDir} / Misc.md"
134
+ echo " $PR_NUM by $AUTHOR : $PR_RELEASE_NOTE_NO_NEWLINES " >> " ${releaseDir} / Misc.md"
131
135
fi
132
136
# update the PR template if our greps etc. for pulling the release note changes
133
137
# PR_RELEASE_NOTE=$(wget -q -O- https://api.github.com/repos/shipwright-io/build/issues/${PR_NUM:1} | grep -oPz '(?s)(?<=```release-note..)(.+?)(?=```)' | grep -avP '\W*(Your release note here|action required: your release note here|NONE)\W*')
134
138
echo " Added from ${AUTHOR} PR ${PR_NUM: 1} to the release note draft"
135
139
done < last-300-prs-with-release-note.txt
136
140
137
- cat Features.md >> Changes.md
138
- cat Fixes.md >> Changes.md
139
- cat API.md >> Changes.md
140
- cat Docs.md >> Changes.md
141
- cat Misc.md >> Changes.md
141
+ cat " ${releaseDir} /Features.md" >> " ${releaseDir} /Changes.md"
142
+ cat " ${releaseDir} /Fixes.md" >> " ${releaseDir} /Changes.md"
143
+ cat " ${releaseDir} /API.md" >> " ${releaseDir} /Changes.md"
144
+ cat " ${releaseDir} /Docs.md" >> " ${releaseDir} /Changes.md"
145
+ cat " ${releaseDir} /Misc.md" >> " ${releaseDir} /Changes.md"
146
+
147
+ echo " Cleaning up"
148
+
149
+ rm -rf hub-linux-amd64-2.14.2
150
+ rm last-300-prs-with-release-note.txt
0 commit comments