Skip to content

Commit 85063c2

Browse files
authored
ci: add action to publish pre-releases (#165)
1 parent 40421f0 commit 85063c2

File tree

1 file changed

+59
-0
lines changed

1 file changed

+59
-0
lines changed

.github/workflows/prerelease.yml

+59
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,59 @@
1+
name: Pre-release VSIX
2+
3+
on:
4+
workflow_dispatch:
5+
inputs:
6+
version:
7+
description: 'Version to release'
8+
required: true
9+
10+
jobs:
11+
publish-vsix:
12+
runs-on: ubuntu-latest
13+
14+
steps:
15+
- uses: actions/checkout@v3
16+
with:
17+
token: ${{ secrets.SOURCERY_RELEASE_TOKEN }}
18+
19+
- uses: actions/setup-node@v3
20+
with:
21+
node-version: '14'
22+
23+
- run: yarn install --frozen-lockfile
24+
25+
- name: Update binaries
26+
run: |
27+
./download-binaries.sh ${{ github.event.inputs.version }}
28+
29+
- name: Update version number
30+
run: yarn run bump ${{ github.event.inputs.version }}
31+
32+
- name: Package VSCode extension
33+
run: yarn run vsce package
34+
35+
- name: Upload archive
36+
uses: actions/upload-artifact@v3
37+
with:
38+
path: sourcery-${{ github.event.inputs.version }}.vsix
39+
40+
- name: Create release
41+
uses: ncipollo/release-action@v1
42+
with:
43+
tag: v${{ github.event.inputs.version }}
44+
name: Sourcery ${{ github.event.inputs.version }}
45+
body: v${{ github.event.inputs.version }}
46+
prerelease: true
47+
artifacts: sourcery-${{ github.event.inputs.version }}.vsix
48+
artifactContentType: raw
49+
artifactErrorsFailBuild: true
50+
token: ${{ secrets.SOURCERY_RELEASE_TOKEN }}
51+
52+
- name: Notify Slack
53+
uses: 8398a7/action-slack@v3
54+
with:
55+
status: ${{ job.status }}
56+
text: Publish VS Code extension pre-release v${{ github.event.inputs.version }} - ${{ job.status }}
57+
env:
58+
SLACK_WEBHOOK_URL: ${{ secrets.SLACK_RELEASES_WEBHOOK_URL }}
59+
if: always()

0 commit comments

Comments
 (0)