Skip to content
This repository has been archived by the owner on May 25, 2023. It is now read-only.

Releases: prashantvc/extensions

Initial Preview Release

02 May 13:56
9e44a85
Compare
Choose a tag to compare
Pre-release

First Preview Release

This is a first public preview release of Private Extension Repository for VS Code
The repository is lightweight, self contained, cross-platform and you can make it run on your favourite cloud service. It delivers one of the feature requests in the vscode repository

Screenshot 2023-04-25 at 12 43 25

Live demo here

Requirements

The initial release requires you to have dotnet core 7.0 installed on your machine

What's included?

  • This release include only the server and web interface
  • You can host and download VSIX files from the server

How to run the server?

  • Extract the extension-web-0.0.1.zip file
  • Execute ./extensions-web
  • You can supply additional option to the program like url endpoint. E.g: ./extensions-web --urls=http://localhost:5001
  • Use ./extensions-web --urls=http://0.0.0.0:80 to enable access to the server across your network on default HTTP port

How to restrict upload?

The upload functionality is enabled for everyone by default. You can add ApiKey in the appsettings.json to restrict the upload.
For example:

{
    "Logging": {
        "LogLevel": {
            "Default": "Information",
            "Microsoft": "Warning",
            "Microsoft.Hosting.Lifetime": "Information"
        }
    },
    "AllowedHosts": "*",
    "LiteDbOptions": {
        "DatabaseLocation": "ExtensionsDatabase.db"
    },
    "version": "0.0.1",
    "ApiKey": "mysuppersecretkey"
}

Additionally, you can supply ApiKey from the command line ./extensions-web --urls=http://0.0.0.0:80 --ApiKey=mysuppersecretkey

How to upload VSIX if upload is restricted with ApiKey?

You can use the cURL to upload the VSIX to the sever if ApiKey is enabled

curl --location 'http://YOUR-SERVER-URL/extension' \
--header 'x-api-key: mysuppersecretkey' \
--form 'file=@"<VSIX file path>"'

Please contribute, and file an issue if you come across any