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
Submit search
EN
Uploaded by
Yu Nobuoka
PDF, PPTX
2,693 views
Android アプリを Jenkins でビルドして GitHub に “リリース” を作る
リリース用の Android アプリの APK パッケージを Jenkins 上で作成し、GitHub に “リリース” を生成するようにしたことについての発表です。
Software
◦
Read more
4
Save
Share
Embed
Embed presentation
Download
Download as PDF, PPTX
1
/ 13
2
/ 13
3
/ 13
4
/ 13
5
/ 13
6
/ 13
7
/ 13
8
/ 13
9
/ 13
10
/ 13
11
/ 13
12
/ 13
13
/ 13
More Related Content
PDF
ホットペッパービューティーにおけるモバイルアプリ向けAPIのBFF/Backend分割
by
Recruit Lifestyle Co., Ltd.
PDF
20190731 Black Belt Online Seminar Amazon ECS Deep Dive
by
Amazon Web Services Japan
PPTX
モノリスからマイクロサービスへの移行 ~ストラングラーパターンの検証~(Spring Fest 2020講演資料)
by
NTT DATA Technology & Innovation
PDF
AWS Black Belt Online Seminar AWS CloudFormation アップデート
by
Amazon Web Services Japan
PDF
Docker活用パターンの整理 ― どう組み合わせるのが正解?!
by
Etsuji Nakai
PDF
OpenStack超入門シリーズ いまさら聞けないSwiftの使い方
by
Toru Makabe
PPTX
Salesforceの標準オブジェクトについて復習してみた
by
y-maeda
PPTX
Lightning Knowledgeをちょっとだけ触ってみた
by
y-maeda
ホットペッパービューティーにおけるモバイルアプリ向けAPIのBFF/Backend分割
by
Recruit Lifestyle Co., Ltd.
20190731 Black Belt Online Seminar Amazon ECS Deep Dive
by
Amazon Web Services Japan
モノリスからマイクロサービスへの移行 ~ストラングラーパターンの検証~(Spring Fest 2020講演資料)
by
NTT DATA Technology & Innovation
AWS Black Belt Online Seminar AWS CloudFormation アップデート
by
Amazon Web Services Japan
Docker活用パターンの整理 ― どう組み合わせるのが正解?!
by
Etsuji Nakai
OpenStack超入門シリーズ いまさら聞けないSwiftの使い方
by
Toru Makabe
Salesforceの標準オブジェクトについて復習してみた
by
y-maeda
Lightning Knowledgeをちょっとだけ触ってみた
by
y-maeda
What's hot
PPTX
SPAセキュリティ入門~PHP Conference Japan 2021
by
Hiroshi Tokumaru
PDF
20210126 AWS Black Belt Online Seminar AWS CodeDeploy
by
Amazon Web Services Japan
PDF
AWS Elemental MediaConvert で動画変換
by
虎の穴 開発室
PDF
ゲームアーキテクチャパターン (Aurora Serverless / DynamoDB)
by
Amazon Web Services Japan
PDF
Kongの概要と導入事例
by
briscola-tokyo
PDF
20190402 AWS Black Belt Online Seminar Let's Dive Deep into AWS Lambda Part1 ...
by
Amazon Web Services Japan
PDF
Dapr × Kubernetes ではじめるポータブルなマイクロサービス(CloudNative Days Tokyo 2020講演資料)
by
NTT DATA Technology & Innovation
PPTX
「関心の分離」と「疎結合」 ソフトウェアアーキテクチャのひとかけら
by
Atsushi Nakamura
PDF
20200930 AWS Black Belt Online Seminar Amazon Kinesis Video Streams
by
Amazon Web Services Japan
PDF
HBaseとRedisを使った100億超/日メッセージを処理するLINEのストレージ
by
LINE Corporation
PDF
Yahoo!ニュースにおけるBFFパフォーマンスチューニング事例
by
Yahoo!デベロッパーネットワーク
PDF
MvcのFatモデルに立ち向かう
by
Shun Hikita
PDF
Effective Data Lakes - ユースケースとデザインパターン
by
Noritaka Sekiyama
PDF
【第26回Elasticsearch勉強会】Logstashとともに振り返る、やっちまった事例ごった煮
by
Hibino Hisashi
PDF
Kubernetesを使う上で抑えておくべきAWSの基礎概念
by
Shinya Mori (@mosuke5)
PPTX
LIFULL HOME'SでのSolrの構成と運用の変遷
by
LIFULL Co., Ltd.
PPTX
今から始めるWebClient(JSUG勉強会 2020年その6 LT大会)
by
NTT DATA Technology & Innovation
PDF
【Oracle Cloud ウェビナー】WebLogic Serverのご紹介
by
オラクルエンジニア通信
PPTX
Amazon EKS への道 ~ EKS 再入門 ~
by
Hideaki Aoyagi
PDF
EC2でkeepalived+LVS(DSR)
by
Sugawara Genki
SPAセキュリティ入門~PHP Conference Japan 2021
by
Hiroshi Tokumaru
20210126 AWS Black Belt Online Seminar AWS CodeDeploy
by
Amazon Web Services Japan
AWS Elemental MediaConvert で動画変換
by
虎の穴 開発室
ゲームアーキテクチャパターン (Aurora Serverless / DynamoDB)
by
Amazon Web Services Japan
Kongの概要と導入事例
by
briscola-tokyo
20190402 AWS Black Belt Online Seminar Let's Dive Deep into AWS Lambda Part1 ...
by
Amazon Web Services Japan
Dapr × Kubernetes ではじめるポータブルなマイクロサービス(CloudNative Days Tokyo 2020講演資料)
by
NTT DATA Technology & Innovation
「関心の分離」と「疎結合」 ソフトウェアアーキテクチャのひとかけら
by
Atsushi Nakamura
20200930 AWS Black Belt Online Seminar Amazon Kinesis Video Streams
by
Amazon Web Services Japan
HBaseとRedisを使った100億超/日メッセージを処理するLINEのストレージ
by
LINE Corporation
Yahoo!ニュースにおけるBFFパフォーマンスチューニング事例
by
Yahoo!デベロッパーネットワーク
MvcのFatモデルに立ち向かう
by
Shun Hikita
Effective Data Lakes - ユースケースとデザインパターン
by
Noritaka Sekiyama
【第26回Elasticsearch勉強会】Logstashとともに振り返る、やっちまった事例ごった煮
by
Hibino Hisashi
Kubernetesを使う上で抑えておくべきAWSの基礎概念
by
Shinya Mori (@mosuke5)
LIFULL HOME'SでのSolrの構成と運用の変遷
by
LIFULL Co., Ltd.
今から始めるWebClient(JSUG勉強会 2020年その6 LT大会)
by
NTT DATA Technology & Innovation
【Oracle Cloud ウェビナー】WebLogic Serverのご紹介
by
オラクルエンジニア通信
Amazon EKS への道 ~ EKS 再入門 ~
by
Hideaki Aoyagi
EC2でkeepalived+LVS(DSR)
by
Sugawara Genki
Similar to Android アプリを Jenkins でビルドして GitHub に “リリース” を作る
PDF
モバイルアプリの高速で安定したビルドを支えるJenkins運用術
by
KLab Inc. / Tech
PPTX
Jenkins使ってみた~Windows編~
by
Yuta Matsumura
PDF
Android App Development with Gradle & Android Studio
by
Soichiro Kashima
PDF
5 年続く 「はてなブックマーク」 アプリを継続開発する技術
by
Yu Nobuoka
PDF
Jenkinsを用いたAndroidアプリビルド作業効率化
by
Kenichi Kambara
PDF
【ヒカ☆ラボ】 dely株式会社 梅森 翔氏 登壇資料 20171121
by
leverages_event
PDF
改訂第3版 Jenkins 実践入門 what's newから見るJenkinsのUpdate
by
Yuki Iwanari
PDF
バージョンアップに負けないためのプラクティス
by
Yuji Tokuda
PDF
JenkinsをJava開発でこんな感じで使っています
by
Toshio Ehara
PDF
CIBC workshop by imagire
by
Takashi Imagire
PDF
DOO-003_Jenkins 作者が語る、Docker コンテナによる継続的デリバリのオススメと新機能のご紹介
by
decode2016
PDF
20150425 DroidKaigi つかえるGradleプロジェクトの作り方
by
Makoto Yamazaki
PPTX
AITCシニア技術者勉強会 「今さら聞けないWebサイト開発」 vol2
by
近藤 繁延
PDF
Gws 20120521 gradle
by
Nobuhiro Sue
PPTX
Jenkins User Conference 東京 2015
by
Kohsuke Kawaguchi
PDF
ドリコムJenkins勉強会資料
by
Go Sueyoshi (a.k.a sue445)
PDF
Jenkinsについて
by
Satoshi Namai
PDF
Jenkinsで始めるスマートフォンアプリ
by
kyon mm
PDF
ドリコムを支える課金ライブラリを支えるJenkins
by
Go Sueyoshi (a.k.a sue445)
PPTX
Android 開発, 運用時に使いたいライブラリやサービスの紹介
by
Kenichi Tatsuhama
モバイルアプリの高速で安定したビルドを支えるJenkins運用術
by
KLab Inc. / Tech
Jenkins使ってみた~Windows編~
by
Yuta Matsumura
Android App Development with Gradle & Android Studio
by
Soichiro Kashima
5 年続く 「はてなブックマーク」 アプリを継続開発する技術
by
Yu Nobuoka
Jenkinsを用いたAndroidアプリビルド作業効率化
by
Kenichi Kambara
【ヒカ☆ラボ】 dely株式会社 梅森 翔氏 登壇資料 20171121
by
leverages_event
改訂第3版 Jenkins 実践入門 what's newから見るJenkinsのUpdate
by
Yuki Iwanari
バージョンアップに負けないためのプラクティス
by
Yuji Tokuda
JenkinsをJava開発でこんな感じで使っています
by
Toshio Ehara
CIBC workshop by imagire
by
Takashi Imagire
DOO-003_Jenkins 作者が語る、Docker コンテナによる継続的デリバリのオススメと新機能のご紹介
by
decode2016
20150425 DroidKaigi つかえるGradleプロジェクトの作り方
by
Makoto Yamazaki
AITCシニア技術者勉強会 「今さら聞けないWebサイト開発」 vol2
by
近藤 繁延
Gws 20120521 gradle
by
Nobuhiro Sue
Jenkins User Conference 東京 2015
by
Kohsuke Kawaguchi
ドリコムJenkins勉強会資料
by
Go Sueyoshi (a.k.a sue445)
Jenkinsについて
by
Satoshi Namai
Jenkinsで始めるスマートフォンアプリ
by
kyon mm
ドリコムを支える課金ライブラリを支えるJenkins
by
Go Sueyoshi (a.k.a sue445)
Android 開発, 運用時に使いたいライブラリやサービスの紹介
by
Kenichi Tatsuhama
More from Yu Nobuoka
PDF
GUI アプリケーションにおける MVC
by
Yu Nobuoka
PDF
Android アプリ開発における Gradle ビルドシステム
by
Yu Nobuoka
PDF
Windows ストアアプリのつくりかた (JS + HTML + CSS)
by
Yu Nobuoka
PDF
Java による Web アプリケーションのプロトタイプのために最近使っている構成
by
Yu Nobuoka
PDF
TypeScript 言語処理系ことはじめ
by
Yu Nobuoka
PDF
WebSocket Protocol と Plack::Middleware::WebSocket
by
Yu Nobuoka
PDF
GIF と LZW 圧縮と GifWriter.js
by
Yu Nobuoka
PDF
はてなにおける継続的デプロイメントの現状と Docker の導入
by
Yu Nobuoka
PDF
はてなにおける Android アプリのソフトウェアテスト
by
Yu Nobuoka
PDF
AndroidJUnitRunner で JUnit 4 形式のテストに移行
by
Yu Nobuoka
GUI アプリケーションにおける MVC
by
Yu Nobuoka
Android アプリ開発における Gradle ビルドシステム
by
Yu Nobuoka
Windows ストアアプリのつくりかた (JS + HTML + CSS)
by
Yu Nobuoka
Java による Web アプリケーションのプロトタイプのために最近使っている構成
by
Yu Nobuoka
TypeScript 言語処理系ことはじめ
by
Yu Nobuoka
WebSocket Protocol と Plack::Middleware::WebSocket
by
Yu Nobuoka
GIF と LZW 圧縮と GifWriter.js
by
Yu Nobuoka
はてなにおける継続的デプロイメントの現状と Docker の導入
by
Yu Nobuoka
はてなにおける Android アプリのソフトウェアテスト
by
Yu Nobuoka
AndroidJUnitRunner で JUnit 4 形式のテストに移行
by
Yu Nobuoka
Android アプリを Jenkins でビルドして GitHub に “リリース” を作る
1.
2015-11-30 関西モバイルアプリ研究会 #8 Android アプリ Jenkins
でビルドして GitHub に “リリース” を作る id:nobuoka 株式会社はてな
2.
自己紹介と前置き ● id:nobuoka Android
アプリ開発 Windows アプリ開発 サーバーサイド (Scala) ● 今日 : CI・ビルド周りの話 最終的な目的 : GitHub にリリースを作る ビルドシステム周りの基本的な話
3.
やりたいこと ● Jenkins 上でビルドして
GitHub に “リリー ス” を作って APK ファイルをアップロード Gradle 上で APK ファイルを扱う
4.
なんで? ● リリースフローを自動化したい →
Jenkins 手元ビルドだとクラッシュする APK ができる ことがある ● 過去のリリースを振り返りやすくする → GitHub のリリース機能 過去バージョンでのリリース内容を見たり、実 際にその時の APK を使ったりしやすくしたい
5.
Android のビルドシステム :
Gradle ● Android アプリの標準のビルドシステム Android Studio でサポート ● Java 界隈のビルドシステム ● Groovy による DSL ● Android Gradle Plugin により Android ア プリをビルド可能に
6.
Build Variants ● Android
Gradle plugin の機能 ● Product flavors × Build types ● ビルドに種類があって名前がついてるという話 今回のスライドで重要なのはこれだけ “productionRelease” とか “previewDebug とか”
7.
APK パッケージへの署名 ● パスワードは
Gradle プロパティにする android { signingConfigs { release { storeFile file("your.key") storePassword project.getProperties().get("storePassword") keyAlias "yourAlias" keyPassword project.getProperties().get("keyPassword") } } buildTypes { release { signingConfig signingConfigs.release
8.
Gradle 上で APK
パッケージを扱う ● android.applicationVariants から find で指定の build variant を取得 → Assemble タスクや出力ファイルの情報 // 別 project からでも扱える。 Project appProject = project(':app') def targetVariant = appProject.android.applicationVariants. find { it.name == "productionRelease" } def assembleTask = targetVariant.assemble def outputs = targetVariant.outputs
9.
Assemble タスクに依存するタスクの定義 ● APK
ファイルを操作するなら assemble タス クに依存させる task putRelease, dependsOn: assembleTask << { String versionName = targetVariant.versionName String versionCode = targetVariant.versionCode String title = "Version ${versionName} (${versionCode})" MyGheClient gheClient = new MyGheClient() gheClient.setOAuth2Token(gheOAuth2Token) // ここでリリースの作成や APK ファイルのアップロードをする。 // (後述) }
10.
GitHub に “リリース”
を作成する機能 ● GitHub Java API を拡張 (Groovy は楽) buildscript { repositories { mavenCentral() } dependencies { classpath 'org.eclipse.mylyn.github:org.eclipse.egit.github.core:2.1.5' }} class MyGheClient extends GitHubClient { public MyGheClient() { super("ghe.example.com") } Map<String, Object> createGheRelease(String name, String versionName) { def release = [ "tag_name": "v" + versionName, "target_commitish": "master", "name": name, "body": "Description of the release", "draft": true, "prerelease": false ] (Map<String, Object>) post("/repos/{team}/{repo}/releases", release, Map) } }
11.
“リリース” 作成実行 MyGheClient gheClient
= new MyGheClient() gheClient.setOAuth2Token(gheOAuth2Token) def release = gheClient.createGheRelease(title, versionName) ● リリース用のファイルアップロードも似たよう な感じで実装しよう!
12.
Jenkins で実行 export ANDROID_HOME=/Users/steve/.jenkins/tools/android-sdk ./gradlew
-PstorePassword="${STORE_PASSWORD}" -PkeyPassword="${KEY_PASSWORD}" -PgheOAuth2Token="${GHE_OAUTH_2_TOKEN}" clean putRelease
13.
おわり ● 署名した APK
ファイルを作るのは Android Gradle plugin の機能でできる パスワードは Gradle プロパティとして渡す ● Assemble タスクに依存したアップロードタ スクを定義して Jenkins で実行 Build variants の扱いが特殊 Groovy なので API 叩くの楽
Download