SlideShare a Scribd company logo
Dolly Aswin
Software Director, Xtend
Indonesia
Add Speaker
Photo Here
CI/CD Laravel App on
Compute Engine
Continuous Delivery
- Make release process safe, low-
risk, and quick.
- Require CI
- Automate deployments across
multiple environment and targets
Continuous Integration (CI)
- Automate build and test
workflows on changes to source
code
- Merge changes regularly to
detect problems early and often
What Is CI/CD?
Common CI Tools
.
Source Code Management CI Server
Common CD Tools
.
Why CI/CD?
- Ensure changes to code base are properly tracked, tested, and built
- Automation to minimize human error
- Easily track source of bugs and ability to roll back
- Happier development & operations team
Setting Up CI/CD
For Laravel App
on Compute Engine
Workflow
Cloud Source Repositories Cloud Build Compute Engine
Build & Deploy
Github
Source Code Application
Cloud SQL
Bash Script
1. Add Github Repository To Cloud Source Repository
Configuration
Configuration
2. Create Trigger In Cloud Build
Configuration
Configuration
Configuration
3. cloudbuild.yaml
Configuration
4. Bash Script for Building & Deploying
Configuration
Trigger List
Result
Build Status
Result
Dashboard
Result
“The most powerful tool we have as
developers is automation - Scott
Hanselman”
Resources
- CI/CD On Google Cloud (Google Cloud Tech)
https://www.youtube.com/watch?v=orZEBSXbmFU
- Google Cloud Website
https://cloud.google.com/
Thank You!
https://github.com/dollyaswin/gdg-fest-mdn-be
https://github.com/dollyaswin/gdg-fest-mdn-fe

More Related Content

Similar to GDG DevFest Medan 2022

DevOps in an Embedded World
DevOps in an Embedded WorldDevOps in an Embedded World
DevOps in an Embedded World
Sajeewa Dayaratne
 
"How to deploy to production 10 times a day" Андрей Шумада
"How to deploy to production 10 times a day" Андрей Шумада"How to deploy to production 10 times a day" Андрей Шумада
"How to deploy to production 10 times a day" Андрей Шумада
Fwdays
 
How to deploy to production 10 times a day
How to deploy to production 10 times a dayHow to deploy to production 10 times a day
How to deploy to production 10 times a day
Andrii Shumada
 
Pragmatic Pipeline Security
Pragmatic Pipeline SecurityPragmatic Pipeline Security
Pragmatic Pipeline Security
James Wickett
 
Qa in CI/CD
Qa in CI/CDQa in CI/CD
Qa in CI/CD
Adsmurai
 
Continuous Integration
Continuous IntegrationContinuous Integration
Continuous Integration
Joseph Wang
 
devops ppt for hjs jsdjhjd hsdbusinees.pptx
devops ppt for hjs jsdjhjd hsdbusinees.pptxdevops ppt for hjs jsdjhjd hsdbusinees.pptx
devops ppt for hjs jsdjhjd hsdbusinees.pptx
Deepakgupta273447
 
Harman deepak v - agile on steriod - dev ops led transformation
Harman  deepak v - agile on steriod - dev ops led transformationHarman  deepak v - agile on steriod - dev ops led transformation
Harman deepak v - agile on steriod - dev ops led transformation
Xebia India
 
Software Security: In the World of Cloud & CI-CD
Software Security: In the World of Cloud & CI-CDSoftware Security: In the World of Cloud & CI-CD
Software Security: In the World of Cloud & CI-CD
OWASP Delhi
 
Advanced Techniques for Initiating the DevOps Journey
Advanced Techniques for Initiating the DevOps JourneyAdvanced Techniques for Initiating the DevOps Journey
Advanced Techniques for Initiating the DevOps Journey
CA Technologies
 
Webcast Automação Implantação de Aplicações (DevOps)
Webcast Automação Implantação de Aplicações (DevOps)Webcast Automação Implantação de Aplicações (DevOps)
Webcast Automação Implantação de Aplicações (DevOps)
Felipe Freire
 
DevOps Tooling - Pop-up Loft TLV 2017
DevOps Tooling - Pop-up Loft TLV 2017DevOps Tooling - Pop-up Loft TLV 2017
DevOps Tooling - Pop-up Loft TLV 2017
Amazon Web Services
 
SCALABLE CI CD DEVOPS
SCALABLE CI CD DEVOPSSCALABLE CI CD DEVOPS
SCALABLE CI CD DEVOPS
G R VISHAL
 
