Microsoft Azure and Dreamspark Subscription with CI

If you are a student and you have access to a School account of Azure and Dreamspark, surelly have some problems:

Problem 1 – In case that your school email is a Microsoft Organization Account( work or school ), when you try to activate you DreamSpark Azure Subscription you will notice that is impossible to redeem your subscription in your school provided account.

Problem 2– And as  Microsoft says: “Visual Studio Online Continuous Integration is not currently compatible with our Azure offer”. This is indeed true! if we go to VSO and we try to make an Azure deployment in the configuration process we find this message:

message

So, as they told us, the accounts will never be able to connect itself.

Althought it IS possible to criat a Continuous Integration Setup between your VSO  and your Azure account without external repos!!!

The solution– When you create a dreamspark account, even if it is with your organization account(OrgID), Microsoft creates a LiveID  account with your OrgID account. althought they are diferent entities from diferent realms. Now when you try to redeem the code to your Azure OrgID account, it will show a error saying that you are not using the DreamSpark account and you cannot redeem it!
So to workaround this we need to log in on DreamSpark with a anonymous browser,  redeem your subscription and it will be created a new LiveID Azure Account for you with this subscription activated!

Now to the Continuous Integration…

In your VS2015 project, if you try to publish it on Azure it will work without any problem. When you do this inside the Properties folder there will be a PublishProfiles folder and inside it there is a *.pubxml file.

This file has all the necessary data to publish the project on Azure (excepto the password, it is stored somewhere else). You will need to commit this file on the repo to allow the continuos integration setup on VSO.

Attention: Your repo should be private because this file will contain the deployment password.

howto

 

In this file you should replace the <_SavePWD> to <Password>.

To get your Azure Deployment Password click on the button in the next image

howto2

 

 

This will download your publish data. Inside it there is a salted password, you just need to insert the password ou your publish profile on the  <Password> element.

Last but not the least add a Visual Studion Build Task on VSO

howto3

 

 

 

And you should define the following data

howto4

Where it says “StreetFood – Web Deploy.pubxml” you should insert your Publisher Profile file name, this way when this build is executed it will be automatically deployed on your Azure.

Demo:

We have the following site:

howto5

And we want to change the text from “All Users” to “All Test Users”

Let’s open the index.html file and perform the changes:

howto6

 

 

Save, commit and sync and the build is triggered

howto7

 

The build was successfull. Deployment done!

howto8

 

Now let’s refresh the web page and see if the deployment was successfull:

howto9

 

Ok the text was changed on Azure. So it was sucessfull.

Note that this example does not comply with the normal CI enviroment, there aren’t any tests or validations… this means that if you screw it up… you will screw your web app.

Leave a Reply

Your email address will not be published. Required fields are marked *