Upload
ngyoi
View
577
Download
4
Embed Size (px)
DESCRIPTION
Technology
Citation preview
Jenkins を使用して アプリの配布を自動化する
2014.09.18 @ngyoi
XcodeプロジェクトをビルドTestFlightにアップロードとSlackに通知
本日の流れ
• Jenkins とは?
• Jenkins でビルドから配布・通知までの設定
• 最後に
Jenkins とは?
Jenkins とは?
• 継続的インテグレーションツール
• ざっくりいうと、ビルドやテストを継続的に実行するためのツール
Jenkins でビルドから配布・通知までの設定
設定を始める前に
• Jenkins 氏を怒らせると大概よくないことが起こります
• 右のようなJenkins の怒った画像が表示されるとページにアクセス出来なくなる可能性があります
ダッシュボード画面
Jenkinsのジョブを作成
Jenkinsのジョブを作成
• ジョブ名の欄にジョブ名を入力する
• [フリースタイル・プロジェクトのビルド] を選択
• [OK] をクリック
プロジェクト名と説明
プロジェクト名と説明
• プロジェクト名と説明を入力
• [古いビルドの破棄] 古いビルドを破棄したい場合はチェックする(今回はチェックを入れない)
Slack Notifications
Slack Notifications• Slack に通知するチャンネルとタイミングを設定します
• [Project Channel] 通知するチャンネル名を指定
• [Notify ~] 通知したいタイミングにチェックを入れます
• [ビルド~] 使用したことがないのでどのような機能か分かりません
ソースコード管理
ソースコード管理• 今回は Git を使用するので Git にチェックしてください
• [Repositories] の [Repository URL] にリポジトリのURLをしてします
• 注意点として Bitbucket の クローンURL を見ると修正前のURLになっていますが、Jenkinsでは修正後のURLで入力してください
• 修正前 : https://[email protected]/username/repo.git
• 修正後 : https://bitbucket.org/username/repo.git
ビルド・トリガ
ビルド・トリガ• ジョブの実行タイミングの設定します
• 今回は [SCMをポーリング] を使用します
• リポジトリをポーリングし、更新されたタイミングで自動的にビルドを行います
• 今回は、5分おきに更新がないかチェックします
Xcode General build settings
Xcode General build settings• Xcode のビルドの設定を行います
• [Target] には、ターゲット名を入力します
• [Clean before build?] ビルドの実行前にbuildディレクトリを削除するのでチェックを入れます
• [Configuration] 対象とするConfigrationを設定します(デフォルトで Release になっているのでそのまま設定します)
• [Pack application and build .ipa?] .ipaファイルを作成するのでチェックを入れます
• [.ipa filename pattern] .ipaファイルの名前のパターンを入力します
Xcode Code signing & OS X keychain options
Xcode Code signing & OS X keychain options
• ビルドに使う認証情報とKeychainの設定を行います
• [Embedded Profile] Provisioning Profileのファイル名を設定します(別途連絡)
• [Unlock Keychain?] Keychainのロックを解除するのでチェックを入れます
• [Keychain path] .keychainファイルの場所を指定します ${HOME}/Library/Keychains/login.keychain
Xcode Advanced Xcode build options
Xcode Advanced Xcode build options
• xcodebuildコマンドに関する設定を行います
• [Clean test reports?] テストの結果の出力ファイルをクリーンするのでチェックを入れます(今回はテストしないので関係ないですが…)
• [Xcode Project File] .xcodeprojのファイル名を入力します※ファイル名と拡張子を入力します
ビルド後の処理
ビルド後の処理• [ビルド後の処理の追加] から [Upload to Testflight] を選択します
• [ビルド後の処理の追加] から [Slack Notifications] を選択します
• デフォルトのままで特に設定の必要はありません
ビルドの実行
ビルドの実行
• 赤枠の [ビルド実行] を押すとビルドが開始されます
• 成功すると青色になり、何らかの理由で失敗すると赤色になります
参考サイト• Jenkinsでビルド・テスト・カバレッジ出力・コード静的解析を自動化するhttp://www.atmarkit.co.jp/ait/articles/1405/23/news031.html
• Bitbucket のリポジトリをJenkinsで使用する際に401になる問題http://serverfault.com/questions/558666/failed-to-connect-to-repository-401-on-jenkins-codebase-git
最後にプラグインとか使えば
色々出来ます
コード・カバレッジ
appledocによるDocument生成
ご清聴ありがとうございました