name: Publish to the Marketplace and Open VSX on: workflow_dispatch: inputs: publish_openvsx: description: 'Publish to Open VSX' type: boolean required: true default: true publish_marketplace: description: 'Publish to Marketplace' type: boolean required: true default: true release: types: [created] jobs: publish: name: Publish runs-on: ubuntu-latest steps: - name: Checkout uses: actions/checkout@v4 with: ref: main - name: Use Node.js 20.x uses: actions/setup-node@v4 with: node-version: 20.x registry-url: 'https://registry.npmjs.org' - name: Install NPM Dependencies run: | npm install npm install -g vsce ovsx - name: Publish to Open VSX if: github.event_name == 'release' || inputs.publish_openvsx == true run: npx ovsx publish -p ${{ secrets.OPEN_VSX_TOKEN }} - name: Publish to Marketplace if: github.event_name == 'release' || inputs.publish_marketplace == true run: vsce publish -p ${{ secrets.VS_MARKETPLACE_TOKEN }}