jenkinsfile の sh()は素のshなのでbashizmの機能が使えません。
そこでshではなくbashを使う方法を説明します。
Jenkinsfile の sh()は、サイトの Pipeline: Nodes and Processes - sh: Shell Script
の説明にあるとおり「Runs a Bourne shell script」です。つまり bash ではありません。
なので、たとえば下記のようにbashismなプロセス置換機能を使うとエラーとなります。
| |
おそらく syntax error near unexpected token '<'のようなエラーメッセージが出力されると思います。
下記のように /bin/sh を bash に向けていても同じエラーになるようです。
| |
bash を使う方法は簡単で、下記のようにエイヤッとシェバンをつければOKです。これで動作しました。
| |
言われてみればそりゃそうかと思いますが、ちょっとハマったのでメモしておきます。もし参考になれば幸いです。