/vscodeaction

👩‍💻Uses vsce cli to publish a VScode plugins

Primary LanguageTypeScriptMIT LicenseMIT

👌 VScode action to release a plugin

Affiliate

If you like to support my OSS work you could "buy me a coffee"

Buy Me A Coffee

or want to take a look on tools I recommend you could checkout.

Buy Me A Coffee
Sizzy

A super useful App when developing for different screens

General

This Action tries to release a VScode plugin via the vsce tool.

Make sure to pass a PUBLISHER_TOKEN an explanation on how to register a token can be found here.

You have to create an Azure DevOps organization to publish a VScode extension.

Steps Picture
1. Create an account or sign in into your existing account by going to here 1 Step
2. Go to dev azure portal and create a new organization by clicking New Organizaion 2 Step
3. Click on your profile picture and on the menu item Security 3 Step
4. Create a new token and make sure you have selected All accessible organizations and Custom defined permissions to allow manage the marketplace 4 Step
5. Make sure that you have defined the following information in the package.json
    // package.json
    {
    "name": "your extension name", // ⚠️ make sure to use a unique name
    "displayName": "testExtension",
    "description": "",
    "version": "0.0.1", // ⚠️ you can not release a package twice with the same version
    "repository": "https://github.com/JCofman/vscodeaction",
    "publisher": "YOUR_PUBLISHER_NAME", // ⚠️ be aware that the publisher field must match the logged in vsce publisher...
    }

🔑 Secrets

  • PUBLISHER_TOKEN - Required to publish a release to vscode Marketplace

💻 Examples

Trigger a release

on: push
name: 'Release Vscode Plugin'
jobs:
  npmInstall:
    name: npm install
    runs-on: ubuntu-latest
    steps:
      - uses: actions/checkout@master
      - name: npm install
        uses: actions/npm@master
        with:
          args: install --unsafe-perm
      - name: Master
        uses: actions/bin/filter@master
        with:
          args: branch master
      - name: Vscode release plugin
        uses: JCofman/vscodeaction@master
        env:
          PUBLISHER_TOKEN: ${{ secrets.PUBLISHER_TOKEN }}
        with:
          args: publish -p $PUBLISHER_TOKEN