click2install
click2install

Reputation: 998

AzureRM PowerShell: How to set a custom domain onto a web app deployment slot?

So this is how I do it for a webapp

Set-AzureRmWebApp -ResourceGroupName $ResourceGroup -Name $WebAppName -HostNames @($Alias, $Url);

Which doesn't work for a slot within a web app, like so:

Set-AzureRmWebApp -ResourceGroupName $ResourceGroup -Name $SlotName -HostNames @($SlotAlias, $SlotUrl);

And fails with:

The Resource 'Microsoft.Web/sites/sitename-staging' under resource group 'resgrpname' was not found.

Then there is this Set-AzureRmWebAppSlot but it doesn't have a -HostNames option.

Any help would be greatly appreciated.

Upvotes: 2

Views: 1203

Answers (1)

Bruce Chen
Bruce Chen

Reputation: 18465

Based on my understanding, you could leverage Set-AzureRmResource to set a custom domain for your web app deployment slot as follows:

$resourceGroupName = "{your-resourcegroup-name}"
$ResourceType="Microsoft.Web/sites/slots"
$webappName="{your-webapp-name}"
$stageName="{staging-name}"

$Alias="$webappName-$stageName.azurewebsites.net"
$customDomain="{your-customdomain-for-staging}"

$hostnames=@{"hostNames"=@($Alias,$customDomain)}

Set-AzureRmResource -ResourceType $ResourceType -ResourceGroupName $resourceGroupName -ResourceName "$webappName/$stageName" -propertyobject $hostnames -ApiVersion 2015-08-01 -force

enter image description here

For ResourceType and ResourceName, you could leverage resources.azure.com as follows:

enter image description here

Upvotes: 5

Related Questions