答えて
のあるジョブを作成および設定するには、ジョブDSLを使用する方法を知りたい
https://wiki.jenkins-ci.org/display/JENKINS/Pipeline+Plugin
、パイプラインはまだworkflowJobを参照して、ワークフローと呼ばれています。
次のJob DSLリリースには、パイプラインのいくつかの拡張機能が含まれています。 JENKINS-32678。
git repoを使用している場合、repoのルートディレクトリにJenkinsfileというファイルを追加します。これにはあなたの仕事dslが含まれているはずです。
pipelineJob
を使用してください。
例:
pipelineJob('Pipeline') {
definition {
cps {
sandbox()
script("""
node {
stage('init') {
build 'Pipeline-init'
}
stage('build') {
build 'Pipeline-build'
}
}
""".stripIndent())
}
}
}
私はこの質問はどのようにプロジェクトのためJenkinsfileを参照するパイプラインジョブを作成するには、ジョブDSLを使用するために何かを求めている、と詳細と雇用創出を結合しないと考えていますこれまでの回答で示されているように、ステップの定義。これは理にかなっています.Jenkinsのジョブの作成とメタデータの設定(説明、トリガーなど)はJenkinsの管理者に属している可能性がありますが、開発チームはジョブの実際の操作を制御する必要があります。
@meallhourは、あなたが何をしているのですか? (仕事DSL 1.64でとして働く)
pipelineJob('DSL_Pipeline') {
def repo = 'https://github.com/path/to/your/repo.git'
triggers {
scm('H/5 * * * *')
}
description("Pipeline for $repo")
definition {
cpsScm {
scm {
git {
remote { url(repo) }
branches('master', '**/feature*')
scriptPath('misc/Jenkinsfile.v2')
extensions { } // required as otherwise it may try to tag the repo, which you may not want
}
// the single line below also works, but it
// only covers the 'master' branch and may not give you
// enough control.
// git(repo, 'master', { node -> node/'extensions' << '' })
}
}
}
}
参考仕事DSL pipelineJob:https://jenkinsci.github.io/job-dsl-plugin/#path/pipelineJob、および生成された設定を確認するためにhttp://job-dsl.herokuapp.com/にそれをハック。
この例は私に役立ちました。ここでは私のために働いたものに基づいて別の例です:
pipelineJob('Your App Pipeline') {
def repo = 'https://github.com/user/yourApp.git'
def sshRepo = '[email protected]:user/yourApp.git'
description("Your App Pipeline")
keepDependencies(false)
properties{
githubProjectUrl (repo)
rebuild {
autoRebuild(false)
}
}
definition {
cpsScm {
scm {
git {
remote { url(sshRepo) }
branches('master')
scriptPath('Jenkinsfile')
extensions { } // required as otherwise it may try to tag the repo, which you may not want
}
}
}
}
あなたがUIを介して第1のパイプラインを構築する場合、あなたはパイプラインのジョブを作成するために、config.xmlファイルとジェンキンスドキュメントhttps://jenkinsci.github.io/job-dsl-plugin/#path/pipelineJobを使用することができます。
- 1. JenkinsジョブDSLスクリプトフォルダ作成ジョブを作成する場合
- 2. ジョブDSLパイプライン構成トリガー
- 3. ジョブDSLプラグイン - MSBuildの
- 4. 既存のJenkinsのジョブを複製するジョブdsl
- 5. ジョブDSL選択されたノードにジョブを制限する
- 6. ジョブDSLスクリプトは、レポート用のallureプラグインでジョブを生成できません。
- 7. 別のジョブの中からジョブを作成するLaravel 5.2
- 8. 遅延ジョブで作成したジョブのIDを取得する
- 9. JenkinsジョブDSL:グルービージョブの変更PATH
- 10. job-dsl - gitlab repoブランチからジョブを作成中に資格を渡すには?
- 11. mysqldump用のcronジョブを作成する
- 12. oracleスケジューラ・ジョブの作成
- 13. Jenkinsの自動ジョブ作成
- 14. Laravel 5.2 - ジョブAPIの作成
- 15. ジョブDSLプラグインを使用してスキャンマルチブランチパイプラインを作成すると、ブランチごとにジョブが自動作成されません。
- 16. 他のビューにある既存のジョブからジョブを作成する
- 17. オブジェクトを作成するcronジョブ - レール
- 18. jenkinsがPRでジョブを作成する
- 19. C#でCronジョブを作成する
- 20. Quantum Elixirジョブを作成する
- 21. ジョブdslの文字列パラメータにアクセスする方法
- 22. JenkinsジョブのENV_INJECT変数にアクセスするDSL
- 23. ジョブIDが両方のジョブにジョブアプリケーションが作成されたリストジョブを返す
- 24. Jenkins dsl configureブロックで異なる値を指定して別のジョブを作成する
- 25. ジョブを使用してPythonスクリプトを実行します。DSL
- 26. タスクスケジューラでのジョブの作成 - C#
- 27. Talendの動的ジョブ作成の問題
- 28. Quartz.NETジョブ作成後のカレンダーの更新
- 29. JenkinsのDSLを通じて作成されたジョブにSCM資格を追加する
- 30. Jenkins xmlの設定をGroovyベースのJenkinsジョブDSL