Package Promotion
What is Package Promotion and Why Should I Use It
Package Promotion is the process of promoting packages between feeds to ensure that only approved and verified packages are used in the right environments, such as production.
In ProGet, packages can be promoted from one feed to another and tracked throughout the process. This allows you to build a promotion pipeline that allows you maintain separate levels of quality in different feeds (such as Development, Production, etc). It also enables you to easily curate selected packages from an external source to an approved repository.
This feature is limited in ProGet Free. Compare features by edition or request a quote.
How to Promote a Package
There are two ways to promote a package, using the Promote Package button in the Package Version page in ProGet, or an API call. Any packages that are promoted to a target feed are not deleted from the source feed.
Creating a Validated/Promoted Package Feed
Any feed can be used as a validated/promoted package feed, but it is recommended to create a separate feed containing only promoted internal packages and verified external packages. When creating your new feed, select the validated/promoted feed usage type.
Promoting Packages Using The Package Version Page
To promote a package using the Package Version page, first navigate to the feed, package, and version you want to promote. Hover over the ▼ button in the upper right corner and click the Promote Package button.
Package promotion via the package version page is limited in ProGet Free. If you use ProGet Free, you can promote packages, but only through this page, and you'll not be able to see who did it, when, or why.
Promoting Packages Using API
To promote a package via the API, you will first need to generate an API key that grants access to Package Promotion. Then visit our Package Promotion Endpoint guide in our ProGet API Reference section to familiarize yourself on how to work with the ProGet APIs and the Promote Packages endpoint.
Package promotion via the API is not availabile in ProGet Free.
Creating a Package Promotion Pipeline
A package promotion pipeline helps you to enforce the process of promoting packages between your different feeds/environments by selecting a specific target feed. Once a target feed is selected to promote to, both the Package Version Page and the Package Promotion Endpoint will only allow you to promote packages to the selected target feed.
To configure the pipeline, you need to do the following:
- Navigate to the source feed that contains the packages you want to promote
- Click the Manage Feed button in the upper-right corner of the page
- Click the configure link to the right of the Promote To Feed property
- Select the target promotion feed
Note: A validated/promoted package feed can be a source feed for another validated/promoted package feed. This way you can keep environments in different feeds separate and enforce a promotion process across all feeds.
Package Promotion Security
Promote Packages is a built-in task in ProGet. This task allows access to promote packages to a specified feed of the same feed type. Users granted this task should also be granted at least the View & Download Packages task for the source feed.
You can also create a Custom Task page by going to Administration > Users & Tasks > Customize Tasks
. To give or deny users/groups permissions to this task go to the Users & Tasks page.
Track Your Package Promotions
Package promotion tracking is viewable in the History tab on the Package Version page. The history will show a Promoted action that includes:
- When the promotion occurred
- Who promoted the package
- The source feed
- The target feed
- Any comments left by the promoter
Action | On | Detail |
---|---|---|
Promoted | 5/14/2020 1:30:15 PM by Admin | from devnuget to rcnuget Ready for testing |
Promoted | 5/15/2020 1:30:15 PM by API | from rcnuget to prodnuget Release 12.0.5 |