Jenkins konteineri: Maven starpniekservera iestatījumu nodošana ar slepenu failu
Piesaistiet Jenkins slepeno failu un nododiet tā redzamo ceļu konteinerā uz mvn -s builda starpniekservera konfigurācijai.
Maven krātuves starpniekserveris pieder pie tā settings.xml. Kad Jenkins build jau darbojas Maven konteinerā, nododiet šo failu tur darbojošajam Maven procesam.
Saglabājiet visu paredzēto settings.xml kā Jenkins Secret file akreditācijas datus ar nosaukumu maven-proxy-settings. Esošā konteinera posma soļos:
withCredentials([
file(credentialsId: 'maven-proxy-settings', variable: 'MAVEN_SETTINGS')
]) {
sh 'mvn -s "$MAVEN_SETTINGS" -B verify'
}
Piesaiste nodrošina pagaidu faila ceļu. Groovy virkne vienpēdiņās atstāj mainīgo paplašināšanu shell, un shell dubultās pēdiņas saglabā ceļu kā vienu argumentu. Maven opcija -s izvēlas šo failu kā lietotāja iestatījumus; -B izvēlas pakešu režīmu.
Akreditācijas faila sadaļā proxies var būt builda starpniekservera resursdators, ports, autentifikācija un nonProxyHosts kopā ar citiem nepieciešamajiem lietotāja iestatījumiem. Starpniekservera apiešanas saraksts Maven izmanto vertikālas joslas starp resursdatoru modeļiem.
Failam jāpastāv tur, kur darbojas Maven
Ar Docker Pipeline aģentam un konteineram nepieciešama saderīga pievienota failu sistēma, lai piesaistītais ceļš būtu lasāms izpildes konteinerā. Manuāli palaistam docker run nepieciešams skaidri pievienots fails, vēlams tikai lasāms, un Maven jāsaņem konteinera puses ceļš. Resursdatora ceļa nodošana tikai kā vides mainīgā failu nepadara pieejamu.
Turiet jebkuru darba direktorijas maiņu akreditācijas piesaistes blokā, lai slepenais fails nenokļūtu pārlūkojamā apakšdirektorija darbvietā. Neizdrukājiet failu builda žurnālā un nekopējiet to pastāvīgā image.
Šis izvēlas lietotāja iestatījumus. Arī Maven globālie iestatījumi var piedalīties, tāpēc pārskatiet abus, ja mantots spogulis vai cita konfigurācija joprojām ietekmē atrisinājumu.