Madogiwa Blog

主に技術系の学習メモに使っていきます。

CircleCI: circleci tests globの結果から任意のファイルをexludeする方法MEMO

CircleCIでテストを分割して並列実行する場合に以下のドキュメントに記載されているようなcircleci tests glob "foo/**/*"のようなコマンドを実行すると思います。

circleci.com

このときに任意の複数のディレクトを対象にするのはcircleci tests glob {foo,bar}/**/*のような形式で書けば大丈夫なのですが、 任意の複数のディレクトリを除外するやり方は公式には用意されておらずハマったのでメモ📝

rspecであればcircleci tests globを使っていなければ以下のrspec--patternが使えるが、circleci glob testの場合にはファイルパスが直接引数に渡される都合上厳しい。。。

madogiwa0124.hatenablog.com

circleci tests globで任意の複数のディレクトリを除外する方法

方法としては以下のような感じでsedを使って-Eで渡した正規表現に合致した任意の行を削除するのが良さそうだった ✨

circleci tests glob | sed -E "sed -E "/(foo|bar)/d"

参考

discuss.circleci.com

tech-blog.rakus.co.jp