Jenkins
I scoped out Jenkins quickly.
lima nerdctl run \
-p 8080:8080 \
-p 50000:50000 \
-v jenkins_home:/var/jenkins_home \
jenkins/jenkins:lts-jdk17
-
It gave a password to unlock the Jenkins instance, I then had to make an admin user.
-
8080is the default port for the web interface. -
50000is the default port for agents to connect to the master. -
You can run jobs on the master, but it is not recommended.
-
You can run jobs on agents, which are separate machines that connect to the master.
-
There were 1000s of open bugs, many of which security related, on the issue tracker.
-
Many of the plugins were official and hosted at https://github.com/jenkinsci.
-
Some people complained that plugins were difficult to maintain/upgrade.
-
There seems to be no option for a cluster of Jenkins masters for disaster recovery purposes. The only DR option seems to be backup and restore.
- It seems to be possible to run Jenkins in Kubernetes for High Availability (HA) purposes.
-
It’s possible to orchestrate Jenkins with infrastructure as code or configuration management tools.
-
It is very highly configurable and there are lots of triggers.
-
It is possible to create some very complex pipelines.
-
Jenkins X is a Kubernetes native CI/CD tool that is built on Jenkins. Superficially it seems to have less open bugs than Jenkins.