September 22, 2014 | Written by: Eric Minick
Share this post:
At first, it may seem silly. Why use dedicated deployment automation tools when your Platform-as-a-Service (PaaS) tooling makes it so easy to deploy your application? In Bluemix, you just click “Deploy” and your app gets deployed. Bluemix even provides concepts like a delivery pipeline so you can see which version of your app is where. And yet, there are very good reasons why you may find yourself needing a full-featured, on-prem deployment automation solution even while using PaaS.
1. You need to coordinate change with the back-end
Applications that take advantage of PaaS often need to work with services provided by existing applications that are not on the platform. When those APIs are relatively static, we can simply program against them and use the pipeline within the platform to deliver change. When new versions of our app require changes to those back-end APIs things change. We need to verify that the changes to our app work with the changes to the back-end services while both are in test environments. Then we’ll need to ensure that deployment to production is coordinated. Both front and back-end systems will need to be updated at the same time or the back-end may need to be deployed moments earlier than the front. When it’s desirable for single button press to run deployments of several things, application deployment automation tools like IBM UrbanCode Deploy become important. These tools are designed to apply the pipeline concept across several components that make up a business application. These components may be on different platforms, tiers or data-centers each with their own developers.
[Register Today: Live webinar on Using IBM UrbanCode Deploy with Bluemix in a Hybrid Cloud.]
2. Your app is deployed to multiple clouds
While most of what you develop on a platform like Bluemix will run there, some application teams will take a hybrid approach. Perhaps you want to take advantage of the Cloud Foundry underpinnings of Bluemix and run test labs in the cloud and production in the home data-center with your own Cloud Foundry implementation. Similarly, for a new WebSphere Liberty application, you may get up and running immediately in Bluemix while the provisioning production servers in your datacenter. This can make sense if the application will eventually hold sensitive data that regulations or corporate policies require stay in house. You can take advantage of PaaS to get started quickly and always have development and test environments on demand for freedom to experiment as the application grows.
Deployment Automation is your bridge
It’s easy to think about application deployment automation tools mostly as script killers that provide the built-in knowledge for deploying something like an ear file to WebSphere or a .Net app to IIS. A good PaaS tool provides that knowledge for how to deploy something. You just “cf push” and that’s it. The real value in deployment automation is in managing the pipeline of related stuff, whatever it is and wherever it is deployed. It gives you the button you press to deploy not just an app, but a full business application with back-end services and elements in different data-centers or clouds.
To learn more, check out this live webinar on Using IBM UrbanCode Deploy with Bluemix in a Hybrid Cloud.