What is our primary use case?
There are many use cases for Jenkins. We have an AWS infrastructure in which we have created templates for the provisioning of the infrastructure, and for the infrastructure network appliance, we use Jenkins.
For the builds, we use Docker images, Maven, Gradle, and other builds. We send all the build environments to the Artifactory Servers running Jenkins.
For any deployments to the systems, such as any standalone machines, Kubernetes cluster, or Auto Scaling groups, we use the Jenkins.
If a Kubernetes cluster is ready and you want to have other external configurations we use Jenkins for all of the configuration setups.
Jenkins can be used to check vulnerabilities of any system or Docker images.
What is most valuable?
The most valuable features I have found are it can integrate other services as a plugin. For example, if you want to integrate GitHub, or third-party tools, such as Prisma scan, you can have them as plugins and you start using them.
Jenkins can be used for elastic management, if you have any sensitive data or credentials you can use them across the environment. Additionally, the solution is easy to use and can be used across multiple use cases.
What needs improvement?
The solution could improve by having more advanced integrations.
For how long have I used the solution?
I have been using Jenkins for approximately four years.
What do I think about the stability of the solution?
The solution is stable. However, if you have any network interruption or any server failure it will not be stable.
What do I think about the scalability of the solution?
I have used the stand-alone Jenkins systems and I have other slaves configured with different systems or Docker containers and it has been operating well.
The scalable depends on the environment, if you want to have scalability it is possible. However, if there was a specific option to scale Jenkins systems it would be great.
We have approximately 250 users using this solution.
How are customer service and technical support?
I have not used the technical support from Jenkins but I have used the online forums which have been helpful in answering questions.
Which solution did I use previously and why did I switch?
I have previously used GitLab and Azure DevOps tools. I have found them both to be more complicated than Jenkins and this is why I switched. I am more familiar with Jenkins and this is another factor of why I use it.
How was the initial setup?
The installation is straightforward. All you have to do is update your repository and then install it. There are certain configurations needed after the installation, such as providing the secret key, accessing the server, managing the user access for separate groups, for example, development, performance, and QA groups all need different access levels assigned. It does not take more than 10 minutes.
What about the implementation team?
We did the implementation ourselves. Additionally, we can create scripts to do the configurations, this reduces the time needed for us to do them individually.
I am a DevOps engineer and we configure or automate deployments, schedule deployments, and then giving access to certain teams, such as the QA teams. They login in the morning and then if they want any new deployments, they can get it done.
There is a development team to a certain environment, such as test environments, where they can test their code. They have a particular job and can do the deployments by themselves.
What's my experience with pricing, setup cost, and licensing?
Jenkins is a free open-source server.
What other advice do I have?
I would recommend this solution to others.
I rate Jenkins a nine out of ten.
Which deployment model are you using for this solution?
Hybrid Cloud
Disclosure: I am a real user, and this review is based on my own experience and opinions.