Swift

try!Swiftで聞いたHoundCIを試してOSSをきれいに保つ

More than 3 years have passed since last update.


try!Swiftめちゃめちゃ楽しい

CoreAnimationからツールからユーザーコンテキストに踏み込んだ話までかなり幅が広くて聞いてて常に飽きないいいカンファレンスだと思いました!残り2日も楽しみ。


1st session

いけしょーさんの話の中であったHoundCIっていうのが自分で知らなかったので合間に早速触ってみました。


HoundCI

スクリーンショット 2016-03-02 19.33.54.png

最近流行りのCIホスティングサービスの一つです。これはLintに特化していて各種言語のフォーマットや、構文チェックをしてくれるサービスです。以下にはSwiftは書いてありませんが

スクリーンショット 2016-03-02 19.32.12.png

Docsを見るときちんとサポートされています。

内部的にはSwiftLintが走ります。


料金形態

OSSであれば無料のようなので、OSSのリポジトリをお持ちの人はぜひ導入してみるといいかもしれませんね。

スクリーンショット 2016-03-02 19.35.04.png


使ってみる。


1. ファイル準備

ROOTのディレクトリに2つのファイルを置くだけで、Pull Request時に番犬が吠えてくれるようになります。


/.hound.yml

swift:

config_file: .swiftlint.yml


/.swiftlint.yml

# これは空でも動きます



2. アカウント登録

Githubでログインすると以下のようにリポジトリを選択できるようになるのでActivateしてみましょう。

あとはこれでプルリクを送るだけ!

スクリーンショット 2016-03-02 19.39.46.png

ためしにTableViewControllerを追加したPullRequestを投げてみましょう。


3. Pull Request

そのプルリクがこちら

https://github.com/jumbo-in-Jap/HoundCi/pull/4

SwiftLintで定義されるデフォルトのチェックで指摘されますね。わんわん言ってます。

スクリーンショット 2016-03-02 19.41.44.png

デフォルトのSwiftLintの設定でTableViewControllerの追加で11わんわん指摘されました。

平松さんに指摘してもらいましたが、このLintはdiffに対して実行されるようです。

基本的にSwiftLintの構文はGithub Stype Guideに即しているし、ルールもちゃんと.swiftlint.ymlに書けば無視させることもできるので、OSSを管理して自由なコードを書かれがちな人は導入してもいいんじゃないでしょうか!

残り二日も楽しみだ〜