Skip to content

Commit 0e34f4d

Browse files
committed
Construct package name from version and pre-release flag in publish-extension.yaml
1 parent 90fc804 commit 0e34f4d

File tree

4 files changed

+35
-20
lines changed

4 files changed

+35
-20
lines changed

.github/workflows/ci.yaml

Lines changed: 3 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,4 +1,4 @@
1-
name: ci
1+
name: CI
22

33
on:
44
push:
@@ -11,6 +11,7 @@ on:
1111

1212
jobs:
1313
lint:
14+
name: Lint
1415
runs-on: ubuntu-22.04
1516

1617
steps:
@@ -29,6 +30,7 @@ jobs:
2930
- run: yarn build
3031

3132
test:
33+
name: Test
3234
runs-on: ubuntu-22.04
3335

3436
steps:

.github/workflows/pre-release.yaml

Lines changed: 0 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -14,7 +14,6 @@ jobs:
1414
name: Package
1515
runs-on: ubuntu-22.04
1616
outputs:
17-
packageName: ${{ steps.setup.outputs.packageName }}
1817
version: ${{ steps.version.outputs.version }}
1918
steps:
2019
- uses: actions/checkout@v5
@@ -73,7 +72,6 @@ jobs:
7372
uses: ./.github/workflows/publish-extension.yaml
7473
with:
7574
version: ${{ needs.package.outputs.version }}
76-
packageName: ${{ needs.package.outputs.packageName }}
7775
isPreRelease: true
7876
secrets:
7977
VSCE_PAT: ${{ secrets.VSCE_PAT }}

.github/workflows/publish-extension.yaml

Lines changed: 32 additions & 15 deletions
Original file line numberDiff line numberDiff line change
@@ -7,10 +7,6 @@ on:
77
required: true
88
type: string
99
description: "Version to publish"
10-
packageName:
11-
required: true
12-
type: string
13-
description: "Package filename"
1410
isPreRelease:
1511
required: false
1612
type: boolean
@@ -23,12 +19,35 @@ on:
2319
required: true
2420

2521
jobs:
26-
publishMS:
27-
name: Publish to VS Marketplace
22+
setup:
23+
name: Setup Package Name
2824
runs-on: ubuntu-22.04
25+
outputs:
26+
packageName: ${{ steps.package.outputs.packageName }}
2927
steps:
3028
- uses: actions/checkout@v5
3129

30+
- uses: actions/setup-node@v5
31+
with:
32+
node-version: "22"
33+
34+
- name: Construct package name
35+
id: package
36+
run: |
37+
EXTENSION_NAME=$(node -e "console.log(require('./package.json').name)")
38+
if [ "${{ inputs.isPreRelease }}" = "true" ]; then
39+
PACKAGE_NAME="${EXTENSION_NAME}-${{ inputs.version }}-pre.vsix"
40+
else
41+
PACKAGE_NAME="${EXTENSION_NAME}-${{ inputs.version }}.vsix"
42+
fi
43+
echo "packageName=$PACKAGE_NAME" >> $GITHUB_OUTPUT
44+
echo "Package name: $PACKAGE_NAME"
45+
46+
publishMS:
47+
name: Publish to VS Marketplace
48+
needs: setup
49+
runs-on: ubuntu-22.04
50+
steps:
3251
- uses: actions/setup-node@v5
3352
with:
3453
node-version: "22"
@@ -44,17 +63,16 @@ jobs:
4463
run: |
4564
echo "Publishing version ${{ inputs.version }} to VS Marketplace"
4665
if [ "${{ inputs.isPreRelease }}" = "true" ]; then
47-
vsce publish --pre-release --packagePath "./${{ inputs.packageName }}" -p ${{ secrets.VSCE_PAT }}
66+
vsce publish --pre-release --packagePath "./${{ needs.setup.outputs.packageName }}" -p ${{ secrets.VSCE_PAT }}
4867
else
49-
vsce publish --packagePath "./${{ inputs.packageName }}" -p ${{ secrets.VSCE_PAT }}
68+
vsce publish --packagePath "./${{ needs.setup.outputs.packageName }}" -p ${{ secrets.VSCE_PAT }}
5069
fi
5170
5271
publishOVSX:
5372
name: Publish to Open VSX
73+
needs: setup
5474
runs-on: ubuntu-22.04
5575
steps:
56-
- uses: actions/checkout@v5
57-
5876
- uses: actions/setup-node@v5
5977
with:
6078
node-version: "22"
@@ -70,19 +88,18 @@ jobs:
7088
run: |
7189
echo "Publishing version ${{ inputs.version }} to Open VSX"
7290
if [ "${{ inputs.isPreRelease }}" = "true" ]; then
73-
ovsx publish "./${{ inputs.packageName }}" --pre-release -p ${{ secrets.OVSX_PAT }}
91+
ovsx publish "./${{ needs.setup.outputs.packageName }}" --pre-release -p ${{ secrets.OVSX_PAT }}
7492
else
75-
ovsx publish "./${{ inputs.packageName }}" -p ${{ secrets.OVSX_PAT }}
93+
ovsx publish "./${{ needs.setup.outputs.packageName }}" -p ${{ secrets.OVSX_PAT }}
7694
fi
7795
7896
publishGH:
7997
name: Create GitHub ${{ inputs.isPreRelease && 'Pre-' || '' }}Release
98+
needs: setup
8099
runs-on: ubuntu-22.04
81100
permissions:
82101
contents: write
83102
steps:
84-
- uses: actions/checkout@v5
85-
86103
- uses: actions/download-artifact@v5
87104
with:
88105
name: extension-${{ inputs.version }}
@@ -94,4 +111,4 @@ jobs:
94111
prerelease: ${{ inputs.isPreRelease }}
95112
draft: true
96113
title: "${{ inputs.isPreRelease && 'Pre-' || '' }}Release v${{ inputs.version }}"
97-
files: ${{ inputs.packageName }}
114+
files: ${{ needs.setup.outputs.packageName }}

.github/workflows/release.yaml

Lines changed: 0 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -15,7 +15,6 @@ jobs:
1515
name: Package
1616
runs-on: ubuntu-22.04
1717
outputs:
18-
packageName: ${{ steps.setup.outputs.packageName }}
1918
version: ${{ steps.version.outputs.version }}
2019
steps:
2120
- uses: actions/checkout@v5
@@ -73,7 +72,6 @@ jobs:
7372
uses: ./.github/workflows/publish-extension.yaml
7473
with:
7574
version: ${{ needs.package.outputs.version }}
76-
packageName: ${{ needs.package.outputs.packageName }}
7775
isPreRelease: false
7876
secrets:
7977
VSCE_PAT: ${{ secrets.VSCE_PAT }}

0 commit comments

Comments
 (0)