Maven repozitoriyasının proksisi öz settings.xml faylında olmalıdır. Jenkins build-i artıq Maven konteynerində işləyirsə, həmin faylı orada işləyən Maven prosesinə verin.

Nəzərdə tutulan tam settings.xml faylını maven-proxy-settings adlı Jenkins Secret file credential kimi saxlayın. Mövcud konteyner mərhələsinin addımları daxilində:

withCredentials([
    file(credentialsId: 'maven-proxy-settings', variable: 'MAVEN_SETTINGS')
]) {
    sh 'mvn -s "$MAVEN_SETTINGS" -B verify'
}

Bağlama müvəqqəti fayl yolu verir. Tək dırnaqlı Groovy sətri dəyişən genişlənməsini shell-ə buraxır, shell-in ikiqat dırnaqları isə yolu bir arqument kimi saxlayır. Maven-in -s seçimi həmin faylı istifadəçi ayarları kimi seçir; -B toplu rejimi seçir.

Credential faylı proxies bölməsində build-in proksi hostunu, portunu, autentifikasiyasını və nonProxyHosts-u, həmçinin digər tələb olunan istifadəçi ayarlarını ehtiva edə bilər. Maven-də proksi keçmə siyahısı şaquli xətlərdən istifadə edir host şablonları arasında.

Fayl Maven işlədiyi yerdə mövcud olmalıdır

Docker Pipeline ilə agent və konteyner uyğun bağlanmış fayl sistemi tələb edir ki, bağlanan yol icra konteynerinin içində oxunaqlı olsun. Əl ilə işə salınan docker run açıq fayl mount-u tələb edir, tercihen yalnız-oxunaq, və Maven konteyner tərəfindəki yolu almalıdır. Host yolunu yalnız mühit dəyişəni kimi ötürmək faylı əlçatan etmir.

İş qovluğunun hər hansı dəyişməsini credential bağlama blokunun içində saxlayın ki, məxfi fayl baxıla bilən alt qovluq iş sahəsinə düşməsin. Faylı build log-una çap etməyin və daimi image-ə kopyalamayın.

Bu istifadəçi ayarlarını seçir. Maven-in qlobal ayarları da iştirak edə bilər, ona görə irsi mirror və ya digər konfiqurasiya həlli təsirləndirməyə davam edirsə, ikisini də nəzərdən keçirin.

Əlaqəli məqalələr