Notitie
Voor toegang tot deze pagina is autorisatie vereist. U kunt proberen u aan te melden of de directory te wijzigen.
Voor toegang tot deze pagina is autorisatie vereist. U kunt proberen de mappen te wijzigen.
Azure DevOps Services | Azure DevOps Server | Azure DevOps Server 2022
In dit artikel wordt u begeleid bij het maken van verbinding met uw feed en het publiceren van pakketten met behulp van twee verificatiestromen: de Azure-artefacten referentieprovider voor feeds in uw eigen organisatie en een persoonlijk toegangstoken (PAT) voor feeds die in een andere organisatie worden gehost.
Voorwaarden
- Een Azure DevOps organisatie.
- Een Azure DevOps project.
- Een Azure-artefacten feed.
-
nuget.exe versie
4.8.0.5385of hoger. Azure-artefacten raadt NuGet5.5.xof hoger aan voor de beste compatibiliteit en betrouwbaarheid. - Als u pakketten wilt publiceren, moet u een feed-Publisher (inzender) of hoger zijn.
De Azure-artefacten-aanmeldingsgegevensprovider instellen
De Azure-artefacten Referentieprovider maakt beveiligde verificatie mogelijk voor uw Azure-artefacten-feeds. Als u het wilt gebruiken met nuget.exe, moet u deze eerst toevoegen aan het zoekpad voor invoegtoepassingen van NuGet. Zie Installatie en detectie van invoegtoepassingen voor meer informatie. Zodra de invoegtoepassing is toegevoegd, volgt u de installatiestappen voor uw besturingssysteem:
Gebruik een van de volgende methoden om de Azure-artefacten Referentieprovider te installeren:
Handmatige installatie
Download de nieuwste Microsoft.NetFx48.NuGet.CredentialProvider.zip release.
Pak het zip-bestand uit.
Kopieer de
netfxmap uit het uitgepakte archief naar%UserProfile%/.nuget/plugins/. Denetfxmap is vereist voor nuget.exe compatibiliteit.
Installeren met behulp van het helperscript
U kunt ook het geautomatiseerde helperscript gebruiken voor een gestroomlijnde installatie. Zorg ervoor dat u PowerShell 5.1 of hoger hebt en voer het volgende uit:
iex "& { $(irm https://aka.ms/install-artifacts-credprovider.ps1) } -AddNetfx"
Zie de opslagplaats Azure-artefacten Credential Provider voor meer informatie.
Verbinding maken met een feed
Voordat u uw pakketten kunt publiceren, stelt u uw project in en maakt u als volgt verbinding met uw feed:
Meld u aan bij uw Azure DevOps-organisatie en navigeer vervolgens naar uw project.
Selecteer Artefactenen selecteer vervolgens uw feed in het dropdownmenu.
Selecteer Verbinding maken met feeden selecteer vervolgens NuGet.exe in het linkernavigatiedeelvenster.
Voeg een
nuget.configbestand toe aan uw project, in dezelfde map als uw.csprojof.slnbestand. Plak het opgegeven XML-fragment in het bestand. Het codefragment moet er als volgt uitzien:organisatiegerichte feed:
<?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>project-specifieke feed:
<?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>
Meld u aan bij uw Azure DevOps-server en navigeer vervolgens naar uw project.
Selecteer Artefactenen selecteer daarna uw feed.
Selecteer Verbinding maken met feeden selecteer vervolgens NuGet.exe in het linkernavigatiedeelvenster.
Voeg een
nuget.config-bestand toe aan uw project, in dezelfde map als uw.csproj- of.sln-bestand, en plak vervolgens het opgegeven XML-fragment in uw bestand.
Publiceren naar een feed in dezelfde organisatie
Nadat u nuget.config hebt geconfigureerd en u hebt geauthenticeerd met behulp van de Azure-artefacten-referentiegegevensprovider, voert u de volgende opdracht uit om een pakket naar uw feed te publiceren. Vervang de tijdelijke aanduidingen door de juiste waarden:
nuget push <PACKAGE_PATH> -Source https://pkgs.dev.azure.com/<ORGANIZATION_NAME>/<PROJECT_NAME>/_packaging/<FEED_NAME>/nuget/v3/index.json -ApiKey <ANY_STRING>
Voorbeeld:
nuget push MyPackage.5.0.2.nupkg -Source https://pkgs.dev.azure.com/MyOrg/MyProject/_packaging/MyFeed/nuget/v3/index.json -ApiKey AZ
Notitie
De Azure-artefacten Referentieprovider verwerkt de echte verificatie voor de push, maar NuGet vereist nog steeds een -ApiKey waarde om de opdracht te accepteren. Azure-artefacten negeert de waarde die u opgeeft, dus elke niet-lege tekenreeks volstaat.
Publiceren naar een feed in een andere organisatie
Als de doelfeed zich in een andere Azure DevOps organisatie bevindt, maakt u een PAT in die organisatie en voegt u de feed toe als bron in uw nuget.config bestand.
Maak een persoonlijk toegangstoken (PAT) in de doelorganisatie met het bereik Pakketten>.
Voer de volgende opdracht uit om de feed toe te voegen als bron. Met deze opdracht wordt uw PAT toegevoegd aan
nuget.config, dus sla het bestand veilig op en controleer het niet in broncodebeheer.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>Publiceer het pakket met behulp van de bronnaam die u zojuist hebt toegevoegd.
nuget push <PACKAGE_PATH> -Source <SOURCE_NAME> -ApiKey <ANY_STRING>
Voorbeeld:
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
Notitie
Als uw organisatie een firewall of proxyserver gebruikt, staat u de Azure-artefacten domein-URL's en IP-adressen toe.
Troubleshooting
Verificatieprompt wordt niet weergegeven
Zorg ervoor dat de Azure-artefacten Referentieprovider is geïnstalleerd en u nuGet-versie 4.8.0.5385 of hoger gebruikt. Zie Verbinding maken met Azure-artefacten feeds met NuGet.exevoor installatiestappen.
Publiceren mislukt omdat de versie al bestaat
Pakketversies in Azure-artefacten zijn onveranderbaar. Nadat u een versie hebt gepubliceerd, kunt u deze niet overschrijven of hetzelfde versienummer opnieuw gebruiken, zelfs niet als u het pakket verwijdert. Werk de pakketversie bij, bouw het pakket opnieuw en publiceer het opnieuw.
Publiceren mislukt achter een firewall of proxy
Sta de Azure-artefacten domein-URL's en IP-adressen toe en voer de publicatiebewerking opnieuw uit.
Publiceren mislukt met een 403-fout
Deze fout betekent meestal dat uw account geen publicatiemachtigingen voor de feed heeft. U hebt ten minste de rol Feed Publisher (Inzender) nodig om pakketten te pushen. Vraag de eigenaar van een feed om uw rol bij te werken en probeer het opnieuw.