2

Build-Deploy-Test ワークフローを利用して、TFS 2012 で標準ラボ環境をセットアップしようとしています。テスト コントローラーとテスト エージェントをセットアップしましたが、LabManagement ワークフローの実行が開始されると、RunDeploymentTask アクティビティで例外が発生します。

Initial Property Values
BuildLocation = \\S0503TFS2T\TFSPlayground\ConsoleApplicationBuild\ConsoleApplicationBuild_20121210.23
DeploymentScriptDetails = agent1 | "$(BuildLocation)\Deploy.bat" $(BuildLocation) | c:\Env
LabEnvironmentUri = vstfs:///LabManagement/LabEnvironment/4
MaxWaitTime = 00:30:00
ThrowOnError = True
UseRoleForDeployment = True
Deployment Task Logs for Machine: win7testagent1
 Access is denied
 Exception Message: Team Foundation Server could not complete the deployment task for machine 'win7testagent1', script '"\\S0503TFS2T\TFSPlayground\ConsoleApplicationBuild\ConsoleApplicationBuild_20121210.23\Deploy.bat"', arguments '\\S0503TFS2T\TFSPlayground\ConsoleApplicationBuild\ConsoleApplicationBuild_20121210.23' and working directory 'c:\Env'. (type LabDeploymentProcessException)
Exception Stack Trace: 
Server stack trace: 
   at Microsoft.TeamFoundation.Lab.Workflow.Activities.RunDeploymentTask.ExecuteDeploymentTask.RunCommand(AsyncState state)
   at System.Runtime.Remoting.Messaging.StackBuilderSink._PrivateProcessMessage(IntPtr md, Object[] args, Object server, Object[]& outArgs)
   at System.Runtime.Remoting.Messaging.StackBuilderSink.AsyncProcessMessage(IMessage msg, IMessageSink replySink)

Exception rethrown at [0]: 
   at System.Runtime.Remoting.Proxies.RealProxy.EndInvokeHelper(Message reqMsg, Boolean bProxyCase)
   at System.Runtime.Remoting.Proxies.RemotingProxy.Invoke(Object NotUsed, MessageData& msgData)
   at System.Action`1.EndInvoke(IAsyncResult result)
   at Microsoft.TeamFoundation.Lab.Workflow.Activities.RunDeploymentTask.ExecuteDeploymentTask.EndExecute(AsyncCodeActivityContext context, IAsyncResult result)
   at System.Activities.AsyncCodeActivity.CompleteAsyncCodeActivityData.CompleteAsyncCodeActivityWorkItem.Execute(ActivityExecutor executor, BookmarkManager bookmarkManager)

どうやら、これはセキュリティ上の問題であり、私はそれを乗り越えることができません。MSDN によるこのプロセスの説明は次のとおりです。

build-deploy-test ワークフローはビルドを開始し、デプロイ スクリプトを取得します。ビルド定義は、ビルド ファイルをドロップ場所にコピーします。ワークフローは、スクリプトが割り当てられている特定のマシンまたはマシンの役割の作業ディレクトリで各展開スクリプトを実行します。各デプロイ スクリプトは、ドロップ場所からビルド ファイルを取得します。各展開スクリプトは、指定されたビルド ファイルをラボ環境のマシンにコピーまたはインストールします。

この時点で問題が発生します。ワークフローは、特定のマシンの作業ディレクトリで各展開スクリプトを実行します。

両方のマシンが同じドメインにあり、ビルド サービスを実行するユーザーは、リモート マシンの管理者グループにも属しています。ワークフローがファイル/スクリプトをネットワーク内の全員とコピーするはずのリモートフォルダーを共有しましたが、再び運がありません。

私は何か愚かなことをしていて気が狂ってしまいます - どんな助けや考えも大歓迎です!

最高、ラドー

4

2 に答える 2

0

次の解決策で問題が解決する場合があります。

手順: 次のサーバーでローカル アカウントを作成します: ローカル ラボ サービス アカウント - tfslab

  1. tfs テスト コントローラー サーバー: ローカル tfslab アカウントを作成します。また、テスト コントローラー構成コンソールでラボ サービス アカウントとして tfslab を構成します。

  2. tfs テスト エージェント サーバー: ローカル tfslab アカウントを作成し、tfslab をローカル管理者グループに追加します。また、Visual Studio Test Agent サービスと Visual Studio Lab Agent サービスを tfslab として実行するように更新します。

  3. tfs ドロップ フォルダー サーバー: ローカル tfslab アカウントを作成します。そして、共有読み取り権限を tfs ドロップ フォルダーに追加します。

詳細については、こちらを参照してください。

于 2013-08-09T05:35:54.757 に答える