217 votes

Où placer la configuration de Gradle (c'est-à-dire les références) qui ne devrait pas être validée?

J'essaie de déployer un artefact construit par Gradle sur un dépôt Maven, et je dois spécifier des informations d'identification pour cela. Cela fonctionne bien pour l'instant:

 uploadArchives {
    repositories {
        mavenDeployer {
            repository(url: "http://.../nexus/content/repositories/snapshots/") {
                authentication(userName: "admin", password: "admin123")
            }
        }
    }
}
 

Mais je n'aime pas avoir à stocker les informations d'identification dans le contrôle de source. Avec Maven, je définirais une configuration de serveur et attribuerais des informations d'identification dans mes ~/.m2/settings.xml . Comment puis-je faire quelque chose de similaire avec Gradle?

290voto

Peter Niederwieser Points 36369

~ / .gradle / gradle.properties:

 mavenUser=admin
mavenPassword=admin123
 

build.gradle:

 ...
authentication(userName: mavenUser, password: mavenPassword)
 

11voto

David Levesque Points 9189

Vous pouvez mettre les informations d'identification dans un fichier de propriétés et le lire en utilisant quelque chose comme:

 Properties props = new Properties() 
props.load(new FileInputStream("yourPath/credentials.properties")) 
project.setProperty('props', props)
 

Une autre approche consiste à définir les variables d’environnement au niveau du système d’exploitation et à les lire en utilisant:

 System.getenv()['YOUR_ENV_VARIABLE']
 

Prograide.com

Prograide est une communauté de développeurs qui cherche à élargir la connaissance de la programmation au-delà de l'anglais.
Pour cela nous avons les plus grands doutes résolus en français et vous pouvez aussi poser vos propres questions ou résoudre celles des autres.

Powered by:

X