Файл учетных данных 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. области находятся в файле, потому что несколько РЕПО используют эти учетные данные для публикации.
Здесь так важно, что области имеют одно и то же имя, только другую конечную точку (в отличие от этого поста):
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