Upgrade to Pro
— share decks privately, control downloads, hide ads and more …
Speaker Deck
Features
Speaker Deck
PRO
Sign in
Sign up for free
Search
Search
CI/CI for React Native powered by Azure Pipelines and App Center
Search
Hyperjump Tech
July 12, 2019
Programming
6
230
CI/CI for React Native powered by Azure Pipelines and App Center
How we efficiently develop, test and deploy our project using Azure Pipeline and App Center.
Hyperjump Tech
July 12, 2019
Tweet
Share
More Decks by Hyperjump Tech
See All by Hyperjump Tech
Web Development Tips
hyperjump
3
12
Pull Request, Make & Review
hyperjump
3
10
Next.JS
hyperjump
3
7
Pull Request
hyperjump
3
4
IT Process & Delivery
hyperjump
3
6
Trunk Based Development
hyperjump
3
11
Develop NPM Package Locally
hyperjump
3
9
Mobile Application Security
hyperjump
3
9
Storage for the WEB
hyperjump
3
8
Other Decks in Programming
See All in Programming
Micro Frontends for Java Microservices - Devnexus 2024
mraible
PRO
0
480
Random\Randomizer クラスで日常のあれこれを解決しよう! / Random\Randomizer class solves familiar trouble
cocoeyes02
0
210
MetricKitで予期せぬ終了を検知する話 / Detect unexpected termination with MetricKit
nekowen
1
180
Fragment Composition of GraphQL
quramy
3
550
大規模Reactアプリのリアーキテクチャ~8万行のTanStack Query移行の軌跡~
kj455
4
950
AWS CDKコントリビュートTIPS / aws-cdk-contribution-tips
gotok365
2
100
スクラムガイドのスプリントレトロスペクティブを改めて読みかえしてみた / Re-reading the Sprint Retrospective Section in the Scrum Guide
mackey0225
3
410
VS Code をプロダクトにどう取り込むか
onomax
1
360
TYPO3 v13 – The road to LTS: What's new and new APIs
luisasofie_xoxo
0
200
Goのエラースタックトレースの歴史と今後
sonatard
7
1.1k
Azure OpenAI Serviceのプロンプトエンジニアリング入門
tomokusaba
3
670
StoreKit2によるiOSのアプリ内課金のリニューアル
kangnux
0
110
Featured
See All Featured
Git: the NoSQL Database
bkeepers
PRO
422
63k
Rebuilding a faster, lazier Slack
samanthasiow
73
8.2k
JavaScript: Past, Present, and Future - NDC Porto 2020
reverentgeek
40
4.4k
Intergalactic Javascript Robots from Outer Space
tanoku
266
26k
The MySQL Ecosystem @ GitHub 2015
samlambert
243
12k
What’s in a name? Adding method to the madness
productmarketing
PRO
16
2.6k
Robots, Beer and Maslow
schacon
PRO
155
7.9k
A designer walks into a library…
pauljervisheath
200
23k
Automating Front-end Workflow
addyosmani
1356
200k
StorybookのUI Testing Handbookを読んだ
zakiyama
13
4.6k
ParisWeb 2013: Learning to Love: Crash Course in Emotional UX Design
dotmariusz
104
6.6k
Designing the Hi-DPI Web
ddemaree
276
33k
Transcript
CI/CD for React Native powered by Azure Pipelines & App
Center @kvnerd
The boring stuff in Software Engineering @kvnerd
Continuously @kvnerd
Provisioning, managing build number, upload to store, etc @kvnerd
Developers is human @kvnerd
Our brains are created to be efficient not effective -
Mark Manson @kvnerd
CI/CD is the answer @kvnerd
Kevin Hermawan Software Engineer @kvnerd
Continuous Integration/Delivery @kvnerd
What is Continuous Integration? @kvnerd
@kvnerd HULK Senior Integration Engineer at Hyperjump
@kvnerd HULK JOB Checking commits when each engineers push their
commits
@kvnerd I’m ready!
Every engineer send 50 PRs everyday (we have 1000 engineers)
@kvnerd
Time is money @kvnerd
Commits, PRs, Tests, Linter @kvnerd
@kvnerd
Consistency problem @kvnerd
@kvnerd Works on my machine! Works on my machine! Doesn’t
work on my machine!
We need to detect integration errors as quickly as possible
@kvnerd
@kvnerd I want to resign! I want to resign! I
want to resign!
How Continuous Integration works… @kvnerd
@kvnerd <ReactNtive /> Azure Pipelines GitHub Push Unit Test Cannot
define ReactNtive
@kvnerd <ReactNative /> Azure Pipelines GitHub Push Unit Test
@kvnerd
What is Continuous Delivery? @kvnerd
History @kvnerd
“Can you release .apk and share to QA team for
testing?” @kvnerd
@kvnerd
For many users & different environments (testing, alpha, beta, release)
@kvnerd
@kvnerd
@kvnerd
@kvnerd Can you release 100x app per day?
How Continuous Delivery works… @kvnerd
@kvnerd App Center Build Button
@kvnerd
Why Azure Pipelines & AppCenter? @kvnerd
Developer Experience @kvnerd
@kvnerd
@kvnerd - task: Gradle@2 displayName: "gradlew assembleRelease" inputs: gradleWrapperFile: android/gradlew
workingDirectory: android/ gradleOptions: "-Xmx3072m" tasks: assembleRelease publishJUnitResults: false Declarative YAML
@kvnerd Extensible
@kvnerd Best-in-class for OSS
@kvnerd
@kvnerd App Center supports React Native by default
@kvnerd Easy to sign builds
@kvnerd Easy to distribute to groups & store
Last but not least @kvnerd
CI/CD help us to integrate and deliver software as quickly
as possible @kvnerd
But we always need your power to build great software
@kvnerd
https://hyperjump.tech/jobs @kvnerd