go vetは失敗時に終了ステータスがnon zeroなんだけど、golintは指摘項目があっても終了ステータスが0なのでエラー扱いにならない。golintはコーディング規約的な推奨事項なのでエラー扱いじゃないのは妥当そう。 ただ、細かい指摘し合いで消耗したくないのでgolintで警告が出たらCIがコケるようにしたかった。以下のようにして無理やりエラーを出すようにした。 #/bin/sh golint ./... | tee .golint.txt test ! -s .golint.txt 標準出力になんか出てたら失敗になるようにという感じ。出力ちゃんと見たいからteeかましてる。 更にいうと、golintは$GOOSを見てくれているので$GOOSを切り替えながら回せばビルド対象毎の警告も網羅できる。 #/bin/sh rm -f .golint.txt for os in "linux
