Gradle is an open-source build automation tool focused on flexibility and performance. Gradle build scripts are written using a Groovy or Kotlin DSL, which makes it very easy to customize the build according to your needs. For example, adding additional tasks or configuration can be done directly in the build script.
However, as soon as such build logic starts to become complex it should be encapsulated in order to keep the build script declarative, to avoid duplication and to enable reuse. In this session, we will start with a quick and dirty build customization, watch it become increasingly complex, and eventually refactor it into a custom plugin step-by-step.