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
Sponsored
·
Ship Features Fearlessly
Turn features on and off without deploys. Used by thousands of Ruby developers.
→
Akhyar Amarullah
February 28, 2016
Programming
0
68
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
970
Reactive Android: just a little introduction
akhyrul
0
490
Mobile App Data Caching
akhyrul
0
390
Development Best Practices for Continuous Deployment Environment
akhyrul
0
380
Intro to Reactive Java on Android
akhyrul
0
80
Good Practices on Mobile App User Engagement
akhyrul
1
1.1k
Other Decks in Programming
See All in Programming
AI時代のシステム設計:ドメインモデルで変更しやすさを守る設計戦略
masuda220
PRO
6
1.1k
飯MCP
yusukebe
0
390
仕様漏れ実装漏れをなくすトレーサビリティAI基盤のご紹介
orgachem
PRO
7
3.2k
What Spring Developers Should Know About Jakarta EE
ivargrimstad
0
710
モダンOBSプラグイン開発
umireon
0
180
モックわからないマン卒業記 ~振る舞いを起点に見直した、フロントエンドテストにおけるモックの使いどころ~
tasukuwatanabe
3
430
Coding at the Speed of Thought: The New Era of Symfony Docker
dunglas
0
2.1k
Goの型安全性で実現する複数プロダクトの権限管理
ishikawa_pro
2
1.4k
実践ハーネスエンジニアリング #MOSHTech
kajitack
7
4.6k
Kubernetesでセルフホストが簡単なNewSQLを求めて / Seeking a NewSQL Database That's Simple to Self-Host on Kubernetes
nnaka2992
0
180
それはエンジニアリングの糧である:AI開発のためにAIのOSSを開発する現場より / It serves as fuel for engineering: insights from the field of developing open-source AI for AI development.
nrslib
1
620
Angular-Apps smarter machen mit Gen AI: Lokal und offlinefähig - Hands-on Workshop!
christianliebel
PRO
0
140
Featured
See All Featured
How to Get Subject Matter Experts Bought In and Actively Contributing to SEO & PR Initiatives.
livdayseo
0
91
10 Git Anti Patterns You Should be Aware of
lemiorhan
PRO
659
61k
Connecting the Dots Between Site Speed, User Experience & Your Business [WebExpo 2025]
tammyeverts
11
860
Fantastic passwords and where to find them - at NoRuKo
philnash
52
3.6k
Side Projects
sachag
455
43k
Kristin Tynski - Automating Marketing Tasks With AI
techseoconnect
PRO
0
200
Data-driven link building: lessons from a $708K investment (BrightonSEO talk)
szymonslowik
1
990
How to Build an AI Search Optimization Roadmap - Criteria and Steps to Take #SEOIRL
aleyda
1
2k
Bioeconomy Workshop: Dr. Julius Ecuru, Opportunities for a Bioeconomy in West Africa
akademiya2063
PRO
1
76
DevOps and Value Stream Thinking: Enabling flow, efficiency and business value
helenjbeal
1
150
Highjacked: Video Game Concept Design
rkendrick25
PRO
1
330
Introduction to Domain-Driven Design and Collaborative software design
baasie
1
680
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