Thứ năm, 03/03/2016 | 00:00 GMT+7

Cách thiết lập Jenkins để tích hợp phát triển liên tục trên CentOS 7

Hợp nhất mã. Điều phối các bản phát hành. Xác định trạng thái xây dựng. Duy trì các bản cập nhật. Nếu bạn biết rõ sự thất vọng của những quy trình này đến mức bản thân những từ ngữ này có thể khiến bạn đau đầu, bạn có thể cần xem xét Jenkins CI.

Duy trì bất kỳ dự án nào, đặc biệt là dự án do nhiều thành viên trong group phát triển đồng thời và dự án có thể kết hợp nhiều chức năng, thành phần, ngôn ngữ và môi trường, là một cuộc đấu tranh vào thời điểm tốt nhất - và tệ nhất là đòi hỏi một kỳ công siêu phàm để tồn tại.

Jenkins ở đây để giúp đỡ. Về cơ bản là một giải pháp để tích hợp liên tục - tức là thực hành hợp nhất tất cả mã liên tục vào một bản dựng trung tâm - Jenkins đóng role là trụ sở cho các hoạt động của dự án của bạn. Nó có thể giám sát, điều chỉnh, so sánh, hợp nhất và duy trì dự án của bạn ở tất cả các khía cạnh của nó.

Về cốt lõi, Jenkins thực hiện hai việc: tích hợp tự động và giám sát bản dựng bên ngoài. Điều này nghĩa là nó có thể đơn giản hóa rất nhiều quá trình giữ cho mã của bạn có thể bảo trì được và theo dõi sát sao và không mệt mỏi về chất lượng các bản dựng của bạn, đảm bảo bạn không gặp phải những bất ngờ khó chịu khi một số nhà phát triển của bạn hợp nhất mã của họ trước khi nó sẵn sàng .

Hãy đi sâu vào vấn đề và tìm hiểu chính xác Jenkins trông như thế nào và cách sử dụng nó.

Yêu cầu

Để làm theo hướng dẫn này, bạn cần những thứ sau:

Tất cả các lệnh trong hướng dẫn này phải được chạy với quyền user không phải root. Nếu cần có quyền truy cập root cho lệnh, nó sẽ được đặt trước sudo .

Gói dành riêng cho hệ thống so với file WAR

Đến đây bạn đã biết Jenkins là gì, bạn cần hiểu cách nó được phân phối. Jenkins chạy trên Java và xuất hiện dưới dạng file WAR - một tập hợp các nội dung liên quan bao gồm một ứng dụng web và dự định chạy trên một server . Tuy nhiên, các nhà phát triển của Jenkins vui lòng mở rộng tính dễ sử dụng của nó thông qua một số gói dành riêng cho hệ thống cho phép Jenkins chạy như một dịch vụ được kiểm soát.

Gói Jenkins có sẵn cho dòng bản phân phối Red Hat, bao gồm hệ điều hành CentOS. Tuy nhiên, CentOS 7 nói riêng là một giống chó khó tính, vì vậy nó đòi hỏi một cách tiếp cận khác. Các hoạt động hoạt động trong các hệ điều hành dựa trên Red Hat khác, thậm chí cả các version CentOS khác, có xu hướng hoạt động khác trong CentOS 7 và các lỗi tiềm ẩn dẫn đến có thể khó gỡ lỗi. Vì gói Jenkins là Red Hat chung chung, thay vì được phân biệt cho CentOS, khả năng gặp sự cố cao hơn so với các hệ điều hành khác. Vì lý do này, ta sẽ không chạy Jenkins thông qua gói này. Điều đó để lại cho ta file WAR chạy qua Java, điều này kém thuận tiện hơn nhiều, yêu cầu ta khởi động và dừng nó theo cách thủ công thông qua Java.

May mắn là có một cách để giải quyết vấn đề này và ngay cả khi không có gói, ta có thể làm việc với CentOS để nó coi Jenkins như một dịch vụ.

Bước 1 - Cài đặt Jenkins

Có hai cách cơ bản để cài đặt Jenkins trên CentOS: thông qua repository hoặc repository và qua file WAR. Cài đặt từ repo là phương pháp ưu tiên và đó là điều ta sẽ phác thảo trước.

Bạn cần Java để chạy Jenkins (một trong hai phương pháp), vì vậy nếu server của bạn chưa có Java, hãy cài đặt nó bằng:

  • sudo yum -y install java

