Proxy úložiště Maven patří do jeho settings.xml. Když build Jenkins již běží uvnitř kontejneru Maven, poskytněte tento soubor procesu Maven, který tam běží.

Uložte úplný zamýšlený settings.xml jako přihlašovací údaj Jenkins Secret file s názvem maven-proxy-settings. Uvnitř kroků stávající fáze kontejneru:

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

Navázání poskytuje dočasnou cestu k souboru. Řetězec Groovy v jednoduchých uvozovkách ponechává expanzi proměnných na shellu a dvojité uvozovky shellu zachovávají cestu jako jeden argument. Volba -s nástroje Maven vybírá tento soubor jako uživatelská nastavení; -B volí dávkový režim.

Soubor údajů může v sekci proxies obsahovat proxy hostitele, port, ověřování a nonProxyHosts buildu spolu s dalšími požadovanými uživatelskými nastaveními. Seznam obcházení proxy v Mavenu používá svislé čáry mezi vzory hostitelů.

Soubor musí existovat tam, kde Maven běží

U Docker Pipeline potřebují agent i kontejner kompatibilní připojený souborový systém, aby byla navázaná cesta čitelná uvnitř spouštěného kontejneru. Ručně spuštěný docker run vyžaduje explicitní připojení souboru, nejlépe jen pro čtení, a Maven musí obdržet cestu na straně kontejneru. Předání cesty hostitele pouze jako proměnné prostředí soubor nezpřístupní.

Každou změnu pracovního adresáře držte uvnitř bloku navázání údajů, aby se tajný soubor nedostal do procházetelného podadresáře pracovního prostoru. Nevypisujte soubor do protokolu buildu ani jej nekopírujte do trvalého obrazu.

Toto vybírá uživatelská nastavení. Účastnit se mohou i globální nastavení Maven, proto zkontrolujte obojí, pokud zděděné zrcadlo nebo jiná konfigurace stále ovlivňuje rozlišení.

Související články