In the first part of this short series covering the RadControls for ASP.NET AJAX in the cloud, I showed you how you could quickly (and easily) start a new Azure Cloud Service project, add the RadControls, and then debug the project locally. The next step, of course, is taking that locally built and debugged project and deploying it to the “real” cloud fabric, hosted by Microsoft in their data center (not yet data centers…). That is where the rubber meets the proverbial road and we find out if the Telerik RadControls are really “cloud ready.”
HOW DO YOU DEPLOY TO AZURE?
Assuming you’ve built a new cloud service application (using the VS template) and you’ve debugged it locally and everything is working, you only need to complete these steps to deploy your app to the cloud:
- In Visual Studio, right-click on the “Roles” project (not the “Web” project that has your .aspx files) and select “Publish…”
- Visual Studio will now build and package your project for Azure
- IMPORTANT NOTES:
- 1) You must use the context menu to Publish the project. The Publish option from the Build menu does not perform the correct actions.
- 2) The Publish step bundles all files required to deploy your project to Azure, including the RadControls assembly
- Once the project is done publishing, VS will automatically launch your default browser and direct it to the Azure Developer Portal. VS will also automatically open the folder that contains the two files produced by the Publish action: YourProjectName.cspkg and YourProjectName.cscfg
- Log-in to Azure and (assuming you have a CTP token) create a New “Hosted Services” Project
- After you’ve given the project a name and description, click the “Deploy…” button under the “Staging” cube icon
- Upload your .cspkg and .cscfg files via the provided form
- Wait for an unknown length of time (could be as short as seconds or as long as 30 minutes) for project to “Deploy”
- Once the “Deploy” step is done, you need to click on the “Run” button to start your Azure “server” instance
- Wait for an unknown length of time (could be seconds, could be much longer) for project to start
- When project starts, you’ll see “WebRole” and a message indicating that the state is “Initializing”
- Continue to wait
- When the state finally changes from “Initializing” to “Started” (with a green icon), your Cloud Service site is ready for viewing
- Click on the temporary staging link and see your project running live on the cloud!
Assuming you’ve done everything correctly and you’ve patiently waited on all of Azure’s seemingly endless processes to complete the processing, you’ll have a site running live on the cloud with the RadControls for ASP.NET AJAX providing their familiar rich-UI.
HOW ‘BOUT THE GOTCHAS?
There really aren’t any new gotchas here. The only thing that may surprise you is the waiting. You really do have to have some patience to deploy a project to Azure (at least during the CTP), so be prepared to wait for ten minutes or more for some Azure processes to finish. Otherwise, things are very straight forward. Visual Studio packages your files and configuration. Azure consumes those packages directly. You click buttons and your site runs (in theory).
I NEED VISUAL PROOF
For those of you hoping to “see it to believe it,” I’ve got you covered. I have created two videos (so far) that cover both creating and deploying a simple “app” with the RadControls for ASP.NET AJAX to Azure. Both videos will be on Telerik TV soon and I’ll be sure to add links to this post when they’re ready. Until then, have fun playing with Azure and don’t be afraid to use your RadControls for ASP.NET AJAX as you tackle the cloud!