2011-12-15 28 views
7

Tôi cần thay đổi nơi lưu trữ các bản tải xuống. Tôi không thể sử dụng nhà người dùng vì xây dựng của tôi được chạy trên một dịch vụ đám mây không bảo vệ được điều này.Thay đổi vị trí bộ nhớ đệm cục bộ của gradle cho tạo đám mây Jenkins

Điều này làm cho số lượt tải xuống của tôi được tải xuống nhiều lần và đang nhai nhiều thời gian đám mây.

Tôi đang sử dụng gradle 1.0 mốc 5 và xây dựng hồ sơ của tôi có cài đặt Repos sau:

repositories { 
    mavenLocal() 
    mavenRepo urls: ['http://repo1.maven.org/maven2/', 'http://test-utils.googlecode.com/svn/maven-repo/snapshots'] 
    flatDir(name: 'fileRepo', dirs: "$projectDir/libs") 
} 

(Tôi đã thay đổi thử nghiệm utils để ẩn một số lib kiểm tra tôi đang rối tung với).

Tôi đã thêm này thực hiện bước sh trước gradle xây dựng:

env GRADLE_USER_HOME="${WORKSPACE}" 
export GRADLE_USER_HOME="${WORKSPACE}" 

Nhưng DEPS phải được tải xuống ở nơi khác vẫn vì build Jenkins của tôi không gian làm việc không có bất kỳ DEPS tải về trong nó, nhưng nó có một số các tệp gradle gradle trong đó.

Bất kỳ ý tưởng nào về cách tôi có thể đảm bảo các tệp tải xuống được tải xuống trong $ WORKSPACE để tôi có thể tránh các tải xuống này mọi lúc?

+0

Chắc chắn chúng không nằm trong thư mục '$ {WORKSPACE} /. Gradle'? –

+0

Có những thứ ưu việt trong đó nhưng không có bộ nhớ cache. – Steven

+0

Không thực sự liên quan đến vấn đề của bạn, nhưng dòng 'env' đó không làm những gì bạn muốn nó làm và thừa. – clacke

Trả lời

14

Xác định GRADLE_USER_HOME nên thực hiện thủ thuật.

Đặt GRADLE_USER_HOME thành ${WORKSPACE} sẽ đặt nhiều thư mục khác nhau theo ${WORKSPACE}. Tôi muốn tạo ${WORKSPACE}/gradle-home và đặt GRADLE_USER_HOME thành điều đó.

Kiểm tra xem những gì ${WORKSPACE} giải quyết.

Bạn cũng có thể thử đặt thư mục nhà người dùng gradle bằng cách sử dụng tùy chọn dòng lệnh -g.

+0

Giải quyết bằng cách thiết lập plugin var môi trường trong jenkins. Câu trả lời của bạn là chính xác bên ngoài đó. – Steven

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