Defers configuring the project and tasks, making use of user-defined settings in the build.gradle.
Use it for settings that should be configured in the build.gradle by the user.
For secret settings that are not required by regular developer builds, use
LazyConfiguration.
Deferred configuration is needed every time we need to configure project / tasks
based on values specified by the user inside of the "build.gradle" file.
Example "build.gradle" file:
//plugin gets applied and the tasks and extension object are added:
apply plugin: "org.mockito.mockito-release-tools.continuous-delivery"
//the plugin was already applied but the user only now can configure the extension object:
releasing {
releaseNotes {
file = file("CHANGELOG.md")
}
}
//the settings above need to be reflected in tasks added earlier by the plugin