SlideShare a Scribd company logo
栂井 良太

バックエンドアーキテクチャG

エンジニアリング本部 技術統括部

KLab株式会社

モバイルゲーム

ビルドパイプラインとChatOps

〜非開発者が単独でビルド&デプロイできる仕組み〜

2
モバイルゲームのプロジェクトでDevOps系業務

主にJenkinsの面倒を見る

栂井 良太

バックエンドアーキテクチャG 所属

2018年 KLab新卒入社

とがい
 りょうた

東京オフィス勤務

いつか福岡にとんこつラーメンを食べに行きたい

3
モバイルゲームビルドパイプラインとは

ユーザー

企画

プログラマー

デザイナー

リポジトリ or

ファイルストレージ

自動テスト
サーバー
展開
本番サーバー

アセット
ビルド
パッケー
ジング 追加ダウンロード用スト
レージ

アプリ
バイナリビルド
ストア
アップロード
開発環境構築
ビルドパイプライン

4
ビルドパイプラインの問題点

🧩 複雑になりがち

Jenkins、Unity、XCode、サーバー、Cloud etc…

多くのツールやサービスを組み合わせないと作れない



👨‍🔧属人化しがち

多くの場合、クライアントもサーバーもできるすごいメンバーが対応

別プロジェクトに移動すると全く違うアーキテクチャ



🛠 壊れがち

アップデート必須は突然やってくる(XCode、Jenkins)

何年も触ってないJenkinsやMacを触りたくない

5
ビルドパイプラインの重要性

企画 開発 テスト 展開
フィード
バック
より素早い改善サイクルを提供できるゲームがユーザーに評価されやすい

・ユーザーの要望をすぐにサービスに反映できる

・バグがあればすぐに治せる

・積極的な新機能開発ができる

バリューストリーム
✅ バリューストリーム高速化のためには

ビルドパイプラインの安定化、高速化が必要不可欠

6
KLabのビルドパイプラインへのとりくみ

企画

プログラマー

デザイナー

リポジトリ or 

ファイルストレージ 

アセット
ビルド
パッケー
ジング 追加ダウンロード
用ストレージ

自動テスト
サーバー
展開
アプリ
バイナリビルド
ストア
アップロード
開発環境構築
本番サーバー

パイプラインチーム
✅ モバイルゲームのビルドパイプライ
ンは内容が多岐にわたる 

開発の片手間では難しい 

✅ 本日はパイプラインチームで導入し
た仕組みの中でうまくいった事例のご
紹介

✅ ビルドパイプラインを保守、 

効率化を目指したツール開発する 

パイプラインチーム

7
KLabのビルドパイプライン

commit
メンバー
開発サーバー
パッケージング
サーバー展開
社内Mac
バイナリビルド
アセットビルド
開発用jenkins
バイナリ配信サーバー
インストール
運用職人化問題
サーバー接続
運用作業者ビルド依頼
メンバー
メンバー
8
ChatOpsによる解決

🤔もっと手軽にJenkinsでビルドできないだろうか

非開発者でも親しみやすく、利用しやすいインターフェースであれば運用作業者以
外でもビルドができる



HTTP Request

Slack bot

ビルド結果

ビルド

リクエスト

コマンド投稿

ビルド作業
ChatOps

✅非開発者にとって利用し
やすいインターフェース 

✅slackが使えればどこでも
ビルドができる

ChatOpsのメリット

9
KLabのビルドパイプライン

commit
メンバー
開発サーバー
バイナリ配信サーバー
社内Mac
開発用jenkins
パッケージング
サーバー展開
バイナリビルド
アセットビルド
インストール
サーバー接続
メンバー
メンバー
Slack bot

10
ビルドパラメータ複雑問題

実際にプロジェクトで

使っているビルドコマンド

💣 ビルドパラメータが肥大化しがち

もはや人が管理できるパラメータ数ではない

結局運用職人問題が解決していない

🧐 解決案の着想

コマンドを生成する何かを作ればいい

非開発者でも利用しやすく、

容易にメンテ可能なコマンド生成器を作る

サーバー接続先
ブランチ
認証キー
アプリタイトル
アセットのブランチ
ビルドマシン名
11
スプレッドシートコマンド生成シートの誕生

コピーアンドペースト

ビルドしたい条件を入力していく 

スプレッドシートの数式処理により

ビルドコマンドが自動生成される

ビルド作業
ビルドパラメータ

複雑問題が解決

12
ChatOpsとコマンド生成シートが達成したこと

✅ プロジェクトの誰もが自分でビルドできるようになった

コマンド複雑すぎる問題が解決



企画、デザイナー、テスター、プログラマー、

すべてのメンバーが自分の動作確認したいアプリを自分で作れる



動作確認待ちが少なく、確認サイクルが高速化

13
発表のまとめ

