Подтвердить что ты не робот

Как я могу использовать зашифрованный пароль в репозитории Maven в Gradle

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

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

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

4b9b3361

Ответ 1

Мы используем Artifactory и Ivy 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} может быть Конкретным соглашением Artifactory.

Ответ 2

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

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