Xây dựng hệ thống Continous Integration với Jenkins (phần 3)

Tiếp tục series bài viết về việc xây dựng CI bằng Jenkins thì trong bài này mình sẽ nói về cách Jenkins thực hiện build ứng dụng bất cứ khi nào bạn tiến hành commit đến repo Git ở máy local

Đầu tiên là bạn phải cấu hình Poll SCM trong phần Configure ở Build Triggers

Untitled.png

Ở đây thì có cái ô để gõ Schedule mục đích là để bạn nhập khoảng thời gian hệ thống tự thực thi sau bao lâu. Cái cách này thì nghe vẻ không hay ho lắm vì đáng ra là mỗi khi bạn commit thì nó build chứ không ai lại thực thi như vậy. Chính vì vậy cách tốt nhất là báo cho thằng Jenkins rằng có đứa vừa commit vào thư mục Git và bảo mày build đi =)) Để là được cái này chúng ta sẽ sử dụng cái móc của Git (Git hooks) nghe như móc lốp, móc của ấy :3   (link cho bạn nào thích tìm hiểu)

Các bạn đi vào trong cái thư mục .git ở cái folder chứa project nhé

Untitled

Nếu không thấy thì nhớ chọn cái Show hidden files trong thằng Windows. Trong thư mục này sẽ có 1 cái folder hooks

Untitled.png

Để thằng Jenkins có thể biết được khi nào có ẻm nào được commit vào git thì chúng ta sẽ viết 1 cái scripts để nó thực thi sự kiện notify cho thằng Jenkins. Các bạn copy đoạn scripts của mình và đặt tên là post-commit (sự kiện sau khi commit), không có phần extension của file nhé

Untitled

#!/bin/sh
curl http://localhost:8080/jenkins/git/notifyCommit?url=file://C:/Users/HOANG/Desktop/Git/WcfDynamicProxy

Trong đoạn script thì mình truyền cái đường dẫn thư mục project của mình sau cái url cùng với xem lại đường dẫn cái trang Jenkins đã đúng chưa là được :3. Đặc biệt đoạn bin/sh là không được sửa gì nhé vì đấy là cấu trúc rồi :))

Khi chạy nếu mà các bạn gặp lỗi

No Git consumers using SCM API plugin for: file://C:/Users/HOANG/Desktop/Git/WcfDynamicProxy

Nghĩa là các bạn chưa check vào cái Polling SCM mà mình nói ở trên nhé.

Bây giờ các bạn thử commit xem đã được chưa nhé. Các bạn có thể vào phần Polling Log để xem như mình :3

Untitled.png

Tiếp theo bài sau mình sẽ viết tiếp cách để Jenkins thực hiện chạy test nữa là xong :3 Các bạn nhớ đón đọc nhé

Advertisements

2 thoughts on “Xây dựng hệ thống Continous Integration với Jenkins (phần 3)

  1. Pingback: Xây dựng hệ thống CI với Powershell | Code, code and more code

  2. Pingback: Những thứ hay ho làm cuộc sống của bạn rảnh hơn | Code, code and more code

Leave a Reply

Fill in your details below or click an icon to log in:

WordPress.com Logo

You are commenting using your WordPress.com account. Log Out / Change )

Twitter picture

You are commenting using your Twitter account. Log Out / Change )

Facebook photo

You are commenting using your Facebook account. Log Out / Change )

Google+ photo

You are commenting using your Google+ account. Log Out / Change )

Connecting to %s