1- name : Releases
2-
1+ name : Release
32on :
43 push :
5- branches : [main]
6-
4+ branches :
5+ - [main]
76jobs :
87 build :
8+ name : Build and upload
99 runs-on : ubuntu-latest
1010 steps :
11- - uses : actions/checkout@v2
12- - uses : actions/setup-node@v1
11+ - name : Checkout
12+ 1313 with :
14- node-version : " 16.x"
15- - run : npm install
16-
17- - name : get-npm-version
18- id : package-version
19- uses : martinbeentjes/npm-get-version-action@master
20- - name : install npm packall
21- run : npm install npm-pack-all
14+ fetch-depth : 0
15+ - name : Setup Node.js
16+ 17+ with :
18+ node-version : ' 18.x'
19+ - name : Install dependencies
20+ run : npm install
21+ - name : Build
22+ run : npm run prepack
23+ - name : Upload dist
24+ 25+ with :
26+ name : lib
27+ path : lib
2228
23- - run : node node_modules/.bin/npm-pack-all
24- - uses : Klemensas/action-autotag@stable
25- id : update_tag
29+ release :
30+ name : Download dist and release
31+ runs-on : ubuntu-latest
32+ needs : build
33+ steps :
34+ - name : Checkout
35+ 2636 with :
27- GITHUB_TOKEN : " ${{ secrets.GITHUB_TOKEN }}"
28- tag_prefix : " v"
29- - name : Create Release
30- if : steps.update_tag.outputs.tagname
31- uses : actions/create-release@v1
32- id : create_release
33- env :
34- GITHUB_TOKEN : ${{ secrets.GITHUB_TOKEN }} # This token is provided by Actions, you do not need to create your own token
37+ fetch-depth : 0
38+ - name : Setup Node.js
39+ 40+ with :
41+ node-version : ' 18.x'
42+ - name : Install dependencies
43+ run : npm install
44+ - name : Download dist
45+ uses : actions/download-artifact@v3
3546 with :
36- tag_name : ${{ steps.update_tag.outputs.tagname }}
37- release_name : Release ${{ steps.update_tag.outputs.tagname }}
38- draft : false # Default value, but nice to set explicitly
39- prerelease : false # Default value, but nice to set explicitly
40- - name : Upload Release Asset
41- if : steps.update_tag.outputs.tagname
42- id : upload-release-asset
43- uses : actions/upload-release-asset@v1
47+ name : lib
48+ path : lib
49+ - name : Display dirs
50+ run : ls -R
51+ - name : Release
52+ id : release-plugin
53+ uses :
JS-DevTools/[email protected] 54+ with :
55+ token : ${{ secrets.NPM_TOKEN }}
56+ - name : github-release
57+ id : github-release
4458 env :
4559 GITHUB_TOKEN : ${{ secrets.GITHUB_TOKEN }}
46- with :
47- upload_url : ${{ steps.create_release.outputs.upload_url }} # This pulls from the CREATE RELEASE step above, referencing its ID to get its outputs object, which include a `upload_url`. See this blog post for more info: https://jasonet.co/posts/new-features-of-github-actions/#passing-data-to-future-steps
48- asset_path : ./contentstack-cli-cm-regex-validate-${{ steps.package-version.outputs.current-version }}.tgz
49- asset_name : contentstack-cli-cm-regex-validate-${{ steps.package-version.outputs.current-version }}.tgz
50- asset_content_type : application/tgz
60+ run : gh release create v${{ steps.release-plugin.outputs.version }} --title "Release ${{ steps.release-plugin.outputs.version }}" --generate-notes
0 commit comments