Nota
L'accesso a questa pagina richiede l'autorizzazione. È possibile provare ad accedere o modificare le directory.
L'accesso a questa pagina richiede l'autorizzazione. È possibile provare a modificare le directory.
Azure DevOps Services | Azure DevOps Server | Azure DevOps Server 2022
Questo articolo illustra come configurare il progetto e pubblicare i pacchetti NuGet usando l'interfaccia della riga di comando NuGet.
Prerequisiti
| Prodotto | Requisiti |
|---|---|
| Azure DevOps | - Un'organizzazione di Azure DevOps. - Un progetto Azure DevOps . - Un feed di Azure Artifacts. - Scaricare e installare nuget.exe versione 4.8.0.5385 o successiva. È consigliabile usare NuGet 5.5.x o versione successiva, che include importanti correzioni di bug per gli annullamenti e i timeout. |
Configurare il provider di credenziali Azure Artifacts
Il provider di credenziali Azure Artifacts consente l'autenticazione sicura per i feed di Azure Artifacts. Per usarlo con nuget.exe, è prima necessario aggiungerlo al percorso di ricerca del plug-in di NuGet. Per informazioni dettagliate, vedere Installazione e individuazione dei plug-in. Dopo aver aggiunto il plug-in, seguire la procedura di installazione per il sistema operativo:
Usare uno dei metodi seguenti per installare il provider di credenziali Azure Artifacts:
Installazione manuale
Scaricare la versione più recente Microsoft.NetFx48.NuGet.CredentialProvider.zip.
Estrarre il file ZIP.
Copiare la
netfxcartella dall'archivio estratto in%UserProfile%/.nuget/plugins/. Lanetfxcartella è necessaria per la compatibilità nuget.exe.
Installare utilizzando lo script di supporto
In alternativa, è possibile usare lo script helper automatizzato per un'installazione semplificata. Assicurarsi di avere PowerShell 5.1 o versione successiva e quindi eseguire:
iex "& { $(irm https://aka.ms/install-artifacts-credprovider.ps1) } -AddNetfx"
Per altre informazioni, consulta il repository Azure Artifacts Credential Provider.
Collegarsi a un feed
Accedere all'organizzazione di Azure DevOps e quindi passare al progetto.
Seleziona Artifactse quindi seleziona il tuo feed dal menu a discesa.
Selezionare Connetti al feede quindi selezionare NuGet.exe nel riquadro di navigazione a sinistra.
Aggiungere un file nuget.config al progetto, nella stessa cartella del file .csproj o .sln. Incollare il frammento XML specificato nel tuo file. Il frammento di codice dovrebbe essere simile al seguente:
feed con ambito organizzativo:
<?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 per il progetto:
<?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>
Accedere al server Azure DevOps e quindi passare al progetto.
Selezionare Artifactse quindi selezionare il feed.
Selezionare Connetti al feede quindi selezionare NuGet.exe nel riquadro di spostamento a sinistra.
Seguire le istruzioni nella sezione di allestimento del progetto per connettersi al feed.
Pubblicare pacchetti in un feed nella stessa organizzazione
Nota
Per pubblicare pacchetti in un feed, è necessario essere un autore di feed (collaboratore) o superiore. Per altri dettagli, vedere Gestire le autorizzazioni .
Eseguire il comando seguente per pubblicare un pacchetto nel feed. Sostituire i segnaposto con i valori appropriati:
nuget push <PACKAGE_PATH> -src https://pkgs.dev.azure.com/<ORGANIZATION_NAME>/<PROJECT_NAME>/_packaging/<FEED_NAME>/nuget/v3/index.json -ApiKey <ANY_STRING>
esempio:
nuget push MyPackage.5.0.2.nupkg -src https://pkgs.dev.azure.com/MyOrg/MyProject/_packaging/MyFeed/nuget/v3/index.json -ApiKey AZ
Nota
Il api-key è obbligatorio, ma è possibile specificare qualsiasi stringa come valore durante la pubblicazione in un feed di Azure Artifacts.
Pubblicare pacchetti su un feed di un'altra organizzazione
Per pubblicare i pacchetti NuGet in un feed in un'organizzazione Azure DevOps diversa, è prima necessario creare un token di accesso personale nell'organizzazione di destinazione.
Passare all'organizzazione che ospita il feed di destinazione e creare un personal access token (PAT) con Packaging>lettura e scrittura ambito.
Eseguire il comando seguente per aggiungere l'origine del pacchetto al file nuget.config. Verrà aggiunto il tuo PAT al file di nuget.config. Conserva questo file in un luogo sicuro e assicurati di non inserirlo nel controllo del codice sorgente.
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>Eseguire il comando seguente per pubblicare il pacchetto:
nuget push <PACKAGE_PATH> -src <SOURCE_NAME> -ApiKey <ANY_STRING>
esempio:
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 -src MySource -ApiKey AZ
Nota
Se l'organizzazione usa un firewall o un server proxy, assicurarsi di consentire URL di dominio e indirizzi IP di Azure Artifacts.