I'm extremely proud of Gradle Best Practices finally launching to the public. It was a result of many hours of discussions, negotiations, and wordsmithing to bring you the first batch of best practices. It was a deep collaboration between Google, Jetbrains, and Gradle.

I hope you enjoy it!

https://blog.gradle.org/gradle-best-practices

#gradle

Gradle Best Practices - A Path to Build Happiness

Gradle Build Tool, also known as Gradle, is a highly flexible and extensible build system. It supports multiple ways to structure and configure builds, making it incredibly powerful—but also somewhat dauntin...

If you have suggestions for areas of Gradle that could use best practices, do share!
@Aurimas Convention plugins ?
@GSala anything in particular about it?
@Aurimas maybe just when to use them to share build logic. What they are good for and what they are not good for.
BLOCKED: Add Best Practice: Use Convention Plugins by antohaby · Pull Request #32973 · gradle/gradle

Add use convention plugin best practice with samples

GitHub
@Aurimas Thought of another one. How to work with secrets to keep them out of version control. I feel everyone is doing different things to inject secrets from places like Vault, Infiscal, or 1Password, into a Gradle build.
@GSala can you share some usecases? What secrets you have in mind? Signing keys? API keys? Etc
@Aurimas yes, both of those. There's secrets that need to be used only during the build process, like keystores or google-services.json on Android, and then there's secrets that end up being embedded in a bundle to be used at runtime, like API keys and other identifiers. The latter are of course avoided altogether.
@Aurimas There's this plugin from Google that for some reason sits under the Maps platform https://developers.google.com/maps/documentation/android-sdk/secrets-gradle-plugin
Not sure if it's best practice to use it. You could achieve something similar to a .env file with it.
Secrets Gradle plugin  |  Maps SDK for Android  |  Google for Developers

Google for Developers