Course Code: bspjka
Duration: 14 hours
Prerequisites:

Prerequisites for the Jenkins Advanced course:

• Understanding of Jenkins basic features and capabilities (recommended training: Jenkins Fundamentals)
• Basic knowledge of distributed version control systems (Git Fundamentals)

Nice to have:

• Required skills include running Unix commands, navigating the file system, and creating and editing text files
• Prior experience in developing web applications

Overview:

Jenkins Advanced course covers advanced topics related to working with Jenkins CI.

Course Outline:

This course is designed to prepare for the exam certification in order to become a certified Professional Release Engineer.

Module 1: Git/github recap

Module 2: Integrate your Docker SSH server with Jenkins
– Run your Jenkins job on your Docker remote host through SSH
– Introduction: Jenkins + Ansible
– Install Ansible: Docker + Jenkins
– Integrate Ansible and Jenkins (Ansible Plugin)
– Learn how to execute Playbooks from a Jenkins Job
– Add parameters to Ansible and Jenkins

Module 3: Pipelines
– Create a Jar for your Maven App using Docker
– Create a Dockerfile and build an image with your Jar
– Create a Docker Compose file to automate the Image build process
– Learn how to test your code using Maven and Docker
– Create a bash script to automate the test process

Module 4: Jenkins CI beyond the basics

Module 5: Jenkins REST API overview
– XML API
– JSON API
– Creating jobs with Jenkins API–python sdk

Module 6: Using groovy with Jenkins
– Groovy script console
– Groovy jobs

Module 7: Groovy with dynamic parameters
– Post build groovy plugin

Module 8: Using Shared Libraries in Jenkins
– Scripted Pipeline
– Using a Jenkinsfile
– Multibranch Pipelines
– Introduction to Shared Libraries – Restart from a Stage

Module 9: Jenkins Security
– Authentication
– Authorization
– Accounting
– Global Security Settings
– Managing Credentials
– Security Best Practices

Module 10: Debugging Jenkins with system logs

Module 11: Monitoring Jenkins