Top Banner
BEKRAF - INDONESIAN AGENCY FOR CREATIVE ECONOMY Continuous Integration and Continuous Delivery Rendra Toro OLX Indonesia Intel Innovator
23

Continuous Integration & Continuous Delivery on Android - Nur Rendra Toro Singgih (Senior Developer OLX Indonesia)

Jan 11, 2017

Download

Technology

Dicoding
Welcome message from author
This document is posted to help you gain knowledge. Please leave a comment to let me know what you think about it! Share it to your friends and learn new things together.
Transcript
Page 1: Continuous Integration & Continuous Delivery on Android - Nur Rendra Toro Singgih (Senior Developer OLX Indonesia)

BEKRAF - INDONESIAN AGENCY FOR CREATIVE ECONOMY

Continuous Integration and Continuous Delivery

Rendra ToroOLX Indonesia

Intel Innovator

Page 2: Continuous Integration & Continuous Delivery on Android - Nur Rendra Toro Singgih (Senior Developer OLX Indonesia)

CHALLENGE - BUGS AND APPLICATION CRASHES

3

Page 3: Continuous Integration & Continuous Delivery on Android - Nur Rendra Toro Singgih (Senior Developer OLX Indonesia)

RESULT - BAD USER REVIEWS

4

Page 4: Continuous Integration & Continuous Delivery on Android - Nur Rendra Toro Singgih (Senior Developer OLX Indonesia)

CHALLENGE - LONG FEATURE RELEASES

5

IDEA

FEATURE

Page 5: Continuous Integration & Continuous Delivery on Android - Nur Rendra Toro Singgih (Senior Developer OLX Indonesia)

CONTINUOUS DELIVERY

6

Reducing Risk

& Waste

Rapid Release Customer Feedback

Innovate

Page 6: Continuous Integration & Continuous Delivery on Android - Nur Rendra Toro Singgih (Senior Developer OLX Indonesia)

TEST DRIVEN DEVELOPMENT

7

Page 7: Continuous Integration & Continuous Delivery on Android - Nur Rendra Toro Singgih (Senior Developer OLX Indonesia)

FUNCTIONAL TESTING

8

Page 8: Continuous Integration & Continuous Delivery on Android - Nur Rendra Toro Singgih (Senior Developer OLX Indonesia)

CONTINUOUS INTEGRATION

9

Page 9: Continuous Integration & Continuous Delivery on Android - Nur Rendra Toro Singgih (Senior Developer OLX Indonesia)

DEPLOYMENT

10

Page 10: Continuous Integration & Continuous Delivery on Android - Nur Rendra Toro Singgih (Senior Developer OLX Indonesia)

BETA VERSION DISTRIBUTION

11

Crash Reports Feedback from testers Analytics

Page 11: Continuous Integration & Continuous Delivery on Android - Nur Rendra Toro Singgih (Senior Developer OLX Indonesia)

CONTINUOUS DELIVERY

12

1. PLAN

2. CODE

4. TEST

3. BUILD

8. RELEASE

5. DEPLOY

7. MONITOR

6. OPERATE

Page 12: Continuous Integration & Continuous Delivery on Android - Nur Rendra Toro Singgih (Senior Developer OLX Indonesia)
Page 13: Continuous Integration & Continuous Delivery on Android - Nur Rendra Toro Singgih (Senior Developer OLX Indonesia)
Page 14: Continuous Integration & Continuous Delivery on Android - Nur Rendra Toro Singgih (Senior Developer OLX Indonesia)
Page 15: Continuous Integration & Continuous Delivery on Android - Nur Rendra Toro Singgih (Senior Developer OLX Indonesia)
Page 16: Continuous Integration & Continuous Delivery on Android - Nur Rendra Toro Singgih (Senior Developer OLX Indonesia)
Page 17: Continuous Integration & Continuous Delivery on Android - Nur Rendra Toro Singgih (Senior Developer OLX Indonesia)

What we have Learn• Define your git flow, don’t

mess up with your master branch (keep clean), create another branch and create Pull Request to order Jenkins to build test and merge to master if successful. (In term of Github, closer/faster and stable would be better).

• Merge your test repository along with your platform repository.

• Write unit test by default, the developer is responsible to write unit testing for any feature that he/she wrote.

• We are still using docker or create environment based on docker, we cant run it on Jenkins-Slave that was docker (Don’t do Docker in Docker for CI).

Page 18: Continuous Integration & Continuous Delivery on Android - Nur Rendra Toro Singgih (Senior Developer OLX Indonesia)

Branching

Page 19: Continuous Integration & Continuous Delivery on Android - Nur Rendra Toro Singgih (Senior Developer OLX Indonesia)

Branching

Page 20: Continuous Integration & Continuous Delivery on Android - Nur Rendra Toro Singgih (Senior Developer OLX Indonesia)
Page 21: Continuous Integration & Continuous Delivery on Android - Nur Rendra Toro Singgih (Senior Developer OLX Indonesia)

21

Master github Unit Test Build APK FTP to Server Functional Test

Dev Pushrun Webhook

Artifactory

Server 1 for Emulator

Server 2 for Emulator

Server 3 for Emulator

Server 4 for Emulator

Page 22: Continuous Integration & Continuous Delivery on Android - Nur Rendra Toro Singgih (Senior Developer OLX Indonesia)

Appium Hub

Report Builder Artifact APK

Test

Emulator Emulator Emulator Emulator

Server 1 Server 2 Server 3 Server 4

Page 23: Continuous Integration & Continuous Delivery on Android - Nur Rendra Toro Singgih (Senior Developer OLX Indonesia)

BEKRAF - INDONESIAN AGENCY FOR CREATIVE ECONOMY

Thank You