Vsebniki Jenkins: posredovanje nastavitev proxy Mavena s tajno datoteko
Povežite tajno datoteko Jenkins in posredujte njeno vidno pot v vsebniku v mvn -s za konfiguracijo proxy gradnje.
Proxy skladišča Maven spada v njegov settings.xml. Ko se gradnja Jenkins že izvaja v vsebniku Maven, zagotovite to datoteko procesu Maven, ki tam teče.
Shranite celoten predvideni settings.xml kot poverilnico Jenkins Secret file z imenom maven-proxy-settings. Znotraj korakov obstoječe stopnje vsebnika:
withCredentials([
file(credentialsId: 'maven-proxy-settings', variable: 'MAVEN_SETTINGS')
]) {
sh 'mvn -s "$MAVEN_SETTINGS" -B verify'
}
Povezava zagotovi začasno pot do datoteke. Niz Groovy v enojnih narekovajih prepusti razširitev spremenljivk lupini, dvojni narekovaji lupine pa ohranijo pot kot en argument. Možnost -s Mavena izbere to datoteko kot uporabniške nastavitve; -B izbere paketni način.
Datoteka poverilnic lahko v razdelku proxies vsebuje gostitelja, vrata, preverjanje pristnosti in nonProxyHosts proxyja gradnje skupaj z drugimi potrebnimi uporabniškimi nastavitvami. Seznam zaobida proxyja v Mavenu uporablja navpične črte med vzorci gostiteljev.
Datoteka mora obstajati tam, kjer teče Maven
Pri Docker Pipeline potrebujeta agent in vsebnik združljiv priklopljen datotečni sistem, da je povezana pot berljiva v izvajalnem vsebniku. Ročno zagnan docker run zahteva izrecno priklopitev datoteke, po možnosti samo za branje, in Maven mora prejeti pot na strani vsebnika. Posredovanje poti gostitelja samo kot okoljske spremenljivke datoteke ne naredi dostopne.
Vsako spremembo delovnega imenika hranite znotraj bloka povezave poverilnic, da tajna datoteka ne pride v pregledno podimeniško delovno okolje. Datoteke ne tiskajte v dnevnik gradnje in je ne kopirajte v trajno sliko.
To izbere uporabniške nastavitve. Tudi globalne nastavitve Mavena lahko sodelujejo, zato preglejte oboje, če podedovano zrcalo ali druga konfiguracija še vedno vpliva na razreševanje.