Protect sensible data in your build.gradle file
When you have passwords or other sensible data, you have to protect them from the public audience so nobody can abuse them. So we have to reference to a key in the project gradle.properties that holds another reference to a key to the local file ‘~/.gradle/gradle.properties’. For demonstrate this scenario we will extract the username and password from sonatype.
Create a project ‘gradle.properties’ in the main directory of your gradle project. and add two property keys:
projectRepositoriesUserNameKey=ossrhUsername
projectRepositoriesPasswordKey=ossrhPassword
And in your local file ‘~/.gradle/gradle.properties’ you have the following two property keys:
ossrhUsername=user1234
ossrhPassword=secret-pw
For now we have take all precondition and can access the sensible data from the build.gradle file as follows:
credentials {
username project.property("$projectRepositoriesUserNameKey")
password project.property("$projectRepositoriesPasswordKey")
}
So the property key from project ‘gradle.properties’ ‘projectRepositoriesUserNameKey’ refers to the property key ‘ossrhUsername’ from the local file ‘~/.gradle/gradle.properties’.
Note that you can also write directy the property key from the local file ‘~/.gradle/gradle.properties’ in the credetials section and it will also resolve the values.
credentials {
username project.property("ossrhUsername")
password project.property("ossrhPassword")
}
Thanks for reading