2025-03-25 19:11:30 +00:00
|
|
|
pipeline {
|
2025-03-27 18:21:55 +00:00
|
|
|
agent any
|
|
|
|
tools {
|
|
|
|
maven 'maven-3'
|
2025-03-25 23:59:54 +00:00
|
|
|
}
|
2025-03-27 18:21:55 +00:00
|
|
|
environment {
|
|
|
|
JFROG_URL = "https://trialt0zppb.jfrog.io/artifactory"
|
|
|
|
JFROG_REPO_RELEASES = "petclinic-maven-dev-local"
|
|
|
|
JFROG_REPO_SNAPSHOTS = "petclinic-maven-dev-virtual"
|
|
|
|
JFROG_CREDENTIALS_ID = 'jfrog-saas'
|
|
|
|
JFROG_CLI_BUILD_NAME = "spring-petclinic"
|
|
|
|
JFROG_CLI_BUILD_NUMBER = "${BUILD_ID}"
|
2025-03-25 19:11:30 +00:00
|
|
|
}
|
2025-03-27 18:21:55 +00:00
|
|
|
stages {
|
|
|
|
stage('Build Maven') {
|
|
|
|
steps {
|
|
|
|
script {
|
2025-03-27 18:31:53 +00:00
|
|
|
def server = Artifactory.server(env.JFROG_CREDENTIALS_ID)
|
|
|
|
|
|
|
|
// Run Maven Build
|
|
|
|
sh 'mvn clean install -DskipTests -Dcheckstyle.skip=true'
|
|
|
|
|
|
|
|
// Upload artifacts to Artifactory
|
|
|
|
server.upload spec: """{
|
2025-03-27 18:21:55 +00:00
|
|
|
"files": [
|
|
|
|
{
|
|
|
|
"pattern": "target/*.jar",
|
|
|
|
"target": "${JFROG_REPO_RELEASES}/"
|
|
|
|
}
|
|
|
|
]
|
|
|
|
}"""
|
|
|
|
}
|
|
|
|
}
|
|
|
|
}
|
|
|
|
stage('Publish Build Info') {
|
|
|
|
steps {
|
|
|
|
script {
|
2025-03-27 18:31:53 +00:00
|
|
|
def server = Artifactory.server(env.JFROG_CREDENTIALS_ID)
|
|
|
|
|
2025-03-27 18:21:55 +00:00
|
|
|
def buildInfo = Artifactory.newBuildInfo()
|
2025-03-27 18:31:53 +00:00
|
|
|
buildInfo.name = env.JFROG_CLI_BUILD_NAME
|
|
|
|
buildInfo.number = env.JFROG_CLI_BUILD_NUMBER
|
|
|
|
|
|
|
|
server.publishBuildInfo(buildInfo)
|
2025-03-27 18:21:55 +00:00
|
|
|
}
|
|
|
|
}
|
|
|
|
}
|
2025-03-25 19:11:30 +00:00
|
|
|
}
|
2025-03-27 18:21:55 +00:00
|
|
|
post {
|
|
|
|
always {
|
|
|
|
echo "Build complete: ${env.JFROG_CLI_BUILD_NAME} #${env.BUILD_NUMBER}"
|
|
|
|
}
|
2025-03-25 23:48:12 +00:00
|
|
|
}
|
2025-03-27 18:31:53 +00:00
|
|
|
}
|