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
Continuous Integration and Automation on Jenkins
Search
Akhyar Amarullah
February 28, 2016
Programming
0
59
Continuous Integration and Automation on Jenkins
Automate all the things!
Akhyar Amarullah
February 28, 2016
Tweet
Share
More Decks by Akhyar Amarullah
See All by Akhyar Amarullah
OnebitHQ Open-source Projects
akhyrul
0
960
Reactive Android: just a little introduction
akhyrul
0
480
Mobile App Data Caching
akhyrul
0
380
Development Best Practices for Continuous Deployment Environment
akhyrul
0
370
Intro to Reactive Java on Android
akhyrul
0
79
Good Practices on Mobile App User Engagement
akhyrul
1
1.1k
Other Decks in Programming
See All in Programming
Team operations that are not burdened by SRE
kazatohiei
1
180
ASP.NETアプリケーションのモダナイズ インフラ編
tomokusaba
1
410
設計やレビューに悩んでいるPHPerに贈る、クリーンなオブジェクト設計の指針たち
panda_program
6
1.2k
「Cursor/Devin全社導入の理想と現実」のその後
saitoryc
0
140
PostgreSQLのRow Level SecurityをPHPのORMで扱う Eloquent vs Doctrine #phpcon #track2
77web
2
290
ドメインモデリングにおける抽象の役割、tagless-finalによるDSL構築、そして型安全な最適化
knih
11
2k
GitHub Copilot and GitHub Codespaces Hands-on
ymd65536
1
110
F#で自在につくる静的ブログサイト - 関数型まつり2025
pizzacat83
0
310
明示と暗黙 ー PHPとGoの インターフェイスの違いを知る
shimabox
2
280
AIエージェントはこう育てる - GitHub Copilot Agentとチームの共進化サイクル
koboriakira
0
330
AIコーディング道場勉強会#2 君(エンジニア)たちはどう生きるか
misakiotb
1
240
Beyond Portability: Live Migration for Evolving WebAssembly Workloads
chikuwait
0
390
Featured
See All Featured
The Psychology of Web Performance [Beyond Tellerrand 2023]
tammyeverts
48
2.8k
Documentation Writing (for coders)
carmenintech
71
4.9k
Java REST API Framework Comparison - PWX 2021
mraible
31
8.6k
Let's Do A Bunch of Simple Stuff to Make Websites Faster
chriscoyier
507
140k
VelocityConf: Rendering Performance Case Studies
addyosmani
330
24k
Imperfection Machines: The Place of Print at Facebook
scottboms
267
13k
CSS Pre-Processors: Stylus, Less & Sass
bermonpainter
357
30k
Large-scale JavaScript Application Architecture
addyosmani
512
110k
Fantastic passwords and where to find them - at NoRuKo
philnash
51
3.3k
Rails Girls Zürich Keynote
gr2m
94
14k
Scaling GitHub
holman
459
140k
The Success of Rails: Ensuring Growth for the Next 100 Years
eileencodes
45
7.4k
Transcript
Continuous Integration and Automation on Jenkins Akhyar Amarullah <
[email protected]
> Onebit
Engineering Brownbag Session Friday, 28 February 2016
Continuous Integration is a software development practice where members of
a team integrate their work frequently, usually each person integrates at least daily – leading to multiple integrations per day. Martin Fowler
Why Continuous Integration Rapid Feedback Reduced Risk Collective Ownership Continuous
Deployment Offload from people
Jenkins is an open- source continuous integration server
Popular Hosted Jenkins Alternatives Travis CI Shippable Drone.io etc
But why Jenkins? Flexibility
Basic Jenkins functionalities Notice a change Check out source code
Execute builds/tests Record and publish results Notify developers
Jenkins Terminologies - Job - Workspace - Environment - Source
VCS - Build Step - Post-Build Step - Artifact - Nodes - Master - Slave - Plugins
Sample CI pipeline
Continuous Integration Best Practices Single Source Repository Commit often Make
Your Build Self-Testing Automate the Build Build fast
Automated Testing Best Practices Start from clean state Isolate as
much as possible
Jenkins Best Practice Separate master and slave nodes Label slave
nodes based on available features Automate slave provisioning (e.g. Ansible, Docker) Notify developers on failed build (e.g. email, slack) Docker reduces app environment setup headaches a lot
Future Plan
Automate code style review and approval Automate service deployment Automate
APK/IPA deliveries to tester/end-users Automate scaling Automate the Jenkins itself Future Plan
None