售 价:¥
温馨提示:数字商品不支持退换货,不提供源文件,不支持导出打印
为你推荐
Mastering Jenkins
Table of Contents
Mastering Jenkins
Credits
Foreword
About the Author
About the Reviewers
www.PacktPub.com
Support files, eBooks, discount offers, and more
Why subscribe?
Free access for Packt account holders
Preface
What this book covers
What you need for this book
Who this book is for
Conventions
Reader feedback
Customer support
Downloading the example code
Errata
Piracy
The Website
Questions
1. Setup and Configuration of Jenkins
The Jenkins platform architecture and configuration techniques
Jenkins on Microsoft Windows
Configuring the JVM and Java arguments–port, JRE, and memory
Jenkins on Linux and UNIX
Configuring the JVM
Running Jenkins behind an NGINX reverse proxy
Running Jenkins behind an Apache reverse proxy
Disaster recovery in Jenkins
Jenkins snapshot backups
Setting up a Jenkins mirror – rsync
Jenkins on Mac OS X
The Jenkins LTS release line
Jenkins XML configuration files
Summary
2. Distributed Builds – Master/Slave Mode
Understanding the master and slave architecture
Creating slave nodes in the UI
Choosing a launch method
Slave agent via Java Web Start
Prerequisites
The Jenkins Java Web Start launch page
JavaWS via a web browser
JavaWS via the command line
Headless slave agents via the command line
Slave agents on Windows via WMI and DCOM
Troubleshooting Windows DCOM and CIFS errors
Error – access denied
Workaround 1
Workaround 2
Error – no more data available
Workaround
Slave agents via SSH tunneling
Administering Jenkins slaves
The node administration dashboard
Preventative monitoring
Managing individual slave nodes
Labels, groups, and load balancing
Attaching a slave to a group by creating a label
Attaching a slave to many groups
Restricting slave execution to global or tied jobs
Jenkins plugins that support distributed builds
Summary
3. Creating Views and Jobs in Jenkins
The Jenkins user interface
The main header
The configuration panel
The job table
RSS feeds
The Jenkins build queue and executor status panel
Jobs in Jenkins
Freestyle projects in Jenkins
Project options
Defining build parameters
Advanced project options
Source code management
Source control via SVN
Advanced SVN options
Source control via Git–requires the Git plugin
Additional behaviors
Build triggers
Build steps
Post-build actions
Maven projects
Build triggers
Build step
Advanced options
Post-build steps
Monitoring external jobs
Multiconfiguration jobs in Jenkins – matrix jobs
Configuration matrix
Slaves
Label expression
User-defined axes
Creating views
Filtering jobs by regular expression
Summary
4. Managing Views and Jobs in Jenkins
Managing Views in Jenkins
Altering the default "View"
Customizing the basic content of a View
Advanced customization of a "Views" content
Navigating a job's project page
The Configuration panel
The Build History panel
The project overview – central panel
Job execution
The Job Execution Configuration panel
The Status panel
The Console Output
Summary
5. Advanced Automated Testing
Quality assurance initiatives and test automation terminology
The Software Development Lifecycle
Connecting product codes to tests
Baking quality into the product
Efficient automated test architecture
Automated testing in Jenkins
Unit tests in Jenkins through MSTest
How to set up MSTest agents
Running automated tests via MSTest
A example MSTest execution
Running MSTests and reporting the results in Jenkins
Publishing test results in Jenkins
Organizing test jobs
Distributed testing solutions
The Selenium Grid
Parallel down-stream jobs
Summary
6. Software Deployments and Delivery
Standardizing build outputs
Architecting a packaging scheme
Implementing a Definitive Media Library
Publishing assets to a DML
Jenkins' archive the artifacts post-build action
Publishing to Artifactory
Publishing via Maven
Pushing a Docker container
Automated deployments
Retrieving build artifacts and packages
Fetching artifacts via archive artifacts
Fetching artifacts from Artifactory
Fetching artifacts via Maven
Verifying package integrity
Jenkins fingerprints
MSBUILD via custom C# task
Linux / Unix BASH script
Executing deployment automation
Leveraging Jenkins slave nodes for deployment
Summary
7. Build Pipelines
The value proposition of build pipelines
Architecting a build pipeline
The first segment of the build pipeline
Additional pipeline segments
The complete pipeline
Visualizing the final pipeline
Alterations for shrink-wrapped and embedded projects
Implementing build pipelines in Jenkins
Upstream jobs – triggered
Downstream jobs – via post build actions
The Parameterized Trigger plugin
The Promoted build plugin
The Post-Build Tasks plugin
The Delivery Pipeline plugin
Connecting two Jenkins instances – development and production
Summary
8. Continuous Practices
Kaizen – Continuous Improvement
Kanban
Continuous Integration
What Continuous Integration is not
Code-based branching techniques
Branch by abstraction
Feature toggles
Fail fast and recover even faster
Distributed Version Control
Continuous Integration in Jenkins
SCM polling
Running a Jenkins job via the SVN post-commit hooks
Windows–VBScript
*Nix–Bash
Triggering a Jenkins job via GitHub push
Jenkins configurations
GitHub configurations:
Continuous Delivery
The principles of Continuous Delivery
Continuous Delivery in Jenkins
Rapid feedback loops
Quality gates and approvals
Build pipeline workflow and visualization
Continuous Deployment
Continuous Deployment in Jenkins
Summary
9. Integrating Jenkins with Other Technologies
Jenkins and Docker – Linux guide
Running Jenkins inside a Docker container – Linux
Dynamic Jenkins slave nodes using Docker
Pre-requisite requirements
Implementation tutorial
Integrating Jenkins with Ansible – Linux and Windows
Jenkins and Artifactory
Jenkins and Selenium Grid
Spinning up a Selenium Grid
Writing tests and integrating them into Jenkins
Jenkins and Jira
Summary
10. Extending Jenkins
Setting up the development environment
Creating a Jenkins plugin skeleton
The plugin skeleton
Importing a Maven-generated skeleton into IntelliJ
The architecture of Jenkins plugins
Understanding the Jenkins job lifecycle
Using overrides
Working with describables and descriptors
Jelly tags and files
Compiling and installing an HPI plugin
Summary
Index
买过这本书的人还买过
读了这本书的人还在读
同类图书排行榜