Course Content
Introduction to Jenkins
- Continuous Integration Fundamentals
- History of Jenkins
- Introducing Jenkins
- Jenkins Fundamentals
- Shift from Hudson to Jenkins
- Whether to Use Jenkins or Hudson
- An introduction to Continuous Integration into Your Organization
Getting Started with Jenkins
- Starting Up Jenkins
- Setting up Environment
- Download and Install Jenkins
- Configuring the Tools
- Your First Jenkins Build Job
- Your First Build Job in Progress
- Building reports and Displaying Javadocs
Plugins and its uses
- Introduction to Plugins
- Adding Plugins to Jenkins
- Managing Plugins
- Upgrading Plugins
- Plugins in Action
- Commonly used plugins (Git Plugin, Parameter Plugin, HTML Publisher, Copy Artifact and Extended choice parameters)
Setting up your Build Jobs
- Build a Freestyle Build Job
- Configuring Source Code management
- Introduction to Build Triggers
- Introduction to Build Steps
- Pre and Post-Build Actions: Adding properties and properties files
- Running Your New Build Jobs
- Working with Maven Build Jobs
- Using Jenkins with Other Languages
Advanced Build Jobs features and Security
- Parameterized Builds
- Distributed builds
- Setting Email notification
- Enabling Security in Jenkins
- Different Levels of Authentication
- Types of Access
- Administration of the Access
Implementing Automated Testing
- Introduction to Automated Testing
- Unit Automation and Tests Integration
- Configuring Test Reports in Jenkins
- Displaying Test Results
- Ignoring Tests
- Code Coverage
- Automated Acceptance Tests and Automated Performance Tests with JMeter
Improving Code Quality using Other Metrics
- Looking for faulty codes through Code Coverage
- Activating more PMD Rulesets
- Custom ruleset creation
- Finding Bugs with FindBugs
- Enabling Extra FindBugs Rules
- Discovering Security Defects with FindBugs
- Verifying HTML Validity
- Reporting with JavaNCSS
- Checking Style Using an External pom.xml
Nodes and Master-Slave Configuration
- Configuring nodes
- Managing nodes
- Distributing jobs over nodes
- Binding Jobs to the Nodes
- Setting up master and slave setup
Maintain and Use Jenkins
- How to maintain Jenkins
- Do’s and Don’ts of Jenkins
- Backup of Jenkins
- Migrating Jenkins from one server to another
Performing Automated Deployment and Continuous Delivery
- Implementing Automated and Continuous Deployment
- Deploying an application to an application server
- Deployment of Simple Java web application using Tomcat