Cách tạo một tác vụ xây dựng mới trong Jenkins Dự án tự do

⚡ Tóm tắt thông minh

Jenkins Freestyle Project là một công việc xây dựng có thể lặp lại, kết hợp việc kiểm tra mã nguồn, các bước xây dựng và các hành động sau khi xây dựng vào một tác vụ có thể cấu hình, được tạo hoàn toàn thông qua... Jenkins Giao diện web mà không cần viết mã pipeline.

  • 🔘 Định nghĩa: Công việc tự do là Jenkins' Loại dự án đa năng, được cấu hình thông qua các biểu mẫu chứ không phải một Jenkinstập tin.
  • ☑️ Điều kiện tiên quyết: A đang chạy Jenkins Trước tiên, cần có bộ điều khiển, JDK trên máy chủ biên dịch, plugin Git và một kho lưu trữ có thể truy cập được.
  • Mười bước: Đăng nhập, tạo một mục mới, đặt tên cho mục đó, thiết lập kho lưu trữ, thêm bước biên dịch, lưu lại, tiến hành biên dịch và đọc kết quả đầu ra trên bảng điều khiển.
  • 🧪 Ví dụ thực tế: Một dự án HelloWorld được tải từ GitHub biên dịch bằng javac và chạy bằng java bên trong một môi trường ảo. Windows Bước xây dựng hàng loạt.
  • 🛠️ Sơ đồ cấu hình: Sáu phần biểu mẫu — Tổng quát, Nguồn Code Quản lý, Trình kích hoạt bản dựng, Môi trường bản dựng, Các bước bản dựng và Hành động sau khi bản dựng — bao gồm mọi tùy chọn.
  • ⚙️ Giới hạn phạm vi: Các tác vụ Freestyle phù hợp với tự động hóa tác vụ đơn lẻ; công việc phân phối nhiều giai đoạn thì nên được thực hiện trong tác vụ Pipeline có kiểm soát phiên bản.

Cách tạo một tác vụ xây dựng mới trong Jenkins Dự án tự do

Một Jenkins Dự án Freestyle?

Jenkins Dự án tự do Đây là một công việc xây dựng, tập lệnh hoặc quy trình có thể lặp lại, chứa các bước và hành động sau khi xây dựng. Nó là một công việc hoặc tác vụ được cải tiến, có thể trải rộng trên nhiều hoạt động. Nó cho phép bạn cấu hình các trình kích hoạt xây dựng và cung cấp bảo mật dựa trên dự án cho bạn. Jenkins dự án. Nó cũng cung cấp các plugin giúp bạn xây dựng các bước và hành động sau khi xây dựng.

Các loại hành động bạn có thể thực hiện trong một Jenkins Các bước xây dựng hoặc hành động sau khi xây dựng khá hạn chế. Có rất nhiều plugin tiêu chuẩn có sẵn trong một Jenkins Dự án Freestyle nhằm giúp bạn khắc phục vấn đề này.

Sơ đồ bên dưới đặt công việc tự do bên trong phạm vi rộng hơn. tích hợp liên tục vòng lặp, từ việc kiểm tra mã nguồn cho đến các hành động sau khi biên dịch để báo cáo kết quả.

Các bước để tạo việc làm trong Jenkins Dự án tự do
Cách tạo việc làm trong Jenkins

Điều kiện tiên quyết để tạo một Jenkins Công việc tự do

Trước khi mười bước dưới đây hoạt động trọn vẹn, cần phải có bốn điều kiện. Thiếu bất kỳ điều kiện nào trong số đó thường là lý do khiến lần xây dựng freestyle đầu tiên thất bại với quả bóng màu đỏ thay vì màu xanh.

  • A đang chạy Jenkins người điều khiển. Jenkins Mặc định lắng nghe trên cổng 8080. Nếu Jenkins Hiện tại chưa hoạt động, hãy theo dõi. hướng dẫn cài đặt đầu tiên.
  • Một JDK trên máy chạy quá trình biên dịch. Ví dụ đã biên dịch thành công. Java, Vì vậy javac Phải nằm trong biến môi trường PATH của bộ điều khiển hoặc tác nhân thực thi tác vụ. Hãy xác nhận điều này bằng một dòng lệnh ngắn gọn. java -version Bước xây dựng được thực hiện trước khi thêm bất cứ thứ gì khác.
  • Plugin Git. đi Tùy chọn này chỉ xuất hiện trong mục Nguồn. Code Quản lý sau khi plugin được cài đặt, thông qua Quản lý Jenkins > Plugin.
  • Một kho lưu trữ có thể truy cập được. HTTPS công cộng URL Không cần thông tin xác thực. Kho lưu trữ riêng tư cần thông tin xác thực được lưu trữ trong Jenkins Đầu tiên, nếu không quá trình kiểm tra sẽ thất bại ngay trong lần biên dịch đầu tiên.

