In the past I've struggled at times implementing everything into a Jenkins pipeline. One of the issues was always which plugin to use. There would be multiple plugins that were useful but most of the time lacked something I needed. It always seemed Jenkins lacked some of the things out of the box that I would expect it to have.
My usual pipeline.
On Pull Request (Java Project with Maven)
1) Verify code compiles
2) Verify code passes unit testing
3) Run SonarQube code analysis
4) Verify code coverage is above threshold
5) Report back any failures to Bitbucket
6) Approve/Decline Pull Request
This would be the usual process before I as the Repo Admin would schedule code reviews/approval process.
Would this book cover most of these topics or provide knowledge to confidently handle these tasks?
The new Jenkins Pipeline with Jenkins 2.0 is a great improvement to old Jenkins Freestyle scripting.
So in the book I do cover some Jenkins Plugins and I spent several chapters covering how to use Jenkins Freestyle scripts, the new Jenkins Pipeline Syntax.
I try to tie in the concepts of Continuous Delivery throughout chapters.
I don't cover for example SonarQube as you mention here but I do over best practices in a commit build.
One of the main emphasis I try to make in the book is the power of automation of manual processes, so I do go over Code Coverage, Unit Testing, Automated Acceptance Testing and concepts in DevOps.
I spend a good amount of time going over the fundamentals of CI/CD and I use Jenkins, Travis CI, and Circle CI as the vehicles to talk about CI/CD.