Как я могу использовать зашифрованный пароль для хранилища Maven в Gradle - PullRequest
15 голосов
/ 23 декабря 2010

В настоящее время я пытаюсь передать сборку maven в сборку Gradle. Преодоление препятствий для шоу, с которыми я столкнулся, заключается в том, что наши внутренние артефакты развернуты во внутреннем репозитории, который требует аутентификации для чтения.

И вы знаете, что означает аутентификация ... имена пользователей и пароли. Проблема в том, что я не хочу, чтобы разработчики хранили свои пароли в виде открытого текста на своих жестких дисках. Maven поддерживает шифрование пароля , но я не вижу, как заставить Gradle сделать это.

Есть ли какой-нибудь волшебный доступ к Ivy CredentialStore, который будет поддерживать зашифрованные пароли? или мне придется ждать новой версии?

Ответы [ 2 ]

10 голосов
/ 27 декабря 2010

Мы используем Artifactory, и Ivy's CredentialsStore работает нормально.

repositories {
  org.apache.ivy.util.url.CredentialsStore.INSTANCE.addCredentials(REALM, HOST, USER, PASSWORD);
  mavenRepo urls: [ "http://repo.mycompany.com/repo" ]
}

Чтобы каждый разработчик использовал свое имя пользователя, создайте файл gradle.properties, содержащий

HOST=repo.mycompany.com
REALM=My Company Realm
USER=theusername
PASSWORD={DESede}xyz123abc

Префикс зашифрованного пароля {DESede} может быть Соглашением об артефактах .

9 голосов
/ 29 июня 2016

Плагин gradle-credentials позволит вам зашифровать содержимое файла gradle.encrypted.properties, который затем будет доступен в сборке как свойства объекта credentials.

Плагин настроек Gradle Maven позволит вам использовать систему Maven для шифрования / дешифрования учетных данных.

...