Skip to content

Commit 98f7924

Browse files
authored
Merge pull request #36 from ryanbas21/fix/vscode-version-semver
refactor(ci): decouple VS Code extension publishing
2 parents 5670faf + d3de900 commit 98f7924

3 files changed

Lines changed: 28 additions & 78 deletions

File tree

.github/workflows/publish-extension.yml

Lines changed: 0 additions & 23 deletions
Original file line numberDiff line numberDiff line change
@@ -102,26 +102,3 @@ jobs:
102102
manifest: packages/devtools-extension/dist/manifest.json
103103
api-key: ${{ secrets.AMO_JWT_ISSUER }}
104104
api-secret: ${{ secrets.AMO_JWT_SECRET }}
105-
106-
publish-vscode:
107-
runs-on: ubuntu-latest
108-
steps:
109-
- uses: actions/checkout@v4
110-
111-
- uses: pnpm/action-setup@v4
112-
113-
- uses: actions/setup-node@v4
114-
with:
115-
node-version: 24
116-
cache: pnpm
117-
118-
- run: pnpm install --frozen-lockfile
119-
120-
- name: Build all packages
121-
run: pnpm build
122-
123-
- name: Publish to VS Code Marketplace
124-
working-directory: packages/vscode-extension
125-
run: pnpm vsce publish --no-dependencies --pat "$VSCE_PAT"
126-
env:
127-
VSCE_PAT: ${{ secrets.VSCE_PAT }}
Lines changed: 28 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,28 @@
1+
name: Publish VS Code Extension
2+
3+
on:
4+
workflow_dispatch:
5+
6+
jobs:
7+
publish:
8+
runs-on: ubuntu-latest
9+
steps:
10+
- uses: actions/checkout@v4
11+
12+
- uses: pnpm/action-setup@v4
13+
14+
- uses: actions/setup-node@v4
15+
with:
16+
node-version: 24
17+
cache: pnpm
18+
19+
- run: pnpm install --frozen-lockfile
20+
21+
- name: Build all packages
22+
run: pnpm build
23+
24+
- name: Publish to VS Code Marketplace
25+
working-directory: packages/vscode-extension
26+
run: pnpm vsce publish --no-dependencies --pat "$VSCE_PAT"
27+
env:
28+
VSCE_PAT: ${{ secrets.VSCE_PAT }}

.github/workflows/release.yml

Lines changed: 0 additions & 55 deletions
Original file line numberDiff line numberDiff line change
@@ -1,11 +1,6 @@
11
name: Release
22
on:
33
workflow_dispatch:
4-
inputs:
5-
extension:
6-
description: Publish Firefox + VS Code extensions (snapshot)
7-
type: boolean
8-
default: true
94
push:
105
branches: [main]
116

@@ -38,62 +33,12 @@ jobs:
3833

3934
- name: Build
4035
run: pnpm build
41-
env:
42-
BUILD_NUMBER: ${{ github.run_number }}
43-
SNAPSHOT: 'true'
4436

4537
- name: Publish npm snapshots
4638
run: pnpm changeset publish --tag snapshot
4739
env:
4840
NPM_CONFIG_PROVENANCE: true
4941

50-
- name: Build Firefox extension
51-
if: inputs.extension
52-
working-directory: packages/devtools-extension
53-
run: node --experimental-strip-types build.mjs --target=firefox
54-
env:
55-
BUILD_NUMBER: ${{ github.run_number }}
56-
SNAPSHOT: 'true'
57-
58-
- name: Zip Firefox extension
59-
if: inputs.extension
60-
working-directory: packages/devtools-extension
61-
run: cd dist && zip -r ../extension-firefox.zip .
62-
63-
- name: Zip source for AMO review
64-
if: inputs.extension
65-
run: zip -r source.zip . -x 'node_modules/*' '*/node_modules/*' '*/dist/*' '.git/*' '*.zip'
66-
67-
- name: Publish Firefox extension (unlisted)
68-
if: inputs.extension
69-
uses: trmcnvn/firefox-addon@0d05671269b82c69c3f22ed86d8e772e89d47cf4 # v1
70-
with:
71-
uuid: oidc-devtool@wolfcola
72-
xpi: packages/devtools-extension/extension-firefox.zip
73-
manifest: packages/devtools-extension/dist/manifest.json
74-
api-key: ${{ secrets.AMO_JWT_ISSUER }}
75-
api-secret: ${{ secrets.AMO_JWT_SECRET }}
76-
77-
- name: Stamp VS Code extension version
78-
if: inputs.extension
79-
working-directory: packages/vscode-extension
80-
env:
81-
BUILD_NUMBER: ${{ github.run_number }}
82-
run: |
83-
node -e "
84-
const fs = require('fs');
85-
const pkg = JSON.parse(fs.readFileSync('package.json', 'utf8'));
86-
pkg.version = pkg.version + '.' + process.env.BUILD_NUMBER;
87-
fs.writeFileSync('package.json', JSON.stringify(pkg, null, 2) + '\n');
88-
"
89-
90-
- name: Publish VS Code extension (pre-release)
91-
if: inputs.extension
92-
working-directory: packages/vscode-extension
93-
run: pnpm vsce publish --no-dependencies --pre-release --pat "$VSCE_PAT"
94-
env:
95-
VSCE_PAT: ${{ secrets.VSCE_PAT }}
96-
9742
release:
9843
if: github.event_name == 'push'
9944
runs-on: ubuntu-latest

0 commit comments

Comments
 (0)