Файл учетных данных SBT с несколькими областями



Мы запускаем сервер artifactory, который переместился в другую конечную точку (artifactory-b.example.com). Чтобы сделать его обратно совместимым, старый url (artifactory-a.example.com) проксируется на новый.



Однако при публикации с помощью sbt используется файл .ivy2/.credentials со следующей компоновкой



realm=Artfactory realm
host=artifactory-a.example.com
user=artifactory-user
password=P4ssw0rdH4sh


Однако я хотел бы изменить это, чтобы новые сборки публиковались в правильной конечной точке



realm=Artfactory realm
host=artifactory-d.example.com
user=artifactory-user
password=P4ssw0rdH4sh


Можно ли добавить несколько областей в один файл? Что СБТ попробует первым, если не сработает (запрещено|нет Нашел) второй? Так что мой файл .ivy2/.credentials выглядит как



# old instance for backwards compatibility
realm=Artfactory realm
host=artifactory-a.example.com
user=artifactory-user
password=P4ssw0rdH4sh

# New spiffy instance
realm=Artfactory realm
host=artifactory-b.example.com
user=artifactory-user
password=P4ssw0rdH4sh


Кто-нибудь имеет опыт работы с этим, или я обязан использовать два файла и изменить ссылку в моем РЕПО на второй файл (т. е. .ivy2/.credentials2).



P.S. области находятся в файле, потому что несколько РЕПО используют эти учетные данные для публикации.
Здесь так важно, что области имеют одно и то же имя, только другую конечную точку (в отличие от этого поста):
446   2  

2 ответов:

Возможно, нет способа иметь несколько областей в файле учетных данных, но вы можете иметь несколько областей в нескольких файлах учетных данных, каждая область в одном файле учетных данных.

В ~/.ivy/.credentials будет:

realm=Sonatype Nexus Repository Manager
host=mvn.nexus1.org
user=readonly
password=readonlyPass

И в ~/.ivy/.credentials.deploy будет:

realm=Sonatype Nexus Repository Manager
host=deploy.nexus2.org
user=deployment
password=deploymentPass

Таким образом, у вас будут следующие строки в вашем build.sbt:

credentials += Credentials(Path.userHome / ".ivy2" / ".credentials")
credentials += Credentials(Path.userHome / ".ivy2" / ".credentials.deploy")

Оказывается, что то, что я хочу, невозможно с помощью файла свойств, потому что это просто не так, как работают файлы свойств.

Может быть, есть другой способ, но решение, которое я хочу, не может быть достигнуто таким образом, к сожалению

Comments

    Ничего не найдено.