Continous Integration: A Case Study
Continous Integration: A Case StudyContinous Integration: A Case Study
Continous Integration: A Case Study
Talentica Software
 
Práticas, Técnicas e Ferramentas para Continuous Delivery com ALM
Práticas, Técnicas e Ferramentas para Continuous Delivery com ALMPráticas, Técnicas e Ferramentas para Continuous Delivery com ALM
Práticas, Técnicas e Ferramentas para Continuous Delivery com ALM
Marcelo Sousa Ancelmo
 
Continuous Integration using Cruise Control
Continuous Integration using Cruise ControlContinuous Integration using Cruise Control
Continuous Integration using Cruise Controlelliando dias
 
CI and CD with Spinnaker
CI and CD with SpinnakerCI and CD with Spinnaker
CI and CD with Spinnaker
VMware Tanzu
 
CICD Pipeline - AWS Azure
CICD Pipeline - AWS AzureCICD Pipeline - AWS Azure
CICD Pipeline - AWS Azure
Ratan Das
 
Docker Meetup at Docker HQ: Docker Cloud
Docker Meetup at Docker HQ: Docker CloudDocker Meetup at Docker HQ: Docker Cloud
Docker Meetup at Docker HQ: Docker Cloud
Docker, Inc.
 
Continuous integration and delivery for java based web applications
Continuous integration and delivery for java based web applicationsContinuous integration and delivery for java based web applications
Continuous integration and delivery for java based web applications
Sunil Dalal
 

Similar to GDG DevFest Medan 2022 (20)

DevOps in an Embedded World
DevOps in an Embedded WorldDevOps in an Embedded World
DevOps in an Embedded World
 
"How to deploy to production 10 times a day" Андрей Шумада
"How to deploy to production 10 times a day" Андрей Шумада"How to deploy to production 10 times a day" Андрей Шумада
"How to deploy to production 10 times a day" Андрей Шумада
 
How to deploy to production 10 times a day
How to deploy to production 10 times a dayHow to deploy to production 10 times a day
How to deploy to production 10 times a day
 
Pragmatic Pipeline Security
Pragmatic Pipeline SecurityPragmatic Pipeline Security
Pragmatic Pipeline Security
 
Qa in CI/CD
Qa in CI/CDQa in CI/CD
Qa in CI/CD
 
Continuous Integration
Continuous IntegrationContinuous Integration
Continuous Integration
 
devops ppt for hjs jsdjhjd hsdbusinees.pptx
devops ppt for hjs jsdjhjd hsdbusinees.pptxdevops ppt for hjs jsdjhjd hsdbusinees.pptx
devops ppt for hjs jsdjhjd hsdbusinees.pptx
 
Harman deepak v - agile on steriod - dev ops led transformation
Harman  deepak v - agile on steriod - dev ops led transformationHarman  deepak v - agile on steriod - dev ops led transformation
Harman deepak v - agile on steriod - dev ops led transformation
 
Software Security: In the World of Cloud & CI-CD
Software Security: In the World of Cloud & CI-CDSoftware Security: In the World of Cloud & CI-CD
Software Security: In the World of Cloud & CI-CD
 
Advanced Techniques for Initiating the DevOps Journey
Advanced Techniques for Initiating the DevOps JourneyAdvanced Techniques for Initiating the DevOps Journey
Advanced Techniques for Initiating the DevOps Journey
 
Webcast Automação Implantação de Aplicações (DevOps)
Webcast Automação Implantação de Aplicações (DevOps)Webcast Automação Implantação de Aplicações (DevOps)
Webcast Automação Implantação de Aplicações (DevOps)
 
DevOps Tooling - Pop-up Loft TLV 2017
DevOps Tooling - Pop-up Loft TLV 2017DevOps Tooling - Pop-up Loft TLV 2017
DevOps Tooling - Pop-up Loft TLV 2017
 
SCALABLE CI CD DEVOPS
SCALABLE CI CD DEVOPSSCALABLE CI CD DEVOPS
SCALABLE CI CD DEVOPS
 
Continous Integration: A Case Study
Continous Integration: A Case StudyContinous Integration: A Case Study
Continous Integration: A Case Study
 
Práticas, Técnicas e Ferramentas para Continuous Delivery com ALM
Práticas, Técnicas e Ferramentas para Continuous Delivery com ALMPráticas, Técnicas e Ferramentas para Continuous Delivery com ALM
Práticas, Técnicas e Ferramentas para Continuous Delivery com ALM
 
