更新 'Jenkinsfile'

main
newrain001 9 months ago
parent 8478a926e6
commit 617a25ae9b
  1. 49
      Jenkinsfile

49
Jenkinsfile vendored

@ -2,23 +2,17 @@ pipeline {
agent any
environment {
DOCKER_HOST = "tcp://192.168.75.149:2375"
DOCKER_IMAGE = "my-web-app:latest"
K8S_DEPLOYMENT_NAME = "my-web-app-deployment"
REGISTRY_CREDENTIALS_ID = 'registry-credentials'
REGISTRY_URL = 'http://core.harbor.cn'
}
stages {
stage('构建镜像') {
steps {
script {
try {
docker.image('docker:latest').inside {
sh "docker build -t ${DOCKER_IMAGE} ."
}
} catch (Exception e) {
echo "构建镜像失败: ${e.message}"
currentBuild.result = 'FAILURE'
error("构建失败")
docker.withRegistry(REGISTRY_URL, REGISTRY_CREDENTIALS_ID) {
def customImage = docker.build(DOCKER_IMAGE)
}
}
}
@ -26,45 +20,18 @@ pipeline {
stage('推送镜像') {
steps {
script {
try {
docker.withRegistry('http://core.harbor.cn', 'registry-credentials') {
docker.image("${DOCKER_IMAGE}").push()
}
} catch (Exception e) {
echo "推送镜像失败: ${e.message}"
currentBuild.result = 'FAILURE'
error("推送失败")
}
}
}
}
stage('部署k8s') {
steps {
script {
try {
kubernetesDeploy(
configs: 'k8s/deploy.yaml',
kubeconfigId: 'K8S_CLUSTER_CONFIG'
)
} catch (Exception e) {
echo "部署到 Kubernetes 失败: ${e.message}"
currentBuild.result = 'FAILURE'
error("部署失败")
docker.withRegistry(REGISTRY_URL, REGISTRY_CREDENTIALS_ID) {
docker.image(DOCKER_IMAGE).push()
}
}
}
}
// 其他阶段
}
post {
always {
echo "完成"
}
success {
echo "成功"
}
failure {
echo "失败"
echo "构建完成"
}
}
}

Loading…
Cancel
Save