Jenkins - Hard to use but can be set up to do anything
Updated October 10, 2024

Jenkins - Hard to use but can be set up to do anything

Anonymous | TrustRadius Reviewer
Score 7 out of 10
Vetted Review
Verified User

Overall Satisfaction with Jenkins

We use Jenkins to build and deploy all our applications. This range from web services, APIs, docker images, automated tests to small helper scripts. It automates all our build flows and make sure we always build using the same environment like most CI. As we have many applications depending on one API that have to be rebuilt every time, Jenkins provide us a cheaper alternative that is not dependent on build minutes.

Pros

  • Build java applications
  • Plugins for any use case
  • Able to adapt to your needs
  • Supports Active Directory integration

Cons

  • UI can feel quite clunky and slow
  • More functionality built in instead of having to rely on third party plugins
  • Project of type Maven is most of the time buggy, we need to use free-style project to avoid this bugs losing out of the box functionality
  • Our cost for CI is really low compared if we would use cloud providers
  • Cost of maintenance is a drawback, we are manually updating plugins and Jenkins on a regular basis
  • We are using several different JDK versions - Jenkins let us manage this in a very good way
Jenkins is quite hard to configure and the User Interface is slow and hard to navigate. It takes some time to get to use to the interface and know the "tricks" in order to set up the jobs to your liking. Even if you use a pipeline file you will have to do some configuration and extra steps.
Bitbucket building was very slow, in order to improve that you have to upgrade to spend double or more minutes per build minute. The GUI was also very slow in updating on the progress of the builds, making things rather confusing. GitLab worked a bit better in my opinion, but didn't have the same type of integration capabilities that Bitbucket and Jenkins have.

Do you think Jenkins delivers good value for the price?

Yes

Are you happy with Jenkins's feature set?

Yes

Did Jenkins live up to sales and marketing promises?

I wasn't involved with the selection/purchase process

Did implementation of Jenkins go as expected?

Yes

Would you buy Jenkins again?

Yes

I think Jenkins is well suited if you are using a lot of build minutes and have to use your own hardware. It is also well suited if you need to customize your build and deploy process quite much, which is very possible with Jenkins. If your build and deploy needs are rather straight forward, it might be easier to just get a cloud service that provide you with easier to use interface and processes.

Using Jenkins

12 - The people that work with Jenkins are mostly software engineers. We have two teams, one working on more backend and API development and another team working on more client facing applications. The two teams are using Jenkins for building, packaging and deployment of the applications.
Besides the software engineer, we have test engineers running automated test cases using Jenkins.
2 - Usually the people that have kept an active maintenance of Jenkins is more inclined to be interested in systems and devops side of things. In our case, you would need to know about Docker, Docker Compose and of course of Jenkins to maintain it. You also need some knowledge about Linux in order to allow for some connections we have from Jenkins container to the host system for various jobs.
Besides that you need to keep track of different plugins that might be out of use or need to be installed.
  • Packaging applications
  • Deployment of packaged applications to repositories
  • Deployment to different environments from repositories
  • Test automation
  • Maintenance of other systems (automation)
  • Use it to update tickets in Jira in deployment flows
  • Maintenance activities of JFrog Artifactory
  • Maintenance of docker (prune and registry)
  • Branching git repositories in bulk
  • Performance testing
  • API testing
  • Closer integration with Kubernetes
We have a certain buy-in as we have made a lot of integrations and useful tools around jenkins, so it would cost us quite some time to change to another tool.
Besides that, it is very versatile, and once you have things set up, it feels unnecessary to change tool. It is also a plus that it is open source.

Evaluating Jenkins and Competitors

  • Integration with Other Systems
  • Other
The most important factor was that we could run it in-house on our own servers. This has allowed us to save costs as we are using a lot of minutes every day.
Otherwise, we are two different teams using Jenkins so we needed a tool that can integrate and work with many different functionalities.
I would probably consider the possibility to have the CI in a cloud environment as it takes some time to maintain Jenkins. I would also have included more tools in the evaluation, now a days there is a lot of different open source options.

Jenkins Implementation

It is worth well the time to setup Jenkins in a docker container. It is also well worth to take the time to move any "Jenkins configuration" into Jenkinsfiles and not take shortcuts.
Change management was a small part of the implementation and was well-handled - We went from doing the jobs in a home built tool, so the step to moving this into Jenkins was a big improvement. There were no real issues moving to this way as Jenkins was basically doing the same things that the old system was doing but in an automated way.
  • We wanted to run Jenkins in a docker image, and it was a bit hard to set up as the documentation was at that point not very clear
  • We needed Jenkins to communicate with the docker daemon to start other containers from within the container, this was a bit tricky to get right

Jenkins Support

Have not contacted support
We do not have support and we chose not to purchase premium support. The reason is that there is a lot of information available online on problems related to Jenkins and so far we have found answers to our questions on the web.
I cannot describe this as we have not had support for this product.

Using Jenkins

ProsCons
Consistent
Familiar
Unnecessarily complex
Difficult to use
Requires technical support
Not well integrated
Cumbersome
  • Parameterizing jobs in different ways
  • Job history and logs
  • Configuration is somewhat hard to understand
  • We have some old style configuration jobs, and they are challenging to change

Comments

More Reviews of Jenkins