Generally, it is not possible to just take what you develop for one cloud platform and put it on another. This is because they have various functionality sets and they expose different APIs. Nevertheless, the lower level code you have, it is more likely that you’ll find another vendor which has a similar API, this is because virtualizing infrastructure is way more simpler that virtualizing a CMS application.
If you’re using IaaS, it is possible for you to port fairly rapidly but for that, you’ll have to do more work to make your application. If you're using PaaS (or SaaS!) then you're more locked-in but you get more support for developing rapidly: it's that support platform which is both the value-add and the lock-in, and you won't get one without the other.