CI にHudson バージョン 1.324を使用していますが、いくつかの問題があります。
環境:
- Windows Server 2008
- Powershell v1.0
- サービスとして実行されている Hudson 1.324
- Hudson Powershell プラグインがインストールされています
- Psake (別名 "Powershell Make/Rake" は Github から入手可能) 0.23 (この最初の投稿時点でのすべての現在/最新バージョン)
コンパイルして NUnit テストを実行し、成功した場合は出力の 7z ファイルを作成する Powershell (PS) スクリプトがあります。PS スクリプトは、私のローカル開発ボックスと Hudson がインストールされている CI サーバーの両方で、コマンド ラインから動作します。
1) Powershell による実行ポリシー。
最初に、サーバー上で PS コンソールをSet-ExecutionPolicy Unrestricted
実行した run 、これにより、任意のスクリプトを実行できます。(はい、ここでセキュリティ上の懸念があることは理解しています。私は何かを機能させようとしています。Unrestricted はセキュリティの問題を取り除く必要があるため、他の問題に集中できます。)
[これは機能し、昨日 Hudson から PS ビルド スクリプトを起動することができました。その後、別の問題に遭遇しましたが、それについては項目 2 で詳しく説明します。]
Hudson が PS スクリプトを起動できるようになると、次のエラーが表示されます。
"C:\Windows\system32\WindowsPowerShell\v1.0\powershell "& 'OzSystems.Tools\psake\psake.ps1' '.\oz-build.ps1'" 'OzSystems.Tools\psake\psake.ps1' という用語' は、コマンドレット、関数、操作可能なプログラム、またはスクリプト ファイルとして認識されていません。用語を確認して、もう一度やり直してください。行:1 文字:2 + & <<<< 'OzSystems.Tools\psake\psake.ps1' ' .\oz-build.ps1'"
同じコマンド ラインを使用して、コマンド ラインから PS スクリプトを手動で正常に実行できます。ただし、ハドソンは PS に同じことをさせることができません。追加のPSドキュメントを見た後、これも試しました:
"& 'OzSystems.Tools\psake\psake.ps1' '.\oz-build.ps1'"
同様のエラーが発生しました。Hudson 用の Powershell プラグインに関するドキュメントはないようです。すべての Powershell プラグイン ファイルを確認しましたが、構成可能なものは何もありません。Hudson が追加情報を取得するためのログ ファイルが見つかりません。
誰かがこれを過ぎて私を助けることができますか?
2)私は昨日 #1 とレスリングをしました。私はこの午前に来て、Hudson サーバー/サービスを再起動した後、再度掘り下げようとしましたが、ExecutionPolicy が制限付きにリセットされたようです。昨日うまくいったことをして、PSコンソールを開いSet-ExecutionPolicy
てUnrestricted
. PS コンソールに表示Unrestricted
されますが、ハドソン氏によると、PS スクリプトを実行する権限はありません。新しい PS コンソールを再度開いて、ExecutionPolicy
まだ残っていることを確認しましたUnrestriced
。しかし、ハドソンは明らかにこの変化に気づいていません。Hudson サービスを再起動しても、Hudson のポリシーに対する見方は変わりません。
ここで何が起こっているか知っている人はいますか?
ありがとう、デレク