meierw.jenkins_job_dsl_exec
jenkins_job_dsl_exec
一時的なJenkinsジョブを作成し、実行してから削除するAnsibleロールで、Job DSLスクリプトを含みます。
要件
Job DSL
プラグインがインストールされたJenkinsサービス。- 該当するJenkinsサービスに対してjenkins_scriptを実行する能力。
ロール変数
jenkins_job_dsl_url: http://localhost:8080
jenkins_job_dsl_user: admin
jenkins_job_dsl_password: admin
Jenkinsに認証するためのURL、ユーザー名、パスワードです。jenkins_script
を実行するために使用されます。
jenkins_job_dsl_temp_job_name: C4lpe7GMX8S0pdZV6RWbKAkBfKWCPAOgAL9MGL03
DSLスクリプト実行に使用される一時的なジョブの名前です。 実際のジョブ名との衝突を避けるために、複雑な文字列にすることをお勧めします。
jenkins_job_dsl_content: |
job('dsl-example-job') {
steps {
shell('echo Hello world!')
}
}
実行されるDSLスクリプトです。例のようにインラインで指定することもできますし、jenkins_job_dsl_content: "{{ lookup('file', 'files/myDslScript.groovy') }}"
のようにファイルから読み込むこともできます。
jenkins_job_dsl_temp_job_run: true
新しく作成された一時的なジョブを実行するかどうかを設定します。 別の計画がある場合は、この設定を無効にすることができます。
jenkins_job_dsl_temp_job_delete: true
実行後に一時的なジョブを削除するかどうかを設定します。
望ましい結果が得られない場合や、Jenkinsのビルドログを確認したい場合には、この設定を無効にすることをお勧めします。
jenkins_job_dsl_temp_job_run
がfalseの場合は何もしません。
jenkins_job_dsl_temp_job_running_checks: 10
ジョブが停止したかどうかを確認するチェックの回数です。
ロールは毎秒チェックを行うため、この値は秒単位のタイムアウトリミットにもなります。
jenkins_job_dsl_temp_job_delete
がfalseの場合は何もしません。
例のプレイブック
- hosts: servers
roles:
- { role: meierw.jenkins_job_dsl_exec }
ライセンス
MIT
著者情報
- 著者: Walter Meier