Dies trägt viel Ähnlichkeit mit ERROR on Azure Web App Deployment of a msdeploy packageASP.NET 5 Azure Deployment: Kann nicht den Betrieb ("Create Directory")
Ich bin mit msbuild/t auszuführen: packagepublish automatisieren Bereitstellung mit ARM-Vorlagen. Der relevante Teil der Vorlage:
"resources": [
{
"name": "MSDeploy",
"type": "extensions",
"location": "[resourceGroup().location]",
"apiVersion": "2015-08-01",
"dependsOn": [
"[concat('Microsoft.Web/sites/', variables('webAppName'))]"
],
"tags": {
"displayName": "webDeploy"
},
"properties": {
"packageUri": "[concat(parameters('_artifactsLocation'), '/', parameters('webDeployPackageFolder'), '/', parameters('webDeployPackageFileName'), parameters('_artifactsLocationSasToken'))]",
"dbType": "None",
"connectionString": "",
"setParameters": {
"IIS Web Application Name": "[variables('webAppName')]"
}
}
}
]
Dies schlägt mit dem Fehler, dass es keine Eigenschaft „IIS Web Application Name“ genannt ist, und ich kann es in der Tat aus der erzeugten Paketdatei sieht, ist kein parameters.xml wie es für eine ASP.NET 4-Vorlage gäbe.
, dass das Entfernen hinterlässt bei mir den Fehler:
Unable to perform the operation ("Create Directory") for the specified directory ("C:\Users\Jim\AppData\Local\Temp\PublishTemp\API78\wwwroot").
so klar es versucht, die lokale Verzeichnisstruktur zu replizieren. Was ich jedoch nicht genau weiß ist, wie/wo ich das angehen soll.
Ich sehe es ein MSDeploy Schalter -declareParam, aber ich rufe msbuild, nicht MSDeploy. Ich hoffe, dass es einen Weg gibt, dies in der Template-Erweiterung zu tun, aber ich kann keine Dokumentation darüber finden, wie man dort Werte bereitstellt.
Dies nutzt die Build-Vorlagen auf C: \ Program Files (x86) \ MSBuild \ Microsoft \ Visualstudio \ v14.0
Das sieht vielversprechend aus ... frustrierend, dass das für ASP.NET 4.5 "einfach funktioniert"; alternativ dazu ist es vielleicht auch möglich, msdeploy separat aufzurufen. –
Ich bevorzuge definitiv MSDeploy in den meisten Fällen separat zu verwenden. Dieser Blogbeitrag war eine Umgehung für andere Benutzer mit dem spezifischen Anwendungsfall, die Bereitstellung von MSBuild zu initiieren. – chief7