Skip to content

Commit 39191b0

Browse files
Ship universal VSIX without bundled CLI binary (#2)
# TLDR; Simplify the release pipeline to produce a single universal VSIX that no longer bundles the platform-specific CLI binary. # Details - Remove the platform matrix (osx-arm64, osx-x64, linux-x64, win-x64) from the `build-vsix` job — now builds one universal VSIX - Remove the .NET SDK setup and `dotnet publish` step from VSIX packaging - Exclude the `bin/` directory from the VSIX via `.vscodeignore` - The separate `build-cli` job is unaffected and continues to produce platform-specific CLI artifacts # How do the tests prove the change works Pipeline change — verified by successful CI build and VSIX packaging on push.
1 parent e6359d0 commit 39191b0

2 files changed

Lines changed: 4 additions & 29 deletions

File tree

.github/workflows/release.yml

Lines changed: 3 additions & 28 deletions
Original file line numberDiff line numberDiff line change
@@ -10,39 +10,14 @@ permissions:
1010

1111
jobs:
1212
build-vsix:
13-
strategy:
14-
matrix:
15-
include:
16-
- rid: osx-arm64
17-
target: darwin-arm64
18-
- rid: osx-x64
19-
target: darwin-x64
20-
- rid: linux-x64
21-
target: linux-x64
22-
- rid: win-x64
23-
target: win32-x64
2413
runs-on: ubuntu-latest
2514
steps:
2615
- uses: actions/checkout@v4
2716

28-
- uses: actions/setup-dotnet@v4
29-
with:
30-
dotnet-version: "10.0.x"
31-
3217
- uses: actions/setup-node@v4
3318
with:
3419
node-version: 22
3520

36-
- name: Build CLI (${{ matrix.rid }})
37-
run: |
38-
dotnet publish src/Nap.Cli/Nap.Cli.fsproj \
39-
-r ${{ matrix.rid }} \
40-
--self-contained \
41-
-p:PublishTrimmed=true \
42-
-p:PublishSingleFile=true \
43-
-o src/Nap.VsCode/bin \
44-
--nologo
45-
4621
- name: Install extension dependencies
4722
working-directory: src/Nap.VsCode
4823
run: npm ci
@@ -51,14 +26,14 @@ jobs:
5126
working-directory: src/Nap.VsCode
5227
run: npx webpack --mode production
5328

54-
- name: Package VSIX (${{ matrix.target }})
29+
- name: Package universal VSIX
5530
working-directory: src/Nap.VsCode
56-
run: npx @vscode/vsce package --target ${{ matrix.target }} --no-dependencies --skip-license
31+
run: npx @vscode/vsce package --no-dependencies --skip-license
5732

5833
- name: Upload VSIX
5934
uses: actions/upload-artifact@v4
6035
with:
61-
name: vsix-${{ matrix.target }}
36+
name: vsix
6237
path: src/Nap.VsCode/*.vsix
6338

6439
build-cli:

src/Nap.VsCode/.vscodeignore

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -7,4 +7,4 @@ webpack.config.js
77
**/*.map
88
**/*.pdb
99
!dist/**
10-
!bin/**
10+
bin/**

0 commit comments

Comments
 (0)