This commit is contained in:
2022-11-10 00:57:14 +08:00
parent a7ef01f9c3
commit 86524673f4

181
Jenkinsfile vendored
View File

@@ -80,105 +80,42 @@ pipeline{
}
}
}
}
stage('推送镜像'){
//没有起容器代理默认就是jenkins环境
//step里面卡点这么写
// input message: '需要推送远程镜像吗?', ok: '需要', parameters: [text(defaultValue: 'v1.0', description: '生产环境需要部署的版本', name: 'APP_VER')]
//step外面这么写
input {
message "需要推送远程镜像吗?"
ok "需要"
parameters {
string(name: 'APP_VER', defaultValue: 'v1.0', description: '生产环境需要部署的版本')
choice choices: ['bj-01', 'sh-02', 'wuhan-01'], description: '部署的大区', name: 'DEPLOY_WHERE'
}
}
}
//4、部署
stage('部署'){
steps {
echo "部署..."
sh 'docker rm -f java-devops-demo-dev'
sh 'docker run -d -p 8888:8080 --name java-devops-demo-dev java-devops-demo'
}
// stage('推送镜像'){
// //没有起容器代理默认就是jenkins环境
// //step里面卡点这么写
// // input message: '需要推送远程镜像吗?', ok: '需要', parameters: [text(defaultValue: 'v1.0', description: '生产环境需要部署的版本', name: 'APP_VER')]
// //step外面这么写
// input {
// message "需要推送远程镜像吗?"
// ok "需要"
// parameters {
// string(name: 'APP_VER', defaultValue: 'v1.0', description: '生产环境需要部署的版本')
// choice choices: ['bj-01', 'sh-02', 'wuhan-01'], description: '部署的大区', name: 'DEPLOY_WHERE'
// }
// }
// steps {
// //false就直接结束
// echo "$APP_VER"
// //脚本方式进行判断,和具体逻辑
// // 远程触发自动分析是哪个分支如果是master就部署生产dev就集成测试等
// // gulimall
// // mall-order
// // mall-user
// // xx 100个微服务
// // 哪一个微服务代码提交了部署哪一个微服务不用手工干预只需要一个jenkinsfile
// //Generic Webhook Trigger 远程触发jenkinsjenkins获取当前提交的分支和所有分支
// // gitee会告诉我们这次 add了哪些modify了哪些delete了哪些
// // add了哪些modify了哪些delete了哪些 自己判断这些修改的文件在哪个模块下
// //对这个模块进行持续集成
// //Generic Webhook Trigger + script脚本 + 其他已讲过的内容 + 其他自己看看官网 = 搞定
// //别人提交一个issuejenkins触发 自动把issue做成 fix分支让程序员自己去修改
// //所有东西都是模板
// script {
// //groovy
// def where = "${DEPLOY_WHERE}"
// if (where == "bj-01"){
// sh "echo 我帮你部署到 bj-01 区了"
// }else if(where == "sh-02"){
// sh "echo 我帮你部署到 sh-02 区了"
// }else{
// sh "echo 没人要的,我帮你部署到 wuhan-01 区了"
// // sh "docker push registry.cn-hangzhou.aliyuncs.com/lfy/java-devops-demo:${APP_VER}"
// withCredentials([usernamePassword(credentialsId: 'aliyun-docker-repo', passwordVariable: 'ali_pwd', usernameVariable: 'ali_user')]) {
// // some block
// sh "docker login -u ${ali_user} -p ${ali_pwd} registry.cn-hangzhou.aliyuncs.com"
// // sh "docker tag java-devops-demo registry.cn-hangzhou.aliyuncs.com/lfy/java-devops-demo:${APP_VER}"
// }
// //ssh 秘钥文件配置到 jenkins 全局秘钥中
// withCredentials(ssh){
// //ansible 没有
// sh "ssh root@xxxx "
// //不应该的操作。
// sh "远程操作其他机器。。。。"
// //k8s集群
// //动态切换k8s集群
// }
// }
// }
// // sh "docker push registry.cn-hangzhou.aliyuncs.com/lfy/java-devops-demo:${APP_VER}"
// }
// }
// //4、部署
// stage('部署'){
// steps {
// echo "部署..."
// sh 'docker rm -f java-devops-demo-dev'
// sh 'docker run -d -p 8888:8080 --name java-devops-demo-dev java-devops-demo'
//后置执行
// post {
// failure {
// // One or more steps need to be included within each condition's block.
// echo "炸了.. ."
// }
//
// success {
// echo "成了..."
// }
// }
// //后置执行
// // post {
// // failure {
// // // One or more steps need to be included within each condition's block.
// // echo "炸了.. ."
// // }
// //
// // success {
// // echo "成了..."
// // }
// // }
// }
}
// //5、推送报告
// stage("发送报告"){
@@ -238,38 +175,38 @@ pipeline{
// }
// }
// stage('部署到生产环境吗?'){
// steps {
// // 手动输入版本【参数化构建】,推荐生成器
stage('部署到生产环境吗?'){
steps {
// 手动输入版本【参数化构建】,推荐生成器
// // input {
// // message "需要部署到生产环境吗?"
// // ok "是的,赶紧部署"
// // // submitter "alice,bob"
// // parameters {
// // //手动传入的参数
// // string(name: 'APP_VERSION', defaultValue: 'v1.0', description: '请指定生产版本号')
// // }
// // }
// sh "echo 发布版本咯......"
// // 版本的保存。代码的保存。镜像的保存。存到远程仓库
// input {
// message "需要部署到生产环境吗?"
// ok "是的,赶紧部署"
// // submitter "alice,bob"
// parameters {
// //手动传入的参数
// string(name: 'APP_VERSION', defaultValue: 'v1.0', description: '请指定生产版本号')
// }
// }
sh "echo 发布版本咯......"
// 版本的保存。代码的保存。镜像的保存。存到远程仓库
// }
// }
}
}
// }
}
// //后置处理过程
// post {
// failure {
// echo "这个阶段 完蛋了.... $currentBuild.result"
// }
// success {
// echo "这个阶段 成了.... $currentBuild.result"
// }
// }
//后置处理过程
post {
failure {
echo "这个阶段 完蛋了.... $currentBuild.result"
}
success {
echo "这个阶段 成了.... $currentBuild.result"
}
}
// }
}