Successfully reported this slideshow.
We use your LinkedIn profile and activity data to personalize ads and to show you more relevant ads. You can change your ad preferences anytime.
Upcoming SlideShare
Jenkins + Deploygateを使った簡単ベータ配信
Next
Download to read offline and view in fullscreen.

0

Share

Download to read offline

2016-11-28 開発・改善ワークフローにおけるDeployGate利用方法

Download to read offline

Deploygateの活用TIPSいろいろ紹介。

Related Books

Free with a 30 day trial from Scribd

See all

Related Audiobooks

Free with a 30 day trial from Scribd

See all
  • Be the first to like this

2016-11-28 開発・改善ワークフローにおけるDeployGate利用方法

  1. 1. 開発・改善ワークフローにお けるDeployGate利用方法 João Orui @ Drivemode, Inc.
  2. 2. Drivemodeとは
  3. 3. DrivemodeはDeployGateヘビーユーザ ● 多い時で一日20回配信していることも! (※開発チームは4名だけ) ● 配布ページ作成上限数にはじめて引っ掛かった(たぶん) ● 直近6ヶ月の不具合発見数は数個 →いつも迅速な対応ありがとうございます!!!
  4. 4. DeployGateの 活用方法 ざっくり 1. 配信 2. クラッシュログの収集 3. 機能アクティベーション
  5. 5. 配信 1. パートナー企業へ 2. デモ・テスト企画へ 3. 一部テストユーザへ 4. 社員へ 社員には常に最新版を配信!
  6. 6. クラッシュログの収集 すぐに使ってもらい、すぐに不具合を発見 クラッシュはSlackへ投稿する設定→気づきやすくて便利!
  7. 7. 機能アクティベーション 開発中の新機能はactivation flagで公開を制御している 社員は公開前の機能を使うことが出来るようになっている (とても便利なので、のちほど詳しく!)
  8. 8. 配信はどうしてる? Pushから配信まで 1. GitHubプッシュ毎にCIが走る 2. テスト成功したら、自動配信 3. 配信はbranch別配布ページへ
  9. 9. Pushから配信までのフロー コードをpush! ビルド! Webhookで CIサーバー知らせる 配信
  10. 10. CI: Wercker ● 自分でビルド用のDockerイメージ指定が可能 ● "ワークフロー"の条件指定で次のステップを決定することが可能 Dockerイメージ参考: https://github.com/KeithYokoma/wercker-container-android
  11. 11. 配信: curlコマンド一つで実現可能 curl -F ''file=@./app/build/outputs/apk/app-debug.apk'' -F "token=${DEPLOYGATE_API_KEY}" -F "message=debug `git log -n 1 --pretty=format:"%h %s"`" https://deploygate.com/api/users/[owner name]/apps ※他にCLIやプラグインを使う方法もあります。
  12. 12. 便利な活用方法 TIPS! 徹底的DeployGate活用! 1. バージョン内容を分かりやすく表 記 2. ブランチ毎に配布ページを自動 生成 3. 社員・パートナー限定機能の制御 4. ピン
  13. 13. 活用TIPS: ①バージョン内容を分かりやすく表示 配信毎にメッセージを添えることが可能です。 メッセージ内に下記の情報を含めると、あとあと便利です。 1. ビルドタイプ (release, debug, etc...) 2. ビルドフレーバー (internal, production, etc...) 3. バージョン管理リビジョン (git SHA-1 hash, etc...) 4. バージョン管理メッセージ (commit message)
  14. 14. 活用TIPS: ②ブランチ毎に配布ページを自動生成 Drivemodeでは配信は2つのグループに分けています。 1. masterブランチだけを配信するグループ 2. masterブランチ以外を配信するグループ 間違って機能が異るブランチ配信をインストールしてしまうことを防ぎます! masterのみ master以外
  15. 15. 活用TIPS: ②ブランチ毎に配布ページを自動生成 master以外のブランチは、ブランチ毎に配布ページを自動に生成 他のブランチの配信を誤ってインストールしてしまうことを防ぎます 配布時に distribution_name パラメータを指定することで配布ページ自動生成できま す 例: curl -F ''file=@./app/build/outputs/apk/app-release.apk'' -F "token=${DEPLOYGATE_API_KEY}" -F "message=release ${GIT_BRANCH} `git log -n 1 --pretty=format:"%h %s"`" -F "distribution_name=${GIT_BRANCH} release" https://deploygate.com/api/users/[owner name]/apps
  16. 16. 活用TIPS: ③社員・パートナー限定機能の制御 Drivemodeでは開発中の新機能はactivation flagで公開を制御していることが多い 試験的な機能を有効にしたりできるDrivemode Labsを提供しています ※Gmail Labsみたいな感じです! 3つの段階 1. ユーザ公開 2. 社員公開 3. 開発メンバ限定 社員まで公開
  17. 17. 活用TIPS: ③社員・パートナー限定機能の制御 DeployGate#install の第2引数にコールバックを指定することが可能。 インストールしたユーザなどを知らせてくれる! DeployGate.install(this, new DeployGateCallback() { @Override public void onStatusChanged(boolean isManaged, boolean isAuthorized, String loginUsername, boolean isStopped) { analyticsManager.flagAsTeamMember(loginUsername); activationModule.enableTeamFeatures(loginUsername); } }, true); 参考: Android SDK リファレンス
  18. 18. 活用TIPS: ④ピン(保護) 実はグループの最大履歴が500件(増やしたい!! ) 過去のリリースバージョンをキープするためにピン(保護)を使います。 ※いつか古いバージョンを引っ張ってくる必要が来るでしょう!マジで! ※CIのアーカイブから持ってくるのはしんどい!マジで! ピン(保護)!
  19. 19. まとめ DeployGateを使うメリット ● APKファイルを直接やり取りする必要がない ● 社内・社外や自由な範囲で配信が可能 ● インストールしている端末にはアップデート通知が届く ● インストールしているバージョンか確認しやすい ● 過去バージョンに戻せる・管理してくれる ● クラッシュログの収集が出来る
  20. 20. 継続的インテグレーション + 社員への自動配信 + 素早い新規開発へのフィードバック = 素早い改善フローにつながるかも!
  21. 21. 質問
  22. 22. ありがとうございました!

Deploygateの活用TIPSいろいろ紹介。

Views

Total views

5,739

On Slideshare

0

From embeds

0

Number of embeds

3,155

Actions

Downloads

3

Shares

0

Comments

0

Likes

0

×