Continuous Integration using Cruise Control
Continuous Integration using Cruise ControlContinuous Integration using Cruise Control
Continuous Integration using Cruise Control
 
CI and CD with Spinnaker
CI and CD with SpinnakerCI and CD with Spinnaker
CI and CD with Spinnaker
 
CICD Pipeline - AWS Azure
CICD Pipeline - AWS AzureCICD Pipeline - AWS Azure
CICD Pipeline - AWS Azure
 
Docker Meetup at Docker HQ: Docker Cloud
Docker Meetup at Docker HQ: Docker CloudDocker Meetup at Docker HQ: Docker Cloud
Docker Meetup at Docker HQ: Docker Cloud
 
Continuous integration and delivery for java based web applications
Continuous integration and delivery for java based web applicationsContinuous integration and delivery for java based web applications
Continuous integration and delivery for java based web applications
 

Recently uploaded

一比一原版(CSU毕业证)加利福尼亚州立大学毕业证成绩单专业办理
一比一原版(CSU毕业证)加利福尼亚州立大学毕业证成绩单专业办理一比一原版(CSU毕业证)加利福尼亚州立大学毕业证成绩单专业办理
一比一原版(CSU毕业证)加利福尼亚州立大学毕业证成绩单专业办理
ufdana
 
History+of+E-commerce+Development+in+China-www.cfye-commerce.shop
History+of+E-commerce+Development+in+China-www.cfye-commerce.shopHistory+of+E-commerce+Development+in+China-www.cfye-commerce.shop
History+of+E-commerce+Development+in+China-www.cfye-commerce.shop
laozhuseo02
 
1.Wireless Communication System_Wireless communication is a broad term that i...
1.Wireless Communication System_Wireless communication is a broad term that i...1.Wireless Communication System_Wireless communication is a broad term that i...
1.Wireless Communication System_Wireless communication is a broad term that i...
JeyaPerumal1
 
Internet-Security-Safeguarding-Your-Digital-World (1).pptx
Internet-Security-Safeguarding-Your-Digital-World (1).pptxInternet-Security-Safeguarding-Your-Digital-World (1).pptx
Internet-Security-Safeguarding-Your-Digital-World (1).pptx
VivekSinghShekhawat2
 
1比1复刻(bath毕业证书)英国巴斯大学毕业证学位证原版一模一样
1比1复刻(bath毕业证书)英国巴斯大学毕业证学位证原版一模一样1比1复刻(bath毕业证书)英国巴斯大学毕业证学位证原版一模一样
1比1复刻(bath毕业证书)英国巴斯大学毕业证学位证原版一模一样
3ipehhoa
 
JAVIER LASA-EXPERIENCIA digital 1986-2024.pdf
JAVIER LASA-EXPERIENCIA digital 1986-2024.pdfJAVIER LASA-EXPERIENCIA digital 1986-2024.pdf
JAVIER LASA-EXPERIENCIA digital 1986-2024.pdf
Javier Lasa
 
原版仿制(uob毕业证书)英国伯明翰大学毕业证本科学历证书原版一模一样
原版仿制(uob毕业证书)英国伯明翰大学毕业证本科学历证书原版一模一样原版仿制(uob毕业证书)英国伯明翰大学毕业证本科学历证书原版一模一样
原版仿制(uob毕业证书)英国伯明翰大学毕业证本科学历证书原版一模一样
3ipehhoa
 
BASIC C++ lecture NOTE C++ lecture 3.pptx
BASIC C++ lecture NOTE C++ lecture 3.pptxBASIC C++ lecture NOTE C++ lecture 3.pptx
BASIC C++ lecture NOTE C++ lecture 3.pptx
natyesu
 
Multi-cluster Kubernetes Networking- Patterns, Projects and Guidelines
Multi-cluster Kubernetes Networking- Patterns, Projects and GuidelinesMulti-cluster Kubernetes Networking- Patterns, Projects and Guidelines
Multi-cluster Kubernetes Networking- Patterns, Projects and Guidelines
Sanjeev Rampal
 
Comptia N+ Standard Networking lesson guide
Comptia N+ Standard Networking lesson guideComptia N+ Standard Networking lesson guide
Comptia N+ Standard Networking lesson guide
GTProductions1
 
