A GitHub Action to automatically publish VS Code extensions to the Open VSX Registry and Visual Studio Marketplace.
Publish VS Code Extension is a GitHub Action that automates the process of publishing Visual Studio Code extensions to public registries like Open VSX and the Visual Studio Marketplace. It handles packaging, authentication, and upload steps within CI/CD pipelines, eliminating manual publishing efforts.
VS Code extension developers who use GitHub for version control and want to automate their extension release process through GitHub Actions workflows.
Developers choose this action because it provides a reliable, officially-aligned method for dual-registry publishing, reduces human error, and integrates seamlessly into existing GitHub workflows with extensive configuration options.
GitHub action to publish your VS Code Extension to the Open VSX Registry or Visual Studio Marketplace.
Open-Awesome is built by the community, for the community. Submit a project, suggest an awesome list, or help improve the catalog on GitHub.
Publishes to both Open VSX and Visual Studio Marketplace from a single action, as shown in the example workflows for efficient multi-registry deployment.
Allows publishing from source code or pre-built .vsix files using parameters like packagePath and extensionFile, accommodating diverse project setups.
Includes options for pre-release flags, architecture targeting, dry-run simulations, and duplicate version skipping, detailed in the input parameters table.
Designed specifically for GitHub Actions with outputs like vsixPath for chaining steps, as demonstrated in the workflow examples for reuse.
Requires users to manually create a namespace on Open VSX before publishing, adding an extra step outside the automation, as noted in the documentation.
Primarily supports npm and yarn; for pnpm or yarn PnP, dependency checks must be disabled via the dependencies parameter, which is a workaround rather than native support.
Future releases will reject unlicensed extensions, forcing developers to update projects with licenses to avoid workflow failures, as warned in the README.