メンバー
開発サーバー
バイナリ配信サーバー
社内Mac
開発用jenkins
パッケージング
サーバー展開
バイナリビルド
アセットビルド
インストール
サーバー接続
Slack bot
コマンド生成シート
非開発メンバーが1人でアプリビルドできるようになった

More Related Content

PDF
Unityでこんなことができる KLab×博多Tech塾
PPTX
VyOSで作るIPv4 Router/IPv6 Bridge
PDF
スクリプトエンジン作って 無双する
PDF
Unityネイティブプラグインの勧め 〜UnityでiOS, AndroidのAPIを利用する方法〜
PPTX
見よう見まねでやってみる2D流体シミュレーション
PDF
国際化対応におけるUI実装で気をつけるべきこと
PDF
運営型モバイルゲームの運用について
PDF
その素敵なUI基盤を目指して・・・
Unityでこんなことができる KLab×博多Tech塾
VyOSで作るIPv4 Router/IPv6 Bridge
スクリプトエンジン作って 無双する
Unityネイティブプラグインの勧め 〜UnityでiOS, AndroidのAPIを利用する方法〜
見よう見まねでやってみる2D流体シミュレーション
国際化対応におけるUI実装で気をつけるべきこと
運営型モバイルゲームの運用について
その素敵なUI基盤を目指して・・・

What's hot (19)

PDF
cedec2021
PDF
社内社外で勉強会を続けていくための考え方
PDF
Unityネイティブプラグインの勧め
PDF
KLabのエンジニアを支えるカルチャー
PDF
Android向けUnity製ゲーム最適化のためのCI/CDと連携した自動プロファイリングシステム
PDF
KLabの社内勉強会紹介
PDF
禍つヴァールハイトを支える負荷試験
PDF
[MW10] Xamarin / OSS プロジェクトを活用したエンタープライズモバイルアプリケーションの実装 - Project Blue Monkey -
PPTX
プロダクト開発におけるプロダクトマネージャーの役割とは #‎devsumi‬
PDF
技術広報チームを立ち上げて1年
PDF
アジャイル開発10年間の軌跡
PDF
バレンシアガ『Afterworld: The Age of Tomorrow』の舞台裏 UNREAL FEST EXTREME 2021 SUMMER
PDF
機械学習ベースの自動プレイエージェントを用いたバランス設計効率化の追求
PDF
【16-E-4】残業ゼロで開発スピードが10倍に!もう元の開発体制には戻れないデンソー流のアジャイル開発
PDF
横断組織の失敗から学ぶこと -VP of Engineering Meetup by CA- (公開版)
PDF
【15-A-4】Redmine + Lychee 導入のアンチパターン
PDF
ウェブパフォーマンスの基礎とこれから
PDF
プログラム組んだら負け!実はHTML/CSSだけでできること2015夏
PDF
TECH Streetますます機能拡充するPower Automate for desktopの概要と最新情報
cedec2021
社内社外で勉強会を続けていくための考え方
Unityネイティブプラグインの勧め
KLabのエンジニアを支えるカルチャー
Android向けUnity製ゲーム最適化のためのCI/CDと連携した自動プロファイリングシステム
KLabの社内勉強会紹介
禍つヴァールハイトを支える負荷試験
[MW10] Xamarin / OSS プロジェクトを活用したエンタープライズモバイルアプリケーションの実装 - Project Blue Monkey -
プロダクト開発におけるプロダクトマネージャーの役割とは #‎devsumi‬
技術広報チームを立ち上げて1年
アジャイル開発10年間の軌跡
バレンシアガ『Afterworld: The Age of Tomorrow』の舞台裏 UNREAL FEST EXTREME 2021 SUMMER
機械学習ベースの自動プレイエージェントを用いたバランス設計効率化の追求
【16-E-4】残業ゼロで開発スピードが10倍に!もう元の開発体制には戻れないデンソー流のアジャイル開発
横断組織の失敗から学ぶこと -VP of Engineering Meetup by CA- (公開版)
【15-A-4】Redmine + Lychee 導入のアンチパターン
ウェブパフォーマンスの基礎とこれから
プログラム組んだら負け!実はHTML/CSSだけでできること2015夏
TECH Streetますます機能拡充するPower Automate for desktopの概要と最新情報
Ad

Similar to モバイルゲームビルドパイプラインとChatOps (12)

