728x90
2025.09.24 - [개발] - 젠킨스 pipeline script, settings.xml, pom.xml 샘플
젠킨스 pipeline script, settings.xml, pom.xml 샘플
젠킨스 pipeline script 샘플pipeline { agent any tools { jdk 'jdk-8' // Jenkins에서 설정한 JDK 이름 maven 'maven 3.9.11' // Jenkins에서 설정한 Maven 이름 } stages { stage('Git Checkout') { steps { git branch: 'master', credentialsId: 'git
piterjk.tistory.com
pipeline {
agent any
tools {
jdk 'jdk-8' // Jenkins에서 설정한 JDK 이름
maven 'maven 3.9.11' // Jenkins에서 설정한 Maven 이름
}
stages {
stage('SVN Checkout') { // 👈 스테이지 이름을 SVN에 맞게 변경
steps {
// 기존 'git' 스텝을 'checkout' 스텝으로 대체하고 SVN 설정을 사용
checkout([
$class: 'SubversionSCM',
locations: [[
// ⚠️ 이 부분을 사용하시는 SVN 정보로 반드시 변경해야 합니다.
credentialsId: 'svn-deploy-credentials-id', // 👈 Jenkins에 등록된 SVN 자격 증명 ID
depthOption: 'infinity',
ignoreExternalsOption: true,
local: '.', // 워크스페이스 루트에 체크아웃
remote: 'http://your-svn-server/svn/project' // 👈 SVN 저장소 URL
]],
quietOperation: true,
workspaceUpdater: [$class: 'CheckoutUpdater']
])
}
}
stage('Build') {
steps {
sh script:'mvn clean package --settings /var/jenkins_home/.m2/settings.xml'
}
}
stage('Nexus Upload') {
steps {
sh 'mvn deploy --settings /var/jenkins_home/.m2/settings.xml'
}
}
stage('Deploy to Tomcat') {
steps {
sh 'mvn tomcat7:redeploy -X --settings /var/jenkins_home/.m2/settings.xml'
}
}
}
}
Subversion (SVN) 체크아웃 파이프라인 요소 설명
| 요소 | 설명 |
| checkout | 소스 코드를 SCM(형상 관리) 시스템에서 Jenkins 워크스페이스로 가져오는 기본 파이프라인 스텝입니다. |
| $class: 'SubversionSCM' | Jenkins에게 현재 SCM 유형이 Subversion임을 명시적으로 지정합니다. |
| credentialsId | Jenkins의 Credentials 메뉴에 미리 등록해 둔 SVN 접근 계정의 고유 ID를 사용합니다. |
| remote | 체크아웃할 SVN 저장소의 특정 경로를 지정합니다. (예: trunk, branches/feature 등) |
| local: '.' | 체크아웃된 파일들이 저장될 로컬 디렉토리를 지정합니다. .은 워크스페이스의 루트 디렉토리를 의미합니다. |
| workspaceUpdater | 체크아웃 전략을 지정합니다. $class: 'CheckoutUpdater'는 일반적으로 항상 깨끗하게 새로 체크아웃하는 전략을 의미합니다. |
728x90