So erhalten Sie TFS2015 Build (Build.vnext) und NuGet-Paketzurückschreibung, um benutzerdefinierte Paketquellen zu verwenden
Ich versuche, unsere TFS2015 Bauen (TFSBuild vnext) gehen zusammen mit VS Team Services.
Bisher die meisten blogs und Dokumentation hat, war hilfreich, außer, wenn Sie versuchen, ein Projekt erstellen, verwendet benutzerdefinierte Paket-Quellen für die NuGet-Automatik-Paket wiederherzustellen.
Habe ich erfolgreich im Einsatz ein Team Services-Build-Agent (der neue Mechanismus für builds) und alles schien gut zu gehen, bis der build-task zur Wiederherstellung von NuGet-Paketen fehlgeschlagen.
Der Fehler aufgrund custom/private-source-Paket nicht abgeholt wird aus der installierten VS-Konfiguration, so dass diese Pakete nicht gefunden werden konnte. Die traditionellen Pakete aus der Standard-NuGet-Paket-feed Tat wiederherzustellen, ohne Frage.
Wie kann ich geben Sie die zusätzlichen Paket-Quellen für NuGet verwenden, wenn ein agent?
EDIT: vcastro gefragt, über die NuGet-Installer-build-Schritt und der Definition der Pfade in der Konfiguration des build-Schritt. Das oben genannte ist die Verwendung der Visual-Studio-Build-Schritt und die integrierte option NuGet-Pakete wiederherstellen. Finden Sie dieses Bild für Referenz:
InformationsquelleAutor der Frage Jaans | 2015-07-13
Du musst angemeldet sein, um einen Kommentar abzugeben.
Alternativ können Sie auch hinzufügen, eine
NuGet Installer
build-Schritt, bevor dieVisual Studio Build
Schritt in Ihrer build-Konfiguration wiederherstellen alle NuGet-Pakete.Dort übergeben Sie den Speicherort Ihrer privaten repo als argument
nuget.exe
:-source "https://www.nuget.org/api/v2/;http://mynugetserver"
InformationsquelleAutor der Antwort Pascal Berger
Hinzufügen von NuGet.config für Ihr Projekt, das gibt eine Alternative-Paket Ort. Die Regeln für die Auflösung sind gut definiert und erläutert, die in der offiziellen Dokumentation.
InformationsquelleAutor der Antwort Daniel Mann
Gibt es eine neue VSTS Task namens "NuGet-Installer" dies ermöglicht es Ihnen, check-in Ihren NuGet.config-Datei und legen Sie die verschiedenen Paket-Quellen. Führen Sie diese Aufgabe, bevor Sie ausführen, MSBuild.
Wenn du mit den VSTS von NuGet Feed, den Sie hinzufügen müssen das build service-Konto, um den feed zu aktivieren, herunterladen von Paketen https://www.visualstudio.com/get-started/package/use/common-identities
InformationsquelleAutor der Antwort Gary Howlett
Habe ich scrounged das web mit wenig Erfolg, aber nachdem das hantieren der folgenden helfen:
OK, Es scheint, dass die Paket-Quellen konfiguriert für NuGet.config gespeichert, pro Benutzer-account, z.B.
c:\Users\<<username>>\AppData\Roaming\NuGet\NuGet.config
Mein Problem war schwieriger zu lösen, weil das build-agent ausgeführt wurde, als
Windows Service
unter derLocal System
Konto. So bekommen Sie die NuGet-Konfiguration für das bauen, musste ich den folgenden Pfad verwenden, stattdessen:C:\Windows\SysWOW64\config\systemprofile\AppData\Roaming\NuGet\NuGet.Config
C:\Windows\System32\config\systemprofile\AppData\Roaming\NuGet\NuGet.Config
Müssen Sie möglicherweise zu erhöhten Berechtigungen, um die NuGet Unterordner und NuGet.Config Datei.
Hinweis: ich habe keine Lösung für die Nutzung der
Local Service
Konto. Der oben funktioniert nur für dieLocal System
(oder eine tatsächliche Benutzer -) Konto.InformationsquelleAutor der Antwort Jaans
Einer Lösung (funktioniert bei mir) ändern Konto für tfs 2015 build-agent-Dienst (auf meine build-Maschine VSO-Agent tsf.Agent-PC) zu tfsagent, zum Beispiel, und hinzufügen von Nuget.config, um die C:\Users\tfsagent\AppData\Roaming\Nuget. Das ist alles!
InformationsquelleAutor der Antwort honzakuzel1989
Geben Sie Ihre benutzerdefinierten NuGet feed-URL ' s in der Lösung ist nuget.config-Datei. Speichern keine Benutzernamen & Passwörter in dieser Datei.
Erstellen Benutzername & Passwort-Variablen in deinem build-definition in VSTS. Variablen können verschlüsselt und werden nicht angezeigt in jeder der build-log-Ausgänge. Hier werde ich MyCompanyNugetUser und MyCompanyNugetPwd Variablen.
In unsere build-Schritte, fügen wir ein Powershell-Skript, das als erste Aktion, diese liest den username & Passwort-Variablen und aktualisieren Sie die Benutzer-Ebene von nuget.config-Datei auf der build-Maschine. Unten ist das code-snippet aus meinem inline-Powershell-Skript:
Weiter geht es gleich weiter zum ausführen der Standard-NuGet Restore Schritt von der Microsoft-Vorlagen
Mehr hier: https://codingcase.com/2016/07/27/vsts-build-setup-custom-nuget-feeds-with-authentication/
HTH
InformationsquelleAutor der Antwort Sweis
In der RTM-Version von Team Foundation Server 2015 Sie haben, um einen build-Schritt vom Typ "NuGet-Installer", und wiederherstellen Sie die Pakete von der Lösung, die Datei vor der Ausführung des eigentlichen build-Prozess. In dieser Aufgabe können Sie übergeben das argument
-ConfigFile path/to/nuget.config
mit dem Pfad im repository.Beispiel:
InformationsquelleAutor der Antwort Martin Lantzsch
Wenn Sie Schwierigkeiten haben, diese arbeiten auf UWP NUR, dann stellen Sie sicher, dass das bei dem package-Namen Dinkel korrekt. Wenn die Sache falsch ist, dann (für die UWP nur) unser build-server fehlschlägt, wird der build.
zum Beispiel, wenn Sie ein Paket namens Com.Unternehmen.Komponenten und aktualisieren Sie das Paket mithilfe von "install-package com.Unternehmen.Komponenten" (beachten Sie die bei den ersten Brief), dann ist die UWP build auf dem build-server nicht finden, das Paket in Ihrem lokalen Speicher.
InformationsquelleAutor der Antwort MercifulGiraffe