PDF
モバイルアプリの高速で安定したビルドを支えるJenkins運用術
PDF
Unity に於けるモバイルプラットフォーム向けビルド自動化のおはなし
PDF
『ラブライブ!スクールアイドルフェスティバル ALL STARS』を支えるビルドパイプライン 〜より安定したサービス提供を目指して〜
PPTX
Jenkins x Kubernetesが簡単だと思ったら大変だった話
PDF
Docker と ECS と WebSocket で最強のマルチプレイ・ゲームサーバを構築
PPTX
大規模ゲーム開発における build 高速化と安定化
PPTX
長寿なゲーム事業におけるアプリビルドの効率化
PDF
自動化ーニバルだよ!GDC16に見る自動化技術とテストのトレンド
PPTX
Jenkinsを使おうよ
PDF
はてなにおける継続的デプロイメントの現状と Docker の導入
PDF
Spring in-summer-gradle-hands on-withanswers
モバイルアプリの高速で安定したビルドを支えるJenkins運用術
Unity に於けるモバイルプラットフォーム向けビルド自動化のおはなし
『ラブライブ!スクールアイドルフェスティバル ALL STARS』を支えるビルドパイプライン 〜より安定したサービス提供を目指して〜
Jenkins x Kubernetesが簡単だと思ったら大変だった話
Docker と ECS と WebSocket で最強のマルチプレイ・ゲームサーバを構築
大規模ゲーム開発における build 高速化と安定化
長寿なゲーム事業におけるアプリビルドの効率化
自動化ーニバルだよ!GDC16に見る自動化技術とテストのトレンド
Jenkinsを使おうよ
はてなにおける継続的デプロイメントの現状と Docker の導入
Spring in-summer-gradle-hands on-withanswers
Ad

More from KLab Inc. / Tech (20)

PDF
【公開用】モバイルオンラインゲーム開発を支える早く、安く、使いやすいサーバインフラ構築
PDF
モバイルオンラインゲームのアプリ外課金の導入と運用方法について
PDF
デバイスファーム 「AirLab」 による 自動QAテストの実績と機械学習が拓く次世代QAの可能性
PDF
2024年5月17日 先駆的科学計算フォーラム2024 機械学習を用いた新たなゲーム体験の創出の応用
PDF
大規模モバイルオンラインゲーム開発における チーム組成とワークフロー最適化
PDF
運用中の大規模オンラインゲームで 8年ぶりにPHPバージョンアップをした話
PDF
AirLab導入でテストコストの大幅削減と品質向上! 数十台の端末を一斉に全自動テストできる社内DeviceFarmについてご紹介
PDF
生成AIが切り拓く新しいゲームの創り方・遊び方
PDF
表も裏もすべて見せます! KLab謹製大規模オンラインゲームの リアルタイムチャットマイクロサービス
PDF
モバイルオンラインゲームでの大規模観戦とチート対策 〜自社製リアルタイム通信システム「WSNet2」の事例〜
PDF
他業界からゲーム業界へ転向したときの話
PDF
KLabのゲーム開発を支える開発環境
PDF
ゲーム開発を知らない人にも分かるKLabのゲーム開発運営
PDF
「リアルISUCON」としてのモバイルオンラインゲーム開発
PDF
ゴリラテスト モバイルゲームのUIを自動的に検出・操作する モンキーテスト
PPTX
KLabのチャットシステム インフラ変遷
PPTX
Ganglia のUIにGrafanaを追加する話
PPTX
KLabのインフラエンジニア 〜 こんな感じで働いてます 〜
PPTX
属人化して詰まってた作業を自動化で楽しようとした話
PPTX
モバイルオンラインゲームにおけるUIエンジニアの業務紹介
【公開用】モバイルオンラインゲーム開発を支える早く、安く、使いやすいサーバインフラ構築
モバイルオンラインゲームのアプリ外課金の導入と運用方法について
デバイスファーム 「AirLab」 による 自動QAテストの実績と機械学習が拓く次世代QAの可能性
2024年5月17日 先駆的科学計算フォーラム2024 機械学習を用いた新たなゲーム体験の創出の応用
大規模モバイルオンラインゲーム開発における チーム組成とワークフロー最適化
運用中の大規模オンラインゲームで 8年ぶりにPHPバージョンアップをした話
AirLab導入でテストコストの大幅削減と品質向上! 数十台の端末を一斉に全自動テストできる社内DeviceFarmについてご紹介
生成AIが切り拓く新しいゲームの創り方・遊び方
表も裏もすべて見せます! KLab謹製大規模オンラインゲームの リアルタイムチャットマイクロサービス
モバイルオンラインゲームでの大規模観戦とチート対策 〜自社製リアルタイム通信システム「WSNet2」の事例〜
他業界からゲーム業界へ転向したときの話
KLabのゲーム開発を支える開発環境
ゲーム開発を知らない人にも分かるKLabのゲーム開発運営
「リアルISUCON」としてのモバイルオンラインゲーム開発
ゴリラテスト モバイルゲームのUIを自動的に検出・操作する モンキーテスト
KLabのチャットシステム インフラ変遷
Ganglia のUIにGrafanaを追加する話
KLabのインフラエンジニア 〜 こんな感じで働いてます 〜
属人化して詰まってた作業を自動化で楽しようとした話
モバイルオンラインゲームにおけるUIエンジニアの業務紹介

モバイルゲームビルドパイプラインとChatOps