あけましておめでとうございます!!
10月からEC-CUBE事業部に配属になりました、たかぴーです!今年もとばしていきますよ~!

takahashi
↑[NEW FACE]の人ですよ

前回は課外活動ネタでしたが、今回は技術系のネタをお送りしたいと思います!
私、実はエンジニアだったんですよ~

というわけで!!

いきなりですが!!

EC-CUBEが

なんと・・・!

_人人人人人人人人人人人人_
> GitHubに移行しました!! <
 ̄Y^Y^Y^Y^Y^Y^Y^Y^Y^Y ̄

eccube

※GitHubとは
バージョン管理システムのひとつ。
今までSubversionというバージョン管理システムが一世風靡していたが、
近年はGitHubに移行するケースが多くみられる。
EC-CUBEも幅広い開発者に携わってもらえるよう、その流れに乗りました。

そして、さらに!!!!

なんと・・・!!!!!!

_人人人人人人人人人人人人_
> 自動化に挑戦してます!! <
 ̄Y^Y^Y^Y^Y^Y^Y^Y^Y^Y ̄

auto

せっかくオープンソースで開発を進めているのだから、
GitHub移行と合わせて開発環境を大きく変えようと思い、
GitHub / Slack / TravisCI / AppVeyor / Coveralls
といった『流行り』のスタイルを取り入れていっています。

※以下、それぞれの説明です。

・Slack

チャットでのやりとりを中心とするチームコミュニケーションツールのひとつ。
他にはChatWork、Hipchatなどがある。
GitHubのIssuesや下に挙げるCIの結果を自動で投稿する仕組みも特徴。

・TravisCI

GitHubと連携して行える継続的インテグレ―ションサービス。
EC-CUBEでは、開発言語であるPHPのテストを自動で行うよう連携している。

・AppVeyor

TravisCIと似ているが、こちらは.NET用の継続的インテグレーションサービス。
EC-CUBEはWindows Severもサポートしているので、Windows Serverでのユニットテストも実施している。

・Coveralls

カバレッジテストを行うサービスのひとつ。
ソースコードのどのくらい(何パーセント)がテストでカバーできてるかを数値で示してくれる。

これらの自動化ツールとGitHubを連携することで、
EC-CUBEの開発においてもイイコトがいっぱいありました。

たとえばコミッターさんからコミットがあった際・・・

~ちょっと前まで~

「お、誰かがCommitしてくれてる」
「Updateして動作確認やな」
「あれ、動かない・・・Revertして報告せなあかんな」
(数日後)
「お、修正されてる。これまた確認っと」
「お、動いた動いた」
「次は、ユニットテストっと・・・」
「あれ・・・・・・」

といった具合に動作確認、コードの妥当性のチェックを手動で行ってきていました。


pr

~最近とこれから~

【パターン1】
Slack「ピコリーン!」
「あ、誰かがPullRequest送ってくれたみたい」
「お、ちゃんとTravisもAppVeyorもとおってる♪」
「おおー、Coverageもあがってるやん!!」
「Mergeして完了っと」

【パターン2】
Slack「ピコリーン!」
「お、PullRequestきたきた」
「あら、こけてる」
「あ、でもGitHub上で確認できるからやり直してもらえるね、やったね」

といった具合で、Slackから通知がくるので確認する私たちも楽ちん。
PullRequestを送るコミッターさんも、コミット後すぐにテスト結果が返ってくるので、安心安全!

Slackを使った非同期なコミュニケーションにより、自動化したツールでの結果が一目でリアルタイムにわかるようになりました。
さらに今までのコミュニケ―ションツールはメーリングリストを使っていましたが、
チャットを使うことで、素早く気軽に情報を共有・相談などができ、
今のところ言うことなしです!

もし!もしですよ!
「EC-CUBEの開発やってみたいな~」
「どれどれ手伝ってやるか~!」
という方がいらっしゃいましたら、GitHubのIssueに「俺は(私は)ここを変えたいんだ!」など
熱い想いを書いていただければ、EC-CUBEに関わるみんなで温かく迎えますので、どんどん参加してください!

そんな具合で、EC-CUBE事業部はじめ、株式会社ロックオンでは2015年しょっぱなからとばしていっております!
今年も張り切っていきましょう~!それでは~!