SlideShare a Scribd company logo
CI/CD
Continuous Integration &
Continuous Development
Self Introduction
Farhan Naufal
Ghani
Padalarang, Kab.
Bandung Barat
DevOps at GITS
Indonesia
Let’s know about me
Introduction
CI/CD
What is CI ?
● Continuous Integration in Indonesia means
● “Integrate” your code into automated process continuously
What is CD ?
Its can be ....
Continuous Delivery
-> Give the result to User or Anyone?
Continuous Deployment
-> Run my apps and share it
I call it ...
Continuous
Development
What is Benefit of CI/CD ?
Fast
Development
and
Feedbacks
Detect Issue
And
Fix it early
Minimize
Human Error
from nevercode.io Monitoring
Tools Integration for CI/CD
ETC ...
Introduction
Gitlab CI/CD and Runner
Gitlab CI/CD
● “Continuous Integration is
built-in to GitLab”
● Fully integrated with GitLab
https://about.gitlab.com/product/continuous-integration/
What is Gitlab Runner?
● Agent Gitlab CI installed on PC/Laptop or Server
● Container for run your CI
● Written in GO
● Configuration CI using .gitlab-ci.yml with YAML
You can see at : https://docs.gitlab.com/ee/ci/yaml/
Why Gitlab Runner?
● Multi-platform: Linux, OSX, Windows, Docker and etc ..
● Parallel builds
● Realtime logging
● Container Registry
Architecture
Before you begin
1. Create Repository and Push your code to repository or you already have
one
2. Deploy your Apps (Continuous Deployment) : Web Application or API
3. Create Step Pipeline
Before you begin
4. Create Step Procedure based on Pipeline you build
Example Build in VueJS:
$ npm install
$ npm run build
Example Test in VueJS:
$ npm run test:unit
Example Gitlab CI/CD using VueJS
● Using :
○ Linux Ubuntu 18.04 (Production)
○ Windows (Local Laptop)
● Web Server :
○ NGINX (Production)
○ XAMPP Apache (Local Laptop)
● Depedency :
○ Nodejs ver 10.X.X
Production URL :
https://gits-class.farhan.id
Gitlab Runner Labs :
http://bit.ly/gits-class-runner-labs
Repository :
https://gitlab.com/gits-class-15
Best Practice
● Android — CI / CD Getting Started
http://bit.ly/cicd-android
● CI/CD di iOS Menggunakan GitLab Runner
http://bit.ly/cicd-ios
● Docker Laravel NGINX w Gitlab CI/CD
http://bit.ly/cicd-docker-laravel
Production URL :
https://gits-class.farhan.id
Gitlab Runner Labs :
http://bit.ly/gits-class-runner-labs
Repository :
https://gitlab.com/gits-class-15
Thank You
Don’t forget to give us feedbacks
http://bit.ly/GITSClass16
Ad

More Related Content

What's hot (20)

CI with Gitlab & Docker
CI with Gitlab & DockerCI with Gitlab & Docker
CI with Gitlab & Docker
Joerg Henning
 
GitLab for CI/CD process
GitLab for CI/CD processGitLab for CI/CD process
GitLab for CI/CD process
HYS Enterprise
 
GitLab.pptx
GitLab.pptxGitLab.pptx
GitLab.pptx
LeoulZewelde1
 
Introducing GitLab
Introducing GitLabIntroducing GitLab
Introducing GitLab
Taisuke Inoue
 
GitHub Actions in action
GitHub Actions in actionGitHub Actions in action
GitHub Actions in action
Oleksii Holub
 
Introducing GitLab (June 2018)
Introducing GitLab (June 2018)Introducing GitLab (June 2018)
Introducing GitLab (June 2018)
Noa Harel
 
Jenkins vs GitLab CI
Jenkins vs GitLab CIJenkins vs GitLab CI
Jenkins vs GitLab CI
CEE-SEC(R)
 
CICD Pipeline Using Github Actions
CICD Pipeline Using Github ActionsCICD Pipeline Using Github Actions
CICD Pipeline Using Github Actions
Kumar Shìvam
 
Introduction to Gitlab | Gitlab 101 | Training Session
Introduction to Gitlab | Gitlab 101 | Training SessionIntroduction to Gitlab | Gitlab 101 | Training Session
Introduction to Gitlab | Gitlab 101 | Training Session
Anwarul Islam
 
Default GitLab CI Pipeline - Auto DevOps
Default GitLab CI Pipeline - Auto DevOpsDefault GitLab CI Pipeline - Auto DevOps
Default GitLab CI Pipeline - Auto DevOps
Rajith Bhanuka Mahanama
 
Git branching strategies
Git branching strategiesGit branching strategies
Git branching strategies
jstack
 
Git basics
Git basicsGit basics
Git basics
GHARSALLAH Mohamed
 
Introducing GitLab (September 2018)
Introducing GitLab (September 2018)Introducing GitLab (September 2018)
Introducing GitLab (September 2018)
Noa Harel
 
Introduction to GitHub Actions
Introduction to GitHub ActionsIntroduction to GitHub Actions
Introduction to GitHub Actions
Bo-Yi Wu
 
CI/CD with Github Actions
CI/CD with Github ActionsCI/CD with Github Actions
CI/CD with Github Actions
Md. Minhazul Haque
 
Git & GitLab
Git & GitLabGit & GitLab
Git & GitLab
Gaurav Wable
 
Git training v10
Git training v10Git training v10
Git training v10
Skander Hamza
 
Introduction to GItlab CICD Presentation.pptx
Introduction to GItlab CICD Presentation.pptxIntroduction to GItlab CICD Presentation.pptx
Introduction to GItlab CICD Presentation.pptx
Knoldus Inc.
 
Webinar - Unbox GitLab CI/CD
Webinar - Unbox GitLab CI/CD Webinar - Unbox GitLab CI/CD
Webinar - Unbox GitLab CI/CD
Annie Huang
 
CI-CD WITH GITLAB WORKFLOW
CI-CD WITH GITLAB WORKFLOWCI-CD WITH GITLAB WORKFLOW
CI-CD WITH GITLAB WORKFLOW
AddWeb Solution Pvt. Ltd.
 
CI with Gitlab & Docker
CI with Gitlab & DockerCI with Gitlab & Docker
CI with Gitlab & Docker
Joerg Henning
 
GitLab for CI/CD process
GitLab for CI/CD processGitLab for CI/CD process
GitLab for CI/CD process
HYS Enterprise
 
GitHub Actions in action
GitHub Actions in actionGitHub Actions in action
GitHub Actions in action
Oleksii Holub
 
Introducing GitLab (June 2018)
Introducing GitLab (June 2018)Introducing GitLab (June 2018)
Introducing GitLab (June 2018)
Noa Harel
 
Jenkins vs GitLab CI
Jenkins vs GitLab CIJenkins vs GitLab CI
Jenkins vs GitLab CI
CEE-SEC(R)
 
CICD Pipeline Using Github Actions
CICD Pipeline Using Github ActionsCICD Pipeline Using Github Actions
CICD Pipeline Using Github Actions
Kumar Shìvam
 
Introduction to Gitlab | Gitlab 101 | Training Session
Introduction to Gitlab | Gitlab 101 | Training SessionIntroduction to Gitlab | Gitlab 101 | Training Session
Introduction to Gitlab | Gitlab 101 | Training Session
Anwarul Islam
 
Default GitLab CI Pipeline - Auto DevOps
Default GitLab CI Pipeline - Auto DevOpsDefault GitLab CI Pipeline - Auto DevOps
Default GitLab CI Pipeline - Auto DevOps
Rajith Bhanuka Mahanama
 
Git branching strategies
Git branching strategiesGit branching strategies
Git branching strategies
jstack
 
Introducing GitLab (September 2018)
Introducing GitLab (September 2018)Introducing GitLab (September 2018)
Introducing GitLab (September 2018)
Noa Harel
 
Introduction to GitHub Actions
Introduction to GitHub ActionsIntroduction to GitHub Actions
Introduction to GitHub Actions
Bo-Yi Wu
 
Introduction to GItlab CICD Presentation.pptx
Introduction to GItlab CICD Presentation.pptxIntroduction to GItlab CICD Presentation.pptx
Introduction to GItlab CICD Presentation.pptx
Knoldus Inc.
 
Webinar - Unbox GitLab CI/CD
Webinar - Unbox GitLab CI/CD Webinar - Unbox GitLab CI/CD
Webinar - Unbox GitLab CI/CD
Annie Huang
 

Similar to GITS Class #16: CI/CD (Continuous Integration & Continuous Deployment) with GitLab Runner (20)

When Automation Keeps Your T-shirt Clean
When Automation Keeps Your T-shirt CleanWhen Automation Keeps Your T-shirt Clean
When Automation Keeps Your T-shirt Clean
DevOps Indonesia
 
Introduction to DevOps
Introduction to DevOpsIntroduction to DevOps
Introduction to DevOps
Ahmed Adel
 
Transition from CI to CD
Transition from CI to CDTransition from CI to CD
Transition from CI to CD
Nanjekye Joannah
 
Deploying Mule Applications with Jenkins, Azure and BitBucket (1).pptx
Deploying Mule Applications with Jenkins, Azure and BitBucket (1).pptxDeploying Mule Applications with Jenkins, Azure and BitBucket (1).pptx
Deploying Mule Applications with Jenkins, Azure and BitBucket (1).pptx
Pankaj Goyal
 
CI CD Jenkins for Swift Deployment
CI CD Jenkins for Swift DeploymentCI CD Jenkins for Swift Deployment
CI CD Jenkins for Swift Deployment
Bintang Thunder
 
Continuous integration with git lab
Continuous integration with git labContinuous integration with git lab
Continuous integration with git lab
Mahyuddin Mahyuddin
 
Simple ci cd with strider cd
Simple ci cd with strider cdSimple ci cd with strider cd
Simple ci cd with strider cd
Amandeep Singh
 
Beyond QA
Beyond QABeyond QA
Beyond QA
gilforcada
 
Continuous integration for Ruby on Rails
Continuous integration for Ruby on RailsContinuous integration for Ruby on Rails
Continuous integration for Ruby on Rails
David Paluy
 
OpenTuesday: Aktuelle Standards der agilen Softwareentwicklung
OpenTuesday: Aktuelle Standards der agilen SoftwareentwicklungOpenTuesday: Aktuelle Standards der agilen Softwareentwicklung
OpenTuesday: Aktuelle Standards der agilen Softwareentwicklung
Digicomp Academy AG
 
Lets talk about CI CD Pipeline in Agile
Lets talk about CI CD Pipeline in Agile Lets talk about CI CD Pipeline in Agile
Lets talk about CI CD Pipeline in Agile
Poonam Panday
 
How can Enterprises benefit from GitOps.pdf
How can  Enterprises benefit from GitOps.pdfHow can  Enterprises benefit from GitOps.pdf
How can Enterprises benefit from GitOps.pdf
OpsTree solutions
 
Continuous Integration vs Continuous Delivery vs Continuous Deployment
Continuous Integration vs Continuous Delivery vs Continuous Deployment Continuous Integration vs Continuous Delivery vs Continuous Deployment
Continuous Integration vs Continuous Delivery vs Continuous Deployment
LGS, GBHS&IC, University Of South-Asia, TARA-Technologies
 
Docker e git lab
Docker e git labDocker e git lab
Docker e git lab
Gianluca Padovani
 
Introduction to DevOps and the Practical Use Cases at Credit OK
Introduction to DevOps and the Practical Use Cases at Credit OKIntroduction to DevOps and the Practical Use Cases at Credit OK
Introduction to DevOps and the Practical Use Cases at Credit OK
Kriangkrai Chaonithi
 
MuleSoft_Noida_Meetup_CICD_Azure_07_May_2022.pptx
MuleSoft_Noida_Meetup_CICD_Azure_07_May_2022.pptxMuleSoft_Noida_Meetup_CICD_Azure_07_May_2022.pptx
MuleSoft_Noida_Meetup_CICD_Azure_07_May_2022.pptx
Shiva Sahu
 
CICD Mule
CICD Mule CICD Mule
CICD Mule
Naveen kumar Kavartapu
 
KnolX _ Gitlab - Rahul_Soni
KnolX _ Gitlab - Rahul_SoniKnolX _ Gitlab - Rahul_Soni
KnolX _ Gitlab - Rahul_Soni
Knoldus Inc.
 
KnolX _ Gitlab - Rahul_Soni
KnolX _ Gitlab - Rahul_SoniKnolX _ Gitlab - Rahul_Soni
KnolX _ Gitlab - Rahul_Soni
Knoldus Inc.
 
Chapter 2
Chapter 2Chapter 2
Chapter 2
Sergio Andrés Rodríguez Galeano
 
When Automation Keeps Your T-shirt Clean
When Automation Keeps Your T-shirt CleanWhen Automation Keeps Your T-shirt Clean
When Automation Keeps Your T-shirt Clean
DevOps Indonesia
 
Introduction to DevOps
Introduction to DevOpsIntroduction to DevOps
Introduction to DevOps
Ahmed Adel
 
Deploying Mule Applications with Jenkins, Azure and BitBucket (1).pptx
Deploying Mule Applications with Jenkins, Azure and BitBucket (1).pptxDeploying Mule Applications with Jenkins, Azure and BitBucket (1).pptx
Deploying Mule Applications with Jenkins, Azure and BitBucket (1).pptx
Pankaj Goyal
 
CI CD Jenkins for Swift Deployment
CI CD Jenkins for Swift DeploymentCI CD Jenkins for Swift Deployment
CI CD Jenkins for Swift Deployment
Bintang Thunder
 
Continuous integration with git lab
Continuous integration with git labContinuous integration with git lab
Continuous integration with git lab
Mahyuddin Mahyuddin
 
Simple ci cd with strider cd
Simple ci cd with strider cdSimple ci cd with strider cd
Simple ci cd with strider cd
Amandeep Singh
 
Continuous integration for Ruby on Rails
Continuous integration for Ruby on RailsContinuous integration for Ruby on Rails
Continuous integration for Ruby on Rails
David Paluy
 
OpenTuesday: Aktuelle Standards der agilen Softwareentwicklung
OpenTuesday: Aktuelle Standards der agilen SoftwareentwicklungOpenTuesday: Aktuelle Standards der agilen Softwareentwicklung
OpenTuesday: Aktuelle Standards der agilen Softwareentwicklung
Digicomp Academy AG
 
Lets talk about CI CD Pipeline in Agile
Lets talk about CI CD Pipeline in Agile Lets talk about CI CD Pipeline in Agile
Lets talk about CI CD Pipeline in Agile
Poonam Panday
 
How can Enterprises benefit from GitOps.pdf
How can  Enterprises benefit from GitOps.pdfHow can  Enterprises benefit from GitOps.pdf
How can Enterprises benefit from GitOps.pdf
OpsTree solutions
 
Introduction to DevOps and the Practical Use Cases at Credit OK
Introduction to DevOps and the Practical Use Cases at Credit OKIntroduction to DevOps and the Practical Use Cases at Credit OK
Introduction to DevOps and the Practical Use Cases at Credit OK
Kriangkrai Chaonithi
 
MuleSoft_Noida_Meetup_CICD_Azure_07_May_2022.pptx
MuleSoft_Noida_Meetup_CICD_Azure_07_May_2022.pptxMuleSoft_Noida_Meetup_CICD_Azure_07_May_2022.pptx
MuleSoft_Noida_Meetup_CICD_Azure_07_May_2022.pptx
Shiva Sahu
 
KnolX _ Gitlab - Rahul_Soni
KnolX _ Gitlab - Rahul_SoniKnolX _ Gitlab - Rahul_Soni
KnolX _ Gitlab - Rahul_Soni
Knoldus Inc.
 
KnolX _ Gitlab - Rahul_Soni
KnolX _ Gitlab - Rahul_SoniKnolX _ Gitlab - Rahul_Soni
KnolX _ Gitlab - Rahul_Soni
Knoldus Inc.
 
Ad

More from GITS Indonesia (10)

GITS Webinar: How to Build UI/UX Portfolio that Stand Out
GITS Webinar: How to Build UI/UX Portfolio that Stand Out GITS Webinar: How to Build UI/UX Portfolio that Stand Out
GITS Webinar: How to Build UI/UX Portfolio that Stand Out
GITS Indonesia
 
GITS Webinar: Implementasi REST API di iOS Menggunakan Alamofire dan SwiftyJSON
GITS Webinar: Implementasi REST API di iOS Menggunakan Alamofire dan SwiftyJSONGITS Webinar: Implementasi REST API di iOS Menggunakan Alamofire dan SwiftyJSON
GITS Webinar: Implementasi REST API di iOS Menggunakan Alamofire dan SwiftyJSON
GITS Indonesia
 
Fundamental Node.js (Workshop bersama Front-end Developer GITS Indonesia, War...
Fundamental Node.js (Workshop bersama Front-end Developer GITS Indonesia, War...Fundamental Node.js (Workshop bersama Front-end Developer GITS Indonesia, War...
Fundamental Node.js (Workshop bersama Front-end Developer GITS Indonesia, War...
GITS Indonesia
 
Gits class #22: [ONLINE] Analyze Your User's Activities Using BigQuery and Da...
Gits class #22: [ONLINE] Analyze Your User's Activities Using BigQuery and Da...Gits class #22: [ONLINE] Analyze Your User's Activities Using BigQuery and Da...
Gits class #22: [ONLINE] Analyze Your User's Activities Using BigQuery and Da...
GITS Indonesia
 
GITS Class #21 How to Build Your Dream Team to Achieve the Target
GITS Class #21 How to Build Your Dream Team to Achieve the TargetGITS Class #21 How to Build Your Dream Team to Achieve the Target
GITS Class #21 How to Build Your Dream Team to Achieve the Target
GITS Indonesia
 
GITS Class #20: Building A Fast and Responsive UI in React Native
GITS Class #20: Building A Fast and Responsive UI in React NativeGITS Class #20: Building A Fast and Responsive UI in React Native
GITS Class #20: Building A Fast and Responsive UI in React Native
GITS Indonesia
 
GITS Class #19: Build Large Scale Vue.js Apps with Vuex
GITS Class #19: Build Large Scale Vue.js Apps with VuexGITS Class #19: Build Large Scale Vue.js Apps with Vuex
GITS Class #19: Build Large Scale Vue.js Apps with Vuex
GITS Indonesia
 
GITS Class #17: Coding Multiple Apps with Flutter
GITS Class #17: Coding Multiple Apps with FlutterGITS Class #17: Coding Multiple Apps with Flutter
GITS Class #17: Coding Multiple Apps with Flutter
GITS Indonesia
 
GITS Class #12: iOS & Android Component Principles bersama Ajie Arga dan Radh...
GITS Class #12: iOS & Android Component Principles bersama Ajie Arga dan Radh...GITS Class #12: iOS & Android Component Principles bersama Ajie Arga dan Radh...
GITS Class #12: iOS & Android Component Principles bersama Ajie Arga dan Radh...
GITS Indonesia
 
GITS Class #11: Android Architecture Component bersama Derayan Bima (Android ...
GITS Class #11: Android Architecture Component bersama Derayan Bima (Android ...GITS Class #11: Android Architecture Component bersama Derayan Bima (Android ...
GITS Class #11: Android Architecture Component bersama Derayan Bima (Android ...
GITS Indonesia
 
GITS Webinar: How to Build UI/UX Portfolio that Stand Out
GITS Webinar: How to Build UI/UX Portfolio that Stand Out GITS Webinar: How to Build UI/UX Portfolio that Stand Out
GITS Webinar: How to Build UI/UX Portfolio that Stand Out
GITS Indonesia
 
GITS Webinar: Implementasi REST API di iOS Menggunakan Alamofire dan SwiftyJSON
GITS Webinar: Implementasi REST API di iOS Menggunakan Alamofire dan SwiftyJSONGITS Webinar: Implementasi REST API di iOS Menggunakan Alamofire dan SwiftyJSON
GITS Webinar: Implementasi REST API di iOS Menggunakan Alamofire dan SwiftyJSON
GITS Indonesia
 
Fundamental Node.js (Workshop bersama Front-end Developer GITS Indonesia, War...
Fundamental Node.js (Workshop bersama Front-end Developer GITS Indonesia, War...Fundamental Node.js (Workshop bersama Front-end Developer GITS Indonesia, War...
Fundamental Node.js (Workshop bersama Front-end Developer GITS Indonesia, War...
GITS Indonesia
 
Gits class #22: [ONLINE] Analyze Your User's Activities Using BigQuery and Da...
Gits class #22: [ONLINE] Analyze Your User's Activities Using BigQuery and Da...Gits class #22: [ONLINE] Analyze Your User's Activities Using BigQuery and Da...
Gits class #22: [ONLINE] Analyze Your User's Activities Using BigQuery and Da...
GITS Indonesia
 
GITS Class #21 How to Build Your Dream Team to Achieve the Target
GITS Class #21 How to Build Your Dream Team to Achieve the TargetGITS Class #21 How to Build Your Dream Team to Achieve the Target
GITS Class #21 How to Build Your Dream Team to Achieve the Target
GITS Indonesia
 
GITS Class #20: Building A Fast and Responsive UI in React Native
GITS Class #20: Building A Fast and Responsive UI in React NativeGITS Class #20: Building A Fast and Responsive UI in React Native
GITS Class #20: Building A Fast and Responsive UI in React Native
GITS Indonesia
 
GITS Class #19: Build Large Scale Vue.js Apps with Vuex
GITS Class #19: Build Large Scale Vue.js Apps with VuexGITS Class #19: Build Large Scale Vue.js Apps with Vuex
GITS Class #19: Build Large Scale Vue.js Apps with Vuex
GITS Indonesia
 
GITS Class #17: Coding Multiple Apps with Flutter
GITS Class #17: Coding Multiple Apps with FlutterGITS Class #17: Coding Multiple Apps with Flutter
GITS Class #17: Coding Multiple Apps with Flutter
GITS Indonesia
 
GITS Class #12: iOS & Android Component Principles bersama Ajie Arga dan Radh...
GITS Class #12: iOS & Android Component Principles bersama Ajie Arga dan Radh...GITS Class #12: iOS & Android Component Principles bersama Ajie Arga dan Radh...
GITS Class #12: iOS & Android Component Principles bersama Ajie Arga dan Radh...
GITS Indonesia
 
GITS Class #11: Android Architecture Component bersama Derayan Bima (Android ...
GITS Class #11: Android Architecture Component bersama Derayan Bima (Android ...GITS Class #11: Android Architecture Component bersama Derayan Bima (Android ...
GITS Class #11: Android Architecture Component bersama Derayan Bima (Android ...
GITS Indonesia
 
Ad

Recently uploaded (20)

Network Security. Different aspects of Network Security.
Network Security. Different aspects of Network Security.Network Security. Different aspects of Network Security.
Network Security. Different aspects of Network Security.
gregtap1
 
Into The Box Conference Keynote Day 1 (ITB2025)
Into The Box Conference Keynote Day 1 (ITB2025)Into The Box Conference Keynote Day 1 (ITB2025)
Into The Box Conference Keynote Day 1 (ITB2025)
Ortus Solutions, Corp
 
UiPath Community Berlin: Orchestrator API, Swagger, and Test Manager API
UiPath Community Berlin: Orchestrator API, Swagger, and Test Manager APIUiPath Community Berlin: Orchestrator API, Swagger, and Test Manager API
UiPath Community Berlin: Orchestrator API, Swagger, and Test Manager API
UiPathCommunity
 
Big Data Analytics Quick Research Guide by Arthur Morgan
Big Data Analytics Quick Research Guide by Arthur MorganBig Data Analytics Quick Research Guide by Arthur Morgan
Big Data Analytics Quick Research Guide by Arthur Morgan
Arthur Morgan
 
Semantic Cultivators : The Critical Future Role to Enable AI
Semantic Cultivators : The Critical Future Role to Enable AISemantic Cultivators : The Critical Future Role to Enable AI
Semantic Cultivators : The Critical Future Role to Enable AI
artmondano
 
Manifest Pre-Seed Update | A Humanoid OEM Deeptech In France
Manifest Pre-Seed Update | A Humanoid OEM Deeptech In FranceManifest Pre-Seed Update | A Humanoid OEM Deeptech In France
Manifest Pre-Seed Update | A Humanoid OEM Deeptech In France
chb3
 
The Evolution of Meme Coins A New Era for Digital Currency ppt.pdf
The Evolution of Meme Coins A New Era for Digital Currency ppt.pdfThe Evolution of Meme Coins A New Era for Digital Currency ppt.pdf
The Evolution of Meme Coins A New Era for Digital Currency ppt.pdf
Abi john
 
Splunk Security Update | Public Sector Summit Germany 2025
Splunk Security Update | Public Sector Summit Germany 2025Splunk Security Update | Public Sector Summit Germany 2025
Splunk Security Update | Public Sector Summit Germany 2025
Splunk
 
Learn the Basics of Agile Development: Your Step-by-Step Guide
Learn the Basics of Agile Development: Your Step-by-Step GuideLearn the Basics of Agile Development: Your Step-by-Step Guide
Learn the Basics of Agile Development: Your Step-by-Step Guide
Marcel David
 
Drupalcamp Finland – Measuring Front-end Energy Consumption
Drupalcamp Finland – Measuring Front-end Energy ConsumptionDrupalcamp Finland – Measuring Front-end Energy Consumption
Drupalcamp Finland – Measuring Front-end Energy Consumption
Exove
 
Rusty Waters: Elevating Lakehouses Beyond Spark
Rusty Waters: Elevating Lakehouses Beyond SparkRusty Waters: Elevating Lakehouses Beyond Spark
Rusty Waters: Elevating Lakehouses Beyond Spark
carlyakerly1
 
How Can I use the AI Hype in my Business Context?
How Can I use the AI Hype in my Business Context?How Can I use the AI Hype in my Business Context?
How Can I use the AI Hype in my Business Context?
Daniel Lehner
 
Image processinglab image processing image processing
Image processinglab image processing  image processingImage processinglab image processing  image processing
Image processinglab image processing image processing
RaghadHany
 
Buckeye Dreamin 2024: Assessing and Resolving Technical Debt
Buckeye Dreamin 2024: Assessing and Resolving Technical DebtBuckeye Dreamin 2024: Assessing and Resolving Technical Debt
Buckeye Dreamin 2024: Assessing and Resolving Technical Debt
Lynda Kane
 
Linux Professional Institute LPIC-1 Exam.pdf
Linux Professional Institute LPIC-1 Exam.pdfLinux Professional Institute LPIC-1 Exam.pdf
Linux Professional Institute LPIC-1 Exam.pdf
RHCSA Guru
 
Salesforce AI Associate 2 of 2 Certification.docx
Salesforce AI Associate 2 of 2 Certification.docxSalesforce AI Associate 2 of 2 Certification.docx
Salesforce AI Associate 2 of 2 Certification.docx
José Enrique López Rivera
 
Automation Dreamin' 2022: Sharing Some Gratitude with Your Users
Automation Dreamin' 2022: Sharing Some Gratitude with Your UsersAutomation Dreamin' 2022: Sharing Some Gratitude with Your Users
Automation Dreamin' 2022: Sharing Some Gratitude with Your Users
Lynda Kane
 
Automation Dreamin': Capture User Feedback From Anywhere
Automation Dreamin': Capture User Feedback From AnywhereAutomation Dreamin': Capture User Feedback From Anywhere
Automation Dreamin': Capture User Feedback From Anywhere
Lynda Kane
 
Automation Hour 1/28/2022: Capture User Feedback from Anywhere
Automation Hour 1/28/2022: Capture User Feedback from AnywhereAutomation Hour 1/28/2022: Capture User Feedback from Anywhere
Automation Hour 1/28/2022: Capture User Feedback from Anywhere
Lynda Kane
 
"PHP and MySQL CRUD Operations for Student Management System"
"PHP and MySQL CRUD Operations for Student Management System""PHP and MySQL CRUD Operations for Student Management System"
"PHP and MySQL CRUD Operations for Student Management System"
Jainul Musani
 
Network Security. Different aspects of Network Security.
Network Security. Different aspects of Network Security.Network Security. Different aspects of Network Security.
Network Security. Different aspects of Network Security.
gregtap1
 
Into The Box Conference Keynote Day 1 (ITB2025)
Into The Box Conference Keynote Day 1 (ITB2025)Into The Box Conference Keynote Day 1 (ITB2025)
Into The Box Conference Keynote Day 1 (ITB2025)
Ortus Solutions, Corp
 
UiPath Community Berlin: Orchestrator API, Swagger, and Test Manager API
UiPath Community Berlin: Orchestrator API, Swagger, and Test Manager APIUiPath Community Berlin: Orchestrator API, Swagger, and Test Manager API
UiPath Community Berlin: Orchestrator API, Swagger, and Test Manager API
UiPathCommunity
 
Big Data Analytics Quick Research Guide by Arthur Morgan
Big Data Analytics Quick Research Guide by Arthur MorganBig Data Analytics Quick Research Guide by Arthur Morgan
Big Data Analytics Quick Research Guide by Arthur Morgan
Arthur Morgan
 
Semantic Cultivators : The Critical Future Role to Enable AI
Semantic Cultivators : The Critical Future Role to Enable AISemantic Cultivators : The Critical Future Role to Enable AI
Semantic Cultivators : The Critical Future Role to Enable AI
artmondano
 
Manifest Pre-Seed Update | A Humanoid OEM Deeptech In France
Manifest Pre-Seed Update | A Humanoid OEM Deeptech In FranceManifest Pre-Seed Update | A Humanoid OEM Deeptech In France
Manifest Pre-Seed Update | A Humanoid OEM Deeptech In France
chb3
 
The Evolution of Meme Coins A New Era for Digital Currency ppt.pdf
The Evolution of Meme Coins A New Era for Digital Currency ppt.pdfThe Evolution of Meme Coins A New Era for Digital Currency ppt.pdf
The Evolution of Meme Coins A New Era for Digital Currency ppt.pdf
Abi john
 
Splunk Security Update | Public Sector Summit Germany 2025
Splunk Security Update | Public Sector Summit Germany 2025Splunk Security Update | Public Sector Summit Germany 2025
Splunk Security Update | Public Sector Summit Germany 2025
Splunk
 
Learn the Basics of Agile Development: Your Step-by-Step Guide
Learn the Basics of Agile Development: Your Step-by-Step GuideLearn the Basics of Agile Development: Your Step-by-Step Guide
Learn the Basics of Agile Development: Your Step-by-Step Guide
Marcel David
 
Drupalcamp Finland – Measuring Front-end Energy Consumption
Drupalcamp Finland – Measuring Front-end Energy ConsumptionDrupalcamp Finland – Measuring Front-end Energy Consumption
Drupalcamp Finland – Measuring Front-end Energy Consumption
Exove
 
Rusty Waters: Elevating Lakehouses Beyond Spark
Rusty Waters: Elevating Lakehouses Beyond SparkRusty Waters: Elevating Lakehouses Beyond Spark
Rusty Waters: Elevating Lakehouses Beyond Spark
carlyakerly1
 
How Can I use the AI Hype in my Business Context?
How Can I use the AI Hype in my Business Context?How Can I use the AI Hype in my Business Context?
How Can I use the AI Hype in my Business Context?
Daniel Lehner
 
Image processinglab image processing image processing
Image processinglab image processing  image processingImage processinglab image processing  image processing
Image processinglab image processing image processing
RaghadHany
 
Buckeye Dreamin 2024: Assessing and Resolving Technical Debt
Buckeye Dreamin 2024: Assessing and Resolving Technical DebtBuckeye Dreamin 2024: Assessing and Resolving Technical Debt
Buckeye Dreamin 2024: Assessing and Resolving Technical Debt
Lynda Kane
 
Linux Professional Institute LPIC-1 Exam.pdf
Linux Professional Institute LPIC-1 Exam.pdfLinux Professional Institute LPIC-1 Exam.pdf
Linux Professional Institute LPIC-1 Exam.pdf
RHCSA Guru
 
Salesforce AI Associate 2 of 2 Certification.docx
Salesforce AI Associate 2 of 2 Certification.docxSalesforce AI Associate 2 of 2 Certification.docx
Salesforce AI Associate 2 of 2 Certification.docx
José Enrique López Rivera
 
Automation Dreamin' 2022: Sharing Some Gratitude with Your Users
Automation Dreamin' 2022: Sharing Some Gratitude with Your UsersAutomation Dreamin' 2022: Sharing Some Gratitude with Your Users
Automation Dreamin' 2022: Sharing Some Gratitude with Your Users
Lynda Kane
 
Automation Dreamin': Capture User Feedback From Anywhere
Automation Dreamin': Capture User Feedback From AnywhereAutomation Dreamin': Capture User Feedback From Anywhere
Automation Dreamin': Capture User Feedback From Anywhere
Lynda Kane
 
Automation Hour 1/28/2022: Capture User Feedback from Anywhere
Automation Hour 1/28/2022: Capture User Feedback from AnywhereAutomation Hour 1/28/2022: Capture User Feedback from Anywhere
Automation Hour 1/28/2022: Capture User Feedback from Anywhere
Lynda Kane
 
"PHP and MySQL CRUD Operations for Student Management System"
"PHP and MySQL CRUD Operations for Student Management System""PHP and MySQL CRUD Operations for Student Management System"
"PHP and MySQL CRUD Operations for Student Management System"
Jainul Musani
 

GITS Class #16: CI/CD (Continuous Integration & Continuous Deployment) with GitLab Runner

  • 2. Self Introduction Farhan Naufal Ghani Padalarang, Kab. Bandung Barat DevOps at GITS Indonesia Let’s know about me
  • 4. What is CI ? ● Continuous Integration in Indonesia means ● “Integrate” your code into automated process continuously
  • 5. What is CD ? Its can be .... Continuous Delivery -> Give the result to User or Anyone? Continuous Deployment -> Run my apps and share it I call it ... Continuous Development
  • 6. What is Benefit of CI/CD ? Fast Development and Feedbacks Detect Issue And Fix it early Minimize Human Error from nevercode.io Monitoring
  • 7. Tools Integration for CI/CD ETC ...
  • 9. Gitlab CI/CD ● “Continuous Integration is built-in to GitLab” ● Fully integrated with GitLab https://about.gitlab.com/product/continuous-integration/
  • 10. What is Gitlab Runner? ● Agent Gitlab CI installed on PC/Laptop or Server ● Container for run your CI ● Written in GO ● Configuration CI using .gitlab-ci.yml with YAML You can see at : https://docs.gitlab.com/ee/ci/yaml/
  • 11. Why Gitlab Runner? ● Multi-platform: Linux, OSX, Windows, Docker and etc .. ● Parallel builds ● Realtime logging ● Container Registry
  • 13. Before you begin 1. Create Repository and Push your code to repository or you already have one 2. Deploy your Apps (Continuous Deployment) : Web Application or API 3. Create Step Pipeline
  • 14. Before you begin 4. Create Step Procedure based on Pipeline you build Example Build in VueJS: $ npm install $ npm run build Example Test in VueJS: $ npm run test:unit
  • 15. Example Gitlab CI/CD using VueJS ● Using : ○ Linux Ubuntu 18.04 (Production) ○ Windows (Local Laptop) ● Web Server : ○ NGINX (Production) ○ XAMPP Apache (Local Laptop) ● Depedency : ○ Nodejs ver 10.X.X Production URL : https://gits-class.farhan.id Gitlab Runner Labs : http://bit.ly/gits-class-runner-labs Repository : https://gitlab.com/gits-class-15
  • 16. Best Practice ● Android — CI / CD Getting Started http://bit.ly/cicd-android ● CI/CD di iOS Menggunakan GitLab Runner http://bit.ly/cicd-ios ● Docker Laravel NGINX w Gitlab CI/CD http://bit.ly/cicd-docker-laravel
  • 17. Production URL : https://gits-class.farhan.id Gitlab Runner Labs : http://bit.ly/gits-class-runner-labs Repository : https://gitlab.com/gits-class-15
  • 18. Thank You Don’t forget to give us feedbacks http://bit.ly/GITSClass16