0

考虑这种情况。我有一个小型企业项目开发环境。我们使用档案作为我们的工件存储库。

一般来说,我希望设置 PROJECT-SPECIFIC 配置文件,即因为每个项目的测试都会有所不同。

但是,我希望保持不变的一件事是我的 settings.xml 文件中的配置文件,默认情况下它是活动的,用于开发。我是否需要让我的团队成员手动编辑该文件并将他们的 ARCHIVA 凭据放入其中(ldap 系统),以便他们可以访问内部存储库?

我不应该在上面输入密码吗?我的另一种选择是使用主密码来加密“共享”密码,因此没有人可以看到它,但是他们都可以对快照依赖项和其他内容的内部存储库进行通用的“只读”访问。但是,他们还需要包含加密主密码的 security-settings.xml 文件,这不会破坏该系统的目的吗?

最后:可以同时激活多个配置文件,还是没有必要?例如,如果我在默认情况下启用了 dev 配置文件(其中包含工件 repo 设置、发布的加密 svn 凭据),然后我在某些 POM 文件中指定了不同的配置文件,我是否只选择一个配置文件?假设我想将 Bamboo 用于 CI,并且有一些“测试”配置文件使用了 surefire 插件等。这些配置文件会与 settings.xml 中存在的 activeByDefault DEV 配置文件共存,还是一次只能激活一个配置文件?所有 CI 需要的是 SCM 信息,所以从技术上讲,它不需要访问内部档案仓库,所以我想如果我使用测试配置文件(自动使用 CI),它不需要配置文件中的任何内容。

我很困惑。我非常接近拥有一个完全由 Maven 管理的构建环境,只是想解决那些问题。谢谢你。

4

1 回答 1

0

但是,我希望保持不变的一件事是我的 settings.xml 文件中的配置文件,默认情况下它是活动的,用于开发。我是否需要让我的团队成员手动编辑该文件并将他们的 ARCHIVA 凭据放入其中(ldap 系统),以便他们可以访问内部存储库?

是的,他们必须以 pr 用户为基础编辑该文件。从文档:

密码短语和密码元素将来可能会被外部化,但现在它们必须在 settings.xml 文件中以纯文本形式设置。

我不应该在上面输入密码吗?我的另一种选择是使用主密码来加密“共享”密码,因此没有人可以看到它,但是他们都可以对快照依赖项和其他内容的内部存储库进行通用的“只读”访问。但是,他们还需要包含加密主密码的 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列出活动配置文件。

于 2012-02-27T18:10:50.717 回答