私は自分のワークスペースディレクトリをC:\jenkins_builds\workspace
に設定しました。それぞれローカルワークフォルダ(プロジェクト名と同じ)を持つProjA
とProjB
をビルドします。 Jenkins:TFSリポジトリから複数のプロジェクトをビルドするには?
私のリポジトリからソースコードを取得
は、TFSプラグインが最初に二つのものがあります:ProjA
を構築する際に細かい行く
tf workspace -new %workspace-name-A%;%user-name% -server:%my-server%
tf workfold -map $%branch% ProjA -workspace:%workspace-name-A% -server:%my-server%
。問題は、最初のコマンドは、ルートディレクトリをリポジトリから直接私のC:\jenkins_builds\workspace
ディレクトリにマップすることです。 2番目のコマンドは、実際に欲しいもの、つまり%branch%
をProjA
というサブフォルダにマッピングします。後でProjB
を構築するときに、最初のコマンドは、次のエラーメッセージを表示して(その結果、ビルドを)失敗:
The path C:\jenkins_builds\workspace is already mapped in workspace %workspace-name-A%;%user-name%.
OK、作業ディレクトリへのルートディレクトリをマップするために悪いアイデアのように思えます。しかし、TFSプラグインがworkspace new
行を実行しているときに、これはなぜ自動的に発生しますか?現在、-unmapコマンドを実行して、ProjA
とProjB
のビルドを行う必要があります。
私のチームはTeam Foundation 3.0を使用しています。
これは価値がありますが、これを引き起こすのは 'workspace -new'行ではなく、作業フォルダマッピングを作成する2行目です。作業フォルダのマッピングは、作業領域内のサーバーパスに対して一意でなければなりません。 –
エドワード、フィードバックいただきありがとうございます。それは私が最初に考えたものです。 2行目は、ブランチ名とプロジェクトサブフォルダの間のマッピングを作成します(考えられるように)。ただし、コマンドプロンプトからコマンドを実行すると、実際にはTFSリポジトリの作業フォルダ "C:\ jenkins_builds \ workspace"と "$ /"が最初にマッピングされます。まさに逆の直観的な、そうですか?これが私の頭痛を引き起こす原因です。 – user1160298