2011-12-15 12 views
7

Muszę zmienić miejsce zapisu pobrań repo. Nie mogę korzystać z domu użytkownika, ponieważ moja kompilacja jest uruchamiana w usłudze chmurowej, która nie zachowuje tego.Zmiana lokalnej lokalizacji buforowania repo gradiny dla chmurki Jenkins

Powoduje to, że moje depy są pobierane w kółko i przeżuwają dużo czasu w chmurze.

Używam Gradle 1.0 milowy krok 5 i mój plik build ma następującą konfigurację repos:

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

(Zmieniłem test-utils do ukrycia jakiś testowy lib jestem niepożądanym).

Dodałem to wykonać krok sh przed Gradle build:

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

Ale deps należy pobrać gdzie indziej nadal bo roboczy mojego Jenkins budować nie ma żadnych pobranych deps w nim, ale ma pewne pliki tymczasowe.

Jakieś pomysły, w jaki sposób mogę się upewnić, że pobrane depki są umieszczane w $ WORKSPACE, dzięki czemu mogę uniknąć tych pobrań przez cały czas?

+0

Na pewno nie ma ich w folderze '$ {WORKSPACE} /. Gradle'? –

+0

Są tam różne rzeczy, ale nie było pamięci podręcznej. – Steven

+0

Naprawdę niezwiązany z twoim problemem, ale linia 'env' nie robi tego, co chcesz i jest zbędna. – clacke

Odpowiedz

14

Definiowanie GRADLE_USER_HOME powinno załatwić sprawę.

Ustawienie GRADLE_USER_HOME na ${WORKSPACE} spowoduje umieszczenie różnych katalogów pod numerem ${WORKSPACE}. Stworzyłem ${WORKSPACE}/gradle-home i ustawiłem na to GRADLE_USER_HOME.

Sprawdź, do czego służy ${WORKSPACE}.

Możesz również spróbować ustawić katalog domowy użytkownika gradle za pomocą opcji wiersza poleceń -g.

+0

Rozwiązane przez skonfigurowanie pluginów środowiska var w jenkins. Twoja odpowiedź jest poprawna poza tym. – Steven

Powiązane problemy