Building a Spring Boot application in Jenkins (part 1 of microservice devops series)
Create a Spring Boot API application and build it in Jenkins every time a change is pushed.
Create a Spring Boot API application and build it in Jenkins every time a change is pushed.
The Gradle wrapper is a script you add to your Gradle project and use to execute your build. The advantages are: you don’t need to have Gradle installed on your machine to build the project the wrapper guarantees you’ll be using the version of Gradle required by the project you can easily update the project to a newer version of Gradle, and push those changes to version control so other team members use the newer version Now you’ve got a flavour of what the Gradle wrapper is all about, let’s run through some common use cases....
In this article you’ll learn the main differences between Gradle api and implementation configurations with a real-world example showing exactly how things work under the covers. The Java Library Plugin is the recommended plugin to use when building libraries to be consumed by another project. It distinguishes between api and implementation dependencies, offering some key benefits for whoever consumes the library. UPDATED in July 2021 to use the latest Gradle version....
Most Gradle builds use at least a few plugins to add extra functionality, so why not make use of this powerful mechanism by writing your own Gradle plugins? In this article, you’ll discover how to encapsulate your own specific Gradle build logic into a plugin, in a simple and reusable way. UPDATED in September 2021 to use Gradle 7.2, Spock 3, and JUnit 5. Gradle plugins overview So what exactly is a Gradle plugin?...
If you’re planning to migrate your Maven project to Gradle, you’ll be looking for the path of least resistance to get the job done as easily as possible. In this article you’ll discover the 8 recommended steps to migrate your Java Spring Boot project from Maven to Gradle. Why do a migration to Gradle? If you’re reading this article you probably know why you want to move to Gradle, but some of the reasons probably include:...
Configuring subnets and VPCs can be confusing when you’re setting up AWS infrastructure. There’s plenty of documentation about what subnets are, and how to create them, but not necessarily when and why you’d create them. In this article you’ll learn why you’d want to create multiple subnets in the first place. First off though, here’s a quick recap of all the network related infrastructure that lives in a VPC. If you’re familiar with this, just skip to the main section of the article....
AWS Lambda functions are a great way to execute short-running processes without worrying about what hardware they’re going to run on. Sometimes though, we have a requirement to execute a longer-lived process, but unfortunately AWS imposes a 15 minute execution limit. Fear not though, because in this article you’ll learn how to write recursive Node.js JavaScript Lambda functions which call themselves, bypassing the execution time limit. 1. Overview In October 2018 AWS increased the Lambda execution time limit to 15 minutes:...
Multi-project builds in Gradle provide a better way to organise your project in the event that your have multiple artifacts to be created or deployed. In simple use cases everything is easy to understand and works without issue. But, as soon as you start to use some more advanced Gradle features we need to look under the cover to better understand how the multiple projects work together within Gradle’s lifecycle....
Code coverage is a metric that teams use to measure the quality of their tests, and it represents the percentage of production code that has been tested. Discover how to apply the Gradle Jacoco plugin to your project and run a SonarQube scan to generate a code coverage report. UPDATED in November 2021 to reflect SonarQube LTS version switching to 8.9. 1. Overview SonarQube is a tool which aims to improve the quality of your code using static analysis techniques to report:...