Latest trends in computer networking.pptx
Latest trends in computer networking.pptxLatest trends in computer networking.pptx
Latest trends in computer networking.pptx
JungkooksNonexistent
 
急速办(bedfordhire毕业证书)英国贝德福特大学毕业证成绩单原版一模一样
急速办(bedfordhire毕业证书)英国贝德福特大学毕业证成绩单原版一模一样急速办(bedfordhire毕业证书)英国贝德福特大学毕业证成绩单原版一模一样
急速办(bedfordhire毕业证书)英国贝德福特大学毕业证成绩单原版一模一样
3ipehhoa
 
guildmasters guide to ravnica Dungeons & Dragons 5...
guildmasters guide to ravnica Dungeons & Dragons 5...guildmasters guide to ravnica Dungeons & Dragons 5...
guildmasters guide to ravnica Dungeons & Dragons 5...
Rogerio Filho
 
test test test test testtest test testtest test testtest test testtest test ...
test test  test test testtest test testtest test testtest test testtest test ...test test  test test testtest test testtest test testtest test testtest test ...
test test test test testtest test testtest test testtest test testtest test ...
Arif0071
 
The+Prospects+of+E-Commerce+in+China.pptx
The+Prospects+of+E-Commerce+in+China.pptxThe+Prospects+of+E-Commerce+in+China.pptx
The+Prospects+of+E-Commerce+in+China.pptx
laozhuseo02
 
APNIC Foundation, presented by Ellisha Heppner at the PNG DNS Forum 2024
APNIC Foundation, presented by Ellisha Heppner at the PNG DNS Forum 2024APNIC Foundation, presented by Ellisha Heppner at the PNG DNS Forum 2024
APNIC Foundation, presented by Ellisha Heppner at the PNG DNS Forum 2024
APNIC
 
一比一原版(LBS毕业证)伦敦商学院毕业证成绩单专业办理
一比一原版(LBS毕业证)伦敦商学院毕业证成绩单专业办理一比一原版(LBS毕业证)伦敦商学院毕业证成绩单专业办理
一比一原版(LBS毕业证)伦敦商学院毕业证成绩单专业办理
eutxy
 
一比一原版(SLU毕业证)圣路易斯大学毕业证成绩单专业办理
一比一原版(SLU毕业证)圣路易斯大学毕业证成绩单专业办理一比一原版(SLU毕业证)圣路易斯大学毕业证成绩单专业办理
一比一原版(SLU毕业证)圣路易斯大学毕业证成绩单专业办理
keoku
 
Bridging the Digital Gap Brad Spiegel Macon, GA Initiative.pptx
Bridging the Digital Gap Brad Spiegel Macon, GA Initiative.pptxBridging the Digital Gap Brad Spiegel Macon, GA Initiative.pptx
Bridging the Digital Gap Brad Spiegel Macon, GA Initiative.pptx
Brad Spiegel Macon GA
 
This 7-second Brain Wave Ritual Attracts Money To You.!
This 7-second Brain Wave Ritual Attracts Money To You.!This 7-second Brain Wave Ritual Attracts Money To You.!
This 7-second Brain Wave Ritual Attracts Money To You.!
nirahealhty
 

Recently uploaded (20)

一比一原版(CSU毕业证)加利福尼亚州立大学毕业证成绩单专业办理
一比一原版(CSU毕业证)加利福尼亚州立大学毕业证成绩单专业办理一比一原版(CSU毕业证)加利福尼亚州立大学毕业证成绩单专业办理
一比一原版(CSU毕业证)加利福尼亚州立大学毕业证成绩单专业办理
 
History+of+E-commerce+Development+in+China-www.cfye-commerce.shop
History+of+E-commerce+Development+in+China-www.cfye-commerce.shopHistory+of+E-commerce+Development+in+China-www.cfye-commerce.shop
History+of+E-commerce+Development+in+China-www.cfye-commerce.shop
 
1.Wireless Communication System_Wireless communication is a broad term that i...
1.Wireless Communication System_Wireless communication is a broad term that i...1.Wireless Communication System_Wireless communication is a broad term that i...
1.Wireless Communication System_Wireless communication is a broad term that i...
 
Internet-Security-Safeguarding-Your-Digital-World (1).pptx
Internet-Security-Safeguarding-Your-Digital-World (1).pptxInternet-Security-Safeguarding-Your-Digital-World (1).pptx
Internet-Security-Safeguarding-Your-Digital-World (1).pptx
 
