Skip to content

Build and Publish

Build and Publish #9

Workflow file for this run

name: Build and Publish
run-name: Build and Publish
on:
push:
jobs:
Build-Extension:
runs-on: ubuntu-latest
steps:
- uses: actions/checkout@v4
- uses: actions/setup-node@v4
with:
node-version: 18
- run: cd ${{ github.workspace }}
- run: ls -lash
- name: Install Deps
run: npm install
- name: Install VSCE
run: npm i -g vsce
- name: Package Extension
run: vsce package
- name: Archive Build Artifacts
uses: actions/upload-artifact@v3
with:
path: |
*.vsix
Publish-Extension:
runs-on: ubuntu-latest
needs: Build-Extension
if: github.ref == 'refs/heads/main'
steps:
- uses: actions/checkout@v4
- uses: actions/setup-node@v4
with:
node-version: 18
- run: cd ${{ github.workspace }}
- run: ls -lash
- name: Install Deps
run: npm install
- name: Install VSCE
run: npm i -g vsce
- name: Package Extension
run: vsce package
- name: Archive Build Artifacts
uses: actions/upload-artifact@v3
with:
path: |
*.vsix
- name: Publish
run: vsce publish
env:
VSCE_PAT: ${{ secrets.VSCE_PAT }}
- name: Create Release
id: create_release
uses: actions/create-release@v1
env:
GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }} # This token is provided by Actions, you do not need to create your own token
with:
tag_name: ${{ github.ref }}
release_name: Release ${{ github.ref }}
draft: false
prerelease: false