build file
Some checks failed
test/timeline-server/pipeline/head There was a failure building this commit

This commit is contained in:
jiangh277
2025-12-24 15:39:28 +08:00
parent 5fd6e1a9c2
commit 04c2a40856

30
Jenkinsfile vendored
View File

@@ -2,7 +2,7 @@ pipeline {
agent any
tools {
maven 'Maven 3.8.6' // 修正Maven工具名称
maven 'maven 3.9.12' // 修正Maven工具名称
jdk 'openjdk21' // 修正JDK工具名称使用Jenkins中实际配置的名称
}
@@ -63,7 +63,7 @@ pipeline {
script {
echo '打包项目'
sh 'mvn package -DskipTests'
// 保存构建产物
archiveArtifacts artifacts: 'timeline-gateway-service/target/*.jar, timeline-user-service/target/*.jar, timeline-story-service/target/*.jar, timeline-file-service/target/*.jar', fingerprint: true
}
@@ -75,22 +75,22 @@ pipeline {
script {
def services = ['gateway', 'user', 'story', 'file']
def imageTags = [:]
for (service in services) {
def serviceDir = "timeline-${service}-service"
def imageName = "${REGISTRY}/timeline-${service}-service:${BUILD_NUMBER}"
def latestImageName = "${REGISTRY}/timeline-${service}-service:latest"
// 检查Dockerfile是否存在如果不存在则创建
if (!fileExists("${serviceDir}/Dockerfile")) {
writeFile file: "${serviceDir}/Dockerfile", text: getDockerfileContent(serviceDir)
}
// 构建镜像
sh "docker build -t ${imageName} -t ${latestImageName} ${serviceDir}/."
imageTags[service] = imageName
}
env.IMAGE_TAGS = writeJSON returnText: imageTags
}
}
@@ -101,11 +101,11 @@ pipeline {
script {
def imageTags = readJSON text: env.IMAGE_TAGS
def services = ['gateway', 'user', 'story', 'file']
for (service in services) {
def imageName = imageTags[service]
sh "docker push ${imageName}"
// 也推送latest标签
def latestImageName = imageName.replace(BUILD_NUMBER, "latest")
sh "docker push ${latestImageName}"
@@ -120,16 +120,16 @@ pipeline {
// 创建或更新docker-compose文件
def composeContent = getComposeFileContent(BUILD_NUMBER)
writeFile file: 'docker-compose.yml', text: composeContent
// 拉取最新镜像
sh 'docker-compose pull'
// 停止旧容器
sh 'docker-compose down || true'
// 启动新容器
sh 'docker-compose up -d'
echo "所有服务已部署完成"
}
}
@@ -140,7 +140,7 @@ pipeline {
success {
script {
sh 'echo "构建和部署成功完成"'
// 发送成功通知
emailext (
subject: "构建成功: ${env.JOB_NAME} - ${env.BUILD_NUMBER}",
@@ -152,7 +152,7 @@ pipeline {
failure {
script {
sh 'echo "构建或部署失败"'
// 发送失败通知
emailext (
subject: "构建失败: ${env.JOB_NAME} - ${env.BUILD_NUMBER}",
@@ -302,4 +302,4 @@ volumes:
mysql_data:
minio_data:
"""
}
}