webentwicklung-frage-antwort-db.com.de

Gültige Parameter für MSDeploy über MSBuild

Ich versuche, eine Webanwendung mit MSDeploy in Team Build in TFS bereitzustellen. Es gibt mehrere Fragen, die sich mit den Eigenschaften befassen, die in MSBuild übergeben werden müssen, um MSDeploy aufzurufen, aber ich habe keine ausreichende Dokumentation für die verfügbaren Eigenschaften gefunden. Hat jemand eine Liste der verfügbaren Eigenschaften?

Hier sind einige Fragen, die ich gefunden habe, aber ich konnte keine definitive Liste der Eigenschaften finden:

57
merthsoft

Hier ist eine Liste, die ich für meine eigene Referenz zusammengestellt habe, sowie einige der gesetzlichen Werte, die verwendet werden können. Beachten Sie, dass diese mit der /p:<PropertyName>=<Value>-Syntax an MSBuild übergeben werden.

  • DeployOnBuild
    • Wahr
    • False
  • DeployTarget
    • MsDeployPublish
    • Paket
  • Aufbau
    • Name einer gültigen Lösungskonfiguration
  • CreatePackageOnPublish
    • Wahr
    • False
  • DeployIisAppPath
    • <Name der Website>/<Ordner>
  • MsDeployServiceUrl
    • Speicherort der MSDeploy-Installation, die Sie verwenden möchten
  • MsDeployPublishMethod
    • WMSVC (Webverwaltungsdienst)
    • RemoteAgent
  • AllowUntrustedCertificate (wird bei selbstsignierten SSL-Zertifikaten verwendet)
    • Wahr
    • False
  • Nutzername
  • Passwort
  • SkipExtraFilesOnServer (Bestehende, nicht in Konflikt stehende Dateien lassen.)
    • Wahr
    • False
110
Philip Hanson

Leider gibt es zu diesem Zeitpunkt keine Dokumentation dafür. Wenn die verschiedenen Blogbeiträge und Forenbeiträge nicht umfassend genug sind, können Sie immer die von MSDeploy verwendete .target-Datei anzeigen. Diese zeigt, wie die verschiedenen Eigenschaften verwendet werden, wenn Sie die Zeit benötigen, um reichlich XML zu durchsuchen.

Auf meiner Maschine befindet es sich hier:

C:\Program Files (x86)\MSBuild\Microsoft\VisualStudio\v10.0\Web\Microsoft.Web.Publishing.targets
7
Dylan Smith

Ich weiß nicht, ob Sie danach suchen, aber Sie können msdeploy mit dem /?-Argument aufrufen, und es wird eine Liste gültiger Argumente angezeigt

4

Wie wäre es mit diesem/p: IncrementalBuild = True

1
user2646516

Einige weitere hier https://msdn.Microsoft.com/en-us/ff622991.aspx (für Sharepoint)

So erstellen Sie ein Paket in build: /P: IsPackaging = true

So legen Sie das Veröffentlichungsverzeichnis am selben Ablageort für die Ausgabe fest: /P: PublishDir = Wenn Ihre Lösung mehrere App-Projekte enthält, legen Sie den folgenden Parameter fest, um app-spezifische Veröffentlichungsverzeichnisse zu erstellen ./P: AppSpecificPublishOutputs = wahr

1

WebDeploy-Konfiguration einer SelfContained .NET Core2-Anwendung. Anmerkung 2 obligatorische Eigenschaften:

Fehlender RuntimeIdentifier löst:

fehler NETSDK1031: Es wird nicht unterstützt, eine .__ zu erstellen oder zu veröffentlichen. eigenständige Anwendung ohne Angabe eines RuntimeIdentifier . Bitte geben Sie entweder einen RuntimeIdentifier an oder setzen Sie SelfContained auf falsch.

Fehlende DeployIisAppPath kann werfen:

fehler: Die Eigenschaft 'DeployIisAppPath' darf nicht leer sein.

Wenn Sie die Parameter an dotnet publish übergeben, vermeiden Sie die zyklische Abhängigkeit mit/p: DeployOnBuild = false

fehler MSB4006: In der Zielabhängigkeit besteht eine zirkuläre Abhängigkeit Graph mit dem Ziel "Veröffentlichen".

Vollständige WebDeploy-Konfiguration für die Befehlszeile:

/P:WebPublishMethod=MSDeploy
/P:DeployOnBuild=True 
/P:DeployTarget=MsDeployPublish 
/P:TargetFramework=netcoreapp2.0 
/P:SelfContained=true 
/P:MsDeployServiceUrl=https://my_subdomain.jobit.io:8172/MsDeploy.axd?site=subdomain_path
/P:AllowUntrustedCertificate=True 
/P:MSDeployPublishMethod=WMSvc 
/P:CreatePackageOnPublish=True 
/P:UserName=OTB
/P:Password=Expert 
/P:RuntimeIdentifier=win-x86
/P:DeployIisAppPath=subdomain_path
0
profimedica