Last Thursday, I attended the Jenkins User Conference representing ElasticBox as Gold sponsor. It was an exciting event and it was amazing to learn how engineers are organized around their build release automation efforts using Jenkins for their Continuous Integration (CI). Jenkins is no doubt an awesome CI tool but if you desire a culture of code quality and innovation on DevOps concepts of agility where you iterate fast, deploy-fast, get quick feedback and are fast to market to wow your customers, you really need Continuous Delivery (CD).
CD is about having production ready code through a continuous and repeatable methodology at the push of a button. With ElasticBox and the ElasticBox Jenkins Plugin you extend Jenkins CI capabilities to gain CD.
At prior companies, I’ve seen Build Engineers use Hudson or Cruise Control to automate integrating code builds to generate archive packages such as a WAR/JAR files. However, the Dev & QA teams had to work with ITOps to manually preset dev/test/pre-production environments where they could download the latest build for unit, functional, performance and user acceptance tests (UAT). These environments had to be made available on time and managed to keep consistent with production environments. You had to know which machine you could use and still had to download the archive, unpack and reinstall. If there were configuration and/or schema changes then they had to be applied further extending the testing process. All these events had to be synchronized between Dev, QA and ITOps teams. The problem is exacerbated if there are multiple code bases and you can imagine how managing code delivery can become increasingly complicated with variations in environments, workflows, processes and tools.
This is where CD with ElasticBox Jenkins Plugin can come to the rescue. ElasticBox integrates with Jenkins with the ElasticBox Jenkins Plugin and provides you a prebuilt Jenkins Server ready for deployment. The plugin can launch Jenkins slaves and multiple replicas of your application environment in test, staging, or production with latest code changes from a source control software management system based on Jenkins build triggers. With it you can automate the deployment of complex multi-tier application blueprints defined as “Boxes” in ElasticBox to your cloud provider IaaS. You can also take advantage of your cloud provider services such as auto-scaling and load-balancing. The result is automated Continuous Delivery triggered by code commits that delivers ease of management and consistency across your dev, test, pre-production and potentially production environments. Now that’s something to cheer about!