- Tổng đài 24/7: 1800 646 881
- Đăng nhập
- 3
Jenkins là một phần mềm tích hợp liên tục (Continuous Integration, CI) được sử dụng rộng rãi trong lĩnh vực phát triển phần mềm. Nó giúp người phát triển kiểm tra nhanh chóng và thường xuyên mã nguồn của họ bằng cách tự động hóa quá trình biên dịch, kiểm tra và phát hành phần mềm. Trong bài viết này, BKHOST sẽ tìm hiểu thêm về Jenkins và các tính năng mà nó cung cấp cho người phát triển phần mềm.
Jenkins là một phần mềm tích hợp liên tục (Continuous Integration, CI) được sử dụng rộng rãi trong lĩnh vực phát triển phần mềm. Nó giúp người phát triển kiểm tra nhanh chóng và thường xuyên mã nguồn của họ bằng cách tự động hóa quá trình biên dịch, kiểm tra và phát hành phần mềm.
Jenkins có thể được cài đặt trên máy chủ local hoặc được sử dụng dưới dạng một dịch vụ trên cloud. Nó là một phần mềm nguồn mở và được phát hành dưới giấy phép MIT.
Các tính năng chính của Jenkins bao gồm:
Để sử dụng Jenkins, người phát triển phần mềm cần cấu hình một “job” trong Jenkins. Job trong Jenkins là một tác vụ cần được thực hiện, ví dụ như biên dịch mã nguồn, kiểm tra mã nguồn hoặc phát hành phần mềm. Khi có sự thay đổi trong mã nguồn hoặc khi người phát triển yêu cầu thực hiện job, Jenkins sẽ thực hiện các bước đã được cấu hình trong job đó.
Sau khi job được thực hiện xong, Jenkins sẽ cung cấp các báo cáo và kết quả cho người phát triển, bao gồm các thông tin về việc biên dịch mã nguồn, kết quả các bước kiểm tra mã nguồn và thông tin về bất kỳ lỗi nào xảy ra trong quá trình thực hiện job.
Ngoài ra, Jenkins còn cung cấp một giao diện quản lý dễ sử dụng cho phép người sử dụng quản lý các job và plugin một cách dễ dàng. Người sử dụng cũng có thể tích hợp Jenkins với nhiều công cụ khác nhau để mở rộng tính năng của hệ thống.
Ngay khi cài đặt Jenkins thành công, Jenkins cho phép bạn lựa chọn plugin có sẵn hoặc plugin của riêng bạn.
Chọn được bộ trình cắm rồi bạn hãy click vào nút Install thì chúng sẽ được Jenkins thêm vào.
Trên màn hình chính Jenkins sẽ hiển thị các build queue hiện tại và trạng thái executor. Bên cạnh đó nó cũng cung cấp các liên kết để tạo ra mục mới, chế độ xem tùy chỉnh, quản lý cho người dùng, xem lại lịch sử xây dựng, chế độ xem tùy chỉnh, quản lý thông tin đăng nhập và quản lý Jenkins.
Đối với một mục Jenkins mới thì có thể là một trong sáu loại công việc nói trên cùng với một thư mục nhằm mục đích sắp xếp logic các loại thư mục nhỏ bên trong.
Ở trang Manage Jenkins (quản lý Jenkins) bạn có thể làm 18 điều trong đó bao gồm các tùy chọn mở giao diện dòng lệnh. Mặc dù vậy, bạn nên cân nhắc lại việc sử dụng các pipeline và quy trình công việc nâng cao được xác định của các tập lệnh.
Có được cấu hình Jenkins bạn sẽ được Jenkins hỗ trợ để tạo dựng một số dự án của riêng mình. Sử dụng giao diện người dùng web để tạo ra các tệp là cách thức truyền thống khá quen thuộc. Tuy nhiên phương pháp hay nhất hiện nay là tạo một tập lệnh đường dẫn theo kiểu pipeline có tên là Jenkins Pipeline. Quy trình này được thực hiện một cách tuần tự được định sẵn, khi đó Jenkins Pipeline sẽ được khai báo trên một tập tin với tên Jenkinsfile. Hình ảnh bên dưới là một biểu mẫu web cấu hình cho một Pipeline nhiều nhánh:
Như vậy có thể thấy trong cài đặt Jenkins cơ bản các nguồn nhánh cho Pipeline có thể là các kho lưu trữ Git hoặc Subversion, bao gồm cả GitHub. Bạn chỉ cần thêm các trình cắm thích hợp và khởi động lại Jenkins khi cần các loại kho lưu trữ khác.
Dưới đây là ví dụ về ba giai đoạn của một đường dẫn khai báo được bắt đầu bằng một Pipeline khối, xác định một agent và định nghĩa stages gồm tệp thực thi steps:
{{EJS0}}
Pipeline là khối bên ngoài bắt buộc, agent là vị trí nơi bạn muốn chạy pipeline còn any cho biết sử dụng bất kỳ tác nhân có sẵn để chạy pipeline. Một vùng chứa có thể được khai báo bởi một tác nhân cụ thể, ví dụ:
{{EJS1}}
Một hoặc nhiều chỉ thị giai đoạn được chứa đựng bởi stages. Ba giai đoạn trong ví dụ trên là xây dựng, kiểm tra và triển khai.
Steps làm công việc thực tế. Ở ví dụ trên các bước chỉ in tin nhắn. Một bước xây dựng hữu ích hơn có thể giống như sau:
{{EJS2}}
Chúng tôi đang gọi make là một trình bao, bất kỳ tệp JAR được tạo ra cũng được lưu trữ vào kho lưu trữ Jenkins.
Các hành động được chạy ở cuối giai đoạn hoặc quá trình chạy Pipeline đều được xác định bởi post.
Ví dụ như Jenkinsfile ở dưới đây sau giai đoạn kiểm tra sẽ luôn chạy JUnit và chỉ gửi vào email trong trường hợp Pipeline bị lỗi.
{{EJS3}}
Blue Ocean là trải nghiệm tuyệt vời cho bạn khi muốn giao diện Jenkins trở nên mới mẻ, độc đáo. Bạn có thể thêm Blue Ocean vào cài đặt Jenkins hiện có, lúc đó màn hình chính của Jenkins sẽ có thêm biểu tượng sóng xanh đại dương và dòng chữ “Open Blue Ocean”.
Bạn có thể mở Blue Ocean trực tiếp bằng cách nhấp vào “Open Blue Ocean” ở thanh điều hướng thuộc giao diện Jenkins. Blue Ocean thân thiện với người dùng và giúp họ truy cập thông tin nhanh chỉ với vài cú nhấp chuột.
Ngoài phân phối bởi WAR, Jenkins còn được cung cấp dưới dạng hình ảnh Docker. Quy trình này được thực hiện đơn giản với các bước cụ thể:
Ví dụ dưới đây chúng tôi đang chạy hình ảnh Blue Ocean Docker đi kèm với đó là một vài plugin dịch vụ Git (cài đặt ngoài danh sách mặc định).
Plugin Blue Ocean sẽ hiển thị trạng thái của chúng sau khi bạn cài pipeline. Để xem các giai đoạn và các bước bạn có thể phóng to từng kênh:
Bên cạnh đó bạn cũng có thể phóng to các nhánh trên và dưới:
Jenkins là một công cụ mã nguồn mở mang đến vô số những lợi ích tuyệt vời cho người dùng. Điểm đặc biệt đầu tiên là nó rất dễ cài đặt và có khoảng 1.600 plug-in để bạn làm việc một cách nhanh chóng, đơn giản. Mặt khác Jenkins được xây dựng bằng Java nên có thể di động đến các nền tảng chính.
Jenkins Pipeline là trình cắm hỗ trợ cho hai trường hợp sử dụng phân phối liên tục và tích hợp liên tục. Jenkins đã và đang tham gia hỗ trợ cho nhiều dự án Java ví dụ như Maven, Ant, Junit, Nexus và Artifactory.
Bằng cách sử dụng pipeline (đường ống), Jenkins thực hiện chức năng tích hợp thường xuyên (CI) và chuyển giao liên tục (CD). Các source code của các thành viên trong team được jenkins tích hợp nhanh chóng, liên tục, theo dõi trạng thái và sự thực thi thông qua các bước kiểm thử.
Bài viết trên chúng tôi đã tổng hợp những thông tin quan trọng liên quan tới mã nguồn Jenkins. Hy vọng với những gì tham khảo được bạn sẽ có thêm kiến thức về Jenkins cũng như hiểu rõ về lịch sử hình thành và cách mà nó hoạt động. Hãy thử tìm hiểu phần mềm này vì nếu bạn ứng dụng được nó thì việc xử lý source code sẽ trở nên rất đơn giản.
Nếu bạn bất cứ câu hỏi nào liên quan đến Jenkins hoặc muốn tìm hiểu những công cụ khác dùng để xử lý code hiệu quả, hãy để lại ở bên bình luận bên dưới, BKHOST sẽ trả lời bạn trong thời gian sớm nhất.
Thuê Cloud VPS Cao Cấp tại BKHOST
Giảm giá cực sâu, chất lượng hàng đầu. Đăng ký ngay hôm nay: