Jenkins The Definitive Guide
User Manual:
Open the PDF directly: View PDF
Page Count: 301 [warning: Documents this large are best viewed by clicking the View PDF Link!]
- Jenkins: The Definitive Guide
- Table of Contents
- Copyright
- Foreword
- Preface
- Chapter 1. Introducing Jenkins
- 1.1. Introduction
- 1.2. Continuous Integration Fundamentals
- 1.3. Introducing Jenkins (né Hudson)
- 1.4. From Hudson to Jenkins—A Short History
- 1.5. Should I Use Jenkins or Hudson?
- 1.6. Introducing Continuous Integration into Your Organization
- 1.6.1. Phase 1—No Build Server
- 1.6.2. Phase 2—Nightly Builds
- 1.6.3. Phase 3—Nightly Builds and Basic Automated Tests
- 1.6.4. Phase 4—Enter the Metrics
- 1.6.5. Phase 5—Getting More Serious About Testing
- 1.6.6. Phase 6—Automated Acceptance Tests and More Automated Deployment
- 1.6.7. Phase 7—Continuous Deployment
- 1.7. Where to Now?
- Chapter 2. Your First Steps with Jenkins
- Chapter 3. Installing Jenkins
- 3.1. Introduction
- 3.2. Downloading and Installing Jenkins
- 3.3. Preparing a Build Server for Jenkins
- 3.4. The Jenkins Home Directory
- 3.5. Installing Jenkins on Debian or Ubuntu
- 3.6. Installing Jenkins on Red Hat, Fedora, or CentOS
- 3.7. Installing Jenkins on SUSE or OpenSUSE
- 3.8. Running Jenkins as a Stand-Alone Application
- 3.9. Running Jenkins Behind an Apache Server
- 3.10. Running Jenkins in an Application Server
- 3.11. Memory Considerations
- 3.12. Installing Jenkins as a Windows Service
- 3.13. What’s in the Jenkins Home Directory
- 3.14. Backing Up Your Jenkins Data
- 3.15. Upgrading Your Jenkins Installation
- 3.16. Conclusion
- Chapter 4. Configuring Your Jenkins Server
- 4.1. Introduction
- 4.2. The Configuration Dashboard—The Manage Jenkins Screen
- 4.3. Configuring the System Environment
- 4.4. Configuring Global Properties
- 4.5. Configuring Your JDKs
- 4.6. Configuring Your Build Tools
- 4.7. Configuring Your Version Control Tools
- 4.8. Configuring the Mail Server
- 4.9. Configuring a Proxy
- 4.10. Conclusion
- Chapter 5. Setting Up Your Build Jobs
- 5.1. Introduction
- 5.2. Jenkins Build Jobs
- 5.3. Creating a Freestyle Build Job
- 5.4. Configuring Source Code Management
- 5.4.1. Working with Subversion
- 5.4.2. Working with Git
- 5.4.2.1. Installing the plugin
- 5.4.2.2. Using the plugin
- 5.4.2.2.1. Advanced per-project source code management configuration
- 5.4.2.2.2. Branches to build
- 5.4.2.2.3. Excluded regions
- 5.4.2.2.4. Excluded users
- 5.4.2.2.5. Checkout/merge to local branch
- 5.4.2.2.6. Local subdirectory for repo
- 5.4.2.2.7. Merge before build
- 5.4.2.2.8. Prune remote branches before build
- 5.4.2.2.9. Clean after checkout
- 5.4.2.2.10. Recursively update submodules
- 5.4.2.2.11. Use commit author in changelog
- 5.4.2.2.12. Wipe out workspace
- 5.4.2.2.13. Choosing strategy
- 5.4.2.2.14. Git executable
- 5.4.2.2.15. Repository browser
- 5.4.2.3. Build triggers
- 5.4.2.4. Post-build actions
- 5.4.2.5. GitHub plugin
- 5.5. Build Triggers
- 5.6. Build Steps
- 5.7. Post-Build Actions
- 5.8. Running Your New Build Job
- 5.9. Working with Maven Build Jobs
- 5.10. Using Jenkins with Other Languages
- 5.11. Conclusion
- Chapter 6. Automated Testing
- 6.1. Introduction
- 6.2. Automating Your Unit and Integration Tests
- 6.3. Configuring Test Reports in Jenkins
- 6.4. Displaying Test Results
- 6.5. Ignoring Tests
- 6.6. Code Coverage
- 6.7. Automated Acceptance Tests
- 6.8. Automated Performance Tests with JMeter
- 6.9. Help! My Tests Are Too Slow!
- 6.10. Conclusion
- Chapter 7. Securing Jenkins
- Chapter 8. Notification
- 8.1. Introduction
- 8.2. Email Notification
- 8.3. More Advanced Email Notification
- 8.4. Claiming Builds
- 8.5. RSS Feeds
- 8.6. Build Radiators
- 8.7. Instant Messaging
- 8.8. IRC Notification
- 8.9. Desktop Notifiers
- 8.10. Notification via Notifo
- 8.11. Mobile Notification
- 8.12. SMS Notification
- 8.13. Making Noise
- 8.14. Extreme Feedback Devices
- 8.15. Conclusion
- Chapter 9. Code Quality
- 9.1. Introduction
- 9.2. Code Quality in Your Build Process
- 9.3. Popular Java and Groovy Code Quality Analysis Tools
- 9.4. Reporting on Code Quality Issues with the Violations Plugin
- 9.5. Using the Checkstyle, PMD, and FindBugs Reports
- 9.6. Reporting on Code Complexity
- 9.7. Reporting on Open Tasks
- 9.8. Integrating with Sonar
- 9.9. Conclusion
- Chapter 10. Advanced Builds
- 10.1. Introduction
- 10.2. Parameterized Build Jobs
- 10.2.1. Creating a Parameterized Build Job
- 10.2.2. Adapting Your Builds to Work with Parameterized Build Scripts
- 10.2.3. More Advanced Parameter Types
- 10.2.4. Building from a Subversion Tag
- 10.2.5. Building from a Git Tag
- 10.2.6. Starting a Parameterized Build Job Remotely
- 10.2.7. Parameterized Build Job History
- 10.3. Parameterized Triggers
- 10.4. Multiconfiguration Build Jobs
- 10.5. Generating Your Maven Build Jobs Automatically
- 10.6. Coordinating Your Builds
- 10.7. Build Pipelines and Promotions
- 10.8. Conclusion
- Chapter 11. Distributed Builds
- Chapter 12. Automated Deployment and Continuous Delivery
- Chapter 13. Maintaining Jenkins
- Appendix A. Automating Your Unit and Integration Tests
- Index