CI/CD Cross-platform for Development Software
Submitted By Jenkins User Irvin Bonilla
This Spain-based company was challenged to implement the creation of a Continuous Integration environment to allow dynamic workers in Jenkins.
Organization: Kairos DS, https://www.kairosds.com
Programming Language: C/C++, Java, Node.js, PHP, Python
Platform: Android, Docker or Kubernetes, Linux, Windows
Version Control System: Bitbucket Server, GitLab
Build Tool: Gradle, Maven
Community Support: Jenkins.io websites & blogs, Spoke with colleagues and peers
Team: Daniel Majano, DevOps Engineer
K8s Plugins for Jenkins dynamic workers
lead to zero downtime in business hours.
Background: The principal implementation challenge was the creation of a CI environment to allow dynamic workers in Jenkins. The K8s plugins for Jenkins were the greatest ally. In addition, dynamic workers show the responsibility to use the right values for memory and CPU requests in the K8s cluster managed by Jenkins Master. We got measures from distinct pod types to choose the request values.
Goals: Reduce the time to market. Agility in software development.
Solution & Results: The solution was the monitorization over Jenkins master and Jenkins dynamic workers. The request values ( CPU and memory) in our K8s cluster are based on pod type by technology, build tools, and business platform. This solution provides the efficient use of the K8s cluster.
Key capabilities include:
- K8s Plugins for Jenkins dynamic workers
- Plugin for exposing monitoring endpoints such as a Prometheus plugin
- Bitbucket multibranch plugin for use or SCM
- In addition, the best feature of Jenkins is the worldwide community
We are happy with the results:
- Dynamic workers
- Request values by pod type in k8s cluster
- Infrastructure as a code using helm chart official
- Zero downtime in business hours
- Faster upgrades