JAX DevOps Blog

5 Tips for Utilizing CI/CD for Microservices

6 May 2019

Are you trying to integrate a CI/CD pipeline into your microservices project? Here are five useful tips from JAX DevOps speaker Nir Koren. Protip: your pipelines will be more robust than ever as long as you can unify and control CI/CD processes.

It is undeniable that CI/CD pipelines for microservices have exhibited significant growth. Here, I go over five concepts which I think are crucial for managing proper and robust CI/CD pipelines. Hopefully, we’ll see better implementations in 2019!

Tips and tricks

Control your CI/CD processes for all services – Make sure you provide the right tools and features! You should always know what is going on in your CI/CD infrastructure, so you can change and enhance anything you want on the spot.

Make all CI/CD processes for all services are unified as much as possible – It’s important that all services have the same build, deployment, and tests skeleton. The logic should be implemented specifically in the service build configurations (POM, build.gradle, package.json, etc.), but the processes should remain the same. In that way, your Ops will be able to support each service CI/CD process without getting into it too deeply.

Enforce governance outside the service code – Write the tools and code that make some post-build actions like static code analysis, DB saves, or security scans, so developers won’t be able to mark steps unintentionally. In that way, you can fulfill mandatory standards and corporate rules.

Hold all CI/CD configurations in a single location and make sure all services inherit from this location –Every plugin, version, and release behavior should be stored in a single location. If you add new behavior, upgrade a dependency or plugin version, then you should do it from a single location. That way, it will be implemented for all services instantly.

If you cannot find the perfect tool, take control and develop it – If your organization deploys in a different way or maintains a specific style, it’s likely that you won’t be able to find the right tools for the problem. Develop it yourself instead. Maven plugins, Node.js plugins, and any other packages can ensure unified way all services are running in the same way exactly as you need and in that way – Ops can support all services.

Interested in integrating a CI/CD pipeline for your microservices environment? Nir Koren will be at JAX DevOps in May 2019. His talk “CI/CD for microservices: Rule them all” is a part of the Continuous Delivery track, which is all about practical knowledge on how to automate software delivery and boost productivity. Join us at JAX DevOps in London this May!

 

JAX DevOps Continuous Delivery Track Sessions:

Wednesday, May 15 2019
17:10 – 18:00

Wednesday, May 15 2019
14:45 – 15:35

Behind the Tracks

BUSINESS & COMPANY CULTURE
the process of becoming fully agile
CLOUD PLATFORMS
Cloud-based & native apps
DOCKER & KUBERNETES
Docker, Kubernetes, Mesos & Co
CONTINUOUS DELIVERY
Build, test and deploy agile
MICROSERVICES
Maximize development productivity
Business & Company Culture

Business & Company Culture

Cloud Platforms

Cloud Platforms

Docker & Kubernetes

Docker & Kubernetes

Continuous Delivery

Continuous Delivery

Microservices

Microservices

Monitoring & Diagnostics

Monitoring & Diagnostics