Một tài khoản với Việc làm/Tạo Cần có quyền truy cập — trên một tài khoản người dùng đơn mới. Jenkins Tài khoản quản trị viên đã có nó rồi.

Cách tạo một tác vụ xây dựng mới trong Jenkins

Công việc xây dựng tự do là một lựa chọn rất linh hoạt và dễ sử dụng. Bạn có thể sử dụng nó cho bất kỳ loại dự án nào; nó rất dễ thiết lập và nhiều tùy chọn của nó xuất hiện trong các công việc xây dựng khác. Dưới đây là quy trình từng bước để tạo việc làm tại Jenkins.

Bước 1) Đăng nhập vào Jenkins

Để tạo ra một Jenkins Công việc tự do, hãy đăng nhập vào tài khoản của bạn. Jenkins bảng điều khiển của bạn bằng cách truy cập vào Jenkins Đường dẫn cài đặt. Thông thường, nó sẽ được lưu trữ trên localhost tại http://localhost:8080 Nếu bạn có cài đặt Jenkins Trên một con đường khác, hãy sử dụng phương pháp thích hợp. URL để truy cập vào bảng điều khiển của bạn như hình bên dưới. Jenkins Ví dụ về tạo việc làm.

Jenkins bảng điều khiển đã được truy cập tại Jenkins Đường dẫn cài đặt sau khi đăng nhập

Bước 2) Tạo mục mới

Bấm vào "New ItemBạn sẽ thấy liên kết đó ở phía trên bên trái bảng điều khiển của mình. Ảnh chụp màn hình bên dưới cho thấy vị trí của liên kết đó.

Liên kết "Sản phẩm mới" nằm ở phía trên bên trái của trang. Jenkins bảng điều khiển

Bước 3) Nhập thông tin chi tiết về mặt hàng

Trong màn hình tiếp theo,

  1. Nhập tên của mục bạn muốn tạo. Chúng ta sẽ sử dụng “Hello world” cho bản demo này.
  2. Chọn dự án Freestyle
  3. Bấm vào đồng ý

Ô nhập tên mục với dự án Freestyle đã được chọn trước khi nhấn OK

Bước 4) Nhập thông tin chi tiết về Dự án

Nhập thông tin chi tiết của dự án bạn muốn kiểm thử. Trang cấu hình sẽ hiện ra như hình bên dưới.

Thông tin chi tiết dự án đã được nhập vào Jenkins Trang cấu hình công việc freestyle

Bước 5) Truy cập kho lưu trữ URL

Theo nguồn Code Quản trị viên, hãy truy cập kho lưu trữ của bạn URLChúng tôi có một kho lưu trữ thử nghiệm đặt tại... https://github.com/kriru/firstJava.git

nguồn Code Phần quản lý với kho lưu trữ thử nghiệm Git. URL vào

Bạn cũng có thể sử dụng kho lưu trữ cục bộ.

Nếu kho lưu trữ GitHub của bạn là riêng tư, Jenkins Trước tiên, hệ thống sẽ xác thực thông tin đăng nhập của bạn với GitHub và chỉ sau đó mới tải mã nguồn từ kho lưu trữ GitHub của bạn.

Bước 6) Tinh chỉnh cài đặt

Giờ bạn đã cung cấp đầy đủ thông tin chi tiết, đã đến lúc biên dịch mã. Điều chỉnh các cài đặt trong phần... xây dựng phần để xây dựng mã vào thời điểm bạn muốn. Bạn thậm chí có thể lên lịch cho việc xây dựng diễn ra định kỳ, vào những thời điểm đã định.

Đang trong quá trình xây dựng,

  1. Bấm vào "Thêm bước xây dựng"
  2. Bấm vào "Thực hiện Windows lệnh hàng loạt” và thêm các lệnh bạn muốn thực thi trong quá trình xây dựng.

Menu thả xuống hiển thị các bước xây dựng có sẵn trông như thế này.

Menu thả xuống "Thêm bước xây dựng" được mở trên trang cấu hình công việc kiểu tự do.

⚠️ Ghi chú phiên bản: gần đây Jenkins phát hành nhãn khu vực này Các bước xây dựng chứ không phải là Xây dựngvà trên Linux hoặc macOS các đại lý lựa chọn tương đương là Thực thi shellNút đó vẫn được gọi là... Thêm bước xây dựng.

Ở đây tôi đã thêm các lệnh java để biên dịch mã java.

Tôi đã thêm các lệnh windows sau:

javac HelloWorld.java
java HelloWorld

