質問

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がビルドエージェントから実行されるときではありませんか?

役に立ちましたか?

解決

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

ライセンス: CC-BY-SA帰属
所属していません StackOverflow
scroll top