考虑这种情况。我有一个小型企业项目开发环境。我们使用archiva作为我们的工件回购。
一般情况下,我希望设置PROJECT-SPECIFIC配置文件,即因为每个项目的测试会有所不同。
但是,我想要保持不变的一件事是我的settings.xml文件中的一个配置文件,它默认是活动的,用于开发。我是否需要让我的团队成员手动编辑该文件并将其ARCHIVA凭据放在那里(ldap系统),以便他们可以访问内部仓库?
我不应该在上面输入密码吗?我的另一种选择是使用主密码来加密“共享”密码,因此没有人能够看到它,但他们都会对内部存储库拥有对快照依赖关系和内容的通用“只读”访问权限。但是,他们还需要包含加密主密码的security-settings.xml文件,这不会破坏该系统的用途吗?
最后:多个配置文件可以同时处于活动状态,还是不必要?例如,如果默认情况下我的dev配置文件处于活动状态(其中包含工件仓库设置,版本的加密svn凭据),然后我在某些POM文件中指定了不同的配置文件,我是否只选择一个配置文件?假设我想使用Bamboo for CI,并且有一些使用surefire插件和诸如此类的“测试”配置文件。这些配置文件是否与settings.xml中存在的activeByDefault DEV配置文件共存,或者一次只能激活一个配置文件?所有CI需求都是SCM信息,因此从技术上讲它不需要访问内部archiva repo,所以我想如果我使用测试配置文件(自动使用CI),则不需要配置文件中的任何内容。 / p>
我很困惑。我非常接近拥有一个完全由maven管理的构建环境,只是试图解决这些问题。谢谢。
答案 0 :(得分:0)
但是,我想要保持不变的一件事就是一个简介 我的settings.xml文件,默认情况下处于活动状态,用于 发展。我是否需要让我的团队成员手动编辑该文件 并将他们的ARCHIVA凭证放在那里(ldap系统),这样 他们可以访问内部仓库吗?
是的,他们必须以普通用户为基础编辑该文件。来自doc:
密码和密码元素将来可能会外部化,但是现在必须在settings.xml文件中设置纯文本。
我不应该在上面输入密码吗?我的另一种选择是使用 用于加密“共享”密码的主密码,因此没有人能够看到 它,但他们都会对内部进行通用的“只读”访问 repo for snapshot依赖项和东西。然而,他们会 还需要包含加密的security-settings.xml文件 主密码,并没有打败那个系统的目的?
为什么不将用户公钥添加到Archiva,并以这种方式进行身份验证?
<servers>
<server>
<id>server001</id>
<username>my_login</username>
<privateKey>${user.home}/.ssh/id_dsa</privateKey>
<passphrase>some_passphrase</passphrase>
...
</server>
</servers>
最后:多个配置文件可以同时处于活动状态,或者是这样 不必要?
是的,可以激活多个配置文件。您可以使用 mvn help:active-profiles 列出活动配置文件。