Tôi có dự án Gradle bao gồm một dự án chính và 2 dự án khác bao gồm sử dụng chỉ thị includeFlat
. Mỗi dự án trong số 3 dự án này đều có repo riêng trên GitHub. Để xây dựng nó, tôi kiểm tra tất cả 3 dự án thành một thư mục chung phổ biến sau đó cd
vào dự án chính và chạy gradle build
. Và nó hoạt động tuyệt vời!Xây dựng nhiều dự án Gradle trong Jenkins với AWS CodePipeline
Bây giờ tôi cần triển khai ứng dụng kết quả đến AWS EB (Elastic Beanstalk) cũng hoạt động tốt khi tôi tạo các tạo tác cục bộ và sau đó triển khai thủ công. Tôi muốn tự động hóa quá trình vì vậy tôi đang cố gắng để thiết lập nó bằng cách sử dụng CodePipelines + Jenkins như mô tả trong this document điều chỉnh cho Gradle.
Vấn đề là nếu tôi chỉ định 3 nguồn trong đường ống, tôi kết thúc với các dự án của tôi được trích xuất trên đầu trang của nhau tạo ra một mớ hỗn độn trong không gian làm việc Jenkins. Tôi cần phải bằng cách nào đó cấu hình từng dự án để được xuất ra thư mục riêng của mình trong vùng làm việc Jenkins và tôi không thấy cách nào để làm điều đó (ít nhất là trong giao diện người dùng). Tôi cần bằng cách nào đó để cd
vào thư mục chính để chạy gradle build
và một lần nữa tôi không chắc chắn cách thực hiện điều đó
PS Những gợi ý tuyệt vời từ @Phil nhưng không may là dường như CodePipeline does not currently support Các mô-đun con hoặc phụ đề Git
Bạn không thể sử dụng thứ gì đó như git submodules? https://git-scm.com/docs/gitsubmodules – Phil
Ý tưởng thú vị mặc dù tôi rất thích có cấu trúc dự án phẳng – Bostone
Nhưng bạn chưa có bản repos riêng cho từng dự án? Bạn có thể tạo một dự án cha khác bao gồm tất cả chúng vào các thư mục riêng của chúng như các mô-đun phụ và sử dụng nó cho xây dựng của bạn – Phil