Continuous Delivery in Java: Essential Tools and Best Practices for Deploying Code to Production
Daniel Bryant, Abraham Marín-Pérez
Continuous delivery adds enormous value to the business and the entire software delivery lifecycle, but adopting this practice means mastering new skills typically outside of a developer’s comfort zone. In this practical book, Daniel Bryant and Abraham Marín-Pérez provide guidance to help Java developers master skills such as architectural design, automated quality assurance, and application packaging and deployment on a variety of platforms.
You’ll not only learn how to create a comprehensive build pipeline for continually delivering effective software, you’ll also explore how Java application architecture and deployment platforms have affected the way we rapidly and safely deliver new software to production environments.
- Get advice for beginning or completing your migration to continuous delivery
- Design architecture to enable the continuous delivery of Java applications
- Build application artifacts including fat JARs, virtual machine images, and operating system container (Docker) images
- Use continuous integration tooling like Jenkins, PMD and FindSecBug to automate code quality checks
- Create a comprehensive build pipeline, and design software to separate the deploy and release processes
- Explore why functional and system quality attribute (“nonfunctional”) testing is vital from development all the way through to delivery
- Learn how to build and test applications effectively locally, and observe your system while it runs in production