GMT+0900最近やってる開発で以前書いた方法でTravisCIからCoverallsにカバレッジレポートを転送しようかと思ったのですが、デフォルト設定ではできないパターンがあったので行った対応とか書いてみます。このsbt-coverallsプラグインでTravisCIからCoverallsにカバレッジレポートを転送します。先に結論を書いておくと、リポジトリのルートにbuild.sbtがない場合はsbt-coverallsプラグインの設定でgitリポジトリのパスを指定しないといけません。構成とかまず、今回のプロジェクトのディレクトリ構成はこんなかんじです。サブディレクトリにbuild.sbtを配置していました。.travis.yml...次に.travis.ymlはこうです。coveralls"サブディレクトリに切り替えてからビルド処理を行っています。coverallsのカバレッジレポート転送処理が失敗します。失敗しますといってもafter_successキーが失敗するだけで、ビルドそのものに影響はありません。失敗するのはあくまでカバレッジレポートの転送だけです。specified」というエラーが出力されていました。./.gitというログが出力されており、どうもsbt-coverallsの処理でgitリポジトリ(.gitディレクトリ)を使ってごにょごにょしているみたいです。今回はビルド前にディレクトリをサブディレクトリに切り替えており、当然サブディレクトリに.gitディレクトリはありません。coverallsを実行すればええかな?といえばそういうわけでもなく、どうも調べた限りではsbtのタスクはbuild.sbtが存在するディレクトリでしか実行できないようです。coverallsとかでルートディレクトリに移動してから実行してもダメなんですね。今度はbuild.sbtがないと怒られてしまう。sbt-coverallsのgitディレクトリ設定を変更するあ、これ困ったな~。Reqが出てて設定できるようになってました。Location今回の場合だとbuild.sbtに下記のような感じで.gitディレクトリは一階層上であるということを示してやれば良いです。Some("..")後はビルド実行すれば通ります。../.gitというふうに一階層をみにいっているのもログに出てます。YoshinoriN)。