2013-02-14 30 views
7

Tôi có nhiều Jenkins Việc xây dựng sử dụng Maven:Tôi có thể kích hoạt công việc Jenkins bằng cách sử dụng phụ thuộc Maven không?

Job 1: Builds WebApp and deploys war to artifactory 
Job 2: Builds Core and deploys jar to artifactory 

WebApp có một sự phụ thuộc vào lõi.

Có thể cho Jenkins phân tích cú pháp POM, xem WebApp có sự phụ thuộc này vào Core và do đó kích hoạt Job 2 trước khi xây dựng WebApp không? Điều này sẽ đảm bảo WebApp sử dụng một cập nhật mới nhất, Core.jar

Tôi có thể đạt được cơ chế này thông qua tính năng Pre-Steps của Trình kích hoạt Parameterized Trigger Plugin nhưng tôi lý tưởng muốn xử lý điều này từ POM.

Cảm ơn.

Trả lời

5

Có.

  1. bạn cần phải thiết lập các công việc như Maven Job

enter image description here

  1. Trong Job Một chọn hộp kiểm: Xây dựng bất cứ khi nào một sự phụ thuộc bản chụp là xây dựng .

enter image description here

Rõ ràng đây chỉ hoạt động, nếu phụ thuộc là một sự phụ thuộc bản chụp.

+1

Điều này không chỉ kích hoạt công việc của nó dựa trên thời điểm một phụ thuộc khác được xây dựng? Vì vậy, sử dụng ví dụ của tôi, Job 1 sẽ được kích hoạt khi Job 2 được xây dựng. Đây không phải là điều tôi muốn. Tôi muốn công việc 1 kích hoạt công việc 2 khi công việc 1 được bắt đầu bởi vì nó nhận thức được nó phụ thuộc vào một dự án được xây dựng trong công việc 2. –

+0

Đúng vậy. Nhưng vấn đề với việc làm theo cách khác là gì? Có Job1 được kích hoạt bất cứ khi nào Job2 thấy bất kỳ thay đổi nào theo ý tôi, đó là cách để đi. –

3

Một tùy chọn khác là sử dụng plugin Maven Dependency Update trigger. Điều này là nếu bạn sử dụng một công việc tự do thay vì một loại công việc Maven.

+0

Điều này cũng kích hoạt công việc khi phụ thuộc không chụp được đã được xây dựng? –

+0

Bạn đã đọc trang plugin chưa? "Plugin này sẽ kiểm tra xem có bất kỳ phụ thuộc SNAPSHOT nào (hoặc tùy chọn bổ sung SNAPSHOT) đã được cập nhật trong quá trình phân giải phụ thuộc của dự án của bạn và kích hoạt xây dựng hay không." –

+0

Có, tôi đã đọc nó, nhưng tôi đã tò mò nếu nó có khả năng làm nhiều hơn thế này. Chúng tôi hiện đang không sử dụng ảnh chụp nhanh, nhưng các plugin này dường như không hỗ trợ điều này. –

Các vấn đề liên quan