A (Truly) Continuous Integration and Delivery System
A few days ago at work I decided to finally make the move and bring Continuous Delivery to our systems.
We already have been using Continuous Integration for some years, so to implement the CD system I simply had to add to the end of the CI pipeline something like this: “if this is a full build and 100% of the tests and checks are ok, then increment the project version by 1, commit the new version to the repository, generate a new package and alert everybody of the team about that”, really simple!
The thing is, every commit made triggers the CI system, which then proceeds to run the tests, increment the project version, commit the new version, generate a new package and warn everybody on the project. After that the CI system detects a new commit and starts running the tests, increment the project version… ∞
So I think I just gave the word “continuous” from Continuous Integration/Delivery a new meaning since I now have a never ending integration/delivery system, once it starts it never stops*!
* Not really, I fixed it right away, but it was fun to see it running ☺