我目前正在测试我的假设。我的www.myapp.com/app
上有我的Asp.Net MVC应用程序,www.myapp.com/
上有第三方CMS系统。
网站的设置与this answer
中所述的相同目前,我可以从Visual Studio单独和手动发布这两个应用程序,它可以正常工作。
但是,我尝试从构建服务器发布我的应用程序,我使用的是Azure Power-Shell scriplets:
PS> Publish-AzureWebsiteProject -Name myApp -Package MyWebDeployPackage.zip
但是,documentation没有提及是否可以使用此scriplet发布到非根文件夹。
我可以通过命令行向~/app
发布应用程序吗?
UPD :我可以从msbuild
通过
msbuild .\SolutionName.sln /p:DeployOnBuild=true /p:PublishProfile=ProfileName /p:Password=passwordForAzurePublishing /p:AllowUntrustedCertificate=true
其中ProfileName
是配置为部署到Azure网站子文件夹的Web部署配置文件,Password
是Azure配置文件中的部署密码。
然而,这不是最佳解决方案:要部署到测试和生产环境,我需要构建应用程序两次,我想避免:如果我编译视图,则需要7-10分钟(我们有800意见)。两次这样做是浪费时间。
UPD 2 :在Azure SDK工具库中创建了一个问题:https://github.com/Azure/azure-sdk-tools/issues/2667
答案 0 :(得分:2)
我认为这不可能来自PowerShell,但我可能会弄错。在这里查看他们的发布代码https://github.com/Azure/azure-sdk-tools/blob/master/src/ServiceManagement/Services/Commands.Utilities/Websites/WebsitesClient.cs#L1136-L1168
他们没有应用名称的参数,第二个链接中的代码手动构建站点名称/插槽。
我想在这里打开一个问题https://github.com/Azure/azure-sdk-tools/issues,Azure PowerShell团队的某个人应该看一下。