System Engineering/CI, CD

CI/CD #16. Jenkins Maven 로컬 패키지 Repository 설정하기

ZunoXI 2021. 7. 22.

 

개요

Jenkins Maven 로컬 패키지 Repository 설정

Jenkins Maven Repo

Jenkins Pipeline을 구성하고 Maven빌드가 포함될 시 아파치 Maven서버에 접근하여 패키지를 가져오지만, 보안이나 사내 내부 패키지를 사용하여야하는경우 Nexus같은 Private Repo혹은 local repository 접근할 있도록 설정해야한다. 

 

 

 

1. Jenkins Maven Plugin 폴더 접근

 

로컬에 별도 컨테이너없이 스탠드얼론으로 Jenkins가 설치된 경우, CentOS와 같은 redhat계열의 경우 보통 /var/lib/jenkins에 jenkins App 폴더가 위치한다. 해당 위치에 접근 후 Maven 플러그인으로 설정된 폴더로 이동한다. 본인이 설치한 Maven 플러그인에 따라 최종 경로가 달라질 수 있으므로 유의하여 이동한다.

 

$ cd /var/lib/jenkins/tools/hudson.tasks.Maven_MavenInstallation/Maven_3.6.0

 

 

2. Setting.xml 파일 수정

 

setting.xml의 파일을 수정한다. (혹시 모르니 백업은 필수다)

$ vi conf/setting.xml

 

파일내 아래 빨간색 글씨로 표현된 곳이 Maven local repo를 설정하는 부분이다. 당연히 해당경로에는 로컬 Maven repo들이 위치해있어야 한다. 

 

<settings xmlns="http://maven.apache.org/SETTINGS/1.0.0"
          xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
          xsi:schemaLocation="http://maven.apache.org/SETTINGS/1.0.0 http://maven.apache.org/xsd/settings-1.0.0.xsd">
  <!-- localRepository
   | The path to the local repository maven will use to store artifacts.
   |
   | Default: ${user.home}/.m2/repository
  <localRepository>/path/to/local/repo</localRepository>
  -->

  <localRepository>/u01/maven/repository</localRepository>

  <!-- interactiveMode
   | This will determine whether maven prompts you when it needs input. If set to false,
   | maven will use a sensible default value, perhaps based on some other setting, for
   | the parameter in question.
   |
   | Default: true
  <interactiveMode>true</interactiveMode>
  -->

 

 

 

이후 젠킨스를 재기동한 후 로컬에 있는 Maven을 사용하는 Item이 정상적으로 빌드되는지 확인하면 끝.

 

반응형

댓글