Nota
O acesso a esta página requer autorização. Podes tentar iniciar sessão ou mudar de diretório.
O acesso a esta página requer autorização. Podes tentar mudar de diretório.
Serviços de DevOps do Azure | Azure DevOps Server | Azure DevOps Server 2022
As fontes upstream de Artefatos do Azure permitem que os desenvolvedores centralizem o gerenciamento de pacotes usando um único feed para armazenar pacotes publicados e aqueles consumidos de registros públicos, como NuGet.org.
As fontes upstream oferecem várias vantagens para o gerenciamento de dependências, incluindo simplicidade, confiabilidade e integridade do pacote. Consulte O que são fontes primárias? para mais detalhes.
Permitir versões de origem externa
Esse recurso permite que os desenvolvedores controlem se desejam consumir versões de pacotes de registros públicos, como NuGet.org ou npmjs.com.
Quando a alternância Permitir versões externas estiver habilitada para um pacote específico, as versões do registro público ficarão disponíveis para serem salvas no feed. Por padrão, essa opção é desativada, adicionando uma camada extra de segurança reduzindo a exposição a pacotes potencialmente mal-intencionados de registros públicos. A alteração dessa configuração não afeta as versões do pacote já salvas no feed. Essas versões permanecem acessíveis independentemente dessa configuração. Você deve ser um proprietário do feed para habilitar o recurso permitir versões de origem externa.
Permitir versões externas para um pacote
Para habilitar o consumo de versões externas para um pacote específico, siga estas etapas:
Nota
Você deve ser um Proprietário de Feed para autorizar versões originadas externamente.
Entre no Azure DevOps e navegue até o seu projeto.
Selecione Artefatose, em seguida, selecione o seu feed no menu suspenso.
Selecione o seu pacote, selecione o botão de reticências para obter mais opções e, em seguida, selecione Permitir versões de origem externa.
Alterne Permitir versões externas para ativar o recurso e selecione Fechar quando terminar.
Permitir versões externas usando a API REST
Para ativar versões externas para um pacote específico usando a API REST, use os seguintes endpoints:
Permitir versões externas usando o PowerShell
Para habilitar versões externas para um pacote específico usando o PowerShell, siga estas etapas:
Crie um token de acesso pessoal com Empacotamento>Ler, Escrever, & Gerenciar permissões.
Crie uma variável de ambiente para seu token de acesso pessoal.
$env:PATVAR = "YOUR_PERSONAL_ACCESS_TOKEN"Converta seu token de acesso pessoal em uma cadeia de caracteres codificada em Base64 e construa o cabeçalho da solicitação HTTP.
$token = [Convert]::ToBase64String(([Text.Encoding]::ASCII.GetBytes("username:$env:PatVar"))) $headers = @{ Authorization = "Basic $token" }Construa o URL do ponto de extremidade com base no seu tipo de feed:
Feed com escopo do projeto:
$url = "https://pkgs.dev.azure.com/<ORGANIZATION_NAME>/<PROJECT_NAME>/_apis/packaging/feeds/<FEED_NAME>/<PROTOCOL>/packages/<PACKAGE_NAME>/upstreaming?api-version=7.2-preview.1"Feed no âmbito da organização:
$url = "https://pkgs.dev.azure.com/<ORGANIZATION_NAME>/_apis/packaging/feeds/<FEED_NAME>/<PROTOCOL>/packages/<PACKAGE_NAME>/upstreaming?api-version=7.2-preview.1"
Execute o comando a partir da tabela com base no seu cenário:
Ação Description Command Obter Comportamento de Upstream Recupere o estado de comportamento upstream do seu pacote. Usa $urle$headersde etapas anteriores.Invoke-RestMethod -Uri $url -Headers $headersConfigurar comportamento de upstream Permita versões de origem externa para o seu pacote definindo versionsFromExternalUpstreamscomoAllowExternalVersions.$body = '{"versionsFromExternalUpstreams": "AllowExternalVersions"}'
Invoke-RestMethod -Uri $url -Headers $headers -Body $body -Method Patch -ContentType "application/json"Limpar Comportamento de Upstreaming Redefina o comportamento upstream definindo versionsFromExternalUpstreamscomoAuto.$body = '{"versionsFromExternalUpstreams": "Auto"}'
Invoke-RestMethod -Uri $url -Headers $headers -Body $body -Method Patch -ContentType "application/json"
Nota
As alterações no comportamento upstream podem levar tempo para se propagar pelo serviço. Se o pacote não estiver disponível após a atualização das configurações, aguarde até 3 horas para que as alterações entrem em vigor.
Cenários aplicáveis
Esta seção descreve cenários comuns em que versões externas (pacotes de repositórios públicos) são bloqueadas ou permitidas para serem salvas no feed. Para o restante deste artigo, nos referimos a pacotes de registros públicos como pacotes públicos e pacotes armazenados em um feed de Artefatos do Azure como pacotes privados.
Cenário 1: As versões públicas estão bloqueadas
As versões públicas são impedidas de serem salvas no feed quando o recurso Permitir versões externas está habilitado nos dois casos a seguir:
Versão do pacote privado tornada pública
Se um pacote privado for posteriormente tornado público, o feed bloqueará quaisquer novas versões com o mesmo nome de pacote de fontes públicas.
Ter pacotes privados e públicos
Quando uma equipa usa pacotes privados e públicos, o feed bloqueia quaisquer novas versões de pacotes do registo público quando a permissão de versões externas está ativada.
Cenário 2: Versões públicas são permitidas
As versões públicas podem ser salvas no feed quando o recurso Permitir versões externas está habilitado nos três casos a seguir:
Todos os pacotes são privados
Se todos os pacotes forem privados e a equipe não planeja usar pacotes públicos, habilitar essa configuração não terá impacto no fluxo de trabalho da equipe.
Todos os pacotes são públicos
Se a equipe consome exclusivamente pacotes públicos de registros ou repositórios de código aberto, habilitar a configuração não afeta seu fluxo de trabalho.
Pacote público tornado privado
Quando um pacote público é posteriormente convertido em privado, ativar a configuração permitir versões externas não afeta o fluxo de trabalho da equipe.