Pluginでは、リポジトリ内のgroovyスクリプトを読み込んで実行する機能があります。この機能を使うことで、リポジトリの内容とそれに対応するビルド手順を同時にバージョン管理出来るため、ビルド手順の変更がとてもやりやすくなります。残念ながら、パラメータで指定したブランチをチェックアウトして読み込むと、以下のエラーになります。timeout=10パラメータの内容ではなく、パラメータの名前そのものを探しに行っており、おそらくバグと思われます。Pluginを使うと問題なくパラメータ指定が出来るため、Workflowのバグと思われます。このバグは、Jenkinsでは事前に設定した特定ブランチしかビルドしない場合は問題ありません。様々なブランチで実行する可能性がある場合、JenkinsのJob設定にスクリプトを書かなければならず、ビルド手順自体の管理が大変になります。指定したブランチからスクリプトを読み込んで実行できます。'flow.groovy'}flow.build()loadは指定したパスのgroovyスクリプトを読み込み、returnしたオブジェクトを返します。そのため、これでリポジトリ内のファイルをロードして実行することが出来ます。buildメソッドをnodeの外側で実行することで、ビルド中はmasterのキューを開けておくことが出来ます。上記の方式の場合、masterにcloneしてその後にslave上に再度cloneしてビルドを始めています。特定のミドルウェアを使うビルドの場合など、slaveの選択をパラメータによって切り替えたい場合があります。上記のスクリプトの場合でいうところの、node(“master”)内で処理しなければなりません。Job側にそれを書くとメンテが大変になるため、flow.groovy内に書く必要があります。このような場合、groovyスクリプトの戻り値で独自クラスを返すことで解決できます。load関数の戻り値で独自クラスを返すJenkinsから以下のようなgroovyスクリプトを読み込むことで、slaveの選択も柔軟にできるようになります。f;load関数では通常の文はすべて実行されるため、FlowStruct()以降が実行されてから関数が終了します。戻り値は固定ではないため、上記のように独自のクラスを作成して返すことができます。この際、戻り値はjava.io.Serializableを実装している必要がありますのでご注意ください。これで、複雑な設定をしていたとしても、すべてリポジトリ内のスクリプトで処理することが出来ます。ota42yC++/Ruby/RoR/golang/rust/flutter。