Declarative Continuous Deployment Pipelines

Pavan Belagatti
3 min readNov 7, 2016

--

Continuous Deployment is the key for every software powered organization to increase the overall productivity and make things move fast.

The motto is to automate repetitive tasks as much as possible, so that, the team can focus more on the product, developing the core features for the end user.

However, many of you might argue to have a homegrown CD pipelines but Continuous Deployment (CD) today is synonymous with fragile homegrown solutions made of disjointed tools cobbled together with thousands of lines of imperative scripts which is hard to create, maintain and many of the organizations cannot afford it.

Continuous Deployment always aims at innovation and platforms like shippable have all the integrations and support for your organization from running unit tests to production and ultimately deployment.

​Most organizations today are at L1 or L2 of this maturity model, i.e. they have a CI server that runs unit tests and packaging for every code commit. Some have the capability to deploy to one endpoint as part of their CI. However, this does not address the flow of that service or application through various test environments and ultimately to production.

Avi Cavale, co-founder, and CEO at Shippable walks you through the CD maturity model and demos an end to end continuous deployment with declarative pipelines for Docker applications.

Advantages of practicing continuous deployment:

Dev Teams:

Eliminate DIY for CD and focus on product

> Leverage declarative YML based constructs and stop building imperative scripts

> Configure and manage entire pipelines from git

> Visualize application dependency graphs in a single pane of glass

Test Teams:

Automate repetitive tasks and focus on testing

> Provision and destroy test environments on-demand

> Automatically fire test suites on code commits, isolating each problem to a single SHA

> Manage product versions as part of the workflow and create quality gates for automated product releases

Ops Teams:

Make deployments frictionless without compromising security

> Centralize management of configurations, security patches and access control across environments

> Track and audit all changes made to production all the way back to source control

> No touch deployments and auto-scaling of applications in production

Conclusion:

Homegrown continuous deployment pipelines are prone to errors and creating them takes a lot of time and the cost involved in spinning up servers and other supported objects is too high. So, going for a third party platform that does the work for you is way better and it saves time which you can invest in analyzing your product and making plans for your next release.

So, what are you waiting for?

Go deploy your first Continuous Deployment Pipeline today!

--

--

Pavan Belagatti

Developer Evangelist | AI/ML| DevOps | Data Science! Currently working at SingleStore as a Developer Evangelist.