我们的Maven配置非常大,其中包含许多存储库,插件存储库以及其他各种内容。
我们总是不得不手动将同一文件复制/粘贴到其他团队成员,然后替换用户名和密码。
我很好奇是否有人知道用于共享settings.xml文件的自动化解决方案?
会从git中提取配置或部分配置的东西吗?
如果我必须自己编写它,我可能会使用脚本和git来进行更改,进行替换并替换当前的设置文件。
但是最好查看是否有人已经这样做了。
我们还为每个用户提供了不同的代理用户名和密码。 我们既使用关系,又使用代理。
答案 0 :(得分:1)
Tomtit可以胜任这类任务,只需在您的scm中包含这个小助手即可。
.tom / mvn-settings.pl6
#!perl6
my $user = prompt "username ";
my $password = prompt "password ";
directory '/tmp/mvn';
# load settings template from other repository
git-scm 'https://scm/repo/mvn-files', %( to => '/tmp/mvn' );
template-create 'settings.xml', %(
source => ( slurp '/tmp/mvn/settings.tmpl' ),
mode => '644',
variables => %(
user => $user,
password => $password
),
);
运行它:
tom mvn-settings
答案 1 :(得分:0)
我们使用的是Nexus,它可以代理所有所需的存储库。这意味着settings.xml
中的存储库和插件存储库部分每个只有一个条目(指向公共组)。
此外,添加/更改存储库可以由Nexus管理员完成,并使用标准settings.xml
自动传播给所有人(约140个开发人员)。
您还获得了缓存优势,因为工件仅从Internet下载一次并由Nexus缓存,这可以加快构建速度。