企業向けソフトウェア開発プラットフォーム

について

詳細はこちら

導入事例

詳細はこちら

セミナー&イベント

詳細はこちら

よくある質問

詳細はこちら

企業向けソフトウェア開発プラットフォーム

「第1回 GitHub Enterprise ユーザ会」レポート

「第1回 GitHub Enterprise ユーザ会」レポート

GitHub Enterpriseユーザが渋谷に集結!
現場のリアルなノウハウと知見を共有し合ったコラボレーションな1日

3月1日、東京・渋谷のTECH PLAY SHIBUYAで、「第1回 GitHub Enterprise ユーザ会」が開催され、大盛況のうちに終了しました。

ソフトウェア開発プラットフォーム「GitHub」のオンプレミス版「GitHub Enterprise」は、企業でコーディングに携わるエンジニアにとって、今最も”使ってみたい”開発環境のひとつとして注目され、利用が急速に拡大しています。その国内一次代理店しての役割を担うマクニカネットワークスが初めて開催するユーザ会とあって、当日は大勢のエンジニアで満席となりました。同じ志を持つ人たちの熱気溢れる雰囲気の中、ライトニングトークさながらのセッションが次々と行われ、中身のとても濃い4時間となりました。今回はその概要をご紹介します。

会場となった東京・渋谷のTECH PLAY SHIBUYAには70名もの参加者が足を運んでくれました

GitHub 社.からはオリジナルのTシャツが提供され、参加者全員に配られました
人気のGitHubキャラクター「オクトキャット」のステッカーも取り放題!

GitHub Enterpriseが国内に本格展開して3年近くが経過

開会に際し、マクニカネットワークス株式会社 営業統括部 アプリケーション営業部 第4課 課長 根本 竜也が挨拶に立ち、「2015年6月に国内一次代理店となって3年近く経過し、これまで100社以上の企業にGitHub Enterpriseをお使いいただいています。そうした中、お客様からは他社がGitHub Enterpriseをどのように利活用しているのか、運用管理はどうしているのかという質問を多く受けるようになり、ならばユーザ企業様同士で情報交換できる場を作りたいと考え、今回初めてユーザ会を開催するに至りました」と経緯を話しました。

「初めてのGitHub Enterpriseユーザ会を開催できとても嬉しく思います」
と話すマクニカネットワークスの根本

開発者の開発生産性やセキュリティを更に向上させる新しい機能に期待

今回のユーザ会では、GitHub 本社からソリューションエンジニアのエド・パターソン氏が来日。冒頭のセッションで、GitHub.com Business/GitHub Enterpriseの管理・セキュリティ機能の更なる強化、ベスト・オブ・ブリード を実現するための機能強化や拡張計画などについて最新のロードマップを会場の参加者だけに公開しました。

GitHub 本社のパターソン氏も緊急来日

それらの情報はまだコンフィデンシャルなため、残念ながらこのレポートでお伝えすることはできませんが、近日中にマクニカネットワークスから情報提供する予定ですので、楽しみにお待ちください。

DMM.comが自社のデプロイメント自動化手法を公開

GitHub Enterpriseを活用する国内企業も急速に増えています。ユーザ会ではマクニカネットワークスが支援した導入企業にも事例セッションを担当していただきました。最初に登壇したのが、DMM.com 佐藤 紘典氏です。

DMM.comの佐藤氏

月間25億ページビュー、会員数2800万人以上の総合エンターテイメントサイト「DMM.com」を運営するDMM.comは、GitHub EnterpriseとCircleCIを連携する形でほぼ同時に導入。DevOpsとソーシャルコーディングを可能にし、自動化による開発効率の向上と迅速なサービス提供を実現させています。
今回佐藤氏は、自社の運用をケーススタディとして、デプロイメントの自動化を中心に解説しました。「DMM.comのデプロイメントのインフラはアプリケーションのみならずインフラもコード化しGitHub Enterpriseにホストされています。GitHub EnterpriseとCircleCIがWebフックで連動し、リポジトリにプッシュするとアプリケーションサーバのAMI(Amazon Machine Image)やAWS上のインフラ構成がTerraformで更新される仕組みです」と佐藤氏は説明します。

図1 DMM.comではGitHub EnterpriseとCircleCIを連携させてデプロイの自動化を実現

