Basic Ci Cd Gitlab Fastlane

Abstract

Trong bài viết này mình tiềm hiểu về GitLab-CI, Fastlane ở mức cơ bản.

  • Tìm hiểu GitLab-CI.

  • Fastlane là gì?

What is CI?

Trong quá trình làm việc theo nhóm việc quản lý source-code giữa các thành viên với nhau là cực kỳ quan trọng. Việc cập nhật mã code giữa các thành viên với nhau là rất thường xuyên. Việc này dẫn đến nhiều vấn đề nảy sinh như code lỗi,… để phát hiện sớm các lỗi để sửa ngay đưa ra một khái niệm là Continuos Integration - Tích hợp liên tục

Lợi ích của việc sử dụng CI

  • Giảm rủi ro tích hợp
  • Chất lượng code cao hơn
  • Code trên version control luôn hoạt động
  • Giảm thời gian deploy

GitLab-CI là một phần dịch vụ của GitLab cho phép nhà phát triển ứng dụng xây dựng và kiểm tra các đoạn code trong dự án bất cứ khi nào được đẩy lên từ nhà phát triển.

  • Gitlab runner: Để bạn có thể chạy được test tự động mỗi khi có code mới, bạn cần phải có một runner. Gitlab runner là một công cụ được cài đặt sẵn trên server/local, luôn luôn lắng nghe và sẽ chạy theo một kịch bản được định sẵn.

Fastlane là gì ?

Fastlane là một công cụ giúp cho việc release sản phẩm của chúng ta trở nên dễ dàng hơn , nhanh hơn . Nó xử lý tất cả những công việc dườm dà như tạo screenshot , xử lý với code signing và release ứng dụng lên store .

Các bước thực hiện?

  1. Cài đặt GitLab-Runner trên MacOSX (Mac-mini)
  2. Đăng ký GitLab-Runner với GitLab-CI
  3. Cài đặt Fastlane in build/test

1. Cài con Runner

Trong ví dụ này mình chạy con runner trên mac-mni ở công ty

  1. Tải về:
sudo curl --output /usr/local/bin/gitlab-runner
https://gitlab-runner-downloads.s3.amazonaws.com/latest/binaries/gitlab-runner-darwin-amd64
  1. Cấp quyền thực thi:

  2. sudo chmod +x /usr/local/bin/gitlab-runner
    
  3. Cài đặt và chạy service:

  4. cd ~
    gitlab-runner install
    gitlab-runner start
    

2. Registering a Runner

  1. Đăng ký

  2. gitlab-runner register
    
  3. Điền vào url gitlab của công ty

  4. Please enter the gitlab-ci coordinator URL (e.g. https://gitlab.com )
    https://gitlab.com
    
  5. Điền vào token trên gitlab vào:

  6. Please enter the gitlab-ci token for this runner
    xxx
    
  7. Thêm mô tả:

  8. Please enter the gitlab-ci description for this runner
    Local Runner
    
  9. Gắn tag vào, khi có push code mới có tab này thì runer sẽ thực thi

  10. Please enter the gitlab-ci tags for this runner (comma separated):
    ios,another-tag
    
  11. Chọn shell

  12. Please enter the executor: ssh, docker+machine, docker-ssh+machine, kubernetes, docker, parallels, virtualbox, docker-ssh, shell:
    shell
    

Nếu mọi thứ đều OK, bạn có thể thấy runner được đăng ký theo hình dưới.

git-runnner-setup

Lưu ý:

Nếu muốn runner chạy mỗi khi có commit lên thì bạn check vào Run untagged jobs

Indicates whether this runner can pick jobs without tags

Fastlane

Sau khi cài đặt thành công runner, chúng ta tiếp tục tiến hành cài đặt fastlane: trang chủ. Phần này được mô tả khá chi tiết trong tài liệu.

Cấu hình cho Fastlane

Tiếp theo, chúng ta viết một số script đơn giản để test và build app:

Trong đó,

  1. test -> sẽ tiến hành cài đặt pod, sau đó tiến hành chạy Unit Test
  2. buildAppTest -> sẽ tiến hành cài đặt pod, sau đó tiến hành build app để tạo file .IPA
  3. sendTeleSendMailDone -> sử dụng plugin telegram của fastlane, func này sẽ được gọi khi chúng ta đã build file ipa thành công để gửi file và báo cho tester biết.

Tổng kết

Trên đây mình đã giới thiệu cho các bạn các khái niệm , các bước setup cơ bản để sử dụng fastlane, GitLab, bạn muốn tìm hiểu sâu hơn về nó có thể vào link để tìm hiểu chi tiết: link to fastlane!

Posts in this Series