Nói chung, nếu bạn cần một dịch vụ hoặc công cụ nhưng bạn không chắc gói nào cung cấp nó, bạn luôn có thể kiểm tra bằng lệnh:

  • yum whatprovides service

service đâu là tên của dịch vụ hoặc công cụ bạn yêu cầu.

Cài đặt từ Repo

Bây giờ, chạy phần sau để tải Jenkins từ repo Red Hat:

  • sudo wget -O /etc/yum.repos.d/jenkins.repo http://pkg.jenkins-ci.org/redhat/jenkins.repo

Công cụ wget tải file xuống tên file được chỉ định sau cờ “O” (đó là chữ 'O' viết hoa, không phải số 0).

Sau đó, nhập khóa xác minh bằng RPM của trình quản lý gói:

  • sudo rpm --import https://jenkins-ci.org/redhat/jenkins-ci.org.key

Cuối cùng, cài đặt Jenkins bằng lệnh:

  • sudo yum install jenkins

Đó là nó! Đến đây bạn có thể bắt đầu Jenkins như một dịch vụ:

  • sudo systemctl start jenkins.service

Khi dịch vụ đã bắt đầu, bạn có thể kiểm tra trạng thái của nó:

  • sudo systemctl status jenkins.service

Điều này sẽ cung cấp cho bạn một bản đọc khá dài với nhiều thông tin về cách quá trình bắt đầu và những gì nó đang hoạt động, nhưng nếu mọi thứ diễn ra tốt đẹp, bạn sẽ thấy hai dòng tương tự như sau:

Loaded: loaded (/etc/systemd/system/jenkins.service; disabled) Active: active (running) since Tue 2015-12-29 00:00:16 EST; 17s ago 

Điều này nghĩa là các dịch vụ Jenkins đã hoàn thành khởi động và đang chạy. Bạn có thể xác nhận điều này bằng cách truy cập giao diện web như trước đây, tại http:// ip-of-your-machine :8080 .

Chào mừng đến với Jenkins!  Control panel  Jenkins.

Tương tự như vậy, bạn có thể dừng dịch vụ:

  • sudo systemctl stop jenkins.service

hoặc khởi động lại nó:

  • sudo systemctl restart jenkins.service

Bạn có thể tìm thêm thông tin về cách quản lý dịch vụ bằng systemctl trong bài viết Cách sử dụng Systemctl để quản lý dịch vụ và đơn vị Systemd .

Cài đặt từ Tệp WAR

Nếu bạn chọn không cài đặt Jenkins qua repo vì bất kỳ lý do gì, bạn có thể đạt được kết quả tương tự bằng cách sử dụng file WAR, mặc dù điều này đòi hỏi nhiều công việc hơn.

Trước tiên, hãy tải file Jenkins WAR xuống server và chạy nó mà không cần rườm rà đảm bảo những điều cơ bản hoạt động chính xác mà không gặp rắc rối.

Phiên bản Jenkins mới nhất tại bất kỳ thời điểm nào đều có sẵn trên gương Jenkin . Bạn có thể sử dụng bất kỳ công cụ nào bạn muốn để download file này. Phương pháp sau sử dụng một công cụ dòng lệnh được gọi là wget :

  • wget http://mirrors.jenkins-ci.org/war/latest/jenkins.war

Khi đã sẵn sàng , hãy khởi động Jenkins qua Java:

  • java -jar jenkins.war

Bạn sẽ thấy kết quả trong console cho biết Jenkins đã bắt đầu chạy:

... INFO: Jenkins is fully up and running ... 

