In this blog, we will examine some of the popular enterprise deployment tools, introduce two of Netflix’s open-source deployment tools, the Nebula Gradle plugins, and Spinnaker, and we will show you how to deploy a production-ready Spring Boot application. We will use a fully automated CI/CD pipeline workflow using the following tools: The build, and bake process will be handled by Jenkins. The build package creation process will be handled by the Netflix Nebula Gradle Linux Packaging Plugin. The deployment process for test and production stages will be handled by Spinnaker. The high-level process will involve the following steps: Configure Gradle to build a production-ready fully executable application for Unix systems (executable JAR). Using Aptly tool GPG Suite, create a secure, signed APT (Debian) repository and publish the package (Debian) to the Aptly repository. Using Jenkins and the Netflix Nebula plugin, build a Debian package, containing the executable JAR and configuration files (Debian package). Using Spinnaker (HashiCorp Packer under the cover), bake an Ubuntu Image, replete with the executable JAR installed from the Debian package. Deploy an auto-scaling set instance from the baked image, behind a Load Balancer, running the Spring Boot application using both the Red/Black and Highlander deployment strategies.



