Observação
O acesso a essa página exige autorização. Você pode tentar entrar ou alterar diretórios.
O acesso a essa página exige autorização. Você pode tentar alterar os diretórios.
Serviços Azure DevOps | Azure DevOps Server | Azure DevOps Server 2022
Este artigo orienta você pela conexão com seus pacotes de feed e publicação usando dois fluxos de autenticação: o provedor de credenciais Azure Artifacts para feeds em sua própria organização e um PAT (token de acesso pessoal) para feeds hospedados em uma organização diferente.
Pré-requisitos
- Uma organização do Azure DevOps.
- Um projeto Azure DevOps.
- Um feed de Azure Artifacts.
-
nuget.exe versão
4.8.0.5385ou posterior. Azure Artifacts recomenda o NuGet5.5.xou posterior para obter a melhor compatibilidade e confiabilidade. - Para publicar pacotes, você deve ser um Publicador do feed (Colaborador) ou superior.
Configurar o provedor de credenciais Azure Artifacts
O provedor de credenciais Azure Artifacts habilita a autenticação segura para seus feeds de Azure Artifacts. Para usá-lo com nuget.exe, primeiro, é necessário adicioná-lo ao caminho de busca de plug-ins do NuGet. Para obter detalhes, consulte Instalação e descoberta do Plug-in. Depois que o plug-in for adicionado, siga as etapas de instalação do sistema operacional:
Use um dos seguintes métodos para instalar o provedor de credenciais Azure Artifacts:
Instalação manual
Baixe a versão mais recente Microsoft.NetFx48.NuGet.CredentialProvider.zip.
Extraia os arquivos compactados.
Copie a
netfxpasta do arquivo extraído para%UserProfile%/.nuget/plugins/. Anetfxpasta é necessária para nuget.exe compatibilidade.
Instalar usando o script auxiliar
Como alternativa, você pode usar o script auxiliar automatizado para uma instalação simplificada. Verifique se você tem o PowerShell 5.1 ou posterior e execute:
iex "& { $(irm https://aka.ms/install-artifacts-credprovider.ps1) } -AddNetfx"
Para obter mais informações, consulte o repositório Azure Artifacts Credential Provider.
Conectar-se a um feed
Antes de publicar seus pacotes, configure seu projeto e conecte-se ao feed da seguinte maneira:
Entre em sua organização do Azure DevOps e navegue até seu projeto.
Selecione Artefatos e, em seguida, selecione o feed no menu suspenso.
Selecione Conectar para alimentare selecione NuGet.exe no painel de navegação esquerdo.
Adicione um arquivo
nuget.configao seu projeto, na mesma pasta do arquivo.csprojou.sln. Cole o snippet XML fornecido em seu arquivo. O snippet deve ser semelhante ao seguinte:Feed da organização com escopo:
<?xml version="1.0" encoding="utf-8"?> <configuration> <packageSources> <clear /> <add key="<SOURCE_NAME>" value="https://pkgs.dev.azure.com/<ORGANIZATION_NAME>/_packaging/<FEED_NAME>/nuget/v3/index.json" /> </packageSources> </configuration>Feed do projeto com escopo:
<?xml version="1.0" encoding="utf-8"?> <configuration> <packageSources> <clear /> <add key="<SOURCE_NAME>" value="https://pkgs.dev.azure.com/<ORGANIZATION_NAME>/<PROJECT_NAME>/_packaging/<FEED_NAME>/nuget/v3/index.json" /> </packageSources> </configuration>
Entre no servidor do Azure DevOps e navegue até o projeto.
Selecione Artefatos e, em seguida, selecione o feed.
Selecione Conectar ao Feede selecione NuGet.exe no painel de navegação esquerdo.
Adicione um arquivo
nuget.configao seu projeto, na mesma pasta que o arquivo.csprojou.sln, e cole o trecho de XML fornecido nesse arquivo.
Publicar em um feed na mesma organização
Depois de configurar nuget.config e autenticar usando o provedor de credenciais Azure Artifacts, execute o comando a seguir para publicar um pacote no feed. Substitua os marcadores de posição pelos valores apropriados:
nuget push <PACKAGE_PATH> -Source https://pkgs.dev.azure.com/<ORGANIZATION_NAME>/<PROJECT_NAME>/_packaging/<FEED_NAME>/nuget/v3/index.json -ApiKey <ANY_STRING>
Exemplo:
nuget push MyPackage.5.0.2.nupkg -Source https://pkgs.dev.azure.com/MyOrg/MyProject/_packaging/MyFeed/nuget/v3/index.json -ApiKey AZ
Nota
O provedor de credenciais Azure Artifacts manipula a autenticação real para o push, mas o NuGet ainda requer um -ApiKey valor para aceitar o comando. Azure Artifacts ignora o valor fornecido, portanto, qualquer cadeia de caracteres não úmida funciona.
Publicar em um feed em outra organização
Se o feed de destino estiver em uma organização de Azure DevOps diferente, crie um PAT nessa organização e adicione o feed como uma origem em seu nuget.config arquivo.
Crie um token de acesso pessoal (PAT) na organização de destino com o escopo Empacotamento>Ler e gravar.
Execute o comando a seguir para adicionar o feed como uma origem. Esse comando adiciona seu PAT a
nuget.config; portanto, mantenha o arquivo em local seguro e não o envie para o controle de versão.nuget sources Add -Name <SOURCE_NAME> -Source https://pkgs.dev.azure.com/<ORGANIZATION_NAME>/<PROJECT_NAME>/_packaging/<FEED_NAME>/nuget/v3/index.json -UserName <USER_NAME> -Password <PERSONAL_ACCESS_TOKEN> -config <PATH_TO_NUGET_CONFIG_FILE>Publique o pacote usando o nome de origem que você acabou de adicionar.
nuget push <PACKAGE_PATH> -Source <SOURCE_NAME> -ApiKey <ANY_STRING>
Exemplo:
nuget sources Add -Name "MySource" -Source https://pkgs.dev.azure.com/MyOrg/MyProject/_packaging/MyFeed/nuget/v3/index.json -UserName MyUserName -Password YourPersonalAccessToken -config ./nuget.config
nuget push nupkgs/mypackage.1.1.8.nupkg -Source MySource -ApiKey AZ
Nota
Se sua organização usa um firewall ou servidor proxy, permita URLs de domínio e endereços IP do Azure Artifacts.
Troubleshooting
O prompt de autenticação não aparece
Verifique se o provedor de credenciais Azure Artifacts está instalado e se você está usando a versão 4.8.0.5385 do NuGet ou posterior. Para obter as etapas de configuração, consulte Conectar-se aos feeds do Azure Artifacts com o NuGet.exe.
A publicação falha porque a versão já existe
As versões do pacote em Azure Artifacts são imutáveis. Depois de publicar uma versão, você não poderá substituí-la nem reutilizar o mesmo número de versão, mesmo se excluir o pacote. Atualize a versão do pacote, recompile o pacote e, em seguida, publique-o novamente.
A publicação falha por trás de um firewall ou proxy
Permita as URLs de domínio e os endereços IP do Azure Artifacts e tente novamente a operação de publicação.
A publicação falha com um erro 403
Esse erro geralmente significa que sua conta não tem permissões de publicação no feed. Você precisa, pelo menos, da função feed Publisher (Colaborador) para enviar pacotes por push. Peça a um proprietário do feed para atualizar a sua função e tente novamente.