Azure Cloud Service deployment targets allow you to reference existing classic Cloud Services in your Azure subscription, that you can then reference by role during deployments.
Azure has announced that from June 30th 2018 they are retiring support for Service Management API (which indicates Cloud Services). Azure has stated that "Cloud Services is similar to Service Fabric in degree of control versus ease of use, but it’s now a legacy service and Service Fabric is recommended for new development" (source).
This new target type was introduced in Octopus 2018.5, so you'll need to be running at least that version of the Octopus Server. You can read more about all the new PaaS targets in our blog.
You will firstly need an Azure Management Certificate account that references your Azure subscription.
Once your Azure account is setup, you will then need an existing Azure Cloud Service (classic) setup within your Azure subscription. To learn more about App Services, the Azure team provide useful documentation on App Services that can help you get started. If you are dynamically creating the cloud services during your deployment, check our section about creating Cloud Service targets by scripts using service messages.
Creating Cloud Service targets
Once you have a Cloud Service setup within your Azure subscription, you are then ready to map that to an Octopus deployment target.
To create an Azure Cloud Service target within Octopus:
- Go to Infrastructure ➜ Deployment Targets ➜ Add Deployment Target.
- Select Azure Cloud Service from the list of available targets and click Next.
- Fill out the necessary fields, being sure to provide a unique role that clearly identifies your Azure Cloud Service target.
- After clicking Save, your deployment target will be added and go through a health check to ensure Octopus can connect to it.
- If all goes well, you should see your newly created target in your Deployment Targets list, with a status of Healthy.
Creating Cloud Service Targets by Scripts
Azure Cloud Service targets can also be created via a PowerShell Cmdlet within a Deployment Process, this can be especially handy if you are also creating the Azure Cloud Service via a script.
See Creating Resources by script for more information on creating Azure Cloud Services via a script.
Deploying to Cloud Service Targets
See our documentation about this topic
If your Azure Cloud Service target is not completing a health check successfully, you may need to check that your Octopus Server can communicate with Azure. It may be worth checking that your Azure Account is able to complete a Save and Test to ensure Octopus can communicate with Azure and the management certificate referenced by the account is valid. If your Octopus Server is behind a proxy or firewall, you will need to consult with your Systems Administrator to ensure it is able to communicate with Azure.