0

このシナリオを考えてみましょう。私は中小企業のプロジェクト開発環境を持っています。アーティファクトリポジトリとしてarchivaを使用します。

一般的には、プロジェクト固有のプロファイルを設定してもらいたいと思います。つまり、テストはプロジェクトごとに異なるためです。

ただし、定数を設定したいのは、settings.xmlファイルのプロファイルです。これはデフォルトでアクティブであり、開発に使用されます。チームメンバーがそのファイルを手動で編集し、ARCHIVAクレデンシャルをそこ(LDAPシステム)に配置して、内部リポジトリにアクセスできるようにする必要がありますか?

パスワードを入れてはいけませんか?私の他の方法は、マスターパスワードを使用して「共有」パスワードを暗号化することです。そのため、誰もそれを見ることができませんが、スナップショットの依存関係などの内部リポジトリへの一般的な「読み取り専用」アクセス権があります。ただし、暗号化されたマスターパスワードを含むsecurity-settings.xmlファイルも必要になりますが、それはそのシステムの目的を損なうものではありませんか?

最後に:複数のプロファイルを同時にアクティブにすることはできますか、それとも不要ですか?たとえば、デフォルトでdevプロファイル(アーティファクトリポジトリ設定、リリース用の暗号化されたsvnクレデンシャルを含む)をアクティブにしていて、特定のPOMファイルで異なるプロファイルを指定した場合、1つのプロファイルのみを選択しますか?CIにBambooを使用したいとします。また、surefireプラグインなどを使用する「テスト」プロファイルがいくつかあります。これらのプロファイルは、settings.xmlに存在するactiveByDefault DEVプロファイルと共存しますか、それとも一度に1つのプロファイルのみをアクティブ化できますか?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 に答える