DEV Community

Discussion on: Free CI/CD for your personal or entrepreneurial endeavors! 💸

Collapse
 
nikoheikkila profile image
Niko Heikkilä

At work we are running our own Gitlab instance with configured CI runners which is very nice for security without endangering usability. I like the ability to customize the build by placing a special YAML file in project root similar to how Travis handles it.

Automated acceptance tests are run nightly in a Docker platform using Jenkins. In the future we are planning to combine all the tests into a single pipeline with deployment capabilities. That I'm looking forward to.

Whatever the purposes for adopting CI/CD are I recommend to start small and add layers on top of each other. Start from static analysis and make your code lovably clean, then continue by adding automated unit tests and automated acceptance tests. Finally design an automated deployment model to testing / staging platform and have QA specialists perform UAT / exploratory testing before the ultimate production deployment. Always pay attention to keep this pipeline as fast and efficient as possible. It's a lot of hard work but in the end you'll have a short feedback loop where customers get the value they desire without waiting. Sure, they receive buggy features from time to time as well but at least you can provide the necessary fixes as fast.