7839  Reviews star_rate star_rate star_rate star_rate star_half

Jenkins User Boot Camp (Java/Python)

The 21st-century software engineering practices of continuous integration (CI) and continuous delivery (CD) have rapidly come to define the best practices for software development, quality assurance,...

Read More
$1,650 USD
Course Code JENKINSBC
Duration 2 days
Available Formats Classroom

The 21st-century software engineering practices of continuous integration (CI) and continuous delivery (CD) have rapidly come to define the best practices for software development, quality assurance, and delivery. CI/CD practices are fundamental to most successful DevOps practices and enable huge benefits for delivering more value, more frequently and with lower risk than traditional engineering. At the same time, CI/CD practices drastically reduce many of the risks and pains associated with deploying software releases and bugfixes.

Jenkins has long been the community tool leader in the open-source world for practicing continuous integration and delivery. This hands-on Jenkins training course teaches enables engineering and development teams to use a practical end-to-end DevOps Pipeline to create, test and deploy Java and Python code using Jenkins.

  • Our lab environment and classroom model is deeply interactive, giving students hands-on practice and access to an expert in the classroom so they can return to work ready to immediately use everything Jenkins has to offer. NOTE: This course assumes a working knowledge of Java and Python. If additional training is needed to prepare your team, please contact your learning advisor.

Skills Gained

  • Automate your Software Delivery Pipeline with Jenkins
  • Integrate Jenkins with Git / GitHub
  • Take your Agile Teams to the next level with Jenkins
  • Reduce integration issues
  • Improve code quality
  • Manage plugins within the Jenkins platform
  • Build and automate deployments
  • Review and implement best practices for Jenkins Pipeline

Who Can Benefit

  • Software Developers
  • Code Developers
  • Quality Assurance Professionals
  • Software Testers
  • Product Owners
  • System administrators and operators
  • Business Intelligence Professionals
  • Infrastructure Engineers
  • DevOps Engineers
  • Development Team Members
  • Operations Team Members
  • Anyone who is a hands-on user of Jenkins

Prerequisites

  • Strong working knowledge of Java and Python
  • Experience working on the command line of Unix, Linux, or PowerShell
  • Writing code with a text editor
  • Basic system administration knowledge such as installing packages, configuration, starting a service

Course Details

Course Outline

Part 1: Source Control Management with Git

  • Purpose and overview of Git
  • Use cases for Git
  • Git flow
  • Git providers
  • Git configuration
  • Finding help on Git
  • Creating Local Git Repositories
  • Basic Commands: add, commit, status, log
  • Comparing commits: git diff
  • Using a Repository: git push
  • Branches: creating, merging and deleting
  • Resolving merge conflicts
  • Managing Pull Requests
  • Using SSH keys with git platform private repositories

Part 2: Continuous Integration/Continuous Deployment with Jenkins

  • Continuous Integration / Continuous Delivery (CI/CD): Jenkins
  • CI/CD = Continuous Integration / Continuous Deployment
  • Jenkins use case, purpose & history
  • Architecture
  • Using Plugins
  • Initializing a Jenkins Master
  • Projects / jobs
  • Freestyle UI jobs
  • CI/CD as Code: Pipeline Projects
  • Declarative versus Scripted pipelines
  • Views and folders
  • Managing credentials and secrets
  • Distributing workloads – Master and Agent nodes
  • Integrating with Git: Source Control Management
  • Triggers: Scheduled Polling and Webhooks
  • Notifications: Instant Messaging Integration
  • Requiring human input and approval
  • Automated code linting and testing
  • Jenkins Integration with managed nodes
  • Continuous deployment through Jenkins

Part 3: Code Deployment and Release Management

  • Java: Building an artifact, Storing Artifacts locally
  • Python: Building an artifact, Storing Artifacts locally

Part 4: Notifications with Slack

  • Integration setup
  • Using Slack for CI/CD notifications

Part 5: Linux Management