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 dos Artefatos do Azure permitem que os desenvolvedores consumam pacotes de registros públicos, como Crates.io e nuget.org. Este artigo irá guiá-lo através da configuração do seu projeto e usando a linha de comando para consumir Crates de Crates.io.
Pré-requisitos
| Produto | Requisitos |
|---|---|
| Azure DevOps | - Uma organização Azure DevOps . - Um projeto do Azure DevOps . - Baixe e instale rustup. Você precisará do Cargo versão 1.74.0 ou posterior. |
Criar um feed
O Azure Artifacts recomenda ter um feed dedicado para consumir crates de crates.io e um feed separado exclusivamente para publicar crates internas. Se você já tiver um feed de Artefatos do Azure, pule para a próxima seção. Caso contrário, crie um novo da seguinte maneira:
Entre na sua organização do Azure DevOps e navegue até o seu projeto.
Selecione Artefatos e, em seguida, selecione Criar Fluxo.
Forneça um Nome para seu feed, selecione a Visibilidade para definir quem pode visualizar seus pacotes e escolha o Escopo do feed. Marque a caixa de seleção Incluir pacotes de fontes públicas comuns para habilitar fontes upstream em seu feed.
Selecione Criar quando terminar.
Conecte-se ao seu feed
Agora que você tem um feed, você precisa configurar seu arquivo config.toml , configurar um provedor de credenciais e, em seguida, fazer login no registro para autenticar com seu feed.
Configuração do projeto
Entre na sua organização do Azure DevOps e navegue até o seu projeto.
Selecione Artefatose, em seguida, selecione o seu feed no menu suspenso.
Selecione Conectar à alimentação e, em seguida, selecione Carga no painel de navegação esquerdo.
Copie o trecho da seção Configuração do projeto e cole-o no arquivo .cargo/config.toml no repositório de origem. Deve ser semelhante ao seguinte:
Feed específico de projeto:
[registries] <FEED_NAME> = { index = "sparse+https://pkgs.dev.azure.com/<ORGANIZATION_NAME>/<PROJECT_NAME>/_packaging/<FEED_NAME>/Cargo/index/" } [source.crates-io] replace-with = "<FEED_NAME>"Feed com abrangência da organização:
[registries] <FEED_NAME> = { index = "sparse+https://pkgs.dev.azure.com/<ORGANIZATION_NAME>/_packaging/<FEED_NAME>/Cargo/index/" } [source.crates-io] replace-with = "<FEED_NAME>"
Entre em sua coleção de DevOps do Azure e navegue até seu projeto.
Selecione Artefatose, em seguida, selecione o seu feed no menu suspenso.
Selecione Conectar à alimentação e, em seguida, selecione Carga no painel de navegação esquerdo.
Copie o trecho da seção Configuração do projeto e cole-o no arquivo .cargo/config.toml no repositório de origem. Deve ser semelhante a:
Feed específico de projeto:
[registries] <FEED_NAME> = { index = "sparse+https://pkgs.dev.azure.com/<COLLECTION_NAME>/<PROJECT_NAME>/_packaging/<FEED_NAME>/Cargo/index/" } [source.crates-io] replace-with = "<FEED_NAME>"Feed delimitado por coleção
[registries] <FEED_NAME> = { index = "sparse+https://pkgs.dev.azure.com/<COLLECTION_NAME>/_packaging/<FEED_NAME>/Cargo/index/" } [source.crates-io] replace-with = "<FEED_NAME>"
Configurar um provedor de credenciais
Para usar o Cargo com o Azure Artifacts, você precisa configurar um provedor de credenciais. As seguintes configurações definirão um auxiliar de credenciais padrão para o usuário:
Cole o seguinte trecho no %USERPROFILE%.cargo\config.toml:
[registry]
global-credential-providers = ["cargo:token", "cargo:wincred"]
Inicie sessão no seu registo
Crie um
token de acesso pessoal com permissões dePackaging Leitura & escrita para autenticar com o seu feed.Execute o seguinte comando para iniciar sessão no registo. Substitua <FEED_NAME> pelo nome do feed e, quando promovido, cole o token de acesso pessoal criado anteriormente.
"Basic " + [Convert]::ToBase64String([Text.Encoding]::UTF8.GetBytes("PAT:" + (Read-Host -MaskInput "Enter PAT"))) | cargo login --registry <FEED_NAME>
Salvar pacotes do Crates.io
Agora que seu projeto está configurado, o provedor de credenciais está configurado e você está autenticado com seu feed, você pode começar a consumir pacotes de fontes upstream. Os Artefatos do Azure guardam automaticamente uma cópia de qualquer pacote que instales do upstream no teu feed.
O exemplo a seguir demonstra como consumir o reqwest crate, uma biblioteca de cliente HTTP usada para fazer solicitações HTTP:
Adicione a crate ao seu Cargo.toml executando o seguinte comando no diretório do seu projeto:
cargo add reqwestExecute o seguinte comando para construir seu projeto e consumir sua caixa:
cargo build
Assim que o pacote estiver instalado, uma cópia será salva no seu feed. Você pode verificar isso navegando até seu feed no Azure DevOps. O pacote deve estar disponível no seu feed, como mostrado abaixo:
Nota
Para salvar pacotes de upstreams, você deve ter a função Feed e Upstream Reader (Colaborador) ou superior. Consulte Funções e permissões de feed para obter mais detalhes.