CI/CD/CT
with
DevOps

About me

(Click images)

Book - CI on mobile apps

Github

Training Website

Open Source

Continuous Integration

Continuous Deployment

Continuous Delivery

DevOps

Extreme Programming (XP)

Test Driven Development

Continuous Test Automation

IaaS/PaaS/SaaS/DaaS

Micro Services

Agile

So much Jargon !

Research and Survey Findings

CI/CD/CT

Continuous delivery is a methodology that focuses on making sure your software is always in a releasable state throughout its lifecycle.

Continuous Integration (CI) is a development practice that requires developers to integrate code into a shared repository several times a day. Each check-in is then verified by an automated build, allowing teams to detect problems early.

Continuous Test Automation ensures that automated acceptance tests are written alongside new code to ensure that new features meet business requirements, and existing high-value features are protected against regressions.

Traditional vs. Continuous Delivery

CI/CD Patterns - Sample

CI/CD Patterns - Sample

Continuous Delivery Maturity Model

(Guideline not Authoritative)

Levels in Maturity Model

  • Base: The base level is enough to “be on the model”. The team has left fully manual processes behind.
  • Beginner: At the beginner level, the team is trying to adopt some ECD practices in earnest but is still performing them at a rudimentary level.
  • Intermediate: Practices are somewhat mature and are delivering fewer errors and more efficiency. For many teams, Intermediate practices may be sufficient.
  • Advanced: The team is doing something well beyond what most of the rest of the industry and is seeing a great deal of efficiency and error prevention as a result.
  • Extreme: Elements within the Extreme category are ones that are expensive to achieve but for some teams should be their target. Put another way, most organizations would be crazy to implement them, while this minority would be crazy to not implement them.

Building

Deploying

Testing

Reporting

Some Tools

Suggestive not Authoritative

A View (CI/CD)

Docker View (CD)

Full CI/CD/CT

Nexus

Dependency Management, Application Release management,Software Compliance Management ,Security and Vulnerability Analysis ​, Nexus Firewall

SonarQube (Quality)

Centralized Logging and Analytics - ELK

Centralized Logging and Analytics - SLK

Configuration Management

  • Chef
  • Ansible
  • Puppet
  • AWS
  • Azure
  • Docker
  • Kubernetes
  • and so on...

Test Automation

  • Cucumber
  • Selenium
  • API clients
  • Sauce Labs
  • Testing Frameworks

Challenges remain

Demos

deck

By Pradeep

deck

High Level Overview of understanding Continuous Delivery with Dev Ops

  • 1,682