I've been working in the field of DevOps for some time now and have learned about some tools like Jenkins, Docker, Kubernetes, Puppet, Artifactory, etc.. Although I know where each of these tools could be used and what purpose each of these serves, I really wanted to see how a fully implemented CI/CD looks like.

I understand that the solution would definitely change with the change in the requirements, technology stack, team size, etc. and that there is no God solution for everything but, I haven't seen a fully implemented DevOps lifecycle ever.

I'm not sure if asking for resources is prohibited here (Feel free to close the question if it is) but could you please redirect me to some article, blog, white paper or suggest me a book where I could learn and get a feel of what fully implemented CI/CD looks like.

up vote 1 down vote accepted

could you please redirect me to some article, blog, white paper or suggest me a book where I could learn and get a feel of what fully implemented CI/CD looks like.

Sure, look how Google does it.

I haven't seen a fully implemented DevOps lifecycle ever.

There seems to be a misunderstanding here. "DevOps" is a lot of things; but a "full" CI/CD (meaning each individual developer commit turning up in production fully automated shortly after the commit - continuous deployment (not only delivery)) is by far not the norm. In my experience with a few larger local and national customers, where production or business critical things are controlled by the software, and there usually are large amounts of critical data involved, it always stops before the production stage.

Full CI/CD is complicated. Yes, you can cobble the tooling together pretty quickly, but the prevention, detecting and backing out of unwanted commits is very hard. If you look at the above article about Google you will see that huge effort went into getting this to run (I seem to remember only their core DevOps team is about 100 persons, doing nothing than tooling; and then they invest a lot of work into peer reviews, knowledge transfer, etc. etc.). Whole ecosystems of components, procedures and mindsets were created specifically for this. The fact that we mere mortals get to play with things like Kubernetes is a result from that, their breadcrumbs if you will.

Even only the one fact that they are doing Trunk-based development would be too complicated (regarding processes, necessary quality requirements etc.) for many more normal, smaller teams.

We currently use the Jenkins as our CI/CD server and we use docker in every stage of our CI/CD.

Every time a change is pushed to a SCM, it is automatically built and deployed to production(cloud).

The Jenkins library feature helps to keep all generic steps in a centralized library and reused by every pipeline.

You can draw some inspiration from SAP S/4HANA cloud Sdk out of the box CI/CD. https://blogs.sap.com/2017/09/20/continuous-integration-and-delivery/

New contributor
Ram Kamath is a new contributor to this site. Take care in asking for clarification, commenting, and answering. Check out our Code of Conduct.
  • Can you, please, edit this answer to point out some specific part of the document that is relevant to the question? – Jiri Klouda Oct 16 at 18:08
  • The question was to guide to a complete CI/CD solution and I think the blog completely explains it. – Ram Kamath Oct 16 at 18:10

Your Answer

 

By clicking "Post Your Answer", you acknowledge that you have read our updated terms of service, privacy policy and cookie policy, and that your continued use of the website is subject to these policies.

Not the answer you're looking for? Browse other questions tagged or ask your own question.