Khung lệnh với hai dòng lệnh đã nhập được hiển thị bên dưới.

Thực hiện Windows Hộp lệnh hàng loạt chứa các lệnh javac và java.

Bước 7) Lưu dự án

Khi bạn đã nhập tất cả dữ liệu,

  1. Nhấp chuột Rắc bột
  2. Tiết kiệm dự án.

Bước 8) Xây dựng mã nguồn

Bây giờ, trong màn hình chính, hãy nhấp vào nút Build Now ở phía bên trái để xây dựng mã nguồn.

Nút "Xây dựng ngay" ở phía bên trái màn hình dự án tự do.

Bước 9) Kiểm tra trạng thái

Sau khi nhấp vào Xây dựng ngay, bạn có thể xem trạng thái của bản dựng bạn chạy trong Lịch sử bản dựng.

Bảng Lịch sử Xây dựng hiển thị trạng thái của bản dựng freestyle đã được chạy.

Bước 10) Xem đầu ra của bàn điều khiển

Nhấp vào số bản dựng, sau đó nhấp vào "Kết quả đầu ra bảng điều khiển" để xem trạng thái của bản dựng bạn đã chạy. Nó sẽ hiển thị thông báo thành công, với điều kiện bạn đã thiết lập đúng cách như được hiển thị bên dưới. Jenkins Tạo ví dụ công việc mới.

Màn hình hiển thị thông báo thành công của quá trình biên dịch đã hoàn tất.

Tóm lại, chúng ta đã chạy thành công chương trình HelloWorld được lưu trữ trên GitHub. Jenkins Công cụ này tải mã nguồn từ kho lưu trữ từ xa và liên tục biên dịch theo tần suất bạn xác định.

Jenkins Giải thích các phần cấu hình dự án Freestyle

Hướng dẫn trên chỉ đề cập đến các trường cần thiết cho ví dụ HelloWorld. Trang cấu hình được chia thành sáu phần, và việc hiểu rõ từng phần chứa những gì sẽ giúp bạn dễ dàng tìm thấy các tùy chọn còn lại hơn.

Phần Những gì nó kiểm soát cài đặt điển hình
Tổng quan Mô tả công việc, loại bỏ các bản dựng cũ, tham số và liệu công việc có chạy trên một tác nhân cụ thể hay không. Description cộng với giới hạn xây dựng-giữ
nguồn Code Quản lý Nên chọn kho lưu trữ nào, sử dụng thông tin đăng nhập nào và nhánh nào để kiểm tra. Git, một HTTPS URL, chi nhánh */master or */main
Xây dựng trình kích hoạt Quá trình xây dựng tự động bắt đầu như thế nào? Kiểm tra hệ thống quản lý mã nguồn (SCM), xây dựng bản dựng định kỳ hoặc sử dụng webhook từ GitHub.
Xây dựng môi trường Các lớp bao bọc được áp dụng xung quanh toàn bộ cấu trúc Xóa không gian làm việc trước khi quá trình biên dịch bắt đầu; thêm dấu thời gian vào nhật ký console.
Các bước xây dựng Các lệnh thực hiện công việc sẽ chạy từ trên xuống dưới. Thực hiện Windows lệnh hàng loạt, hoặc thực thi shell
Các hành động sau khi xây dựng Điều gì sẽ xảy ra sau khi các bước hoàn tất, bất kể kết quả ra sao? Archithu thập hiện vật, công bố báo cáo thử nghiệm, gửi email.

Hai thói quen này sẽ giúp bạn tiết kiệm rất nhiều thời gian gỡ lỗi sau này. Hãy thêm các bước biên dịch theo đúng thứ tự chúng phải chạy, bởi vì Jenkins Chương trình xử lý chúng từ trên xuống dưới và dừng lại ở lỗi đầu tiên. Sau đó, lưu trữ tất cả những gì quá trình xây dựng tạo ra như một hành động sau khi xây dựng, bởi vì không gian làm việc được sử dụng lại cho lần xây dựng tiếp theo trong khi các tạo phẩm được lưu trữ được giữ lại theo số thứ tự bản dựng.

Dự án Freestyle so với Pipeline: Nên sử dụng cái nào?

Freestyle không phải là loại dự án duy nhất trên màn hình Thêm mục mới, và nó không phải lúc nào cũng là loại phù hợp. Bảng dưới đây so sánh nó với... Công việc đường ống về những điểm quyết định hầu hết các lựa chọn thực tế.