1比1复刻(bath毕业证书)英国巴斯大学毕业证学位证原版一模一样
1比1复刻(bath毕业证书)英国巴斯大学毕业证学位证原版一模一样1比1复刻(bath毕业证书)英国巴斯大学毕业证学位证原版一模一样
1比1复刻(bath毕业证书)英国巴斯大学毕业证学位证原版一模一样
 
JAVIER LASA-EXPERIENCIA digital 1986-2024.pdf
JAVIER LASA-EXPERIENCIA digital 1986-2024.pdfJAVIER LASA-EXPERIENCIA digital 1986-2024.pdf
JAVIER LASA-EXPERIENCIA digital 1986-2024.pdf
 
原版仿制(uob毕业证书)英国伯明翰大学毕业证本科学历证书原版一模一样
原版仿制(uob毕业证书)英国伯明翰大学毕业证本科学历证书原版一模一样原版仿制(uob毕业证书)英国伯明翰大学毕业证本科学历证书原版一模一样
原版仿制(uob毕业证书)英国伯明翰大学毕业证本科学历证书原版一模一样
 
BASIC C++ lecture NOTE C++ lecture 3.pptx
BASIC C++ lecture NOTE C++ lecture 3.pptxBASIC C++ lecture NOTE C++ lecture 3.pptx
BASIC C++ lecture NOTE C++ lecture 3.pptx
 
Multi-cluster Kubernetes Networking- Patterns, Projects and Guidelines
Multi-cluster Kubernetes Networking- Patterns, Projects and GuidelinesMulti-cluster Kubernetes Networking- Patterns, Projects and Guidelines
Multi-cluster Kubernetes Networking- Patterns, Projects and Guidelines
 
Comptia N+ Standard Networking lesson guide
Comptia N+ Standard Networking lesson guideComptia N+ Standard Networking lesson guide
Comptia N+ Standard Networking lesson guide
 
Latest trends in computer networking.pptx
Latest trends in computer networking.pptxLatest trends in computer networking.pptx
Latest trends in computer networking.pptx
 
急速办(bedfordhire毕业证书)英国贝德福特大学毕业证成绩单原版一模一样
急速办(bedfordhire毕业证书)英国贝德福特大学毕业证成绩单原版一模一样急速办(bedfordhire毕业证书)英国贝德福特大学毕业证成绩单原版一模一样
急速办(bedfordhire毕业证书)英国贝德福特大学毕业证成绩单原版一模一样
 
guildmasters guide to ravnica Dungeons & Dragons 5...
guildmasters guide to ravnica Dungeons & Dragons 5...guildmasters guide to ravnica Dungeons & Dragons 5...
guildmasters guide to ravnica Dungeons & Dragons 5...
 
test test test test testtest test testtest test testtest test testtest test ...
test test  test test testtest test testtest test testtest test testtest test ...test test  test test testtest test testtest test testtest test testtest test ...
test test test test testtest test testtest test testtest test testtest test ...
 
The+Prospects+of+E-Commerce+in+China.pptx
The+Prospects+of+E-Commerce+in+China.pptxThe+Prospects+of+E-Commerce+in+China.pptx
The+Prospects+of+E-Commerce+in+China.pptx
 
APNIC Foundation, presented by Ellisha Heppner at the PNG DNS Forum 2024
APNIC Foundation, presented by Ellisha Heppner at the PNG DNS Forum 2024APNIC Foundation, presented by Ellisha Heppner at the PNG DNS Forum 2024
APNIC Foundation, presented by Ellisha Heppner at the PNG DNS Forum 2024
 
一比一原版(LBS毕业证)伦敦商学院毕业证成绩单专业办理
一比一原版(LBS毕业证)伦敦商学院毕业证成绩单专业办理一比一原版(LBS毕业证)伦敦商学院毕业证成绩单专业办理
一比一原版(LBS毕业证)伦敦商学院毕业证成绩单专业办理
 
一比一原版(SLU毕业证)圣路易斯大学毕业证成绩单专业办理
一比一原版(SLU毕业证)圣路易斯大学毕业证成绩单专业办理一比一原版(SLU毕业证)圣路易斯大学毕业证成绩单专业办理
一比一原版(SLU毕业证)圣路易斯大学毕业证成绩单专业办理
 
