Jenkins

The leading open-source automation server for CI/CD.

Overview

Jenkins automates the repetitive parts of software delivery - building, testing and deploying. Every time code is pushed, Jenkins can compile it, run the tests, check quality and publish or deploy the result.

With hundreds of plug-ins and pipelines defined as code (Jenkinsfile), it fits almost any technology stack.

Where it is used

  • Continuous integration for Java and web projects
  • Automated testing
  • Automated deployment to servers
  • Scheduled maintenance tasks

Run Jenkins and a first pipeline

docker run -p 8080:8080 -p 50000:50000 -v jenkins_home:/var/jenkins_home jenkins/jenkins:lts
pipeline {
    agent any
    stages {
        stage('Build') { steps { sh 'mvn -B package' } }
        stage('Test')  { steps { sh 'mvn -B test' } }
    }
}

What you will cover

The key topics and features of Jenkins

Pipelines as Code

Describe your build in a Jenkinsfile stored with your code.

Plug-ins

Integrations for Git, Maven, Docker, SonarQube and more.

Distributed Builds

Run jobs on multiple agents.

Notifications

Email, chat and dashboard feedback on every build.

Scheduled Jobs

Run builds on a schedule or on every commit.

Docker Support

Build and run in containers.