| title | Set up upstream sources for your feed |
|---|---|
| description | How to set up external feeds and public registries as upstream sources for your feed |
| ms.service | azure-devops-artifacts |
| ms.topic | how-to |
| ms.date | 03/21/2024 |
| monikerRange | <=azure-devops |
[!INCLUDE version-lt-eq-azure-devops]
With Azure Artifacts upstream sources, you can streamline your package management by using a single feed to store both the packages you publish and those you consume from external feeds and public registries such as npmjs.com, NuGet.org. When an upstream source is enabled on your feed, Azure Artifacts will automatically save a copy of any package installed by a collaborator or higher from upstream.
Note
Maven snapshots are not supported in upstream sources.
-
Sign in to your Azure DevOps organization, and then navigate to your project.
-
Select Artifacts, and then select Create Feed.
-
Provide a Name for your feed and select its Visibility and Scope settings. Make sure to check the Include packages from common public sources checkbox to enable upstream sources.
-
Select Create when you're done.
:::image type="content" source="../media/new-feed-dialog-azure-devops.png" alt-text="A screenshot showing how to create a new feed.":::
Note
You must be a feed owner or a feed administrator to add or remove upstream sources.
-
Sign in to your Azure DevOps organization, and then navigate to your project.
-
Select the gear icon button
to navigate to your feed settings. -
Select Upstream sources, and then select Add upstream source.
-
Select Public source, and then select a Public source from the dropdown menu.
-
Select Add when you're done, and then select Save once more in the top right corner to preserve your changes.
Note
Custom public upstream sources are only supported with npm registries.
-
Sign in to your Azure DevOps organization, and then navigate to your project.
-
Select Upstream sources, and then select Add Upstream.
-
Select Azure Artifacts feed in this organization.
-
Select the desired Feed from the dropdown menu to add it as an upstream source. Then, select the View and choose the Package type(s) you wish to use. Optionally, you can also modify the name of your upstream source.
-
Select Add when you're done.
:::image type="content" source="../media/add-upstream-same-org.png" alt-text="A screenshot showing how to add a feed in your organization as an upstream source.":::
-
Sign in to your Azure DevOps organization, and then navigate to your project.
-
Select Upstream sources, and then select Add Upstream.
-
Select Azure Artifacts feed in another organization.
-
Enter your Azure Artifacts feed locator in the following format:
-
Organization scoped feed:
azure-feed://ORGANIZATION_NAME/FEED_NAME@VIEW -
Project scoped feed:
azure-feed://ORGANIZATION_NAME/PROJECT_NAME/FEED_NAME@VIEW
-
-
Select the Package type(s) you wish to use and provide a name for your upstream source.
-
Select Add when you're done.
:::image type="content" source="../media/add-upstream-diff-org.png" alt-text="A screenshot showing how to add a feed in a different organization as an upstream source.":::
Note
To add a feed from a different organization as an upstream source, the target feed owner must share the target view with All feeds and people in organizations associated with my Microsoft Entra tenant by navigating to Feed Settings > Views > Select the ellipsis button on the right for the specified view > Edit .
Note
You must be a Feed and Upstream Reader (Collaborator), a Feed Publisher (Contributor), or a Feed Owner to install new packages from upstream. A copy of each upstream package is saved to the feed on first use. Packages already saved from upstream sources can be used by Feed Readers.
A: Packages from upstream sources become available in the feed soon after they're published, but they only appear to readers once they’re saved to the feed.
A package is saved when a user with Feed and Upstream Reader (Collaborator) or higher permissions installs that package version. Azure Artifacts then automatically saves a copy of the package to the feed, making it permanently available to all readers and visible in the web UI.
A: Make sure that the feed owner has shared a view as an upstream source. See Add a feed in a different organization as an upstream source for more details.
A: Feed views let you share a subset of package versions that have been tested and validated, excluding those still in development or not meeting quality criteria. See What are feed views for more details.
A: No. Feed Reader can only download packages already saved to the feed. Packages are saved when a Feed and Upstream Reader (Collaborator), Feed Publisher (Contributor), or Feed Owner installs them from upstream.
A: The package becomes unavailable for download, and its version number is permanently reserved. It will no longer sync from upstream, but earlier and later versions remain unaffected.
A: A warning message is added to the package’s metadata. This warning appears whenever the package is viewed or installed from the feed.