@@ -10,15 +10,49 @@ permissions:
1010 contents : write
1111
1212jobs :
13- release-linux :
14- name : Release
13+ build-dashboard :
14+ runs-on : ubuntu-latest
15+ steps :
16+ - uses : actions/checkout@v4
17+ with :
18+ fetch-depth : 0
19+ - uses : actions/setup-go@v5
20+ with :
21+ go-version : 1.25.5
22+ - uses : ./.github/actions/build-cli-flags-doc
23+ - uses : ./.github/actions/build-release-notes
24+ - uses : actions/setup-node@v4
25+ with :
26+ node-version : 23
27+ registry-url : ' https://registry.npmjs.org'
28+ - run : npm install
29+ working-directory : ./webui
30+ - name : Install taskfile
31+ run : sh -c "$(curl --location https://taskfile.dev/install.sh)" -- -d -b ~/.local/bin
32+ - name : Build
33+ run : task build-vue-app
34+ env :
35+ CGO_ENABLED : 0
36+ - name : Upload UI artifact
37+ uses : actions/upload-artifact@v4
38+ with :
39+ name : dashboard
40+ path : webui/dist
41+
42+ release-unix :
43+ needs : build-dashboard
1544 runs-on : ubuntu-latest
1645 env :
1746 DOCKER_CLI_EXPERIMENTAL : " enabled"
1847 steps :
1948 - uses : actions/checkout@v4
2049 with :
2150 fetch-depth : 0
51+ - name : Download dashboard
52+ uses : actions/download-artifact@v4
53+ with :
54+ name : dashboard
55+ path : webui/dist
2256 - name : Set up QEMU
2357 uses : docker/setup-qemu-action@v3
2458 - name : Set up Docker Buildx
3165 - uses : actions/setup-go@v5
3266 with :
3367 go-version : 1.25.5
34- - uses : actions/setup-node@v4
35- with :
36- node-version : 23
37- registry-url : ' https://registry.npmjs.org'
38- - run : sh -c "$(curl --location https://taskfile.dev/install.sh)" -- -d -b ~/.local/bin
39- - run : npm install
40- working-directory : ./webui
41- - name : Build
42- run : task build-vue-app
43- env :
44- CGO_ENABLED : 0
4568 - name : Run GoReleaser
4669 uses : goreleaser/goreleaser-action@v6
4770 with :
@@ -50,17 +73,19 @@ jobs:
5073 env :
5174 GITHUB_TOKEN : ${{ secrets.GITHUB_TOKEN }}
5275 TAP_GITHUB_TOKEN : ${{ secrets.TAP_GITHUB_TOKEN }}
53- - name : Publish npm
54- run : task publish-npm-package VERSION=${GITHUB_REF##*/v}
55- env :
56- NODE_AUTH_TOKEN : ${{ secrets.NPM_TOKEN }}
5776
5877 release-windows :
78+ needs : build-dashboard
5979 runs-on : windows-latest
6080 steps :
6181 - uses : actions/checkout@v4
6282 with :
6383 fetch-depth : 0
84+ - name : Download dashboard
85+ uses : actions/download-artifact@v4
86+ with :
87+ name : dashboard
88+ path : webui/dist
6489 - uses : actions/setup-go@v5
6590 with :
6691 go-version : 1.25.5
6994 node-version : 23
7095 registry-url : ' https://registry.npmjs.org'
7196 - run : choco install go-task
72- - run : npm install
73- working-directory : ./webui
74- - name : Build
75- run : task build-vue-app
76- env :
77- CGO_ENABLED : 0
7897 - name : Install goversioninfo
7998 run : go install github.com/josephspurrier/goversioninfo/cmd/goversioninfo@v1.4.0
8099 - name : Generate Windows metadata (.syso)
@@ -107,3 +126,21 @@ jobs:
107126 env :
108127 GITHUB_TOKEN : ${{ secrets.GITHUB_TOKEN }}
109128 CHOCOLATEY_API_KEY : ${{ secrets.CHOCOLATEY_API_KEY }}
129+
130+ release-npm :
131+ needs : build-dashboard
132+ runs-on : ubuntu-latest
133+ steps :
134+ - name : Download dashboard
135+ uses : actions/download-artifact@v4
136+ with :
137+ name : dashboard
138+ path : webui/dist
139+ - name : Install taskfile
140+ run : sh -c "$(curl --location https://taskfile.dev/install.sh)" -- -d -b ~/.local/bin
141+ - name : Build
142+ run : task build-vue-app
143+ env :
144+ CGO_ENABLED : 0
145+ - name : Publish
146+ run : task publish-npm-package VERSION=${GITHUB_REF##*/v}
0 commit comments