我已经写了一些在Azure中创建新网站的行 . 之后,我的网站必须部署 . 阅读此事后,可以使用 msbuild
和 DeployOnBuild
参数完成此操作 .
到目前为止,脚本看起来有点像这样(简化):
New-AzureResourceGroup -Location $locationWestEUDataCenter -Name $resourceGroupNameEU
New-AzureResource -ApiVersion 2014-04-01 -Name $hostingPlanNameEU -ResourceGroupName $resourceGroupNameEU `
-ResourceType Microsoft.Web/serverFarms -Location $locationWestEUDataCenter `
-PropertyObject $hostingPlanParametersEU -Verbose -Force
$siteWestEUProperties = @{name = $siteNameEU; sku = "Basic"; webHostingPlan = $hostingPlanNameEU}
New-AzureResource -Name $siteNameEU -ResourceType Microsoft.Web/sites `
-ResourceGroupName $resourceGroupNameEU -Location $locationWestEUDataCenter `
-ApiVersion $apiVersion -PropertyObject $siteWestEUProperties
Switch-AzureMode AzureServiceManagement
MSBuild发布目前看起来像这样(http://www.asp.net/aspnet/overview/developing-apps-with-windows-azure/building-real-world-cloud-apps-with-windows-azure/automate-everything的副本):
& "$env:windir\Microsoft.NET\Framework\v4.0.30319\MSBuild.exe" $websiteProjectFileAnalytics `
/p:VisualStudioVersion=11.0 `
/p:DeployOnBuild=true `
/p:PublishProfile=$publishingFileAnalytics `
/p:Password=$publishSettings.publishData.publishProfile.userPWD.get(0)
我对这行代码的问题是 Password
属性 . 必须从PublishSettings文件中检索密码 . 订阅PublishSettings文件中不存在此passwork . PublishSettings文件中提供了此密码(以及许多其他属性),您可以从Azure门户中的网站管理页面下载该文件 .
在这看到我的问题?
我想要完整自动部署完整的软件套件 . 有没有办法可以设置我正在创建的特定网站的密码?如果可以,我可以在PowerShell中管理密码并在发布时使用密码 .
或者是否有一种不同/更好的方式来自动部署Azure网站?
旁注:我是PowerShell新手,但已成功自动部署 Cloud 服务,服务总线,数据库,流量管理器,存储 .
1 回答
它总是一样的,在问你读了一些可能解决问题的问题之后 .
在blog post of Kaushal Kumar Panday中正在阅读以下内容:
这意味着我可以为订阅更改一次部署凭据,并在我的脚本中使用这些凭据 . 这样做会产生以下命令:
为此,您需要从pubxml文件中删除
UserName
和MSDeployServiceURL
元素 . 我也删除了_SavePWD
元素,因为它不再做任何事情(我猜) .我的网站现已成功部署到Azure .