Bridging the Digital Gap Brad Spiegel Macon, GA Initiative.pptx
Bridging the Digital Gap Brad Spiegel Macon, GA Initiative.pptxBridging the Digital Gap Brad Spiegel Macon, GA Initiative.pptx
Bridging the Digital Gap Brad Spiegel Macon, GA Initiative.pptx
 
This 7-second Brain Wave Ritual Attracts Money To You.!
This 7-second Brain Wave Ritual Attracts Money To You.!This 7-second Brain Wave Ritual Attracts Money To You.!
This 7-second Brain Wave Ritual Attracts Money To You.!
 

GDG DevFest Medan 2022

Editor's Notes

  1. Bismillah Assalamu’alaykum warohmatullahi wabarokatuh Selamat siang kawan - kawan semua Terima kasih kepada para organizer, yang sudah memberikan kesempatan kepada saya untuk berbagi di acara google cloud Dev Fest 2022 Medan pada hari ini. Sebelumnya, saya akan memperkenalkan diri terlebih dahulu Nama saya Dolly Aswin Harahap Dan saya asli Medan, dan berdomisili di Medan juga Saat ini… saya bekerja di Xtend Indonesia, sebagai Software Director. Yang mana Xtend Indonesia sendiri adalah salah satu perusahaan IT di kota Medan. Yang memiliki layanan software development, software & hardware integaration dan juga security system. Di Xtend kita sangat terbuka bagi kawan - kawan yang mau datang belajar pemrograman kita dipersilahkan. Karena kita di sana ada beberapa middle level programmer yang bisa mengarahkan kawan - kawan untuk belajar pemrograman. Okay, itu sekilas tentang saya dan Xtend Indonesia. Kita lanjut ke materi, pada sesi ini saya akan membahas tentang CI/CD Laravel Application di Google Cloud Compute Engine CI/CD sudah tau ya? Continues Integration / Continuous Delivery Compute Engine sendiri adalah layanan dari Google Cloud untuk Virtual Machine (yg biasa disebut VM) Instance Sama seperti Amazon EC2 atau Droplet di Digital Ocean. Sebenarnya pembahasan CI/CD di google cloud ini sudah banyak dibahas di youtube, maupun berupa artikel Baik yang berbahasa Indonesia, ataupun bahasa Inggris. Dan kali ini, saya akan membahas cara membuat CI/CD yang paaaaaling sederhana di Google Cloud Yang cara ini sebenarnya bisa diaplikasian di layanan - layanan lain seperti Bitbucket Pipeline Gitlab Pipeline Ataupun Github Action Tapi…., ketika kita menggunakan infrastructure google cloud Let say, mulai dari DNS (google cloud DNS), VM (compute engine) ataupun database (Cloud SQL), Alangkah baiknya, CI/CD nya juga kita setup di Google Cloud. Kenapa? Yang pertama pastinya lebih cepat, karena layanan - layanan yang kita gunakan berada dalam 1 ekosistem yang sama. Dan pastinya latencynya juga lebih kecil. Dan hasilnya prosesnya jadi lebih cepat dibanding menggunakan layanan - layanan yg saya sebutkan sebelumnya Bitbucket Pipeline Gitlab Pipeline Ataupun Github Action Okay, kita lanjut
  2. Seperti yang dijelaskan sebelumnya, CI adalah singkatan dari Continuous Integration Yang di dalamnya ada proses - proses berikut Otomasi build dan testing, setiap ada perubahan pada source code. Akan tetapi itu tergantung konfigurasi yang kita tentukan, di branch mana saja CI ini akan dilaksanakan. Menyatukan perubahan tersebut secara rutin, dan dari otomasi build & testing tadi kita dapat mendeteksi problem, lebih awal dan sesering mungkin Dan di dalam Continuous Delivery Terdapat proses - proses berikut Membuat proses rilis aman, tidak beresiko dan cepat Dan Continuous Delivery ini memerlukan Continuous Integration. Artinya hasil dari continuous integration inilah yang akan di-delivery. Kalau tidak ada CI, jadi apa yang mau di deliver Otomasi deployment ke beberapa environment (baik itu development, staging, ataupun production) dan target Kita lanjut ke Tools - tools yang umum digunakan di dalam Continues Integration
  3. Untuk CI Tools ini, dibagi menjadi 2 bagian Source Code Management (SCM) Ini sudah umum ya, Kita ambil beberapa contoh (github, github enterprise, bitbucket, mercurial, perforce, gitlab), dan di Google Cloud kita akan gunakan Cloud Source Repository untuk membuat setting CI nanti Continuous Integration Server Kita ambil beberapa contoh mulai dari yang legend seperti Jenkins, Travis CI , Circle CI (kalau kalian sadar, beberapa tahun yang lalu Circle CI ini sering iklan di Youtube), tapi belakangan ini sudah gak ada lagi. (Dan Travis CI ini menarik ya, dia sangat populer di kalangan project open source, karena dia memberikan layanannya gratis kepada project - project open source. Tapi sejak desember 2020 dia berhenti memberikan layanannya free kepada project open source. Sehingga banyak project open source yang beralih menggunakan Github Action saja untuk melakukan proses build. Nah, emangnya untuk apa project open source menggunakan Travis CI ini? Ada yang tau? Tujuannya adalah untuk build source code. Dalam build itu biasanya ada bbrp proses Pengecekan Code sesuai coding standard atau tidak Penggabungan/Merge code Menjalankan unit testing Dijalankan lah unit test itu di environment yang berbeda - beda. Contohnya kita ambil Laravel yang akan kita gunakan hari ini. Laravel di-build di versi PHP yang berbeda. Ada 7.1, 7.2, 7.3, 74, dan PHP 8. Untuk memastikan bahwa laravel ini akan jalna di versi PHP yang tadi itu Makanya kita bisa lihat di poject open source itu ada label Build pass (biasanya warna hijau) atau failed (warna merah). Nanti kawan - kawan bisa cek langsung di halaman githubnya Laravel, atau project - project open source yang lain. Okay, ini untuk CI Tools yang umum, kita lanjut ke CD Tools yang umum digunakan
  4. CD Tools yang umum di gunakan Ada Puppet, GoCD, Ada jenkins lagi, ada chef, dan ada bash script Semua tools ini digunakan untuk automasi delivery ataupun deployment Nah, di sini ada jenkins lagi. Padahal tadi dia sudah masuk ke dalam CI Tools Kalau di dalam CI process jenkins, digunakan untuk melakukan build dan testing, di sini jenkins digunakan juga untuk melakukan deployment. Karena memang jenkins bisa digunakan untuk keduanya. Dan pada setting deployment aplikasi laravel nanti kita gunakan Bash Script. Yang mana nanti Bash Script ini juga digunakan untuk CI & CD Kita lanjut ke slide berikutnya mengapa menggunakan CI/CD
  5. Mengapa menggunakan CI/CD Untuk memastikan perubahan di dalam code itu benar - benar bisa di-trace (ini merupakan bagian dari Source Code Management tadi yaitu github, bitbucket, dan seterus), kemudian di-test dan bisa di-built dengan sukses Otomasi meminimalisir human error. Ini memang kenyataan ya, yang namanya human error pasti ada. Bayangin aja kalau kita mesti bolak - balik upload code ke development server. Kalau gak ada proses otomasi seperti CI/CD ini, kan bisa repot. Tapi kalau ada proses otomasi seperti ini kan jadi gampang, setiap 1 jam sekali upload source code ke development server juga gak masalah Mudah untuk menelusuri asal bug, dan dengan CI/CD kita bisa mengembalikan code ke kondisi sebelum terjadinya masalah Nah dengan begini, proses upload code ke server jadi mudah. Team juga jadi senang, karena kalau tidak ada otomasi antar department bisa saling ribut. Contoh Front End minta api terbaru dari Back End, sedangkan developer back end masih sibuk dengan kerjaannya. Gitu juga yang mobile, perlu minta api terbaru. Kalau ada proses seperti ini kan semua jadi senang, dan tidak ada blocking kerjaan. Dan itu yang utama
  6. Ada yang pernah dengar nama Martin Fowler? Martin fowler ini Programmer juga dan banyak berkontribusi di dunia software development Beliau menulis beberapa buku, yang paling fenomenal itu judulnya Extreme Programming dan Refactoring Dan beliau juga terlibat di dalam membuat Agile Manifesto untuk Software Development Dan menurut beliau ini, Continuous delivery artinya kita yakin bahwasanya setiap perubahan itu dapat di-deploy ke Production. Sedangkan Continuous Deployment itu artinya, kita bisa melakukan deploy setiap ada perubahan
  7. Scott Hanselman ini juga programmer, penulis buku, podcast kalian bisa cari namanay
  8. Terima kasih Tetap semangat Tetap sehat selalu Dan tetap waras juga tentunya Mudah - mudahan kita bisa ketemu lagi di lain waktu