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
58
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
360
Intro to Reactive Java on Android
akhyrul
0
78
Good Practices on Mobile App User Engagement
akhyrul
1
1.1k
Other Decks in Programming
See All in Programming
ISUCON14公式反省会LT: 社内ISUCONの話
astj
PRO
0
190
JavaScriptツール群「UnJS」を5分で一気に駆け巡る!
k1tikurisu
9
1.8k
Bedrock Agentsレスポンス解析によるAgentのOps
licux
3
820
iOSエンジニアから始める visionOS アプリ開発
nao_randd
3
130
個人アプリを2年ぶりにアプデしたから褒めて / I just updated my personal app, praise me!
lovee
0
340
ソフトウェアエンジニアの成長
masuda220
PRO
10
920
Open source software: how to live long and go far
gaelvaroquaux
0
630
SpringBoot3.4の構造化ログ #kanjava
irof
2
980
負債になりにくいCSSをデザイナとつくるには?
fsubal
9
2.4k
Unity Android XR入門
sakutama_11
0
150
XStateを用いた堅牢なReact Components設計~複雑なClient Stateをシンプルに~ @React Tokyo ミートアップ #2
kfurusho
1
870
法律の脱レガシーに学ぶフロントエンド刷新
oguemon
5
730
Featured
See All Featured
How to Create Impact in a Changing Tech Landscape [PerfNow 2023]
tammyeverts
49
2.3k
Speed Design
sergeychernyshev
26
790
Product Roadmaps are Hard
iamctodd
PRO
50
11k
Fontdeck: Realign not Redesign
paulrobertlloyd
82
5.4k
BBQ
matthewcrist
86
9.5k
Performance Is Good for Brains [We Love Speed 2024]
tammyeverts
7
630
Refactoring Trust on Your Teams (GOTO; Chicago 2020)
rmw
33
2.8k
What’s in a name? Adding method to the madness
productmarketing
PRO
22
3.3k
Measuring & Analyzing Core Web Vitals
bluesmoon
6
240
Designing for humans not robots
tammielis
250
25k
Large-scale JavaScript Application Architecture
addyosmani
510
110k
Save Time (by Creating Custom Rails Generators)
garrettdimon
PRO
29
1k
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