O que são visualizações de feed?

Azure DevOps Services | Azure DevOps Server 2022 - Azure DevOps Server 2019

As exibições de feed permitem que os desenvolvedores compartilhem um subconjunto de versões de pacotes com seus consumidores. Um uso comum de visualizações de feed é compartilhar versões de pacotes que foram testadas e validadas, mas retêm pacotes que ainda estão em desenvolvimento e/ou não atenderam a uma determinada barra de qualidade.

Exibição padrão

Todos os feeds de Artefatos vêm com três modos de exibição: @local, @prereleasee @release. Os dois últimos são modos de exibição sugeridos que você pode renomear ou excluir conforme desejado. @local é o modo de exibição padrão comumente usado em fontes upstream.

A @local exibição contém todos os pacotes publicados diretamente no feed e todos os pacotes salvos de fontes upstream.

As exibições de feed são somente leitura, o que significa que os usuários conectados a uma exibição só podem usar pacotes publicados nessa exibição e/ou pacotes salvos anteriormente de fontes upstream. Consulte os gráficos de pacotes para saber como os pacotes disponíveis são construídos.

Observação

Os Artefatos do Azure só dão suporte à publicação e restauração de pacotes de e para o modo de exibição padrão - @Local.

Visualizações de feed e fontes upstream

As exibições de feed e as fontes upstream são projetadas para trabalhar juntas para fornecer uma solução de nível empresarial para compartilhar e consumir pacotes. Para que outros feeds de Artefatos do Azure usem seu feed como uma fonte upstream, você deve definir a visibilidade do feed para membros de sua organização ou membros de sua ID do Microsoft Entra, dependendo do seu cenário. Se você escolher o último, todas as pessoas em sua organização poderão acessar seu feed. Além disso, todos os feeds em sua organização e outras organizações associadas ao mesmo locatário do Microsoft Entra poderão fazer upstream para seu feed.

Observação

Todas as exibições de feed em um projeto público são acessíveis a todos na Internet.

Liberar pacotes com visualizações de feed

Ao criar pacotes de lançamento, é importante transmitir três informações: a natureza da alteração, o risco da alteração e a qualidade da alteração.

A divisão semântica da versão: 1.2.3 representa a natureza da mudança e beta2 representa a qualidade da mudança.

Natureza e risco da mudança

A natureza e o risco da mudança dizem respeito à mudança em si, ou seja, o que você se propôs a fazer, ambos são conhecidos no início do trabalho. Se você estiver introduzindo novos recursos, fazendo atualizações em recursos existentes ou corrigindo bugs; Esta é a natureza da sua mudança. Se você ainda estiver fazendo alterações na parte da API do seu aplicativo; Esta é uma faceta do risco da sua mudança. Muitos usuários do NuGet usam a notação SemVer (Semantic Versioning ) para transmitir essas duas informações. O SemVer é um padrão amplamente utilizado e faz um bom trabalho de comunicação desse tipo de informação.

Qualidade da mudança

A qualidade da alteração não é geralmente conhecida até que o processo de validação seja concluído. Isso vem depois que sua mudança é construída e empacotada. Devido a esse detalhe, não é possível comunicar a qualidade da mudança no segmento numérico do número da versão (por exemplo, 1.2.3). Existem soluções alternativas para pré-validar (por exemplo, consumir as DLLs da compilação diretamente antes de serem empacotadas e publicar os pacotes em um ambiente de "depuração" ou "CI" e, em seguida, validar e republicar esses pacotes em um ambiente de "lançamento"), mas nenhuma que vimos pode realmente garantir que o pacote compilado atenderá ao padrão de qualidade correto.

fluxo de trabalho de pacotes de publicação

Você pode usar a @Release exibição como um meio de transmitir a qualidade de suas alterações. Usando a @Release exibição, você pode compartilhar pacotes que atenderam à sua barra de qualidade e permitir que seus consumidores vejam apenas o subconjunto de versões de pacotes que foram testadas, validadas e estão prontas para serem consumidas.

Versão semântica de implantação