Đến đây bạn có thể truy cập giao diện thông qua trình duyệt ( http:// ip-of-your-machine :8080 ).

Sau khi xác nhận Jenkins chạy thành công, hãy kết thúc quá trình để bạn có thể áp dụng các thay đổi đối với nó để cho phép nó chạy như một dịch vụ, như đã thảo luận trong bước tiếp theo. Để kết thúc quá trình trước đang chạy, hãy nhấn CTRL-C .

Bước 2 - Chạy Jenkins như một dịch vụ

Nếu trong phần trước, bạn đã chọn không cài đặt Jenkins qua repo và thay vào đó sử dụng file WAR, bạn sẽ không thể sử dụng Jenkins như một dịch vụ tiêu chuẩn. Nếu bạn đã sử dụng repo, hãy bỏ qua bước này.

Khi ta cấu hình Jenkins theo cách sau, nó sẽ vẫn chạy qua Java, nhưng bạn có thể coi nó như một dịch vụ, khởi động và dừng nó và để nó chạy ở chế độ nền một cách dễ dàng. Về cơ bản, dịch vụ sẽ hoạt động như một shell bọc.

Trước tiên, hãy đảm bảo file WAR bạn đã download nằm ở vị trí thuận tiện cho việc lưu trữ và sử dụng lâu dài:

  • sudo cp jenkins.war /usr/local/bin/jenkins.war

Sau đó, truy cập folder /etc/systemd/system/ và tạo một file mới có tên jenkins.service . Trình diễn sau sử dụng editor nano, nhưng tự nhiên bạn có thể sử dụng bất kỳ công cụ chỉnh sửa nào bạn muốn.

  • cd /etc/systemd/system/
  • sudo nano jenkins.service

Bây giờ, thêm các dòng sau vào file jenkins.service mới. Trong giây lát, ta sẽ xem xét chính xác những gì những dòng này đạt được.

/usr/local/bin/jenkins.war
[Unit] Description=Jenkins Service After=network.target  [Service] Type=simple User=root ExecStart=/usr/bin/java -jar /usr/local/bin/jenkins.war Restart=on-abort  [Install] WantedBy=multi-user.target 

Nếu bạn đã xem các file cấu hình trước đây (tệp INI hoặc tương tự), bạn sẽ nhận ra cấu trúc đang được sử dụng ở đây. Văn bản trong ngoặc đơn biểu thị một tiêu đề phần. Điều này nghĩa là , chẳng hạn, [Service] khai báo một phần được gọi là “Dịch vụ” và tất cả các nhiệm vụ bên dưới nó chứa thông tin liên quan mà sau đó hệ thống sẽ biết cách tìm và liên quan đến tiêu đề phần.

Tệp cấu hình, bao gồm file này, thường là file văn bản - nghĩa là nó không có ý nghĩa nội tại đối với máy tính. Thay vào đó, file văn bản sẽ được phân tích cú pháp bởi một số quá trình và quá trình đó sẽ sử dụng các tiêu đề và thông tin khác để tìm đường đi của nó. Vì lý do này, về mặt kỹ thuật không liên quan đến cách trình bày một file cấu hình nhất định - miễn là chương trình đọc nó có thể hiểu mọi thứ nghĩa là gì.

Phần đầu tiên, Unit , chỉ chứa hai chỉ thị cấu hình. Đầu tiên chỉ đơn giản là một cái tên. Nó có thể là bất kỳ tên nào bạn muốn, nhưng lý tưởng nhất nó phải là một tên xác định duy nhất quy trình mới. Chỉ thị thứ hai nêu rõ dịch vụ nào, nếu có, là cần thiết để dịch vụ hiện tại bắt đầu.

Trong phần tiếp theo, chỉ thị Type cho phép bạn chọn kiểu khởi động mà dịch vụ này sẽ sử dụng. Giá trị simple cho biết quá trình được ghi chú trong chỉ thị ExecStart sau này sẽ là quá trình chính của dịch vụ được tạo. Thực sự, type là không cần thiết, vì simple được giả định khi loại không được xác định, nhưng ta đang để nó rõ ràng.

User chỉ định user nào có quyền kiểm soát quá trình này và Restart được sử dụng để cho biết , trong trường hợp này, nếu quá trình kết thúc nhưng mã thoát ám chỉ lỗi, dịch vụ sẽ được khởi động lại. Điều này rất hữu ích trong việc duy trì tính liên tục của dịch vụ trong trường hợp có sự cố bất ngờ.

Như đã đề cập, ExecStart là chỉ thị nơi ta chỉ ra quy trình nào sẽ trở thành hành động chính của dịch vụ. Chỉ thị này đại diện cho shell bọc chính cho Jenkins - dịch vụ sẽ chạy WAR thông qua Java thay vì coi nó là một quy trình trước.

Cuối cùng, trong phần Install , multi-user.target chỉ ra một mục tiêu, được gọi là runlevel trước CentOS 7. Nó cung cấp cho hệ thống biết những tài nguyên nào cần cung cấp dịch vụ này và cường độ sẽ được user yêu cầu.

Sau khi file của bạn được tạo và lưu, bạn có thể khởi động dịch vụ Jenkins mới của bạn !

Khi đã sẵn sàng , hãy chạy:

  • sudo systemctl daemon-reload

Điều này áp dụng những thay đổi bạn đã thực hiện cho đơn vị này (thực tế, nó áp dụng những thay đổi cho bất kỳ và tất cả các đơn vị đã được thay đổi).

Đến đây bạn có thể bắt đầu Jenkins như một dịch vụ:

  • sudo systemctl start jenkins.service

Khi dịch vụ đã bắt đầu, bạn có thể kiểm tra trạng thái của nó:

  • sudo systemctl status jenkins.service

Điều này sẽ cung cấp cho bạn một bản đọc khá dài với nhiều thông tin về cách quá trình bắt đầu và những gì nó đang hoạt động, nhưng nếu mọi thứ diễn ra tốt đẹp, bạn sẽ thấy hai dòng tương tự như sau:

Loaded: loaded (/etc/systemd/system/jenkins.service; disabled) Active: active (running) since Tue 2015-12-29 00:00:16 EST; 17s ago 

Điều này nghĩa là các dịch vụ Jenkins đã hoàn thành khởi động và đang chạy. Bạn có thể xác nhận điều này bằng cách truy cập giao diện web như trước đây, tại http:// ip-of-your-machine :8080 .

Tương tự như vậy, bạn có thể dừng dịch vụ:

  • sudo systemctl stop jenkins.service

hoặc khởi động lại nó:

  • sudo systemctl restart jenkins.service

Bạn có thể tìm thêm thông tin về cách quản lý dịch vụ bằng systemctl trong bài viết Cách sử dụng Systemctl để quản lý dịch vụ và đơn vị Systemd .

Bước 3 - Tạo user

Khi Jenkins hoạt động trơn tru, cài đặt bảo mật tốt là bước tiếp theo. Kể từ đây trở đi, hành động chính xác của bạn sẽ phụ thuộc phần lớn vào mục đích của bạn đối với Jenkins. Tuy nhiên, sau đây là các hướng dẫn chung về cách Jenkins có thể được cài đặt và sử dụng tốt nhất, cùng với một số ví dụ để mở đường.

Jenkins cung cấp các cài đặt bảo mật và quản lý role , hữu ích để kiểm soát quyền truy cập và xác định hành động của user . Ta sẽ truy cập ngắn gọn để giới thiệu các khái niệm đó. Để truy cập các cài đặt đó, hãy quay lại giao diện Jenkins qua trình duyệt của bạn khi dịch vụ của bạn đang chạy ( http:// ip-of-your-machine :8080 ). Bạn sẽ thấy một menu ở bên trái - chọn Quản lý Jenkins từ bên trong đó. Thao tác này sẽ đưa bạn đến một trang chứa một số tùy chọn để tùy chỉnh. Bạn cũng có thể nhận thấy một cảnh báo ở trên cùng: Jenkins không được bảo mật cho phép bất kỳ ai trên mạng chạy các quy trình thay mặt bạn. Ít nhất hãy xem xét việc kích hoạt xác thực để ngăn chặn việc lạm dụng. Đây là chỉ thị của Jenkins để yêu cầu bạn giới thiệu một số yếu tố bảo mật cho hệ thống của bạn.

Trang "Quản lý Jenkins".

Bước đầu tiên cần thực hiện ở đây là đi tới Cấu hình Bảo mật Global , gần đầu danh sách các liên kết trên trang Jenkins quản lý. Chọn hộp tùy chọn cho Bật bảo mật để hiển thị một group tùy chọn cho mục đích này. Có bất kỳ cách nào để cấu hình bảo mật trên Jenkins - bạn có thể đọc giải thích chuyên sâu trong phần Cài đặt Bảo mật Chuẩn của tài liệu Sử dụng Jenkins .

Tùy chọn đơn giản nhất trong số các tùy chọn này, và là tùy chọn mà ta sẽ trình bày hôm nay, Jenkins sử dụng database riêng của bạn để lưu trữ cấu hình user . Trong phần Kiểm soát truy cập xuất hiện khi ta gắn cờ hộp kiểm, hãy chọn cơ sở dữ liệu user của riêng Jenkins . Tóm lại, các tùy chọn khác là liên kết Jenkins với user và group Unix hiện có, sử dụng thông tin đăng nhập toàn tổ chức (tùy chọn LDAP) hoặc cho phép một servlet Java quản lý quyền truy cập. Các tùy chọn khác có thể được thêm vào thông qua các plugin ( ta sẽ thảo luận về các plugin một chút).

Việc bạn có nên cho phép user mới đăng ký hay không phần lớn phụ thuộc vào nhu cầu của chính bạn. Tuy nhiên, nói chung, nó trả tiền để hạn chế quyền truy cập và cho phép user đăng ký theo ý muốn có thể cho phép mức độ mở có thể gây nguy hiểm. Để hạn chế điều này, hãy bỏ chọn hộp kiểm được đánh dấu Cho phép user đăng ký . Khi cài đặt này đã bị tắt, chỉ administrator mới có thể tạo account mới. Trong giây lát, bạn sẽ cung cấp các quyền quản trị cho user mà bạn sẽ tạo và ta cũng sẽ đi vào chi tiết về việc thêm user mới.

Trong Ủy quyền , hãy chọn tùy chọn bảo mật dựa trên Ma trận . Điều này cho phép một số tinh chỉnh các điều khiển mà không cần sử dụng đến các cài đặt phức tạp. Bạn sẽ thấy một user có tên Anonymous đã có mặt. User ẩn danh là bất kỳ ai từ bất kỳ đâu, ngay cả khi họ không đăng nhập, đó là lý do tại sao theo mặc định, user ẩn danh không có khả năng.Vì đây là cài đặt ban đầu của version Jenkins, bạn phải cấp đầy đủ quyền cho user này: không có user nào khác ngoài ẩn danh ngay bây giờ và bạn chưa đăng nhập, vì vậy việc tắt quyền ẩn danh sẽ khiến bạn không thể truy cập Jenkins ở tất cả.

Sử dụng nút nhỏ ở bên phải hàng Ẩn danh để chọn tất cả các quyền. Tiếp theo, sử dụng User / group để thêm trường đầu vào để chỉ định user mới để thêm quyền. Lưu ý điều này không tạo ra một user , mà là chỉ định các quyền cho user mà bạn sẽ tạo trong thời gian ngắn.

Thông thường, bạn sẽ tạo một user mới trước tiên và sau đó chỉ định quyền cho họ trong phần này của biểu mẫu. Vì chưa có user nào nên bạn sẽ cài đặt quyền và sau đó tạo user .

Nhập tên user và nhấn Thêm . Do một lỗi đã biết , bạn nên giữ tên user ở dạng chữ thường. Cấp cho user mới tất cả các quyền giống như cách bạn đã làm cho user ẩn danh. Điều này về cơ bản cài đặt một administrator mới.

Khi bạn hoàn tất, hãy nhấn Áp dụng rồi Lưu .

Bạn sẽ tự động được đưa đến trang đăng ký, từ đó bạn có thể tạo một account mới. Tên user của account bạn tạo phải tương ứng với tên user mà bạn đã chỉ định quyền trước đó:

Đăng nhập vào version  Jenkins của bạn

Khi bạn hoàn thành, bạn sẽ thấy mình tự động đăng nhập.

Quay lại trang bảo mật ( Quản lý Jenkins -> Định cấu hình Bảo mật Global ) và cuộn xuống ma trận bảo mật. Đến đây bạn đã tạo một admin-user , bạn có thể hạn chế các quyền cho user ẩn danh. Bỏ chọn tất cả các quyền trong hàng ẩn danh, sau đó bấm Áp dụngLưu . User mới của bạn bây giờ sẽ là user duy nhất có quyền truy cập vào Jenkins.

Nếu bạn đã tắt đăng ký tự động trước đó, bạn có thể cần tạo thêm user mới theo cách thủ công. Đây là cách thực hiện:

Quay lại trang Quản lý Jenkins , cuộn xuống gần cuối và nhấp vào Quản lý user . Ở bên trái, bạn sẽ thấy một thanh bên với các liên kết; nhấp vào Tạo user . Nhập thông tin cho user mới giống như cách bạn tạo user đầu tiên và nhấp vào Đăng ký . Bạn sẽ được chuyển hướng đến danh sách user , bây giờ sẽ bao gồm user mới. User này sẽ không có quyền, vì vậy bạn cần lặp lại quy trình cấp quyền, đi tới Định cấu hình bảo mật global , sử dụng trường User / group để thêm để thêm một hàng vào ma trận, chỉ định quyền và nhấp vào Áp dụnglưu . Vì đơn giản, nếu bạn có nhiều user để tạo, hãy tạo tất cả trước khi chuyển sang thêm quyền.

Khi tạo user mới, hãy nhớ rằng tính hạn chế có thể là một tài sản bảo mật chính. Bạn có thể tìm hiểu thêm về các chi tiết cụ thể của bảo mật dựa trên ma trận trong phần Bảo mật dựa trên ma trận của tài liệu Sử dụng Jenkins .

Thông thường, bước tiếp theo là gán role cho user của bạn, kiểm soát khả năng chính xác của họ. Ta sẽ không đi vào chi tiết trong bài viết này, nhưng đây là một bài viết hay về chủ đề này .Đảm bảo lưu các thay đổi sau khi bạn chỉ định role .

Bước 4 - Cài đặt plugin

Khi Jenkins được cài đặt, cấu hình tối thiểu và được bảo mật hợp lý, đã đến lúc làm cho nó phù hợp với nhu cầu của bạn. Như được tìm thấy khi nó được cài đặt lần đầu, Jenkins có tương đối ít khả năng. Trên thực tế, Jenkins tiêu biểu cho quan điểm của nhiều nhà phát triển phần mềm: làm một việc và làm tốt điều đó. Jenkins “làm một việc” bằng cách đóng role là người trung gian cho các dự án phần mềm của bạn và “làm tốt” bằng cách cung cấp các plugin.

Plugin là những tiện ích bổ sung cho phép Jenkins tương tác với nhiều phần mềm bên ngoài hoặc mở rộng khả năng bẩm sinh của nó. Như với nhiều lĩnh vực cài đặt Jenkins, các plugin chính xác mà bạn cài đặt sẽ phụ thuộc đáng kể vào các dự án của bạn.

Từ menu chính bên trái trong Jenkins, nhấp vào Quản lý Jenkins -> Quản lý Plugin. Trang bạn truy cập hiển thị các plugin đã được cài đặt nhưng cần cập nhật - bạn có thể thực hiện điều này dễ dàng bằng cách chọn các plugin bạn muốn cập nhật và nhấp vào nút ở dưới cùng.

Nếu bạn nhấp vào Có sẵn từ trang này, bạn sẽ được đưa đến một danh sách khổng lồ các plugin có sẵn. Rõ ràng, bạn không muốn cài đặt tất cả các plugin có thể có, vì vậy câu hỏi tiếp theo là làm thế nào để chọn những plugin bạn cần .

Như đã đề cập, sự lựa chọn của bạn trong vấn đề này sẽ phụ thuộc vào nhu cầu và mục tiêu của bạn. May mắn là Jenkins wiki cung cấp một danh sách tốt các plugin theo chủ đề.

Danh sách này chắc chắn đáng để đọc, nhưng cho dù dự án của bạn là gì, vẫn có một vài plugin mà bạn gần như chắc chắn nên đưa vào. Dưới đây là một số - một số chung chung, một số cụ thể:

  1. Kiểm soát nguồn
    Git, SVN và Team Foundation Server là một số hệ thống kiểm soát nguồn phổ biến hơn. Cả ba trong số này đều có các plugin trong danh sách Jenkins và những plugin khác cũng tồn tại cho các hệ thống ít phổ biến hơn. Nếu bạn không biết kiểm soát nguồn là gì, bạn thực sự nên tìm hiểu về nó và bắt đầu kết hợp nó trong các dự án của bạn . Đảm bảo cài đặt plugin cho hệ thống kiểm soát nguồn của bạn, để Jenkins có thể chạy các bản dựng thông qua nó và kiểm tra kiểm soát.

  2. Sao chép phần mềm
    Plugin này cho phép bạn sao chép các thành phần giữa các dự án, giảm bớt nỗi đau khi cài đặt các dự án tương tự nếu bạn thiếu người quản lý phụ thuộc thực sự.

  3. Công trình đồng thời của bướm ga
    Nếu bạn có nhiều bản dựng đang chạy có thể gây ra xung đột (do tài nguyên được chia sẻ, v.v.), điều này sẽ dễ dàng cho phép bạn giảm bớt mối lo ngại này.

  4. Trình xem biểu đồ phụ thuộc
    Một plugin tiện lợi cung cấp trình bày đồ họa về các phụ thuộc dự án của bạn.

  5. Sử dụng đĩa Jenkins
    Jenkins có thể khá nhẹ, nhưng không phải lúc nào cũng có thể nói như vậy đối với các dự án mà nó tích hợp. Plugin này cho phép bạn xác định lượng tài nguyên máy tính mà bất kỳ công việc nào của bạn đang sử dụng.

  6. Xây dựng công cụ
    Nếu dự án của bạn lớn, bạn có thể sử dụng trình quản lý bản dựng, chẳng hạn như Maven hoặc Ant. Jenkins cung cấp các plugin cho nhiều công cụ này, cả để liên kết trong chức năng cơ bản của chúng và để thêm quyền kiểm soát cho các bước xây dựng riêng lẻ, cấu hình chiếu và nhiều khía cạnh khác của các bản dựng của bạn.

  7. Báo cáo
    Trong khi Jenkins cung cấp các báo cáo của riêng mình, bạn có thể mở rộng chức năng này cho nhiều công cụ báo cáo.

  8. Xác thực bổ sung
    Nếu các khả năng bảo mật mặc định của Jenkins không phù hợp với bạn, có rất nhiều plugin để mở rộng điều này - từ thông tin đăng nhập Google, đến folder hoạt động, đến các sửa đổi đơn giản của bảo mật hiện có.

Nói chung, nếu dự án của bạn yêu cầu một công cụ nhất định, hãy tìm kiếm trang danh sách plugin trên wiki để biết tên của nó hoặc tìm từ khóa liên quan đến chức năng của nó - rất có thể một plugin như vậy tồn tại và đây là một cách hiệu quả để tìm nó.

Khi bạn đã chọn những plugin bạn muốn cài đặt trên tab Có sẵn , hãy nhấp vào nút được đánh dấu Download ngay và cài đặt sau khi khởi động lại .

Bây giờ Jenkins đã cài đặt và chạy theo cách bạn muốn, bạn có thể bắt đầu sử dụng nó để hỗ trợ tích hợp dự án của bạn . Khả năng của Jenkins gần như vô tận trong phạm vi của nó, nhưng ví dụ sau đây sẽ chứng minh cả mức độ những gì Jenkins có thể làm và sự khởi đầu của cách bắt đầu một công việc của Jenkins.

Bước 5 - Tạo một dự án đơn giản

Có rất nhiều cách sử dụng thú vị mà bạn có thể sử dụng từ Jenkins và thậm chí việc thử nghiệm các cài đặt cũng có thể mang lại nhiều thông tin. Tuy nhiên, để bắt đầu, bạn nên hiểu cách cài đặt một nhiệm vụ cơ bản. Hãy làm theo ví dụ trong phần này để tìm hiểu cách cài đặt và điều hành một công việc đơn giản.

Từ trang chủ giao diện Jenkins, chọn Mục mới . Nhập tên và chọn Dự án tự do .

Tạo một dự án mới trong Jenkins

Trang tiếp theo này là nơi bạn chỉ cấu hình công việc. Khi bạn nhanh chóng quan sát, có một số cài đặt có sẵn khi bạn tạo một dự án mới. Nói chung, một trong những điều khiển quan trọng hơn là kết nối với repo nguồn. Đối với mục đích của ví dụ giới thiệu này, ta sẽ bỏ qua bước đó.

Trên trang cấu hình này, bạn cũng có tùy chọn thêm các bước xây dựng để thực hiện các hành động bổ sung như chạy tập lệnh.

Thêm một bước xây dựng vào một dự án trong Jenkins

Điều này sẽ cung cấp cho bạn một hộp văn bản trong đó bạn có thể thêm bất kỳ lệnh nào bạn cần. Sử dụng điều này để chạy các việc khác nhau như bảo trì server , kiểm soát version , đọc cài đặt hệ thống, v.v.

Ta sẽ sử dụng phần này để chạy một tập lệnh. , với mục đích demo , ta sẽ giữ nó cực kỳ đơn giản.

Thêm lệnh shell cơ bản vào một dự án trong Jenkins

Nếu muốn, bạn cũng có thể thêm các bước xây dựng tiếp theo. Lưu ý nếu bất kỳ phân đoạn hoặc tập lệnh riêng lẻ nào không thành công, thì toàn bộ quá trình xây dựng sẽ thất bại.

Bạn cũng có thể chọn các hành động sau xây dựng để chạy, chẳng hạn như gửi kết quả qua email cho chính bạn.

Lưu dự án và bạn sẽ được đưa đến trang tổng quan về dự án. Tại đây, bạn có thể xem thông tin về dự án, bao gồm cả lịch sử đã xây dựng của nó, mặc dù hiện tại sẽ không có bất kỳ thông tin nào vì đây là một dự án hoàn toàn mới.

Trang tổng quan về dự án Jenkins

Nhấp vào Xây dựng ngay ở phía bên trái để bắt đầu xây dựng. Bạn sẽ thấy ngay lịch sử xây dựng thay đổi để cho biết nó đang hoạt động. Khi hoàn tất, biểu tượng trạng thái sẽ thay đổi để hiển thị cho bạn kết quả ở dạng ngắn gọn.

Để xem thêm thông tin, hãy nhấp vào bản dựng đó trong khu vực lịch sử bản dựng, sau đó bạn sẽ được đưa đến trang có tổng quan về thông tin bản dựng:

Trang kết quả xây dựng Jenkins

Liên kết Đầu ra của Control panel trên trang này đặc biệt hữu ích để kiểm tra chi tiết kết quả của công việc - nó cung cấp thông tin về các hành động được thực hiện trong quá trình xây dựng và hiển thị tất cả kết quả của console . Đặc biệt là sau khi xây dựng thất bại, đây có thể là một nơi hữu ích để xem xét.

Nếu bạn quay trở lại trang chủ của Jenkins, bạn sẽ thấy tổng quan về tất cả các dự án và thông tin của chúng, bao gồm cả trạng thái (trong trường hợp này chỉ có một):

Tổng quan về tất cả các dự án và trạng thái của chúng trong Jenkins

Trạng thái được biểu thị theo hai cách, bằng biểu tượng thời tiết (trên console trang chủ, nhìn thấy ở trên) và bằng một quả bóng màu (trên trang dự án cá nhân, nhìn thấy bên dưới). Biểu tượng thời tiết đặc biệt hữu ích vì nó hiển thị cho bạn bản ghi của nhiều bản dựng trong một hình ảnh.

Trong hình trên, bạn thấy các cloud , cho biết một số bản dựng gần đây đã thành công và một số bản không thành công. Nếu tất cả chúng đều thành công, bạn sẽ thấy hình ảnh của một mặt trời. Nếu gần đây tất cả các bản dựng đều không thành công, sẽ có một biểu tượng thời tiết xấu.

Các trạng thái này có chú giải công cụ tương ứng với giải thích khi di chuột và cùng với thông tin khác trong biểu đồ, bao gồm hầu hết những gì bạn cần trong tổng quan.

Bạn cũng có thể xây dựng lại dự án từ đây bằng cách nhấp vào ( Xây dựng ngay ).

Trang dự án Jenkins với các trạng thái xây dựng dự án

Tất nhiên, việc triển khai cài đặt dự án quy mô đầy đủ cần thêm một vài bước và một số tinh chỉnh, nhưng rõ ràng là không cần nỗ lực nhiều, bạn có thể cài đặt một số giám sát và điều khiển rất hữu ích, rất thực dụng cho các dự án của bạn . Khám phá Jenkins, và bạn sẽ nhanh chóng thấy nó là một công cụ vô giá.

Kết luận

Thật đáng giá khi tìm kiếm các hướng dẫn, bài báo và video khác - có rất nhiều trên mạng và lượng thông tin phong phú giúp cho việc cài đặt tích hợp dự án với Jenkins thực tế trở nên dễ dàng. Các hướng dẫn do group Jenkins tổ chức rất đáng xem.

Đặc biệt, thu hẹp khoảng cách giữa kiến thức cơ bản và các dự án hoàn chỉnh là một cách tốt để cải thiện kỹ năng Jenkins của bạn. Hãy thử làm theo các ví dụ này như một cách để giảm bớt quá trình chuyển đổi đó.

Ngoài ra, nhiều mẫu tồn tại cho các loại dự án phổ biến, chẳng hạn như ứng dụng PHPDrupal , vì vậy rất có thể bạn sẽ không cần cài đặt mọi thứ từ đầu. Vì vậy, hãy ra ngoài đó, tìm hiểu tất cả những gì bạn dám về Jenkins, và làm cho cuộc sống của bạn dễ dàng hơn nhiều!


Tags:

Các tin liên quan

Cách thiết lập hệ thống bàn trợ giúp với OTRS trên CentOS 7
2016-03-02
Cách cài đặt ứng dụng khách Dropbox làm dịch vụ trên CentOS 7
2016-02-25
Cách thiết lập một cụm sản xuất Elasticsearch trên CentOS 7
2016-02-23
Cách bảo vệ SSH bằng Fail2Ban trên CentOS 7
2016-01-27
Cách bảo mật HAProxy bằng Let's Encrypt trên CentOS 7
2016-01-26
Cách tạo thiết lập tính khả dụng cao với Pacemaker, Corosync và IP nổi trên CentOS 7
2015-12-22
Cách sử dụng Prometheus để giám sát server CentOS 7 của bạn
2015-11-06
Cách cài đặt Elasticsearch 1.7, Logstash 1.5 và Kibana 4.1 (ELK Stack) trên CentOS 7
2015-11-04
Cách cài đặt và cấu hình scponly trên CentOS 7
2015-07-22
Cách viết quy tắc kiểm tra hệ thống tùy chỉnh trên CentOS 7
2015-07-16