tech talk #5 : ci/cd for mobile development - Đinh ngọc kiên
TRANSCRIPT
![Page 1: Tech Talk #5 : CI/CD FOR MOBILE DEVELOPMENT - Đinh Ngọc Kiên](https://reader034.vdocuments.us/reader034/viewer/2022052514/5a6642e37f8b9ae80e8b4711/html5/thumbnails/1.jpg)
CI/CD FOR MOBILE DEVELOPMENT
TECH TALK #5
DINH NGOC KIEN - INNOVATUBE
![Page 2: Tech Talk #5 : CI/CD FOR MOBILE DEVELOPMENT - Đinh Ngọc Kiên](https://reader034.vdocuments.us/reader034/viewer/2022052514/5a6642e37f8b9ae80e8b4711/html5/thumbnails/2.jpg)
CI/CD FOR MOBILE DEVELOPMENT
OUTLINES
▸ Understand CI/CD
▸ CI/CD for Mobile development
▸ References
![Page 3: Tech Talk #5 : CI/CD FOR MOBILE DEVELOPMENT - Đinh Ngọc Kiên](https://reader034.vdocuments.us/reader034/viewer/2022052514/5a6642e37f8b9ae80e8b4711/html5/thumbnails/3.jpg)
CI/CD FOR MOBILE DEVELOPMENT
CONTINUOUS INTEGRATION
Continuous integration (CI) is a development approach that favors testing and reporting of changes to a given build as they happen.
![Page 4: Tech Talk #5 : CI/CD FOR MOBILE DEVELOPMENT - Đinh Ngọc Kiên](https://reader034.vdocuments.us/reader034/viewer/2022052514/5a6642e37f8b9ae80e8b4711/html5/thumbnails/4.jpg)
CI/CD FOR MOBILE DEVELOPMENT
HOW DOES CI WORK?
▸ Pushing to the code repository
▸ Static analysis
▸ Pre-deployment testing
▸ Packaging and deployment to the test environment
▸ Post-deployment testing
![Page 5: Tech Talk #5 : CI/CD FOR MOBILE DEVELOPMENT - Đinh Ngọc Kiên](https://reader034.vdocuments.us/reader034/viewer/2022052514/5a6642e37f8b9ae80e8b4711/html5/thumbnails/5.jpg)
CI/CD FOR MOBILE DEVELOPMENT
PUSHING TO THE CODE REPOSITORY
![Page 6: Tech Talk #5 : CI/CD FOR MOBILE DEVELOPMENT - Đinh Ngọc Kiên](https://reader034.vdocuments.us/reader034/viewer/2022052514/5a6642e37f8b9ae80e8b4711/html5/thumbnails/6.jpg)
CI/CD FOR MOBILE DEVELOPMENT
STATIC ANALYSIS
‣ Static analysis is often the first step in the pipeline.
‣ Its execution tends to be very fast.
‣ The cost of the maintenance effort is close to nothing.
‣ Example tools:
‣ Java: CheckStyle, FindBugs…
‣ JS: JSLint, JSHint…
![Page 7: Tech Talk #5 : CI/CD FOR MOBILE DEVELOPMENT - Đinh Ngọc Kiên](https://reader034.vdocuments.us/reader034/viewer/2022052514/5a6642e37f8b9ae80e8b4711/html5/thumbnails/7.jpg)
CI/CD FOR MOBILE DEVELOPMENT
STATIC ANALYSIS
![Page 8: Tech Talk #5 : CI/CD FOR MOBILE DEVELOPMENT - Đinh Ngọc Kiên](https://reader034.vdocuments.us/reader034/viewer/2022052514/5a6642e37f8b9ae80e8b4711/html5/thumbnails/8.jpg)
CI/CD FOR MOBILE DEVELOPMENT
PRE-DEPLOYMENT TESTING
‣ Should (must) be mandatory
‣ Unit tests, TDD approach…
‣ Test frameworks: XCTest, JUnit, Appium, KIF…
![Page 9: Tech Talk #5 : CI/CD FOR MOBILE DEVELOPMENT - Đinh Ngọc Kiên](https://reader034.vdocuments.us/reader034/viewer/2022052514/5a6642e37f8b9ae80e8b4711/html5/thumbnails/9.jpg)
CI/CD FOR MOBILE DEVELOPMENT
PRE-DEPLOYMENT TESTING
![Page 10: Tech Talk #5 : CI/CD FOR MOBILE DEVELOPMENT - Đinh Ngọc Kiên](https://reader034.vdocuments.us/reader034/viewer/2022052514/5a6642e37f8b9ae80e8b4711/html5/thumbnails/10.jpg)
CI/CD FOR MOBILE DEVELOPMENT
PACKAGING AND DEPLOYMENT TO THE TEST ENVIRONMENT‣ Depend on framework and programming language
‣ Java: JAR, WAR files…
‣ Javascript: minify code, send to CDN server…
‣ Create Docker container, wrap VM vagrant…
![Page 11: Tech Talk #5 : CI/CD FOR MOBILE DEVELOPMENT - Đinh Ngọc Kiên](https://reader034.vdocuments.us/reader034/viewer/2022052514/5a6642e37f8b9ae80e8b4711/html5/thumbnails/11.jpg)
CI/CD FOR MOBILE DEVELOPMENT
PACKAGING AND DEPLOYMENT TO THE TEST ENVIRONMENT
![Page 12: Tech Talk #5 : CI/CD FOR MOBILE DEVELOPMENT - Đinh Ngọc Kiên](https://reader034.vdocuments.us/reader034/viewer/2022052514/5a6642e37f8b9ae80e8b4711/html5/thumbnails/12.jpg)
CI/CD FOR MOBILE DEVELOPMENT
POST-DEPLOYMENT TESTING
‣ Execute tests that needs deployed-product:
‣ Functional, Integration, Performance tests
‣ Tools, technologies:
‣ Selenium, Codecept, Gatling…
‣ Apply BDD (Behavior-driven development) for functional or acceptance tests
![Page 13: Tech Talk #5 : CI/CD FOR MOBILE DEVELOPMENT - Đinh Ngọc Kiên](https://reader034.vdocuments.us/reader034/viewer/2022052514/5a6642e37f8b9ae80e8b4711/html5/thumbnails/13.jpg)
CI/CD FOR MOBILE DEVELOPMENT
POST-DEPLOYMENT TESTING
![Page 14: Tech Talk #5 : CI/CD FOR MOBILE DEVELOPMENT - Đinh Ngọc Kiên](https://reader034.vdocuments.us/reader034/viewer/2022052514/5a6642e37f8b9ae80e8b4711/html5/thumbnails/14.jpg)
CI/CD FOR MOBILE DEVELOPMENT
CONTINUOUS DELIVERY/DEPLOYMENT
▸ Continuous Delivery is a development approach in which teams produce software in short cycles, ensuring that the software can be reliably released at any time.
▸ Always be able to put a product into production!
▸ Continuous Deployment focus on end-user’s accessibility to deployed-product relies on any changes of code.
▸ Automatically deploy the product into production whenever it passes QA!
![Page 15: Tech Talk #5 : CI/CD FOR MOBILE DEVELOPMENT - Đinh Ngọc Kiên](https://reader034.vdocuments.us/reader034/viewer/2022052514/5a6642e37f8b9ae80e8b4711/html5/thumbnails/15.jpg)
CI/CD FOR MOBILE DEVELOPMENT
CONTINUOUS DELIVERY/DEPLOYMENT
![Page 16: Tech Talk #5 : CI/CD FOR MOBILE DEVELOPMENT - Đinh Ngọc Kiên](https://reader034.vdocuments.us/reader034/viewer/2022052514/5a6642e37f8b9ae80e8b4711/html5/thumbnails/16.jpg)
CI/CD FOR MOBILE DEVELOPMENT
CONTINUOUS DELIVERY
![Page 17: Tech Talk #5 : CI/CD FOR MOBILE DEVELOPMENT - Đinh Ngọc Kiên](https://reader034.vdocuments.us/reader034/viewer/2022052514/5a6642e37f8b9ae80e8b4711/html5/thumbnails/17.jpg)
CI/CD FOR MOBILE DEVELOPMENT
CONTINUOUS DEPLOYMENT
![Page 18: Tech Talk #5 : CI/CD FOR MOBILE DEVELOPMENT - Đinh Ngọc Kiên](https://reader034.vdocuments.us/reader034/viewer/2022052514/5a6642e37f8b9ae80e8b4711/html5/thumbnails/18.jpg)
▸ Different from CI/CD for web, webapp
CI/CD FOR MOBILE DEVELOPMENT
CI/CD FOR MOBILE APPS
![Page 19: Tech Talk #5 : CI/CD FOR MOBILE DEVELOPMENT - Đinh Ngọc Kiên](https://reader034.vdocuments.us/reader034/viewer/2022052514/5a6642e37f8b9ae80e8b4711/html5/thumbnails/19.jpg)
CI/CD FOR MOBILE DEVELOPMENT
REFERENCES
![Page 20: Tech Talk #5 : CI/CD FOR MOBILE DEVELOPMENT - Đinh Ngọc Kiên](https://reader034.vdocuments.us/reader034/viewer/2022052514/5a6642e37f8b9ae80e8b4711/html5/thumbnails/20.jpg)
CI/CD FOR MOBILE DEVELOPMENT
REFERENCES
![Page 21: Tech Talk #5 : CI/CD FOR MOBILE DEVELOPMENT - Đinh Ngọc Kiên](https://reader034.vdocuments.us/reader034/viewer/2022052514/5a6642e37f8b9ae80e8b4711/html5/thumbnails/21.jpg)
CI/CD FOR MOBILE DEVELOPMENT