2016-04-08 8 views
0

Ich habe Probleme, einen automatischen Build zu erhalten, der mit dnx arbeitet. Muß der Build nicht 'dnu restore' ausführen, nachdem die neueste Version aus der Quellcodeverwaltung abgerufen wurde? Meine Builds schlagen fehl, wenn ich mich nicht manuell beim Build-Rechner anmelde und 'dnu restore' ausführe. Kann dieser Schritt nicht Teil des automatisierten Builds sein?Ich erhalte den Build-Agent, um 'dnvm install' und 'dnu restore' auf jedem Build auszuführen

Grüße Nick

Antwort

0

Ja. Normalerweise werden dnx-Paketdateien standardmäßig nicht in die Quellcodeverwaltung hochgeladen. Sie müssen also die Pakete vor dem Build wiederherstellen. Sie können ein Powershell-Skript erstellen, um eine DUN-Wiederherstellung durchzuführen und dieses Skript in Ihrem Build-Prozess aufzurufen oder es als Pre-Build-Ereignis zu konfigurieren.

Codebeispiel:

# run DNU restore on all project.json files in the src folder including 2>1 to redirect stderr to stdout for badly behaved tools 
Get-ChildItem -Path $PSScriptRoot\src -Filter project.json -Recurse | ForEach-Object { & dnu restore $_.FullName 2>1 } 

Referenz von: Build and Deploy your ASP.NET 5 Application to an Azure Web App

enter image description here

Update: Für vNext bauen, die Sie gerade an der Spitze eine "Powershell" Schritt hinzufügen müssen von Ihre Build-Definition, um dies zu tun: enter image description here Denken Sie daran, die "Working f älter "in den Ordner, in dem sich die Datei" global.json "befindet.

Sie können auch für weitere Details zu diesem Link finden: Build and Deploy your ASP.NET 5 Application to an Azure Web App

+0

Wäre das als vorkompilierte Schritt in dem tfs erfolgen bauen? Der Grund, warum ich frage, ist, dass der tfs-Build einen einzigen Schritt hat, der von der Quellcodeverwaltung kommt und den Build startet. Wie kann ich daran denken, ein PowerShell-Skript auszuführen, nachdem die Source heruntergefahren wurde, aber bevor der Build gestartet wird? – FeeFiFoFum

+0

Ich bin mir nicht sicher, ob mir diese Optionen zur Verfügung stehen. Ich benutze tfs2015 automatisierten Build. Ich sehe jedoch ähnliche Haken in project.json. Vielleicht sollte ich es versuchen ... – FeeFiFoFum

+0

@FeeFiFoFum Der Screenshot ist für TFS2015 XAML Build-Definition? Benutzt du es? Oder verwenden Sie vNext build? –