“We deprecated the hosted XAML build controller on July 1st 2017. We recommend that you migrate to our new build system. However if you still need to run XAML builds during the migration then you must set up a private XAML build controller now”.
Yes yes. I forgot to upgrade. Lets move on.
So in order to do publish, we just need to login to our visualstudio.com account and go to the project that we need to publish.
There is a tab called Build and Release, and there should be an Azure web app template.
Once applied, you need to first choose which Solution to build and deploy, kinda like WEBDEPLOY before.
Then we need to link our azure account and then choose which app service to deploy on.
The link happens when you authorize your visual studio by logging in to your azure account. Note that this is a pop-up.
Then click refresh if you dont see your app service on drop-down.
Then viola, you can now save or save and then already queue for deployment.
This should queue up and warm up an available agent again, like WEBDEPLOY before.
Once the Agent fires-up the deployment, you will notice that the scripting engine and console is going to be shown and you will see the progress of this.
Aha! You are still using WEBDEPLOY! Long live web deploy!
NOOOOOOO! Okay, new Relic is giving me a bump. Like the old WEBDEPLOY, file is in used so therefore you cant override and your deployment task will fail.
As I remember, its just as easy as:
Or we could just easily do a slot deployment and switch slots after . I just remembered that I am on B1 tier in Azure. There is no slot deployment for that! Great.
I remembered, this is my PERSONAL site, no one visits this or any use of this. Lets just stop the site.
So lets do this, lets insert two deployment task in the build definition. One to stop and one to start, effectively a sandwich before and after deployment. So add an Azure App Service Manager task.
The first one, stop the App Service. You know which subscription and app service to stop.
After the Azure Service Deployment task, we should start the service.
Lets try it out, save the build definition and queue build!
Aha! Stop worked!
Build says its okay and was deployed successfully.
This got me thinking, we are really in the cloud already and from requesting certificates to installation, scaling my application and even a source code rebuild-test-deploy that I haven’t touched not a single MMC or any server directly.