3
Jenkinsのジョブ生成プロセスを統一し、プロセスジョブDSLステップに渡す単一のファイルを作成したいと考えています。Jenkins:複数のDSLファイルを1つにまとめる
私は現在のリリースのDSLに含まれているファイルを変更することができます。
..
Release.groovy
FirstPipeline.groovy
SecondPipeline.groovy
そして、私はRelease.groovyに両方のパイプラインまたは単なるパイプラインを含めるようにします。
パイプラインファイルの内部にはクラス構造がありませんので、をライブラリのようにインポートできません。
import mylibs.jobs.UsefulJob1
import mylibs.jobs.UsefulJob2
import mylibs.jobs.FirstPipeline
def firstPipeline = new FirstPipeline()
multiJob(firstPipeline.name) {
// multijob steps
}
私はがを評価するが、それはそれだけの単純なスクリプトのために働くことが判明し使用しようとした:それはこのようなだけで何かを持っています。また、インポートされたライブラリやメタプログラミングのより複雑な階層で使用すると、ほとんど解釈できないエラーで失敗します。
そして、私の場合にはfirstPipelineは次のようになります。私はこれらのスクリプトをクラスにリファクタリングすることに終わった。次に、それらを単にインポートすることができます。 –