Ecosyste.ms: Awesome
An open API service indexing awesome lists of open source software.
https://github.com/madskristensen/PrivateGalleryCreator
Create private extension galleries for Visual Studio
https://github.com/madskristensen/PrivateGalleryCreator
atom-feed gallery marketplace visual-studio vsix
Last synced: 5 days ago
JSON representation
Create private extension galleries for Visual Studio
- Host: GitHub
- URL: https://github.com/madskristensen/PrivateGalleryCreator
- Owner: madskristensen
- License: other
- Created: 2017-12-07T22:38:46.000Z (almost 7 years ago)
- Default Branch: master
- Last Pushed: 2024-10-31T16:47:33.000Z (11 days ago)
- Last Synced: 2024-10-31T17:32:00.283Z (11 days ago)
- Topics: atom-feed, gallery, marketplace, visual-studio, vsix
- Language: C#
- Homepage:
- Size: 86.9 KB
- Stars: 119
- Watchers: 8
- Forks: 40
- Open Issues: 13
-
Metadata Files:
- Readme: README.md
- License: LICENSE
Awesome Lists containing this project
README
# Create VSIX private gallery ATOM feed
[![Build status](https://ci.appveyor.com/api/projects/status/o9t6axyr7n989v75?svg=true)](https://ci.appveyor.com/project/madskristensen/privategallerycreator)
Download from [releases](https://github.com/madskristensen/PrivateGalleryCreator/releases)
-----------------------------
This project creates a [private extension gallery](https://learn.microsoft.com/en-us/visualstudio/extensibility/private-galleries) that can be consumed by Visual Studio to side-load extensions that are not on the official marketplace.
You may want to use this to provide a marketplace of private extensions for testing purposes or for extensions that are for internal use only.
This project is a simple .exe file that will generate a valid ATOM file from a directory of .vsix files.
## Getting started
Place all the VSIX files you want to include in the private gallery in the same folder. Then download and add the [PrivateGalleryCreator.exe](https://ci.appveyor.com/project/madskristensen/privategallerycreator/build/artifacts) file and place in the same folder. It should look similar to this:![Filesystem](art/filesystem.png)
Now double-click the *PrivateGalleryCreator.exe* to generate the ATOM feed. It will parse the .vsix files for the information needed and extract the icon files. Your folder should now look like this:
![Filesytem After](art/filesytem-after.png)
You may not see the *Icons* folder if you don't have any icons registered in the VSIX files or if Windows Explorer doesn't show hidden files and folders. So, don't worry if you don't see it. The ATOM feed will still work.
You can now add the gallery to Visual Studio to have the extensions automatically show up.
![Options](art/options.png)
The **URL** should be the absolute path to the *feed.xml* file. The path can be a network share (e.g. \\\\mycompany\extensions\feed.xml).
Going to **Tools -> Extensions and Updates...** will now show the private gallery under the **Online** tab:
![Extensions dialog](art/extension-dialog.png)
## Watch option
You can make the app watch for changes to any .vsix files in the directory and automatically generate a new *feed.xml* file. To do that, call the exe with the `--watch` (`-w`) parameter like so:```cmd
PrivateGalleryCreator.exe -w
```The console app will not shut down but continously watch the directory for any new, updated or deleted .vsix files. To stop watching, either close the console or hit *Ctrl+C* to cancel out.
## Name option
If you would like a custom gallery name (instead of "VSIX Gallery") you can use the --name option:```cmd
PrivateGalleryCreator.exe --name="My gallery name"
```## Output option
If you would like to have the output redirected (instead of the current directory) you can use the --output option:```cmd
PrivateGalleryCreator.exe --output=c:\your\path\yourfeed.xml
```## Input option
If you would like to have the input directory set custom (instead of the current directory) you can use the --input option:```cmd
PrivateGalleryCreator.exe --input=c:\your\input\path
```## Recursive option
If you would like to have the all directories parsed for packages (instead of the current directory) you can use the --recursive option:```cmd
PrivateGalleryCreator.exe --recursive
```## Exclude option
If you would like to have the particular folders, filenames skipped (instead of the using all packages found) you can use the --exclude option:```cmd
PrivateGalleryCreator.exe --exclude=dontwantthis
```## Source option
By default, the download source path used in the gallery will be the location where the .vsix files reside when running the PrivateGalleryCreator. If you intend to move the .vsix files after creating the feed, you can specify the intended download source path with the --source option:```cmd
PrivateGalleryCreator.exe --source=c:\your\vsix\repository\
```## Terminate option
If you would like the application to exit immediately after processing VSIX files, use the --terminate option:```cmd
PrivateGalleryCreator.exe --terminate
```## Latest only option
By default, any duplicate packages that are found will be processed, resulting in multiple versions of the same package in the feed. If you have a folder structure that retains previous versions of the packages, use the --latest-only option:```cmd
PrivateGalleryCreator.exe --latest-only
```## Good to know
* Run the *PrivateGalleryCreator.exe* every time you add or update a .vsix in the directory
* Visual Studio will by default auto-update extensions - including the ones from private galleries.
* The feed support extensions for Visual Studio 2010 and newer
* Use an extension to create the private gallery. See [example extension here](https://github.com/madskristensen/VsixGalleryExtension/blob/master/src/feed.pkgdef).## License
[Apache 2.0](LICENSE)