Điểm so sánh Dự án tự do Pipeline
Nó được định nghĩa như thế nào Các biểu mẫu web được lưu trữ trong công việc config.xml trên bộ điều khiển A Jenkinstệp được cam kết với mã ứng dụng
Thay đổi lịch sử Tổ chức bởi Jenkins, bên ngoài kho lưu trữ của bạn Revđược xem và quản lý phiên bản giống như bất kỳ tệp nguồn nào khác.
Các giai đoạn và công việc song song Một danh sách các bước xây dựng duy nhất, đơn giản. Các giai đoạn được đặt tên, các nhánh song song và hình ảnh tổng quan về giai đoạn.
Đường cong học tập Không cần kịch bản nào Yêu cầu cú pháp đường dẫn khai báo
Phù hợp nhất Một lần biên dịch, một tập lệnh, một tác vụ theo lịch trình hoặc quá trình học tập Jenkins Quy trình xây dựng, kiểm thử và triển khai nhiều giai đoạn trên nhiều môi trường.

Một nguyên tắc thực tế: hãy thử sử dụng chế độ làm việc tự do khi công việc chỉ là một nhiệm vụ đơn lẻ và bạn vẫn đang làm quen với công cụ, sau đó chuyển công việc sang chế độ làm việc linh hoạt hơn. Đường ống CI / CD Ngay khi nó phát triển sang giai đoạn thứ hai hoặc cần được xem xét lại cùng với mã. Các nhóm ghép cặp Jenkins Với các công cụ xây dựng, người ta thường nhanh chóng đạt đến điểm đó — một Maven và Selenium thiết lập là một yếu tố kích hoạt phổ biến cho công tắc, và lý luận tương tự cũng áp dụng cho bất kỳ yếu tố nào khác. kiểm tra tự động hóa bộ phần mềm chạy qua nhiều giai đoạn.

Câu Hỏi Thường Gặp

Thông báo lỗi trên console cho biết nguyên nhân. Ba nguyên nhân phổ biến là: javac bị thiếu trong biến môi trường PATH của agent, kho lưu trữ riêng tư không có thông tin xác thực được lưu trữ và tên nhánh không chính xác. Hãy sửa dòng được báo cáo, sau đó chạy lại lệnh Build Now.

Mở Build Triggers và đánh dấu chọn. Xây dựng định kỳSau đó, nhập cú pháp cron như sau: H 2 * * * Để chạy bộ mỗi đêm. H Phân bổ tải trọng đều trong suốt một giờ. Thăm dò ý kiến ​​SCM Sử dụng cùng cú pháp nhưng chỉ biên dịch khi kho lưu trữ thay đổi.

Chọn Thực thi shell Chọn tùy chọn "Thêm bước xây dựng" thay vì "Thực thi" từ menu "Thực thi". Windows Lệnh xử lý hàng loạt. Tùy chọn hiển thị phụ thuộc vào hệ điều hành của bộ điều khiển hoặc tác nhân mà tác vụ được liên kết, chứ không phải trên máy tính của bạn.

Lưu trữ mã thông báo hoặc khóa SSH sau khi đã đặt hàng. Quản lý Jenkins > Thông tin xác thựcSau đó, chọn nó từ menu thả xuống Thông tin xác thực trong mục Nguồn. Code Phần quản lý. Jenkins Nó xác thực thông tin đăng nhập trước khi thanh toán, vì vậy nếu thông tin đăng nhập không hợp lệ, quá trình xây dựng sẽ thất bại ngay lập tức.

Các công cụ học máy đọc nhật ký console và nhóm các lỗi lặp đi lặp lại, phân biệt lỗi biên dịch thực sự với lỗi do tác nhân không ổn định hoặc lỗi hết thời gian chờ. Quá trình phân loại này giúp bạn tìm ra dòng quan trọng thay vì phải cuộn qua một nhật ký dài bằng tay.

Trợ lý GitHub Công cụ này soạn thảo tập lệnh hàng loạt hoặc tập lệnh shell bên trong một bước xây dựng, và giao diện dòng lệnh (CLI) của nó có thể tóm tắt nhật ký console bị lỗi. Nó không thể nhấp chuột qua biểu mẫu cấu hình, vì vậy hãy xem xét kỹ mọi lệnh được tạo ra trước khi lưu.

Thêm Archicác hiện vật như một hành động sau khi xây dựng và gán cho nó một mẫu như sau: **/*.class. ArchiCác tệp ved được lưu trữ theo số bản dựng, vì vậy chúng vẫn tồn tại ngay cả khi không gian làm việc được sử dụng lại hoặc được dọn dẹp bởi lần chạy tiếp theo.

Mỗi công việc đều nằm trong JENKINS_HOME/jobs/<job-name>, với các cài đặt biểu mẫu trong config.xml và mỗi lần chạy dưới builds/Việc sao lưu thư mục đó là đủ để di chuyển hoặc khôi phục công việc.

Tóm tắt bài viết này với: