Skip to content

πŸ”– release: pre-release v0.0.15-dev.0 #1

πŸ”– release: pre-release v0.0.15-dev.0

πŸ”– release: pre-release v0.0.15-dev.0 #1

Workflow file for this run

name: Release
on:
push:
tags:
- 'v*' # Push events to matching v*, i.e. v1.0, v20.15.10
workflow_dispatch:
jobs:
release-build:
runs-on: ubuntu-latest
steps:
- name: Checkout
uses: actions/checkout@v4
- name: Install pnpm
uses: pnpm/action-setup@v4
- name: Setup Node.js
uses: actions/setup-node@v4
with:
node-version: '22'
cache: 'pnpm'
- name: build release distributions
run: |
pnpm package
- name: upload dists
uses: actions/upload-artifact@v4
with:
name: release-dists
path: dist/
- name: Set extension path to output
id: set-extension-path-to-output
run: echo "EXTENSION_PATH=$(pwd)/dist/`pnpm --silent get-extension-name`" >> $GITHUB_ENV
outputs:
extension-path: ${{ steps.set-extension-path-to-output.outputs.extension-path }}
publish-open-vsx:
runs-on: ubuntu-latest
name: Publish to Open VSX Registry
if: ${{ startsWith(github.ref, 'refs/tags/') }}
needs:
- release-build
permissions:
id-token: write
steps:
- name: Retrieve release distributions
uses: actions/download-artifact@v4
with:
name: release-dists
path: dist/
- name: Publish to Open VSX Registry
uses: HaaLeo/publish-vscode-extension@v2
with:
pat: ${{ secrets.OPEN_VSX_TOKEN }}
extensionFile: ${{ needs.release-build.outputs.extension-path }}
publish-vs-marketplace:
runs-on: ubuntu-latest
name: Publish to Visual Studio Marketplace
if: ${{ startsWith(github.ref, 'refs/tags/') }}
needs:
- release-build
permissions:
id-token: write
steps:
- name: Retrieve release distributions
uses: actions/download-artifact@v4
with:
name: release-dists
path: dist/
- name: Publish to Visual Studio Marketplace
uses: HaaLeo/publish-vscode-extension@v2
with:
pat: ${{ secrets.VS_MARKETPLACE_TOKEN }}
registryUrl: https://marketplace.visualstudio.com
extensionFile: ${{ needs.release-build.outputs.extension-path }}
publish-gh-release:
runs-on: ubuntu-latest
name: Publish to GitHub
if: ${{ startsWith(github.ref, 'refs/tags/') }}
needs:
- release-build
permissions:
contents: write
steps:
- uses: actions/download-artifact@v4
with:
name: release-dists
path: dist/
- name: Get tag name
run: echo "RELEASE_VERSION=${GITHUB_REF#refs/*/}" >> $GITHUB_ENV
- name: Publish to GitHub
uses: softprops/action-gh-release@v2
with:
draft: true
files: dist/*
tag_name: ${{ env.RELEASE_VERSION }}