The Visual Studio Code Extension Manager
- Node.js at least
14.x.x
Or simply Docker.
In order to save credentials safely, this project uses keytar which uses libsecret
, which you may need to install before publishing extensions. Setting the VSCE_STORE=file
environment variable will revert back to the file credential store. Using the VSCE_PAT
environment variable will also avoid using keytar.
Depending on your distribution, you will need to run the following command:
- Debian/Ubuntu:
sudo apt-get install libsecret-1-dev
- Alpine:
apk add libsecret
- Red Hat-based:
sudo yum install libsecret-devel
- Arch Linux:
sudo pacman -S libsecret
Install vsce globally:
npm install -g vsce
Verify the installation:
vsce --version
vsce
is meant to be mainly used as a command line tool. It can also be used a library since it exposes a small API. When using vsce as a library be sure to sanitize any user input used in API calls, as a security measurement.
You can also build a container for running vsce:
git clone https://github.com/microsoft/vscode-vsce
cd vscode-vsce
docker build -t vsce .
Validate the container:
docker run -it vsce --version
Publish your local extension:
docker run -it -v $(pwd):/workspace vsce publish
First clone this repository, then:
npm i
npm run watch:build # or `watch:test` to also build tests
Once the watcher is up and running, you can run out of sources with:
node vsce
This project uses semantic-release and commit messages must follow the Conventional Commits spec. This allows us to effortlessly automate releases.
This tool assists in packaging and publishing Visual Studio Code extensions.
Read the Documentation on the VS Code website.