4747 runs-on : ubuntu-latest
4848 if : |
4949 github.event.pull_request.merged == true
50- needs : [ ' ReleaseDryRun' ]
50+ needs : [ ReleaseDryRun ]
5151 permissions :
5252 contents : write # to be able to publish a GitHub release
5353 outputs :
@@ -65,67 +65,62 @@ jobs:
6565 echo " - RESULT: ${RESULT}"
6666 echo " - VERSION: ${VERSION}"
6767 echo " - RELEASE_NOTES: ${RELEASE_NOTES}"
68+
6869 if [ "${RESULT}" == "SUCCESS" ]; then
70+ DATE=`date +%Y-%m-%d`
71+ FILE_CHANGELOG="RELEASE-NOTES.md"
72+ FILE_MODULE="module.go"
73+ head -1 ${FILE_CHANGELOG} > .temp.md
74+ echo -e "\n## ${DATE} - v${VERSION}\n\n${RELEASE_NOTES}" >> .temp.md
75+ tail -n +2 ${FILE_CHANGELOG} >> .temp.md
76+ mv -f .temp.md ${FILE_CHANGELOG}
77+ echo ========== content of ${FILE_CHANGELOG} ==========
78+ cat ${FILE_CHANGELOG}
79+
80+ sed -i -E "s/^(\s*Version\s*=\s*)\"[^\"]+\"/\1\"${VERSION}\"/" ${FILE_MODULE}
81+ echo ========== content of ${FILE_MODULE} ==========
82+ cat ${FILE_MODULE}
83+
84+ echo ========== update .go files ==========
85+ sed -i -E "s/<<VERSION>>/v${VERSION}/" ./*.go
86+
87+ echo ========== commit updates ==========
88+ git config --global user.email "<>"
89+ git config --global user.name "CI Build"
90+ git commit -am "Update ${FILE_CHANGELOG} and ${FILE_MODULE} for new version ${VERSION}"
91+ echo FIXME git push origin ${BRANCH_TO_RELEASE}
92+
93+ echo ========== tag ==========
94+ git tag -f -a "${TAG_PREFIX}${VERSION}" -m "Release ${TAG_PREFIX}/v${VERSION}"
95+ echo FIXME git push origin "${TAG_PREFIX}${VERSION}" -f
6996 echo "✅ Done."
7097 else
7198 echo "❎ SKIPPED."
7299 fi
73100
74- # if [ "${RESULT}" == "SUCCESS" ]; then
75- # DATE=`date +%Y-%m-%d`
76- # FILE_CHANGELOG="RELEASE-NOTES.md"
77- # FILE_MODULE="module.go"
78- # head -1 ${FILE_CHANGELOG} > .temp.md
79- # echo -e "\n## ${DATE} - v${VERSION}\n\n${RELEASE_NOTES}" >> .temp.md
80- # tail -n +2 ${FILE_CHANGELOG} >> .temp.md
81- # mv -f .temp.md ${FILE_CHANGELOG}
82- # echo ========== content of ${FILE_CHANGELOG} ==========
83- # cat ${FILE_CHANGELOG}
84- #
85- # sed -i -E "s/^(\s*Version\s*=\s*)\"[^\"]+\"/\1\"${VERSION}\"/" ${FILE_MODULE}
86- # echo ========== content of ${FILE_MODULE} ==========
87- # cat ${FILE_MODULE}
88- #
89- # echo ========== update .go files ==========
90- # sed -i -E "s/<<VERSION>>/v${VERSION}/" ./*.go
91- #
92- # echo ========== commit updates ==========
93- # git config --global user.email "<>"
94- # git config --global user.name "CI Build"
95- # git commit -am "Update ${FILE_CHANGELOG} and ${FILE_MODULE} for new version ${VERSION}"
96- # git push origin ${BRANCH_TO_RELEASE}
97- #
98- # echo ========== tag ==========
99- # git tag -f -a "${TAG_PREFIX}${VERSION}" -m "Release ${TAG_PREFIX}/v${VERSION}"
100- # git push origin "${TAG_PREFIX}${VERSION}" -f
101- # echo "✅ Done."
102- # else
103- # echo "❎ SKIPPED."
104- # fi
105-
106- # MergeToMaster:
107- # runs-on: ubuntu-latest
108- # needs: [ 'Release' ]
109- # permissions:
110- # pull-requests: write # to be able to create PRs or comment on released PRs
111- # steps:
112- # - uses: actions/github-script@v7
113- # env:
114- # RESULT: ${{ needs.Release.outputs.RESULT }}
115- # RELEASE_NOTES: ${{ needs.Release.outputs.RELEASE_NOTES }}
116- # with:
117- # script: |
118- # if (process.env['RESULT'] != 'SUCCESS') {
119- # console.log('❎ SKIPPED.');
120- # return;
121- # }
122- # const {data: pr} = await github.rest.pulls.create({
123- # owner: context.repo.owner,
124- # repo: context.repo.repo,
125- # title: "Merge branch semver to master after releasing new version ${{ needs.Release.outputs.VERSION }}",
126- # body: process['env']['RELEASE_NOTES'],
127- # head: process['env']['BRANCH_TO_RELEASE'],
128- # base: 'master',
129- # maintainer_can_modify: true,
130- # });
131- # console.log('✅ Created PR: ', pr);
101+ MergeToMain :
102+ runs-on : ubuntu-latest
103+ needs : [ Release ]
104+ permissions :
105+ pull-requests : write # to be able to create PRs or comment on released PRs
106+ steps :
107+ - uses : actions/github-script@v7
108+ env :
109+ RESULT : ${{ needs.Release.outputs.RESULT }}
110+ RELEASE_NOTES : ${{ needs.Release.outputs.RELEASE_NOTES }}
111+ with :
112+ script : |
113+ if (process.env['RESULT'] != 'SUCCESS') {
114+ console.log('❎ SKIPPED.');
115+ return;
116+ }
117+ const {data: pr} = await github.rest.pulls.create({
118+ owner: context.repo.owner,
119+ repo: context.repo.repo,
120+ title: "Merge branch semver to master after releasing new version ${{ needs.Release.outputs.VERSION }}",
121+ body: process['env']['RELEASE_NOTES'],
122+ head: process['env']['BRANCH_TO_RELEASE'],
123+ base: 'main',
124+ maintainer_can_modify: true,
125+ });
126+ console.log('✅ Created PR: ', pr);
0 commit comments