Il-proxy tar-repożitorju ta' Maven jappartjeni għas-settings.xml tiegħu. Meta build ta' Jenkins diġà qed jaħdem ġewwa kontenitur ta' Maven, ipprovdi dak il-fajl lill-proċess ta' Maven li qed jaħdem hemmhekk.

Ħlief is-settings.xml sħiħ maħsub bħala kredenzjali Jenkins Secret file bl-isem maven-proxy-settings. Fil-passi tal-istadju tal-kontenitur eżistenti:

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

L-irbit jipprovdi passa temporanju tal-fajl. Il-string Groovy b'virgoletti singoli jħalli l-espansjoni tal-varjabbli lix-shell, u l-virgoletti doppji tas-shell iżommu l-passa bħala argument wieħed. L-għażla -s ta' Maven tagħżel dak il-fajl bħala settings tal-utent; -B tagħżel il-modalità batch.

Il-fajl tal-kredenzjali jista' jkun fih il-host, il-port, l-awtentikazzjoni u n-nonProxyHosts tal-proxy tal-build fit-taqsima proxies, flimkien ma' kwalunkwe settings oħra tal-utent meħtieġa. Lista ta' qbiż tal-proxy f'Maven tuża bars vertikali bejn mudelli tal-host.

Il-fajl irid jeżisti fejn jaħdem Maven

Ma' Docker Pipeline, l-aġent u l-kontenitur jeħtieġu sistema tal-fajls immuntata kompatibbli biex il-passa marbuta tkun tinqara ġewwa l-kontenitur tal-eżekuzzjoni. docker run imniedi manwalment jeħtieġ mount espliċitu tal-fajl, preferibbilment qari biss, u Maven irid jirċievi l-passa fuq in-naħa tal-kontenitur. Li tgħaddi passa tal-host biss bħala varjabbli tal-ambjent ma tagħmilx il-fajl disponibbli.

Żomm kwalunkwe bidla tad-direttorju tax-xogħol ġewwa l-blokk tal-irbit tal-kredenzjali biex il-fajl sigriet ma jitqegħdax taħt workspace ta' sottodirettorju li jista' jiġi ffiltrat. Tipprintjax il-fajl fil-log tal-build u tikkupjahx f'image permanenti.

Dan jagħżel is-settings tal-utent. Is-settings globali ta' Maven xorta jistgħu jipparteċipaw, għalhekk iċċekkja t-tnejn jekk mera ereditarja jew konfigurazzjoni oħra tibqa' taffettwa r-riżoluzzjoni.

Artikli relatati