0

如何在多部署插槽可用性中获取和过滤特定于 Azure webapp 特定插槽的发布配置文件的值?

比如说,来自门户的默认 FTP 凭据似乎是生产实例的,我不希望将其包含在自动化电子邮件中。如何使用powershell。

4

1 回答 1

2

我们可以使用 azure cmdlet Get-AzureRMWebAppSlotPublishingProfile来获取发布配置文件。

我们可以获得这些详细信息,在以下自定义开发槽的情况下,如下所示:

Get-AzureRMWebAppSlotPublishingProfile -ResourceGroupName Default-Web-EastUS -Name propertiesdemo -OutputFile none -Slot dev

现在输出似乎采用以下格式:

<publishData>  <publishProfile profileName="priesdemo-dev - Web Deploy" publishMethod="MSDeploy" publishUrl="priesdemo-dev.scm.azurewebsites.net:443" msdeploySite="propertiesdemo__dev"
 userName="$priesdemo__dev" userPWD="{Your profile password}" destinationAppUrl="http://priesdemo-dev.azurewebsites.net" SQLServerDBCo
nnectionString="" mySQLDBConnectionString="" hostingProviderForumLink="" controlPanelLink="http://windows.azure.com" webSystem="WebSites">
<databases />
 </publishProfile>
 <publishProfile profileName="propertiesdemo-dev - FTP" publishMethod="FTP" publishUrl="ftp://waws-prod-blu-023.ftp.azurewebsites.windows.net/site/wwwroot" ftpPassiveMode="True" us
erName="priesdemo__dev\$priesdemo__dev" userPWD="{Your passwrod here}" destinationAppUrl="http://priesdemo-dev.azurewebsites.n
et" SQLServerDBConnectionString="" mySQLDBConnectionString="" hostingProviderForumLink="" controlPanelLink="http://windows.azure.com" webSystem="WebSites">
<databases />

为了仅过滤 ftp 主机、用户名和密码,我这样做了(不确定是否正确,但我过滤掉了详细信息)

[xml]$azureSlotProfile = Get-AzureRMWebAppSlotPublishingProfile -ResourceGroupName Default-Web-EastUS -Name priesdemo -OutputFile none -Slot dev
$azureSlotProfile.GetType().FullName

$ftpprofile = $azureSlotProfile.publishData.publishProfile | Where-Object publishMethod -EQ "FTP" | SELECT userName,userPWD,publishUrl
$ftpprofile.publishUrl #this shows host ftp value.

希望这可以帮助某人,powershell新手:)像我一样

于 2016-08-04T14:41:05.620 回答