アプリケーションのデプロイメントは、featureブランチで変更をコミットし、GitHub Enterpriseにプッシュすると、それをトリガにCircleCIで静的解析とテストを実行します。さらにレビュワーによるレビューが行われそこで問題がなければ、Pull Requestを対象のブランチをマージすることでCircleCIのジョブが実行され、PackerでAWS上にAMIを登録するという流れです。

また、インフラストラクチャーのデプロイメントも同様のフローですが、インフラはアプリのように頻繁に更新されないので、アプリケーションをデプロイしAWS上に最新のAMIを登録。その後、(Blue-Green Deployment)のBlueかGreenのうち、稼働していないアプリケーションプールのAMIを最新に更新した上で、ロードバランサーのターゲットグループが新しい方にだけ向くように切り替えを行います。

佐藤氏は、「このようにインフラストラクチャーのデプロイも全て自動化されているので、リポジトリをリビルドするだけで、アプリケーションを最新の状態に更新することができるのです」と語ります。

最後に、CircleCIを利用したChatOpsについても言及しました。ChatOps によるデプロイは、Slackを通じてHubotにメッセージを送信し、CircleCIのAPIを叩くという使い方をしています。ChatOpsを選んだ理由について、佐藤氏は、「いつでもどこからでもジョブを実行できるほか、ジョブの実行と結果の通知を集約して効率よく開発・運用できるのがポイントです」と話します。

複雑化するソフトウェア開発を高速・高品質に実施する開発基盤を構築したリコー

もう1つの事例セッションには、株式会社リコー デジタル推進本部 中根 悠太氏が登壇しました。

株式会社リコーの中根氏

「リコーの主力製品である複合機は、地域や業種によって機能が異なり、さまざまな要件が絡み合い組み込みソフトウェアの組み合わせがとても複雑になっています。また製造終了から5~10年間は製品のサポートが必要で、ソフトウェアを保持する必要があります」と中根氏は説明します。

製品ラインナップが多いので、ソフトウェアとハードウェアを別に開発し、QA(製品評価)フェーズで結合して出荷するプロセスで開発しています。さらにソフトウェアはモジュールに分割して機能を設計し、開発を効率化しています。近年は製品が多機能化し組み合わせのパターンが複雑になってきていることもあり、機能変更の影響範囲を特定するのも大変になってきたといいます。

「そこで当社は、モジュールの開発段階で、ビルド・レビュー・静的解析を行い、パスしたものだけを製品の結合環境に移行させるような、確実に品質をチェックするプロセスに変えたいと考え、GitHub Enterpriseを導入しました」と中根氏。

図2 リコーでは、GitHub Flowでマスターブランチに入れる前にモジュールの品質をチェック

具体的には、GitHub Flow機能を活用し、製品環境につながるマスターブランチに入れる前にモジュール開発のfeatureブランチの品質をチェックします。しかし、一般的なソフトウェア開発と異なり、複合機はモジュールごとにリポジトリを保有しているため、影響を受ける他のモジュールと一緒に、モジュールを使用する製品単位でチェックする必要があります。

そのため、GitHub Enterpriseでどの製品がどのモジュールを組み合わせているのかを管理し、レビューや製品ごとのチェックが通らないとPull Requestでマージできないような制御ができていないといけません。

「変更がどのモジュール・製品に影響するかをトレースする機能や、変更単位でビルド・静的解析を実行する機能、Pull Requestのチェックリストの自動作成機能などをアドオンしています。それにより、どんな変更が、どの製品に、いつ入ったかがわかるようになり、ソースコードからもPull Request内の変更内容を特定できるようになりました」と中根氏は語ります。

セッションの後半では、モジュール×製品の品質チェックのためのGitHub EnterpriseのAPI(Issue API、Timeline API、Status API)を活用した事例や、複合機の開発単位に合わせたGitHub Enterpriseの構成・規模が詳しく紹介されました。

中根氏は、「GitHub Enterpriseで複雑なプロダクトラインを持つ製品開発にPull Requestを導入して、WEB APIやWEB Hookを駆使した作り込みをし、開発環境のモダン化に成功したことにより、複雑化するソフトウェア開発を高速・高品質に行える開発基盤が完成しました」と評しています。

関連コンテンツ

GitHub Enterpriseに関してのお問い合わせはお気軽に

webでのお問い合わせ

お問い合わせ

電話でのお問い合わせ

045-476-1973
受付:月曜日~金曜日 8:45~17:15
GitHubに関してはマクニカネットワークスにおまかせください
045-476-1973
受付:月曜日~金曜日 8:45~17:15
評価版ダウンロード
セミナー&イベント