Skip to content

Commit da71fa5

Browse files
authored
ci: add build-cli job to publish 'workflows' binary as release artifact (#222)
1 parent e50fb92 commit da71fa5

1 file changed

Lines changed: 53 additions & 0 deletions

File tree

.github/workflows/release.yml

Lines changed: 53 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -76,6 +76,8 @@ jobs:
7676
release:
7777
needs: test
7878
runs-on: ubuntu-latest
79+
outputs:
80+
new_tag: ${{ steps.version.outputs.new_tag }}
7981
steps:
8082
- name: Generate GitHub App Token
8183
id: generate_token
@@ -179,3 +181,54 @@ jobs:
179181
git status && pnpm publish --access public --no-git-checks
180182
env:
181183
NODE_AUTH_TOKEN: ${{ secrets.NPM_TOKEN }}
184+
185+
build-cli:
186+
needs: release
187+
if: needs.release.outputs.new_tag != ''
188+
runs-on: ubuntu-latest
189+
steps:
190+
- name: Checkout
191+
uses: actions/checkout@v6
192+
193+
- name: Setup pnpm
194+
uses: pnpm/action-setup@v4
195+
with:
196+
version: 9.15.9
197+
198+
- name: Setup Node.js
199+
uses: actions/setup-node@v6
200+
with:
201+
node-version: '22'
202+
cache: 'pnpm'
203+
204+
- name: Install dependencies
205+
run: pnpm install
206+
207+
- name: Build project
208+
run: |
209+
pnpm add @rollup/rollup-linux-x64-gnu --save-dev || echo "Failed to install Rollup platform dependency"
210+
pnpm run build
211+
212+
- name: Setup Go
213+
uses: actions/setup-go@v5
214+
with:
215+
go-version: '1.24'
216+
217+
- name: Install clihub
218+
run: go install github.com/thellimist/clihub@latest
219+
220+
- name: Generate workflows CLI binaries
221+
run: |
222+
export PATH="$(go env GOPATH)/bin:$PATH"
223+
clihub generate \
224+
--stdio "node packages/cli/dist/index.js" \
225+
--name workflows \
226+
--platform linux/amd64,darwin/arm64,darwin/amd64,windows/amd64
227+
228+
- name: Upload binaries to GitHub Release
229+
uses: softprops/action-gh-release@v2
230+
with:
231+
tag_name: ${{ needs.release.outputs.new_tag }}
232+
files: out/**
233+
env:
234+
GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }}

0 commit comments

Comments
 (0)