Serviços de DevOps do Azure | Azure DevOps Server | Azure DevOps Server 2022
O uso de fontes upstream no Azure Artifacts permite gerenciar todas as dependências do aplicativo a partir de um único feed. Ele simplifica o consumo de pacotes de registros públicos, como NuGet.org ou npmjs.com, ao mesmo tempo em que fornece proteção contra interrupções ou pacotes comprometidos. Você também pode publicar seus próprios pacotes no mesmo feed e gerenciar todas as suas dependências em um único local.
Este tutorial orienta você como habilitar fontes upstream em seu feed e consumir pacotes de registros públicos, como NuGet.org ou npmjs.com.
Pré-requisitos
Criar um feed e ativar fontes de origem
Entre em sua organização do Azure DevOps e navegue até seu projeto.
Selecione Artefatos e, em seguida, selecione Criar feed para criar um novo feed.
Forneça um Nome para seu feed, escolha sua Visibilidade e Escopo e marque a caixa de seleção Incluir pacotes de fontes públicas comuns para habilitar fontes upstream.
Selecione Criar quando terminar.
Importante
Para adicionar um feed de uma organização diferente como uma fonte de origem, o proprietário do feed de destino deve compartilhar a vista de destino com Todos os feeds e pessoas em organizações associadas ao meu locatário do Microsoft Entra navegando até Configurações de Feed>Visualizações>. Selecione o botão de reticências à direita da vista especificada e >Editar.
Autenticar com o feed
Agora que você criou seu feed, selecione a guia apropriada com base na tecnologia que você está usando e siga as instruções para configurar seu arquivo de configuração e conectar-se ao seu feed:
Entre em sua organização do Azure DevOps e navegue até seu projeto.
Selecione Artefatos, selecione seu feed no menu suspenso e, em seguida, selecione Conectar ao feed.
Selecione npm no painel de navegação esquerdo e siga as instruções fornecidas na seção Configuração do projeto para configurar seu arquivo de configuração. Se você ainda não tiver um arquivo .npmrc , crie um novo na raiz do seu projeto (a mesma pasta do seu package.json). Abra seu novo arquivo .npmrc e cole no trecho fornecido.
Entre em sua organização do Azure DevOps e navegue até seu projeto.
Selecione Artefatos, selecione seu feed no menu suspenso e, em seguida, selecione Conectar ao feed.
Selecione NuGet.exe no painel de navegação esquerdo e copie o trecho XML fornecido na seção Configuração do projeto .
Crie um novo ficheiro nuget.config na raiz do seu projeto e cole o trecho XML que copiou na etapa anterior.
Entre em sua organização do Azure DevOps e navegue até seu projeto.
Selecione Artefatos, selecione seu feed no menu suspenso e, em seguida, selecione Conectar ao feed.
Selecione pip no painel de navegação esquerdo.
Crie um ambiente virtual, caso ainda não o tenha feito.
Adicione um arquivo pip.ini (Windows) ou pip.conf (Mac/Linux) ao seu virtualenv e cole no trecho fornecido na seção Configuração do projeto .
Entre em sua organização do Azure DevOps e navegue até seu projeto.
Selecione Artefatos, selecione seu feed no menu suspenso e, em seguida, selecione Conectar ao feed.
Selecione Maven no painel de navegação esquerdo.
Adicione o trecho fornecido na seção Configuração do projeto às <repositories> e <distributionManagement> nas suas pom.xml. Seu arquivo deve ser semelhante ao seguinte:
<repository>
<id>[FEED-NAME]</id>
<url>https://pkgs.dev.azure.com/[ORGANIZATION-NAME]/_packaging/[FEED-NAME]/maven/v1</url>
<releases>
<enabled>true</enabled>
</releases>
<snapshots>
<enabled>true</enabled>
</snapshots>
</repository>
Cole o trecho fornecido <server> no seu ficheiro settings.xml . Seu arquivo deve ser semelhante a este:
<settings xmlns="http://maven.apache.org/SETTINGS/1.0.0"
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
xsi:schemaLocation="http://maven.apache.org/SETTINGS/1.0.0
https://maven.apache.org/xsd/settings-1.0.0.xsd">
<servers>
<server>
<id>[FEED-NAME]</id>
<username>[ORGANIZATION-NAME]</username>
<password>[PERSONAL_ACCESS_TOKEN]</password>
</server>
</servers>
</settings>
Crie um token de acesso pessoal com Packaging>leitura e escrita permissões e cole o seu token de acesso pessoal na <password> tag no seu arquivo settings.xml.
Entre em sua organização do Azure DevOps e navegue até seu projeto.
Selecione Artefatos, selecione seu feed no menu suspenso e, em seguida, selecione Conectar ao feed.
Selecione Gradle no painel de navegação esquerdo.
Adicione o trecho fornecido na seção Configuração do projeto aos repositórios e seções de publicação em seu arquivo build.gradle . Seu arquivo deve ser semelhante ao seguinte:
maven {
url 'https://pkgs.dev.azure.com/[ORGANIZATION-NAME]/_packaging/[FEED-NAME]/maven/v1'
name '[FEED-NAME]'
authentication {
basic(BasicAuthentication)
}
}
Cole o trecho fornecido <server> no seu ficheiro settings.xml . Seu arquivo deve ser semelhante ao seguinte:
<settings xmlns="http://maven.apache.org/SETTINGS/1.0.0"
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
xsi:schemaLocation="http://maven.apache.org/SETTINGS/1.0.0
https://maven.apache.org/xsd/settings-1.0.0.xsd">
<servers>
<server>
<id>[FEED-NAME]</id>
<username>[ORGANIZATION-NAME]</username>
<password>[PERSONAL_ACCESS_TOKEN]</password>
</server>
</servers>
</settings>
Crie um token de acesso pessoal com Packaging> escopos de Read & write. Cole o seu token de acesso pessoal na tag <password> no seu arquivo settings.xml.
Entre em sua organização do Azure DevOps e navegue até seu projeto.
Selecione Artefatos, selecione seu feed no menu suspenso e, em seguida, selecione Conectar ao feed.
Selecione Carga no painel de navegação esquerdo.
Adicione o trecho fornecido na seção Configuração do projeto ao seu arquivo cargo/config.toml no repositório de origem. Seu arquivo config.toml deve ser semelhante ao seguinte:
[registries]
FEED_NAME = { index = "sparse+https://pkgs.dev.azure.com/ORGANIZATION_NAME/PROJECT_NAME/_packaging/FEED_NAME/Cargo/index/" }
```
Adicione o segundo trecho fornecido na seção Configuração do projeto ao seu arquivo cargo/config.toml para substituir a fonte de crates.io pelo seu feed. Seu arquivo deve ser semelhante ao seguinte:
[source.crates-io]
replace-with = "FEED_NAME"
Configurar um provedor de credenciais
Iniciar sessão no registo
Restaurar pacotes
Agora que ativou fontes upstream e autenticou com o seu feed, selecione o separador apropriado com base no seu tipo de pacote e siga as instruções para restaurar pacotes de repositórios públicos no seu feed do Azure Artifacts.
Remova a pasta node_modules do seu projeto.
Abra uma janela de prompt de comando e execute o seguinte comando para restaurar seus pacotes. Uma vez concluído, seu feed deve ter uma cópia salva de todos os pacotes instalados a partir do upstream.
npm install --force
Nota
O --force sinalizador garante que os pacotes sejam extraídos da fonte remota, mesmo que exista uma cópia local.
Limpe o cache local.
nuget locals -clear all
Abra uma janela de prompt de comando e execute o seguinte comando para restaurar seus pacotes. Uma vez concluído, seu feed deve ter uma cópia salva de todos os pacotes instalados a partir do upstream.
nuget.exe restore
Conteúdo relacionado