Overall Satisfaction with Jenkins
We use Jenkins to coordinate internal infrastructure teams with external development teams to make sure deployments are done in a consistent and automated fashion. This increases security in the infrastructure as well, as we do not need to create user accounts for the developer teams in the deployment environments. We use Jenkins to deploy PHP, Ruby, and .NET applications.
- Build and deployment automation. You can build almost any code base from most standard code repositories and push the artifacts to the application servers.
- MANY MANY plugins. The Plugin community is huge, so if Jenkins doesn't do something out of the box, there is probably a plugin to do it.
- Multiple step orchestration. Any build can be created with many steps, including pre and post build. Additionally, you can tie builds together.
- User management is a bit simple, and it is hard to manage users across multiple clients with the Jenkins internal database.
- Automated deployment and configuration of Jenkins itself. The config files are hard to template out and change with each version.
- Windows Slaves. Windows Java slaves are unreliable, especially when run as a service.
- It's open source, so the cost is very good.
- Allows for streamlining deployment process, saves dev team a lot of time!
- Simplified user management on application nodes.