2

SharePoint 展開の継続的統合シナリオを実装しています。ビルド サーバーですべての機能をビルドした後、PSEXEC を介して STSADM コマンドを実行して、新しい機能をテスト サーバーに展開しようとしています。

ログインしている任意のマシンからスクリプトを実行すると、問題なく実行されます。チーム ビルド プロジェクトに exec コマンドを追加すると、

 <Target Name="AfterDropBuild">
       <Exec Command="c:\progra~1\pstools\psexec.exe \\testserver -u mydomain\mydomainuser -p mypassword \\BuildServer\CurrentBuild\DeploymentFiles\Deploy.cmd" />
  </Target>

ビルドが部分的に失敗し、ビルド ログにアクセスが拒否されたというエラーが表示されます。

Task "Exec"
  Command:
  "c:\progra~1\pstools\psexec.exe \\testserver -u mydomain\mydomainuser -p mypassword \\BuildServer\CurrentBuild\DeploymentFiles\Deploy.cmd"
  Access is denied.

ビルド サーバーとテスト サーバーの両方で、TFS サービス アカウントをローカル管理者として追加しました。

私がインタラクティブなユーザーであるボックスでこれが機能する理由についてのアイデアはありますが、ビルドエージェントから psexec を実行すると機能しませんか?

4

1 に答える 1

1

これは、プログラム ファイル ディレクトリで psexec にアクセスする権限の問題でした。tfs サービスに読み取りアクセス許可を追加したところ、問題が修正されました。

于 2009-09-19T01:21:43.060 に答える