-
Notifications
You must be signed in to change notification settings - Fork 0
/
Copy pathJenkinsfile
43 lines (41 loc) · 1.56 KB
/
Jenkinsfile
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
pipeline {
agent any
environment{
DOCKER_REGISTER = 'registry.cn-hangzhou.aliyuncs.com'
REGISTRY_NAMESPACE='my_docker_dev'
IMAGE_NAME='docker'
}
stages{
// 可以手动构建也可以配置自动构建,手动构建选择
// stage('Source') {
// steps{
// git branch: 'main', url: 'https://gitee.com/zhao_weilong/spring-boot-matrix.git'
// }
// }
stage('Build') {
steps {
sh './gradlew clean generateProto'
sh './gradlew build -x test'
}
}
stage('Publish-release') {
environment {
BITBUCKET_COMMON_CREDS = credentials('publisherID')
}
steps {
sh './gradlew -Pdocker_repo_username=$BITBUCKET_COMMON_CREDS_USR -Pdocker_repo_password=$BITBUCKET_COMMON_CREDS_PSW jib'
}
}
stage("docker-run"){
steps{
sh 'docker pull ${DOCKER_REGISTER}/${REGISTRY_NAMESPACE}/${IMAGE_NAME}:latest'
sh 'if test ! -z "$(docker ps -aq -f name=${IMAGE_NAME})";then \
echo "容器存在,停止并删除容器;" \
docker stop ${IMAGE_NAME};\
docker rm -f ${IMAGE_NAME};\
docker run -d -p 8888:8888 --name ${IMAGE_NAME} ${DOCKER_REGISTER}/${REGISTRY_NAMESPACE}/${IMAGE_NAME}:latest;\
fi'
}
}
}
}