What are Azure Artifacts feed views?

test29998411 281 Reputation points
2021-03-31T13:35:22.677+00:00
Azure DevTest Labs
Azure DevTest Labs
An Azure service that is used for provisioning development and test environments.
256 questions
{count} votes

Accepted answer
  1. Michael Taylor 48,581 Reputation points
    2021-03-31T14:44:46.137+00:00

    At a high level it is just a tag on the artifact contained in the feed. The purpose is to allow you to identify packages with things like "alpha" or "deprecated". The thought process when it was originally implemented was that you could have a single feed where you stored "alpha" or "released" packages. Developers could then filter the list of packages based upon the view. In my experience this isn't really useful, at least as a Nuget repo, for several reasons.

    Firstly the views are assumed to be an hierarchy because to move from one view to another you have to "promote" or "demote". Hence a package is only in one view.

    Secondly to really take advantage of this you'd need to configure your build to look at the view you want to use. However you likely want to use packages from several different views so bouncing between views based upon a package state doesn't make much sense. Furthermore if a package is ready for production then you could promote it but anyone using the version from the "alpha" view aren't going to notice, probably.

    Thirdly, at least NuGet already supports pre-release packages and it is an opt in at the user level so using a view to separate "alpha" from prod ready packages has no real merit, just mark the package as pre-release. In a similar vein having a "deprecated" view isn't useful because Nuget now supports soft deletes anyway.

    So personally I wouldn't worry about feed views unless you really find that you need to have separate views of your packages.

    1 person found this answer helpful.
    0 comments No comments

0 additional answers

Sort by: Most helpful