Private Extension Manager is a Visual Studio Code extension that lets you find, install, and update extensions from any NPM registry. This lets you distribute organization-specific extensions using a private registry server such as Sonatype Nexus or Verdaccio.
The extension
folder contains the main extension.
See its README for more details.
The remote-helper
folder contains a helper extension that lets the main
extension work properly when in a remote workspace.
Contributions are welcome! Fork this repository, then see below for instructions on building and testing the extension. Submit a pull request with the change and we will review it.
See the VS Code extension documentation for general information on developing extensions.
- Clone the repository and open the
private-extension-manager.code-workspace
workspace in VS Code. - When prompted, install all the recommended extensions. If no prompt appears,
press
Ctrl+Shift+P
and run theExtensions: Show Recommended Extensions
command, then install the extensions under the Workspace Recommendations section. - Press
Ctrl+Shift+P
and run theTerminal: Create New Integrated Terminal
command. Select theextension
folder. - Run the following command in the terminal to install all dependencies:
npm install
- Repeat steps 3-4 for the
remote-helper
folder.
Open the Debug panel (Ctrl+Shift+D
) and select the debug configuration to run:
- Run Extension (extension): build the main extension and run it in an experimental instance of VS Code.
- Extension Tests (extension): run unit tests for the main extension.
- Run Extension (remote-helper): build the remote helper extension and run it in an experimental instance of VS Code.
- Extension Tests (remote-helper): run unit tests for the remote helper extension.
Press F5
or click the green triangle button to start debugging.
To debug Private Extension Manager when using a remote extension such as Remote - SSH, open a VS Code window to the remote machine, then perform the setup as described above. When you start debugging the extension, this will open another remote window with the debug extension loaded.