注:ジェンキンスをこれまでに使用したことがない
私はpythonスクリプトを実行して3つの引数を取得します。ターミナルを介して次のように使用します。
python script.py arg1 arg2 arg3
基本的にこのスクリプトを利用し、3つの引数が提供された後にそれを実行する新しいjenkinsジョブを作成したいと思います。しかし、私はそのような仕事を実行する例を見つけることができません。スクリプトはgithubリポジトリに配置されるため、そのパスはhttps://github.com/username/repo/folder/script.py
のようになります。これが私がしたことです:1.私は先に進み、新しいジョブNew Item --> Freestyle Project
を作成しました。 2. GitBucket-> Githubprojectの下で、パスを追加しました:https://github.com/username/repo/
3.次に、This build is parameterized
をクリックして、可能なオプションである3つの選択パラメーターを追加しました。 4.次に、ビルドの下で実行シェルを選択し、コマンドpython script.py $param1 $param2 $param3
を指定しました
私の質問は、ステップ2で、スクリプトへのパスをhttps://github.com/username/repo/folder/script.py
として指定する必要があるのか、それとも現在の方法で正しいのかということです。
提案/チュートリアルへのリンクは役に立ちます
必要なのが特定のファイルだけの場合-シェルスクリプトのみを使用できます
#!/bin/bash
wget -q -O sample.py https://raw.githubusercontent.com/Alexhha/hello-world/master/python/sample.py
/usr/bin/python sample.py ${ARG1} ${ARG2} ${ARG3}
sample.pyそれは単なるスクリプトです
import sys
print 'Sample output: %s, %s, %s' % (str(sys.argv[1]), str(sys.argv[2]), str(sys.argv[3]))
サンプルビルドを実行する
次のようなものが得られます
スクリプトはプライベートリポジトリにあります
スクリプト内でクローンを作成していて、プロンプトを回避する必要がある場合は、トークンをクローンURLに追加できます。
git clone https://<token>@github.com/owner/repo.git
または
git clone https://<token>:[email protected]/owner/repo.git
注:トークンはパスワードとして扱う必要があります。クローンURLにトークンを配置すると、Gitはそれを.git/configファイルにプレーンテキストで書き込みます。残念ながら、これはHTTPパスワードでも発生します。
必要なことは、実行シェルダイアログにコマンドを追加することだけです。他の設定は私には適切に聞こえます。 Jenkinsジョブのコンソール出力には何がありますか?
Gitリポジトリの場所を追加し、システムがそのリポジトリに適切にアクセスできる場合、またはJenkinsジョブで認証情報を設定した場合は、Pythonスクリプトへのローカルパス。
Jenkinsインストールは、各ジョブのローカルワークスペースコンテナーから実行されます。
シェルを実行:
/usr/bin/python ./folder/script.py $param1 $param2 $param3