Jenkins Training: Continuous Integration with Maven, Jenkins and Artifactory

Master the art of Continuous Integration with our Jenkins Training, ideal for developers eager to leverage Maven and Artifactory to automate testing and streamline the build process for optimized software delivery.

Course Thumbnail

Essential Skills Gained

Checkmark

Understand the principles and benefits of Continuous Integration.

Checkmark

Implement Jenkins for automated test execution and reporting.

Checkmark

Utilize Apache Maven for standardized project builds.

Checkmark

Manage artifacts effectively using Artifactory.

Format

  • Instructor-led
  • 3 days with lectures and hands-on labs.

Audience

  • Software Developers
  • Build Engineers
  • DevOps Engineers
  • Project Managers

Description

This course will provide students with an understanding of  the Apache Maven build process, the principles of continuous integration, and the knowledge of how to implement continuous integration with automated test execution using Jenkins, Maven, and the Artifactory repository manager. Students will use a local copy of Jenkins and to create and run Maven jobs, link to a version control system, run automated testing and generate development reports, and configure the system to log build reports and generated artifacts to an Artifactory repository.

Calendar icon

Upcoming Course Dates

No upcoming dates. Please check back later.

Course Outline

Download PDF

CHAPTER 1. INTRODUCTION TO CONTINUOUS INTEGRATION AND JENKINS-CI

  1. Agile Development

  2. Agile Development (cont'd)

  3. What is Continuous Integration

  4. What is Continuous Integration (cont'd)

  5. What is Continuous Integration (cont'd)

  6. Typical Setup for Continuous Integration

  7. Jenkins Continuous Integration

  8. Jenkins Features

  9. Running Jenkins

  10. Summary

CHAPTER 2. INTRODUCTION TO APACHE MAVEN

  1. Build Tools for Java

  2. Build Tools for Java (cont'd)

  3. History of Build Tools

  4. Traditional Scripting

  5. 'make'

  6. Problems with Make

  7. Manual Build with JavaC

  8. ANT

  9. Pros and Cons of Ant

  10. Apache Maven

  11. Goals of Maven

  12. What is Apache Maven?

  13. What is Apache Maven (cont'd)

  14. Why Use Apache Maven?

  15. The Maven EcoSystem

  16. Consistent Easy-to-Understand Project Layout

  17. Convention Over Configuration

  18. Maven is Different

  19. Maven Projects have a Standardized Build

  20. Effect of Convention Over Configuration

  21. Importance of Plugins

  22. A Key Point on Maven!

  23. Summary – Key Features of Maven

CHAPTER 3. INSTALLING AND RUNNING APACHE MAVEN

  1. Downloading Maven

  2. Installing Maven

  3. Run From Command Line

  4. Running Inside an IDE

  5. Settings.xml

  6. Local Repository

  7. Summary

CHAPTER 4. INSTALLING AND RUNNING JENKINS

  1. Downloading and Installing Jenkins

  2. Running Jenkins as a Stand-Alone Application

  3. Running Jenkins on an Application Server

  4. Installing Jenkins as a Windows Service

  5. Summary

CHAPTER 5. A JENKINS JOB

  1. Different types of Jenkins job

  2. Configuring Source Code Management(SCM)

  3. Working with Subversion

  4. Build Triggers

  5. Schedule Build Jobs

  6. Polling the SCM

  7. Maven Build Steps

  8. Summary

CHAPTER 6. GETTING STARTED WITH MAVEN

  1. Terminology and Basic Concepts

  2. Artifacts

  3. Lifecycle

  4. Default Lifecycle

  5. Plugins

  6. Running Maven - the Story So Far

  7. Running Maven from an IDE

  8. Common Goals

  9. pom.xml

  10. Example

  11. Example (cont'd)

  12. Artifact Coordinates

  13. Standard Layout for Sources

  14. Summary

CHAPTER 7. A WEB APPLICATION IN MAVEN

  1. A More Complex Project

  2. Putting it Together With Maven

  3. Packaging the Target Artifact

  4. The Source Tree

  5. Dependencies

  6. Transitive Dependencies

  7. Dependency Scope

  8. Working With Servers

  9. Declaring and Configuring Plugins

  10. Running the Plugin

  11. Binding a Plugin Goal to the Lifecycle

  12. Archetypes

  13. Summary

CHAPTER 8. COMMONLY USED PLUGINS

  1. Maven Plugins

  2. Declaring and Configuring Plugins

  3. Running the Plugin

  4. Binding a Plugin Goal to the Lifecycle

  5. Maven Surefire Test Plugin

  6. Failsafe Plugin

  7. Site Plugin

  8. JavaDoc Plugin

  9. PMD Plugin

  10. Code Coverage – Cobertura

  11. Summary

CHAPTER 9. MULTI-MODULE BUILDS

  1. Introduction

  2. The Reactor

  3. Reactor Sorting

  4. Multi-Module Build by Example

  5. Summary

CHAPTER 10. POM PROJECTS

  1. Project Object Model (POM)

  2. The overall POM structure

  3. Storing POM

  4. Summary

CHAPTER 11. WRITING PLUGINS (MAVEN)

  1. What is Maven Plugin

  2. Example of Using a Plugin

  3. Create a Custom Plugin

  4. Create a Custom Plugin (cont.)

  5. Plugin Management

  6. Summary

CHAPTER 12. CREATING ARCHETYPES

  1. Introduction to Maven Archetypes

  2. Introduction to Maven Archetypes (cont.)

  3. Using Interactive Mode to generate Goal

  4. Common Maven Archetypes

  5. Summary

CHAPTER 13. REPOSITORY MANAGEMENT

  1. Introduction

  2. Proxy Remote Repositories

  3. Release Artifacts

  4. Snapshot Artifacts

  5. Reasons to Use a Repository Manager

  6. Repository Coordinates

  7. Addressing Resources in a Repository

  8. Summary

CHAPTER 14. RELEASE MANAGEMENT

  1. What is release Management?

  2. Release Management with Nexus

  3. Release Management with Maven

  4. Summary

CHAPTER 15. JENKINS PLUGIN

  1. Introduction

  2. Jenkins Plugins - SCM

  3. Jenkins Plugins – Build and Test

  4. Jenkins Plugins – Analyzers

  5. Jenkins for Teams

  6. Installing Jenkins Plugins

  7. Summary

CHAPTER 16. SECURING JENKINS

  1. Jenkins Security - Overview

  2. Jenkins Security

  3. Authentication

  4. Authorization

  5. Confidentiality

  6. Activating Security

  7. Configure Authentication

  8. Using Jenkins's Internal User Database

  9. Creating Users

  10. Authorization

  11. Matrix-Based Security

  12. Note – Create the Administrative User

  13. Project-based Matrix Authorization

  14. Project-Based Authentication

  15. Conclusion

CHAPTER 17. BEST PRACTICES FOR JENKINS

  1. Best Practices

CHAPTER 18. DISTRIBUTED BUILDS WITH JENKINS

  1. Distributed Builds - Overview

  2. Distributed Builds – How?

  3. Slave Machines

  4. Configure Jenkins Master

  5. Configure Projects

  6. Conclusion

Your Team has Unique Training Needs.

Your team deserves training as unique as they are.

Let us tailor the course to your needs at no extra cost.