Optimizing travis for Gradle.
In this guide I will describe how to integrate and optimize travis CI to your gradle project. Before we begin, we need to enable and caching and parallel for our gradle project.
In order to enable those, simply put
in your gradle.properties file.
Let’s begin configuring travis with a simple example.
The following configuration file tells Travis CI to build a Java project with JDK 8.
- ./gradlew build –scan
Enable travis Cache
You can cache your gradle build with travis by using following configurations.
- rm -f $HOME/.gradle/caches/modules-2/modules-2.lock
- rm -fr $HOME/.gradle/caches/*/plugin-resolution/
Disable gradle daemon
Having gradle daemon makes faster builds for subsequent builds. But this has no benefit in CI/CD environments.
- ./gradlew build –scan –no-daemon
Create Build stages
Build stages is a way to group jobs, and run jobs in each stage in parallel, but run one stage after another sequentially.
The gradle cache from one stage will be used as cache for next stage. In this example we can run two tests gradle tasks on top of
assemble build stage.
jobs: include: - stage: assemble script:
Integrating Travis with Gradle is fairly straightforward. We can use caching and build stages to optimize Gradle build in Travis.
As further optimizations, you can use Gradle features like build scans and follow suggestions guide in the report.