Jenkins is an open source CI/CD automation server that teams self-host to build, test and deploy code, extended through plugins.
Jenkins runs the build, test and deploy steps a team writes down, on servers and agents that the team operates itself. The project is part of the Continuous Delivery Foundation, with its assets held by Linux Foundation legal entities. It does not develop or distribute Jenkins for commercial purposes, and its source code is public on GitHub. Work is defined as a Pipeline, written in a Jenkinsfile that is stored and versioned beside the source code. The Declarative syntax offers Parallel and Matrix sections, cron and pollSCM triggers, and an input step that waits for named users or groups to approve a run. Multibranch Pipelines build each branch and validate pull requests through the GitHub and Bitbucket Branch Source plugins. Credentials are stored encrypted on the controller and masked in the console log, and Shared Libraries package common steps for many pipelines. Build output moves through the archiveArtifacts and stash steps, the junit step records test results, and plugins such as Job Cacher, Flaky Test Handler and OpenID Connect Provider add caching, flaky test handling and keyless cloud authentication. Jenkins suits platform and DevOps engineers who want CI/CD to run inside their own infrastructure rather than on a hosted service. It installs from a Docker image, on Kubernetes, on Linux, macOS or Windows, as a WAR file or as an offline installation. Organisations with many repositories can keep one set of Shared Libraries and one pool of agents for every team. There is no hosted edition, so a team downloads the software and runs its own controller and agents. A common setup checks out code from GitHub or Bitbucket, builds it with Maven or Gradle and runs the test suite on every pull request. As a continuous delivery hub, a pipeline builds a Docker image and pauses at an input step before the deploy stage runs. Nightly jobs start on a cron trigger, while agents on Linux, Windows and macOS let one pipeline test the same code on all three systems. Blue Ocean then shows each run as a stage graph beside its steps and logs. Jenkins fits teams that want the build server, its agents and its credentials under their own control.
Pricing
-
Jenkins
Free
- Open source under the MIT license, nothing charged
- Full CI/CD server installed on your own machines
- Runs on Docker, Kubernetes, Linux, macOS, Windows or as a WAR file
- Plugins are separate and also free
- No hosted runners and no build minutes; builds run on your own agents
- Dependency caching, flaky test handling and OIDC tokens come from plugins, not the core
- Pull request builds need a GitHub or Bitbucket Branch Source plugin
Features
- Included: Pipeline as code in the repository
- Included: Pipeline triggers on push and pull request
- Included: Parallel jobs and matrix builds
- Included: Dependency caching between pipeline runs
- Included: Self-hosted runners
- Not included: Hosted macOS, Windows and Linux runners
- Included: Scheduled pipelines
- Included: Manual approval gates before deploy
- Not included: Protected deployment environments
- Included: Masked secrets for pipeline jobs
- Included: OIDC cloud credentials for jobs
- Included: Reusable pipeline templates
- Included: Test reports with flaky test detection
- Included: Artifact passing between jobs
- Included: Pipeline duration and success analytics
- Not included: Merge queue
- Not included: Free monthly build minutes
- Included: Self-managed CI server edition
Additional Features
- Jenkinsfile Pipeline as code
- Declarative Pipeline syntax
- Parallel and Matrix stages
- Multibranch Pipelines
- GitHub and Bitbucket Branch Source plugins
- cron and pollSCM triggers
- input step approvals by named users or groups
- Encrypted credentials masked in the console log
Best for
- Teams that run CI/CD on their own servers or Kubernetes clusters
- Organisations whose builds must stay inside their own network
- Platform teams maintaining shared pipeline code for many repositories
- Teams validating pull requests on GitHub or Bitbucket
- Java projects built with Maven or Gradle
- Engineers willing to operate a build controller and its agents
- Teams testing one codebase on Linux, Windows and macOS
Use cases
- Running a simple CI server for a team's repositories
- Using one server as a continuous delivery hub
- Building and testing every pull request before merge
- Running nightly builds on a cron schedule
- Pausing a deployment until a named approver signs off
- Testing one build across several platforms in parallel
- Sharing common pipeline steps across repositories
- Caching dependencies between pipeline runs
- Issuing short-lived identity tokens to builds for cloud access
- Archiving build artifacts for later stages and downloads
Screenshots & Videos
Explore Jenkins in action
User Reviews
Compare with Similar Software
Click to compare side by side with Jenkins