Skip to content

Build VS Code Extension #52

Build VS Code Extension

Build VS Code Extension #52

Workflow file for this run

name: Build VS Code Extension
on:
release:
types:
- published
push:
branches:
- main
pull_request:
branches:
- main
workflow_dispatch:
jobs:
package-extension:
runs-on: ubuntu-latest
outputs:
vsixPath: ${{ steps.package_extension.outputs.vsixPath }}
steps:
- uses: actions/checkout@v4
- uses: actions/setup-node@v4
with:
node-version: latest
- run: yarn install --immutable --immutable-cache --check-cache
- name: Package extension
uses: HaaLeo/publish-vscode-extension@v1
id: package_extension
with:
pat: not-a-real-pat
yarn: true
dryRun: true
preRelease: true
packagePath: apps/vscode
- name: Upload extension vsix file as a workflow artifact
uses: actions/upload-artifact@v4
with:
name: quarto-vscode-${{ github.sha }}
path: ${{ steps.package_extension.outputs.vsixPath }}
publish-extension:
runs-on: ubuntu-latest
if: |
github.event_name == 'release' &&
github.repository_owner == 'quarto-dev'
needs:
- package-extension
steps:
- uses: actions/checkout@v4
- uses: actions/setup-node@v4
with:
node-version: latest
- run: yarn install --immutable --immutable-cache --check-cache
- uses: actions/download-artifact@v4
with:
name: quarto-vscode-${{ github.sha }}
- name: Publish to Open VSX Registry
uses: HaaLeo/publish-vscode-extension@v1
with:
pat: ${{ secrets.OPEN_VSX_TOKEN }}
extensionFile: ${{ needs.package_extension.outputs.vsixPath }}
- name: Publish to Visual Studio Marketplace
uses: HaaLeo/publish-vscode-extension@v1
with:
pat: ${{ secrets.VS_MARKETPLACE_TOKEN }}
extensionFile: ${{ needs.package_extension.outputs.vsixPath }}
registryUrl: https://marketplace.visualstudio.com