Download free for 30 days
Sign in
Upload
Language (EN)
Support
Business
Mobile
Social Media
Marketing
Technology
Art & Photos
Career
Design
Education
Presentations & Public Speaking
Government & Nonprofit
Healthcare
Internet
Law
Leadership & Management
Automotive
Engineering
Software
Recruiting & HR
Retail
Sales
Services
Science
Small Business & Entrepreneurship
Food
Environment
Economy & Finance
Data & Analytics
Investor Relations
Sports
Spiritual
News & Politics
Travel
Self Improvement
Real Estate
Entertainment & Humor
Health & Medicine
Devices & Hardware
Lifestyle
Change Language
Language
English
Español
Português
Français
Deutsche
Cancel
Save
EN
Uploaded by
Toshiyuki Hirata
PPTX, PDF
3,084 views
iOSアプリ開発のCI環境 - Jenkins編 -
「Kyobashi.swift #2」の発表資料です。
Technology
◦
Read more
2
Save
Share
Embed
Embed presentation
Download
Downloaded 14 times
1
/ 16
2
/ 16
3
/ 16
4
/ 16
5
/ 16
6
/ 16
7
/ 16
8
/ 16
9
/ 16
10
/ 16
11
/ 16
12
/ 16
13
/ 16
14
/ 16
15
/ 16
16
/ 16
More Related Content
PPTX
iOSアプリにおけるリリースフローとCI環境
by
Toshiyuki Hirata
PPTX
Xcodeの管理を楽に - Jenkins編 -
by
Toshiyuki Hirata
PPTX
バージョンアップの対応を軽減するためのサービスの構築
by
Toshiyuki Hirata
PPTX
マスティフ (for Xcode beta) - バージョンアップ対応を軽減するためのサービス
by
Toshiyuki Hirata
PPTX
iOSアプリの自動テストをはじめよう
by
Toshiyuki Hirata
PPTX
Bluepillを使ったiOS自動テストの並列化
by
Toshiyuki Hirata
PPTX
スマホアプリディレクターが考えていること
by
Kazuaki KURIU
PPTX
UIテストの実行時間の短縮の方法
by
Toshiyuki Hirata
iOSアプリにおけるリリースフローとCI環境
by
Toshiyuki Hirata
Xcodeの管理を楽に - Jenkins編 -
by
Toshiyuki Hirata
バージョンアップの対応を軽減するためのサービスの構築
by
Toshiyuki Hirata
マスティフ (for Xcode beta) - バージョンアップ対応を軽減するためのサービス
by
Toshiyuki Hirata
iOSアプリの自動テストをはじめよう
by
Toshiyuki Hirata
Bluepillを使ったiOS自動テストの並列化
by
Toshiyuki Hirata
スマホアプリディレクターが考えていること
by
Kazuaki KURIU
UIテストの実行時間の短縮の方法
by
Toshiyuki Hirata
What's hot
PPTX
バージョンアップ対応を軽減するサービス:マスティフ
by
Toshiyuki Hirata
PPTX
Xcode10での テスト周りの進化をふりかえる
by
Toshiyuki Hirata
PPTX
2017年のiOSアプリ開発におけるCI事情
by
Toshiyuki Hirata
PPTX
fastlane x iOSアプリのCI
by
Toshiyuki Hirata
PPTX
DroidKaigi_devicefarm
by
Shunsuke Maeda
PPTX
fastlane snapshotの並列実行についてまとめてみた
by
Toshiyuki Hirata
PPTX
Pull request時の画面差分取得の自動化
by
Shunsuke Maeda
PPTX
DeNAにおけるSWETの役割
by
Toshiyuki Hirata
PDF
iOSで利用できるデバイスファームのメリット・デメリットの紹介
by
Shunsuke Maeda
PPTX
Dangerでpull requestレビューの指摘事項を減らす
by
Shunsuke Maeda
PDF
iOSにおけるコードレビューを一歩先へ進める
by
Shunsuke Maeda
PPTX
コードレビューをより良くする Danger x Android
by
Toshiyuki Hirata
PPTX
Androidアプリ開発のテスト環境
by
Toshiyuki Hirata
PPTX
Android e2e testing at mercari
by
Vishal Banthia
PPTX
iOSアプリ開発のテスト環境 - テストをはじめる最初の一歩 -
by
Toshiyuki Hirata
PPTX
JaSST'16 Tokyo モバイルセッション
by
mirer
PPTX
STFとAppiumをもちいたAndroidアプリの自動テスト
by
Toshiyuki Hirata
PDF
Jenkins Bootcamp Premiumのご紹介 in デブサミ2016冬
by
Masanori Satoh
PPTX
アナザーエデンPC版リリースへの道のり 〜WFSにおけるマルチプラットフォーム対応の取り組み〜
by
gree_tech
PDF
SEゼミ2015 - OSS Hack 4 Beginners - フィードバック
by
Kouhei Sutou
バージョンアップ対応を軽減するサービス:マスティフ
by
Toshiyuki Hirata
Xcode10での テスト周りの進化をふりかえる
by
Toshiyuki Hirata
2017年のiOSアプリ開発におけるCI事情
by
Toshiyuki Hirata
fastlane x iOSアプリのCI
by
Toshiyuki Hirata
DroidKaigi_devicefarm
by
Shunsuke Maeda
fastlane snapshotの並列実行についてまとめてみた
by
Toshiyuki Hirata
Pull request時の画面差分取得の自動化
by
Shunsuke Maeda
DeNAにおけるSWETの役割
by
Toshiyuki Hirata
iOSで利用できるデバイスファームのメリット・デメリットの紹介
by
Shunsuke Maeda
Dangerでpull requestレビューの指摘事項を減らす
by
Shunsuke Maeda
iOSにおけるコードレビューを一歩先へ進める
by
Shunsuke Maeda
コードレビューをより良くする Danger x Android
by
Toshiyuki Hirata
Androidアプリ開発のテスト環境
by
Toshiyuki Hirata
Android e2e testing at mercari
by
Vishal Banthia
iOSアプリ開発のテスト環境 - テストをはじめる最初の一歩 -
by
Toshiyuki Hirata
JaSST'16 Tokyo モバイルセッション
by
mirer
STFとAppiumをもちいたAndroidアプリの自動テスト
by
Toshiyuki Hirata
Jenkins Bootcamp Premiumのご紹介 in デブサミ2016冬
by
Masanori Satoh
アナザーエデンPC版リリースへの道のり 〜WFSにおけるマルチプラットフォーム対応の取り組み〜
by
gree_tech
SEゼミ2015 - OSS Hack 4 Beginners - フィードバック
by
Kouhei Sutou
Similar to iOSアプリ開発のCI環境 - Jenkins編 -
PDF
iOS豆知識ver0.0.5
by
ppengotsu Name
PDF
オープンセミナー2013@広島
by
Masahiko Tani
PDF
[20130624]最近の開発環境について話してみる sakata
by
VOYAGE GROUP
PDF
Build an iOS app with ConcourseCI
by
健仁 天沼
PDF
Unity開発で週イチ呑み会を支える技術
by
kazuya noshiro
PDF
ドリコムJenkins勉強会資料
by
Go Sueyoshi (a.k.a sue445)
PDF
DevLOVE iPhoneアプリ勉強会
by
Toshimitsu Takahashi
PDF
RubyKaigi2009 - RubyをつかったiPhoneアプリケーション開発
by
takuma mori
PDF
モバイルアプリの高速で安定したビルドを支えるJenkins運用術
by
KLab Inc. / Tech
PDF
iPhoneとAndroidのアプリ開発最新潮流
by
Rakuten Group, Inc.
PDF
はてなにおける継続的デプロイメントの現状と Docker の導入
by
Yu Nobuoka
PDF
バージョンアップに負けないためのプラクティス
by
Yuji Tokuda
PDF
Getting Started With Ore-Ore Swift Standard Library ++ ほんのり続報
by
Tomohiro Kumagai
PDF
Gitと出会って人生変わった テックヒルズ2013-03-22
by
Shota Umeda
PPTX
Visual Studio App Centerで始めるCI/CD
by
Shinya Nakajima
KEY
Real world rails
by
Jun Yokoyama
PDF
iOSアプリ開発でもTravis CI #eytokyo
by
Koji Hasegawa
PDF
TestFlight自動化でらくらくチームテスト
by
Yoichiro Sakurai
PPTX
Developer summit continuous deliveryとjenkins
by
Kohsuke Kawaguchi
PPTX
JavaFX + NetBeans環境におけるJenkinsの活用(Jenkins第六回勉強会)
by
Ryusaburo Tanaka
iOS豆知識ver0.0.5
by
ppengotsu Name
オープンセミナー2013@広島
by
Masahiko Tani
[20130624]最近の開発環境について話してみる sakata
by
VOYAGE GROUP
Build an iOS app with ConcourseCI
by
健仁 天沼
Unity開発で週イチ呑み会を支える技術
by
kazuya noshiro
ドリコムJenkins勉強会資料
by
Go Sueyoshi (a.k.a sue445)
DevLOVE iPhoneアプリ勉強会
by
Toshimitsu Takahashi
RubyKaigi2009 - RubyをつかったiPhoneアプリケーション開発
by
takuma mori
モバイルアプリの高速で安定したビルドを支えるJenkins運用術
by
KLab Inc. / Tech
iPhoneとAndroidのアプリ開発最新潮流
by
Rakuten Group, Inc.
はてなにおける継続的デプロイメントの現状と Docker の導入
by
Yu Nobuoka
バージョンアップに負けないためのプラクティス
by
Yuji Tokuda
Getting Started With Ore-Ore Swift Standard Library ++ ほんのり続報
by
Tomohiro Kumagai
Gitと出会って人生変わった テックヒルズ2013-03-22
by
Shota Umeda
Visual Studio App Centerで始めるCI/CD
by
Shinya Nakajima
Real world rails
by
Jun Yokoyama
iOSアプリ開発でもTravis CI #eytokyo
by
Koji Hasegawa
TestFlight自動化でらくらくチームテスト
by
Yoichiro Sakurai
Developer summit continuous deliveryとjenkins
by
Kohsuke Kawaguchi
JavaFX + NetBeans環境におけるJenkinsの活用(Jenkins第六回勉強会)
by
Ryusaburo Tanaka
More from Toshiyuki Hirata
PDF
iOSにおけるパフォーマンス計測
by
Toshiyuki Hirata
PDF
iOSにおけるパフォーマンス計測
by
Toshiyuki Hirata
PDF
iOSにおける自動テストの並列化
by
Toshiyuki Hirata
PDF
UIテスト(Espresso)の高速化をさらにすすめる
by
Toshiyuki Hirata
PDF
UIテストの実行時間を短縮させる方法
by
Toshiyuki Hirata
PDF
我が家のLINEを中心とした情報共有
by
Toshiyuki Hirata
PDF
レビューのコストを削減するための施策
by
Toshiyuki Hirata
iOSにおけるパフォーマンス計測
by
Toshiyuki Hirata
iOSにおけるパフォーマンス計測
by
Toshiyuki Hirata
iOSにおける自動テストの並列化
by
Toshiyuki Hirata
UIテスト(Espresso)の高速化をさらにすすめる
by
Toshiyuki Hirata
UIテストの実行時間を短縮させる方法
by
Toshiyuki Hirata
我が家のLINEを中心とした情報共有
by
Toshiyuki Hirata
レビューのコストを削減するための施策
by
Toshiyuki Hirata
iOSアプリ開発のCI環境 - Jenkins編 -
1.
Copyright © DeNA
Co.,Ltd. All Rights Reserved. Kyobashi.swfit #2 2016/08/17(Wed) 平田敏之@DeNA iOSアプリ開発のCI環境 - Jenkins編 -
2.
Copyright © DeNA
Co.,Ltd. All Rights Reserved. 自己紹介 平田 敏之 ⁃ DeNA SWET G (テスト基盤チーム etc) 所属 • SWETとは? ⁃ Software Engineer in Test • http://www.slideshare.net/masaki/dena-software-engineer-in-test ⁃ ミッション • DeNAサービス全般の品質向上 • DeNAエンジニアの開発生産性向上 • 私が主にやっていること ⁃ クライアントアプリ周りのテスト戦略、自動テストの開発 ⁃ CI/CD環境整備 ⁃ テスト基盤環境の開発 ⁃ などなど
3.
Copyright © DeNA
Co.,Ltd. All Rights Reserved. 今日のお話 1. iOSアプリ開発で利用しているCI環境はありますか? 2. CI環境のメンテンス、セットアップはどうしていますか? 1. ★ iOSアプリの開発環境のセットアップのツラミ 2. ★ Xcodeのメジャーアップデートというツラミ 3. CI環境でどこまでやっていますか? 1. ★ Slackを使った結果の通知
4.
Copyright © DeNA
Co.,Ltd. All Rights Reserved. IOSアプリ開発で利用しているCI環境はありますか? ※今回はオンプレミス型のCI環境のお話です※ オンプレミスかクラウドのどちらが良いかは対象となるプロジェクトに応じて判断するのが良い
5.
Copyright © DeNA
Co.,Ltd. All Rights Reserved. CI環境といえば Jenkins ⁃ 言わずとしれた定番だが運用コストがかかる ⁃ なんでも出来るがJenkinsおじさんも出来やすい ⁃ LTS 2.7.2 (https://jenkins.io/changelog-stable/) CircleCI ⁃ 簡単に利用できる優れもの ⁃ 痒いところに手が届かない ⁃ Enterprise版もある
6.
Copyright © DeNA
Co.,Ltd. All Rights Reserved. Jenkins 2.7.1 + blueocean plugin Jenkinsも進化しています
7.
Copyright © DeNA
Co.,Ltd. All Rights Reserved. 今回のCI環境の構成(の一部) Github Jenkins ⁃ setup / maintenance • Ansible(独自) ⁃ plugin(の一部) • slack (独自カスタマイズ) • Xcode複数バージョン管理plugin(独自) • Ci Skip Plugin • Copy Artifact Plugin • Credentials Binding Plugin • GitHub Pull Request Builder • Groovy Postbuild • JUnit Plugin • Slack Notification Plugin • Throttle Concurrent Builds Plug-in Slack ⁃ Jenkinsの実行結果の通知先
8.
Copyright © DeNA
Co.,Ltd. All Rights Reserved. CI環境のメンテンス、セットアップは どうしていますか? ※インストールしないといけないものが多いという課題※
9.
Copyright © DeNA
Co.,Ltd. All Rights Reserved. iOSアプリ開発の面倒なところ – 環境構築 – やらないといけないことは多い.. (1) 定期的に更新をしないといけない ⁃ 証明書 • Apple Developer Programの更新に併せて(1年に1回) ⁃ Provisioning Profile • デバイスを追加したら • App IDを追加したら • Apple Developer Programの更新に併せて(1年に1回) (2) Xcodeのバージョン • メジャーアップデート時期は複数のバージョンが必要 ⁃ 複数のバージョンを使ってアプリをビルドしたりする
10.
Copyright © DeNA
Co.,Ltd. All Rights Reserved. (1) 環境のセットアップの簡易化 課題 ⁃ 定期的に更新するのは非常にコスト高 解決策 ⁃ Ansibleを利用してセットアップ • 証明書のインポート • Provisioning Profileの設置 ⁃ 複数AppleDeveloperProgram対応 • Xcodeのインストール 現状 ⁃ Jenkinsを使って簡易セットアップ • マルチ構成プロジェクトを用いてslaveマシンを一気にセットアップ
11.
Copyright © DeNA
Co.,Ltd. All Rights Reserved. (2) Xcodeの複数バージョン対応 課題 ⁃ Xcodeを複数インストールし、使い分ける必要がある • DEVELOPER_DIRに値を入れるようにしたりする ⁃ slaveにインストールされているかの保証は無く手動で設定したり.. 解決策 ⁃ Jenkinsの独自プラグインを用意 • インストールされているXcodeを自動チェックし、Labelが貼られる • 指定したXcodeのバージョンでJobを実行できる
12.
Copyright © DeNA
Co.,Ltd. All Rights Reserved. CI環境でどこまでやっていますか? ※CI環境を用いたリリースまでのフローについての話は割愛※
13.
Copyright © DeNA
Co.,Ltd. All Rights Reserved. CI環境におけるステップ 1. 個人のマシンで全ておこなっている 1. Xcodeで全ておこなっている 2. CLIで出来るようになっている • fastlaneなどを使用 2. CI環境がある(※個々の詳細については割愛) 1. アプリのビルド 2. 実行結果はSlackなどで通知 3. テストの実行 1. 環境 1. iOSシミュレーター 2. 実機(DeviceFarm / マシンに接続されている端末) 2. 旧バージョンのアプリで実行 4. 検証済のアプリをiTunesConnectにアップロード 5. 検証用(など)にDeployGateなどにアップロード • Jenkinsから直接DLというのも有
14.
Copyright © DeNA
Co.,Ltd. All Rights Reserved. Slackを用いての通知 Jenkinsのjobの結果を通知 ⁃ Jobが失敗 or 成功したことを伝えたい • 例) 定期実行の自動テストが失敗したことを全員に伝える • 例) アプリのビルドが終わったことをjobを動かした人に伝える • ※@hereや@channelをしすぎるのは逆効果なこともあります※ ⁃ 課題 • 現状のslack pluginは良い感じにmentionをしてくれない ⁃ カスタムメッセージを駆使するぐらいしか.. ⁃ 解決策 • 現状のslack pluginを改良しちゃえば良い ⁃ slack api使ってuserの情報も取れば良い!
15.
Copyright © DeNA
Co.,Ltd. All Rights Reserved. Slack pluginのカスタマイズ 機能 ⁃ Jobのステータスに応じてmentionを飛ばす • 任意のuser • テストフレーズで実行したuser • JenkinsのJobを実行したuser • @here • @channel
16.
Copyright © DeNA
Co.,Ltd. All Rights Reserved. まとめ iOSアプリの開発環境のセットアップのツラミ → Ansbileで解決 Xcodeのメジャーアップデートというツラミ → 新規にJenkins pluginを作って解決 Slackを使った結果の通知 → 既存のJenkins pluginを改良して解決
Download