Jenkins là một opensource dùng để thực hiện chức năng tích hợp liên tục (gọi là CI – Continuous Integration) và xây dựng các tác vụ tự động hóa. Nó tích hợp các source code của các members trong team lại nhanh chóng một cách liên tục, theo dõi sự thực thi và trạng thái thông qua các bước kiểm thử (Integration testunits test). Mô hình như sau:

  • Các hệ thống tích hợp liên tục (CI) là một phần quan trọng của bất kỳ nhóm Agile nào vì chúng giúp thực thi các lý tưởng phát triển Agile.
  • Đây là một công cụ xây dựng liên tục, cho phép các nhóm tập trung vào công việc của họ bằng cách tự động hóa quá trình xây dựng, quản lý nhân tạo và quy trình triển khai.
  • Chức năng và tính linh hoạt cốt lõi của Jenkins cho phép nó phù hợp với nhiều môi trường khác nhau và có thể giúp hợp lý hóa quy trình phát triển cho tất cả các bên liên quan.

CI là gì? CD là gì?

CI là viết tắt của Continuous Integration

Là tích hợp liên tục, nhằm liên tục tích hợp các source code của các thành viên trong team lại một cách nhanh chóng. Giúp kiểm soát được tình hình phát triển thông qua các bước kiểm thử unit tests, Integration tests.

CI Workflow

Vòng trình làm việc

  1. Bước đầu tiên, các thành viên trong team dev sẽ bắt đầu pull code mới nhất từ repo về branch để thực hiện các yêu cầu chức năng nhất định.
  2. Tiếp đó là quá trình lập trình và test code để đảm bảo chất lượng của chức năng cũng như toàn bộ source code.
  3. Thành viên code xong thì sẵn sàng cho việc commit vào branch develop của team.
  4. Thành viên cập nhật code mới từ repo về local repo
  5. Merge code và giải quyết conflict.
  6. Build và đảm bảo code pass qua các tests dưới local.
  7. Commit code lên repo
  8. Máy chủ CI lắng nghe các thay đổi code từ repository và có thể tự động build/test, sau đó đưa ra các thông báo (pass/failure) cho các thành viên.

CD là viết tắt của Continuous Delivery

Continuous Delivery là chuyển giao liên tục, là 1 tập hợp các kỹ thuật để triển khai tích hợp souce code trên môi trường staging ( một môi trường rất giống với môi trường production). Với cách này ta có thể đảm bảo source code được review, kiểm thử một cách tỉ mỉ trước khi deploy lên môi trường production.

Jenkins Workflow

Lời kết

Thông qua bài viết này mình giúp các bạn hiểu nhanh về jenkins. Các bạn research thêm trên trang chủ Jenkins và gitlab nhé.

Cảm ơn mọi người đã đọc bài biết.

Bài viết liên quan

Trả lời

Email của bạn sẽ không được hiển thị công khai. Các trường bắt buộc được đánh dấu *