1+ name : Create Github Release
2+ on :
3+ push :
4+ tags : [ "*" ]
5+ env :
6+ CARGO_TERM_COLOR : always
7+ jobs :
8+ empty-release :
9+ runs-on : ubuntu-20.04
10+ outputs :
11+ upload_url : ${{ steps.create_release.outputs.upload_url }}
12+ steps :
13+ - name : Get tag
14+ run : echo "VERSION=${GITHUB_REF/refs\/tags\//}" >> $GITHUB_ENV
15+ - name : Create Release
16+ id : create_release
17+ uses : actions/create-release@v1
18+ env :
19+ GITHUB_TOKEN : ${{ secrets.GITHUB_TOKEN }}
20+ with :
21+ tag_name : $VERSION
22+ release_name : Release $VERSION
23+ draft : false
24+ prerelease : false
25+ release-server :
26+ runs-on : ${{ matrix.platforms.os }}
27+ defaults :
28+ run :
29+ working-directory : server
30+ needs : empty-release
31+ strategy :
32+ matrix :
33+ platforms :
34+ - os : ubuntu-20.04
35+ target : x86_64-unknown-linux-gnu
36+ - os : windows-latest
37+ target : x86_64-windows-msvc
38+ - os : macos-10.15
39+ target : x86_64-apple-darwin
40+ steps :
41+ - uses : actions/checkout@v2
42+ - name : Build server
43+ run : cargo build --release
44+ - name : Upload release file
45+ uses : actions/upload-release-asset@v1
46+ env :
47+ GITHUB_TOKEN : ${{ secrets.GITHUB_TOKEN }}
48+ with :
49+ upload_url : ${{ steps.create_release.outputs.upload_url }}
50+ asset_path : target/release/mcshader-lsp
51+ asset_name : mcshader-lsp-${{ matrix.platforms.target }}
52+ asset_content_type : application/octet-stream
53+ release-vscode-extension :
54+ runs-on : ubuntu-20.04
55+ needs : empty-release
56+ steps :
57+ - uses : actions/checkout@v2
58+ - run : npm i
59+ - run : npm i -g rollup
60+ - uses : HaaLeo/publish-vscode-extension@v0
61+ id : vsce_release
62+ with :
63+ pat : ${{ secrets.VSCE_TOKEN }}
64+ registryUrl : https://marketplace.visualstudio.com
65+ - name : Upload VSIX file
66+ uses : actions/upload-release-asset@v1
67+ env :
68+ GITHUB_TOKEN : ${{ secrets.GITHUB_TOKEN }}
69+ with :
70+ upload_url : ${{ needs.empty-release.outputs.upload_url }}
71+ asset_path : ${{ steps.vsce_release.outputs.vsixPath }}
72+ asset_name : vscode-mc-shader.vsix
73+ asset_content_type : application/vsix
0 commit comments