私はJenkinsを使用して、一連のインポートジョブをトリガーおよび管理しています。インポートスクリプトをGithubに配置し、Jenkinsがジョブをビルドするときに、(a)そのバージョン管理されたスクリプトをGithubからプルし、(b)スクリプトを実行する必要があります。
私が実行している問題は、ジョブ内で実行するスクリプトの名前を参照する方法がわからないことです。ソースコードがワークスペースディレクトリにプルされていることを前提としています。その仮定は正しいですか?(ドキュメントがあった場合のみ!)
これまでに行ったことは次のとおりです。
- WindowsサーバーにJenkins(明らかに)をインストールしました(いいえ、それについて選択の余地はありませんでした)
- 私のgithubアカウントにリポジトリを作成し、それにコードを入れました
- https://github.com/mcholl/SARS-Import/で公開されています
- roottest.pyとomniture-video \ test.pyの2つのスクリプトがあることがわかります。そこにあるコードはAppleの特許下にあります。
- 私はroottest.pyを実行したいという考えです
- Githubプラグインをインストールしました
- 次のようにジョブを作成しました。
- プロジェクト名=「Github統合のテスト」
- GitHubプロジェクト:https : //github.com/mcholl/SARS-Import.git/
- Windowsバッチコマンドを追加します:python roottest.py
- ジョブを手動で実行する
ただし、ファイルが見つからないというエラーメッセージが表示されます。ワークフローは「ソースのローカルコピーを...(Job)/ workspace /ディレクトリにプルし、ワークスペースディレクトリのコンテキストでバッチコマンドを実行する」と想定しているため、これは奇妙です。
これが完全なコンソール出力です:
ワークスペースC:\ Program Files(x86)\ Jenkins \ jobs \ Testing Github Integration \ workspace [workspace]のユーザー匿名の構築によって開始されました$ cmd / c C:\ Windows \ TEMP \ hudson1966342425043540895.batを呼び出します
C:\ Program Files(x86)\ Jenkins \ jobs \ Testing Github Integration \ workspace> python roottest.py python:ca n't open file 'roottest.py':[Errno 2] No such file or directory
C:\ Program Files(x86)\ Jenkins \ jobs \ Testing Github Integration \ workspace> exit 2ビルドステップ 'Windowsバッチコマンドの実行'ビルドに失敗とマーク完了:FAILURE
明らかに、コンソールに印刷ステートメントの結果が表示されることを期待していました。
何をめちゃくちゃにしましたか?そして、なぜ私のスクリプトは既にそこにないのですか?