Umbraco Cloud is a solution to hosting Umbraco based projects in the cloud?
What is Umbraco
Umbraco is one of the most popular CMS frameworks based in C#/.NET.
What is Umbraco Cloud
Umbraco Cloud is a solution to hosting Umbraco based projects in the cloud. Umbraco cloud is based on the Microsoft Azure cloud platform. So why do we even bother with Umbraco cloud if you can put it on the azure platform? Firstly there is the cost. Azure can be unpredictable. As Microsoft is charging you for almost everything the monthly running cost can vary a lot and cannot be easily predicted. Umbraco Cloud offers only a few plans which have a fixed cost. Also, as soon as you start using Umbraco Cloud you get access to the support team that knows all the twists and quirks of the Umbraco + Umbraco Cloud environment. As our experience showed they’re quick to answer and in most of the cases can solve the issue quickly. At this point it’s worth mentioning that the UI is good, clear and doesn’t cause too many issues on day to day basis. Finally, you get your own git repository to store your website’s code.
Yeah… git repository and your code
Your code must be a website. It can’t be web application. It’s fine if you’re sticking to a small solution with not a lot of custom code. But sooner or later this will start causing problems. No references or being unable to use MSBuild might be some of them. We didn’t like that approach but the biggest issue we found was the scenario where you’re supposed to keep all your source code in that git repo. We just felt a little uncomfortable with sharing our code with both Umbraco team and Microsoft.
So we went out and started asking around to find out what people do and how do they manage this issue. The proposed solution we ended up is not perfect, but it allowed us to:
– Keep our code as web application
– Keep our source code where we want to keep it
So how do we do it
We keep our application in the place we want. We do all development in the project separate to Umbraco Cloud project and we can use the source control we want. When it comes to deploy our changes we simply publish our website to the folder where the Umbraco Cloud git is. Thanks to that we only keep in the Umbraco cloud built version of our web application, without having to share the source code with Umbraco.
If you have already started with your own Umbraco website and have created a web application our recommendation would be:
– If you want to keep all your code in Umbraco Cloud and have not done extensive coding – just follow the instructions prepared by Umbraco team how to move your existing code https://our.umbraco.org/documentation/Umbraco-Cloud/Getting-Started/Migrate-Existing-Site/
– If you want to keep all your code in Umbraco Cloud and have already done extensive coding – we strongly suggest rethinking your approach as moving to web site can cause a lot conflicts and might require a lot of additional coding
– Otherwise do what we ended up with
Is this the best solution? Possibly not. Is it completely painless? Not really. Occasionally you will have to merge changes made in your live Umbraco with the local ones but we still think it doesn’t outweigh the pros of having a web application and being able to use the source control we want.
To sum up
Would we use Umbraco cloud now? With all the knowledge we gained during the development we would probably go straight to Azure or select any other .NET hosting.
Do we recommend going with Umbraco Cloud – yes if it’s your first Umbraco project. It’s easy to run away from Umbraco Cloud if needed but in our case the technical support we received was worth giving it a try.