The Shippable Blog

The Difference Between CI Pipelines and DevOps Assembly Lines

What's in a name? wrote the greatest Bard that ever lived.

He was wrong. If someone ever asked me a hypothetical question about which dead person I'd want to have a conversation with, it'll definitely be Shakespeare. Let me explain why.

When we launched Shippable Pipelines last year, we wanted to highlight the difference between plain vanilla CI and the capability to put together a deployment "pipeline" that spans orchestration across multiple environments and supports all tasks involved in software delivery like CI, infrastructure provisioning, test automation, deployments, security patching, release management, config mgmt, service discovery, etc. 

However, shortly after we launched, other CI providers launched their own interpretations of "pipelines"! For example,

How did everyone come to the same exact place so rapidly? As we found out, they didn't. Pipelines was being used as a fancy name for CI, with features that Shippable had supported for over two years, like Matrix builds for splitting tests or testing against multiple environments for example. 

We needed a way to explain why Shippable is different. This blog explains why we landed on DevOps Assembly Lines as the perfect way to describe our approach to DevOps and CI/CD. 

Q&A with Adrian Mouat, author Of 'Using Docker'

Our very own Pavan Belagatti recently chatted with Adrian Mouat, the author of Using Docker. Read on about what he has to say about the book, the future of Docker, and DevOps...
 
 
[Pavan] Hey Adrian, thanks for taking the time to chat with us. Can you introduce yourself to our audience?
[Adrian] I work for a company called Container Solutions whose mission help companies transition to the new "cloud native" world of containers, orchestrators and microservices. My title is "Chief Scientist" which means I'm responsible for investigating and developing software designed to help companies adopting cloud native. A lot of my time is also taken up providing training and speaking about cloud native technologies such as Docker.
 
[Pavan] When did you become passionate about Docker? What is the story behind it?
[Adrian] At a previous company, we started using Docker and running a Docker meetup, where we realised its huge potential. It enabled us to rapidly iterate on a few projects we were playing with, which would have taken far longer with VMs or other approaches.

Build, test and deploy applications independently from a monorepo

In our previous blog posts, Our journey to microservices: mono repo vs multiple repositories, we shared our thoughts and experiences on our approach with monorepo. We received a few questions after that blog on how CI and deploys go with the monorepo.

In this article we will learn how to run CI, build and deploy applications independently from a monorepo. On each PR/commit we will run tests on the service which has changed build a docker image from it and push it to a registry. This image can then be deployed to to a cluster on any supported Container ServiceWe will use Shippable for this scenario.

Docker in Continuous Integration: Part 3

A Docker image registry service makes it easy for developers to store, manage, distribute and deploy Docker images. Use a registry service to control the storing of your images, fully own your images distribution pipeline and integrate image storage and distribution tightly into your in-house development work flow.

This blog covers "Pushing a Docker image to a registry of your choice" scenario in the Docker in Continuous Integration (CI) series. We'll go over a simple example and look at advanced scenarios of using Docker images within CI and Continuous Delivery (CD) Pipelines.

Docker in Continuous Integration: Part 2

This blog explains "Build your own Docker image" scenario in the Docker in Continuous Integration (CI) series. The three scenarios covered in this series are:

  1. Use an existing Docker image
  2. Build your own Docker image
  3. Push a Docker image to a registry of your choice

We'll go over the reasons to build your own Docker image, steps to do so and an example to follow along.