Skip to content

Publish Extension

Publish Extension #23

name: Publish Extension
on:
push:
branches:
- main
workflow_dispatch:
jobs:
build-and-test:
uses: ./.github/workflows/build-and-test.yml
secrets: inherit
publish-to-marketplace:
needs: build-and-test
runs-on: ubuntu-latest
env:
EXTENSION_VERSION: ${{ needs.build-and-test.outputs.extVersion }}
steps:
- name: Checkout code
uses: actions/checkout@v4
with:
show-progress: false
sparse-checkout: |
DocGpt.Vsix/publishmanifest.json
- name: Download artifact
uses: actions/download-artifact@v4
with:
name: DocGPT-signed.vsix
path: ./o
- name: Publish to marketplace
uses: cezarypiatek/VsixPublisherAction@1.1
with:
extension-file: ./o/DocGPT.vsix
publish-manifest-file: ./DocGpt.Vsix/publishmanifest.json
personal-access-code: ${{ secrets.MARKETPLACE_PAT }}
publish-gh-release:
needs: build-and-test
runs-on: ubuntu-latest
permissions: write-all
env:
EXTENSION_VERSION: ${{ needs.build-and-test.outputs.extVersion }}
steps:
- name: Download artifact
uses: actions/download-artifact@v4
with:
name: DocGPT-signed.vsix
path: ./o
- name: Create Release
run: |
gh release create --target "${{ github.sha }}" \
--title "v${{ env.EXTENSION_VERSION }}" \
--generate-notes
--draft
- name: Upload Release Asset
run: |
gh release upload "v${{ env.EXTENSION_VERSION }}" \
--file ./o/DocGPT.vsix#Installer \
--clobber