ビルドサーバーで共有認証システムをセットアップしようとしています。 我々が展開たちは(各チームが独自の認証ユーザー/パスワードを持っている)が異なるチームについて行われるべきかを宣言するいくつかのMavenプロジェクトをしている:プロファイルプロパティとしてのMavenサーバー認証
<profile>
<id>release-profile</id>
<distributionManagement>
<repository>
<id>rep-releases</id>
<name>rep-releases</name>
<url>http://somewhere-releases</url>
</repository>
<snapshotRepository>
<id>rep-snapshots</id>
<name>rep-snapshots</name>
<url>http://somewhere-snapshots</url>
</snapshotRepository>
</distributionManagement>
</profile>
は、その後、私はsettings.xml内の真偽を宣言
<profile>
<id>dep-team1</id>
<activation>
<activeByDefault>false</activeByDefault>
</activation>
<properties>
<release.user.name>team1-user</release.user.name>
<release.user.password>team1-password</release.user.password>
</properties>
</profile>
:私は、ビルドサーバのsettings.xml内の定義された複数のプロファイルを持って展開するプロジェクトに応じて、最後に
<servers>
<server>
<id>rep-releases</id>
<username>${release.user.name}</username>
<password>${release.user.password}</password>
</server>
<server>
<id>rep-snapshots</id>
<username>${release.user.name}</username>
<password>${release.user.password}</password>
</server>
</servers>
を、次のように宣言したサーバーへ私はのユーザー/パスワードを使用してプロパティを置き換えることによって、サーバー認証を変更する場合
Error deploying artifact: Failed to transfer file: http://......./my-project-0.2-20090423.123247-3.pom. Return code is: 401
:
問題はプロジェクトのデプロイを行うとき、私は次のような認証エラー(HTTP 401)を得たことですチームは、すべて正常に動作しています。
タグなし<サーバ> <サーバ>はプロパティとして値を受け入れますか?
これを達成するために他の人がビルドシステムを設定するにはどうすればよいですか?
ありがとうございました。
編集:私はハドソンを使用しています、私のためのソリューションは、いくつかの時間Maven2をインストールすると、各チームのために(ユーザー/パスワードを除く)の設定を複製していると良いMavenのインストールに各プロジェクトを結びつけることができます。私はこの解決策が私を魅了しないと認めなければなりません...
あなたは正しいですブライアン、私たちが望むものを達成する最も簡単な方法は、おそらく少なくともすべてのスナップショットreposに配信するためにビルドマシンに完全な権利を与えることです。各チームは、リリースを行うための独自の資格情報を保持しています。私はこのように行くと思う。ありがとう。 –