title: Deploy an Azure Virtual Machine Scale Set and install IIS with multiple web sites from VSTS
body: <p>I want the following:</p>
  
  <ul>
  <li>An autoscaling VMSS deployed with an ARM template</li>
  <li>IIS Installed</li>
  <li>The default web site installed from one VSTS repository (which has a CI build)</li>
  <li>A web site from another VSTS repository installed at a virtual path (a sub web site contained within the default web site. (which has it's own CI build)</li>
  </ul>
  
  <p>I have tried a heap of different release pipeline options but just cannot quite get there.</p>
  
  <p>I can get an autoscaling VMSS deployed with an ARM template by copying a basic template from the starter guides or by manually deploying a VMSS in the Azure Portal and then downloading the ARM templates, hosting them in a VSTS repository and using the Release pipeline ARM deployment task to create/update the Azure Resource Group containing the VMSS.</p>
  
  <p>I can get a successful build working on a single VM using a deployment group but VMSS's are not able to be part of a deployment group. (<a href="https://github.com/Microsoft/vsts-tasks/issues/7550" rel="nofollow noreferrer">see this issue</a>)</p>
  
  <p>The issues seem to come in when I want to actually deploy the web sites I have built to the scale set. The two options I seem to have come across are using the Desired State Configuration Extension to run a PowerShell script that will have to install the AzureRM commandlets, then install the web sites by downloading the build artifacts and manually installing (or using Web Deploy) that I will have to upload to somewhere like blob storage or by creating a baked machine image that will probably run a very similar script to do the same thing.</p>
  
  <p>What are my options? What is the simplest deployment path to follow? Am I missing another path to a simpler deployment?</p>
  
  <p>As I have two web sites to install my release pipeline has multiple artifacts (Main Web Site CI build output, Sub Web Site CI build output, Deployment Scripts git repo). </p>