File tree Expand file tree Collapse file tree 6 files changed +1381
-74
lines changed Expand file tree Collapse file tree 6 files changed +1381
-74
lines changed Original file line number Diff line number Diff line change 1+ #! /usr/bin/env bash
2+ set -euo pipefail
3+
4+ # We don't want the `tip` tag to affect our changelog, and also don't want it to be used for the nighly version
5+ git tag -d tip & > /dev/null || :
6+
7+ # PUSHING A TAG TRIGGERS A VERSIONED RELEASE, ANY OTHER PUSH TRIGGERS A NIGHTLY
8+ REF=$( echo " $GITHUB " | jq -r ' .ref' )
9+ VERSION=$( echo " ${REF# refs/ tags/ } " )
10+
11+ # export some data
12+ set-env () {
13+ echo " ::set-env name=$1 ::$2 "
14+ export $1 =" $2 "
15+ }
16+
17+ set-env " VERSION" " $VERSION "
Original file line number Diff line number Diff line change 1+ #! /usr/bin/env bash
2+ set -euo pipefail
3+
4+ echo " PATH: $( dirname $( realpath $0 ) ) "
5+
6+ : " ${ESCAPE:= ${GITHUB_ACTIONS:- false} } "
7+
8+ # generate release notes
9+ CHANGELOG=" $( npm run --silent ci:changelog) "
10+
11+ # escape newlines for github actions
12+ if [ " $ESCAPE " != false ]; then
13+ echo " escape it"
14+ CHANGELOG=" ${CHANGELOG// ' %' / ' %25' } "
15+ CHANGELOG=" ${CHANGELOG// $' \n ' / ' %0A' } "
16+ CHANGELOG=" ${CHANGELOG// $' \r ' / ' %0D' } "
17+ fi
18+
19+ # export some data
20+ echo " ::set-output name=changelog::$CHANGELOG "
Original file line number Diff line number Diff line change 1+ name : Release
2+
3+ on :
4+ push :
5+ tags :
6+ - ' v*'
7+
8+ env :
9+ APP_NAME : Testing Playground
10+ NODE_VERSION : " 12.x"
11+
12+ jobs :
13+ create-release :
14+ name : Create Release Notes
15+ runs-on : ubuntu-latest
16+ timeout-minutes : 15
17+ steps :
18+ - name : Checkout
19+ uses : actions/checkout@v2
20+ with :
21+ fetch-depth : 0
22+
23+ - name : Fetch all tags
24+ run : git fetch origin +refs/tags/*:refs/tags/*
25+
26+ - uses : actions/setup-node@v1
27+ with :
28+ node-version : " ${{ env.NODE_VERSION }}"
29+
30+ - name : Cache node modules
31+ id : cache
32+ uses : actions/cache@v1
33+ with :
34+ path : node_modules
35+ key : ${{ runner.os }}-node_modules-${{ hashFiles('**/package-lock.json') }}
36+
37+ - name : Install Dependencies
38+ if : steps.cache.outputs.cache-hit != 'true'
39+ run : npm ci
40+ - name : Setup Env
41+ run : |
42+ find .github/scripts -type f -iname "*.sh" -exec chmod +x {} \;
43+ .github/scripts/env.sh
44+ env :
45+ GITHUB : ${{ toJson(github) }}
46+
47+ - name : Create Release Notes
48+ id : release_notes
49+ run : .github/scripts/release-notes.sh
50+
51+ - name : Create Release
52+ id : create_release
53+ uses : actions/create-release@v1
54+ with :
55+ tag_name : ${{ github.ref }}
56+ release_name : ${{ env.APP_NAME }} ${{ env.VERSION }}
57+ body : ${{ steps.release_notes.outputs.changelog }}
58+ env :
59+ GITHUB_TOKEN : ${{ secrets.GITHUB_TOKEN }}
You can’t perform that action at this time.
0 commit comments