Nekostack

Golang, Swift, Vim, Cat, Curry, Whisky.

Wercker で golang のカバレッジレポートをまとめる step 書いた

Posted on 27 July 2015.

各レポジトリにスクリプトを置くのも面倒になってきたので, wercker-step-gover というのを書いた.

カバレッジレポートはパッケージごとで出力

そもそも、golang のカバレッジレポートはパッケージ単位でしかだせないので, codecov, coveralls などと連携するときには, 一度カバレッジレポートを位置ファイルに集約する必要がある. それをやってくれるのが, modocache/gover というツール.

goveralls の wrecker step も公開されていたりするのだけれど, codecov にカバレッジレポート投げたいので, gover だけが入った step が欲しかったという理由もある.

wercker-step-gover

mitsuse/wercker-step-gover では、指定されたパッケージ以下を再帰的にみて, 個々のパッケージのカバレッジレポートを生成した上で, それらを gover に流し込んでいる.

使い方は, golang 公式の docker イメージ を, コンテナのイメージとして指定した上で, 以下を build steps に追加する.

project でテスト対象のルートパッケージを指定し, report で集約したカバレッジリポートの出力パスを指定する.

所感

wercker 設定をリポジトリ外に出せるし、使い回ししやすいし最高という思いしかない.