Maven кампасынын проксийи анын settings.xml файлында болушу керек. Jenkins build'и мурунтан Maven контейнеринде иштеп жатса, ошол файлды ошол жерде иштеп жаткан Maven процессине бериңиз.

Толук settings.xml файлын maven-proxy-settings аты менен Jenkins Secret file каттоо маалыматы катары сактаңыз. Учурдагы контейнер баскычынын кадамдарынын ичинде:

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

Байлоо убактылуу файл жолун берет. Бир тырмакчадагы Groovy сабы өзгөрмөлөрдүн кеңейишин shell'ге калтырат, ал эми shell'дин кош тырмакчалары жолду бир аргумент катары сактайт. Maven'дин -s опциясы ошол файлды колдонуучу жөндөөлөрү катары тандайт; -B топтом режимин тандайт.

Каттоо файлы proxies бөлүмүндө build'дин прокси хосту, порту, аутентификациясы жана nonProxyHosts менен бирге башка керектүү колдонуучу жөндөөлөрүн камтышы мүмкүн. Maven'де проксини айланып өтүү тизмеси вертикалдык сызыктарды хост үлгүлөрүнүн ортосунда колдонот.

Файл Maven иштеген жерде болушу керек

Docker Pipeline менен агент жана контейнер шайкеш орнотулган файлдык системага муктаж, ошондо байланган жол аткаруу контейнеринин ичинде окулат. Кол менен иштетилген docker run ачык файл орнотуусун талап кылат, жакшыраак окууга гана, жана Maven контейнер тараптагы жолду алышы керек. Хост жолун гана чөйрө өзгөрмөсү катары берүү файлды жеткиликтүү кылбайт.

Жумуш каталогунун ар кандай өзгөрүүсүн каттоону байлоо блогусунун ичинде кармаңыз, ошондо жашыруун файл каралуучу субкаталог жумуш мейкиндигине түшпөйт. Файлды build журналына басып чыгарбаңыз жана аны туруктуу image'ге көчүрбөңүз.

Бул колдонуучу жөндөөлөрүн тандайт. Maven'дин глобалдык жөндөөлөрү да катыша алат, ошондуктан мурасталган күзгү же башка конфигурация чечимге таасир этсе, экөөнү тең карап чыгыңыз.

Тектеш макалалар