Upgrading from ProGet v2 and v3

KB#1153: Last Updated Jan 10, 2018

ProGet v2 is retired and v3 is semi-retired. We will only provide very limited product support for v3, but we will no longer ship any maintenance releases, patches, or other changes (including for security vulnerabilities). This means you should upgrade as soon as possible.

Most of the releases in v2 and v3 were additive and had minimal upgrade risk, and this document aggregates noteworthy upgrade notes from the older versions.

Upgrade directly to the latest v5 of ProGet. This is the simplest and least risky option.

Manual Migration Option

Instead of migrating, you could always do a “manual” migration. This isn’t necessary, but this might be an opportunity for a “fresh start” and reorganizing your feeds.

The manual migration route involves setting up a separate instance of ProGet, creating a new set of feeds/users/permissions, and then using the drop path functionality to import packages by copying them from the package store of the old instance to the drop path of the new feed. Do not point directly to the feed package store.

The disadvantage this approach, in addition to being more time consuming and a more of a hassle, is that this will import both local and cached packages. As such, you could clear the feed cache before doing the migration.

Upgrading from 3.3 and Earlier: Legacy NuGet Feeds

ProGet 3.3 introduced a new, more efficient method for storing NuGet packages. After upgrading, you will need to migrate your existing feeds to the new format.

Step 1: Create Feed Packages

Copy all of the feed packages to a new directory that the ProGet Service has read/write/delete access to.

Step 2: Create a New Feed

Create a new NuGet/Chocolatey feed and set the Bulk Import Drop Path to the path of the directory containing the copied package files from step 1.

Step 3: Wait

The packages should start being imported from the copied directory shortly after you click Save. After each package has been imported, it will be deleted from the drop path. When the directory is empty, move on to the next step.

Step 4: Verify

Browse the new feed in ProGet and make sure that all of the packages are there and everything looks correct.

Step 5: Remove and Replace Old Feed

Delete the old feed, and rename the new feed to the old feed's name. Consumers should now be able to access the packages.

Upgrading to v5

Prior to upgrading to v5, make sure to review the upgrade notes for 4.0 and 5.0; those have additonal considers that my impact you.

After backing up, you can simply download and run the latest v5 installer.

In ProGet 3.8, the project-based ProGet Deploy feeds were converted to regular NuGet feeds, and all related deployment history, powershell scripts, servers configurations, etc. were removed. No one really used this feature, anyways, so it almost certainly won’t impact you.