【10月更文挑战第3天】通过jenkins的pipline执行任务

简介: 【10月更文挑战第3天】通过jenkins的pipline执行任务

一: 效果展示

image.png

image.png

二: jenkins配置细节

image.png


image.png


image.png


image.png


三: 流水线细节

pipeline {
    agent any

    parameters {
        extendedChoice(name: 'services', type: 'PT_CHECKBOX', value: 'x-web,x-task,x-admin', defaultValue: 'x-web,x-task,x-admin', description: 'Select stages to run')
    }




 stages {



        stage('Prepare') {
            steps {
                script {
                    // 将选择的参数转换为Groovy可用的列表
                    env.services = params.services.join(',')
                }
            }
        }

        stage('更新_kaihei_web') {
            when {
                expression {
                    return params.services.contains('xa-web')
                }
            }

            steps {
                sh '''
                 jump_server_ip=1.1.1.1
                 web_do_scrip="ssh root@1.1.1.1  '/bin/bash -x  /opt/script/yunwei/up-project/up.sh' "
                 ssh -o StrictHostKeyChecking=no  -p  22 root@$jump_server_ip  "${web_do_scrip}" 
                 '''
            }
        }

        stage('更新_kaihei_task') {
            when {
                expression {
                    return params.services.contains('x-task')
                }
            }

            steps {
                sh '''
    
                 '''
            }
        }
        
        
        stage('更新_kaihei_admin') {
            when {
                expression {
                    return params.services.contains('x-admin')
                }
            }
            steps {
                sh '''
            ...
                 '''
            }
        }
        


        
    }    
}


四:注意事项

3.1 jks的执行shell里对应的的脚本需根据实际情况进行编写,不再详细列出。

3.2 提前做好jks和远程跳板服务器的ssh认证,以便jks登录服务时执行命令,并把对应的变量传送过去。

3.3 提前做好跳板服务器和业务服务器的认证,以便跳板服务器ssh到业务服务器执行脚本及变量传送。


相关文章
|
18天前
|
jenkins Shell 持续交付
Jenkins持续集成GitLab项目 GitLab提交分支后触发Jenkis任务 持续集成 CI/CD 超级详细 超多图(二)
Jenkins持续集成GitLab项目 GitLab提交分支后触发Jenkis任务 持续集成 CI/CD 超级详细 超多图(二)
47 0
|
18天前
|
jenkins Shell 持续交付
Jenkins持续集成GitLab项目 GitLab提交分支后触发Jenkis任务 持续集成 CI/CD 超级详细 超多图(一)
Jenkins持续集成GitLab项目 GitLab提交分支后触发Jenkis任务 持续集成 CI/CD 超级详细 超多图(一)
50 0
|
2月前
|
JSON jenkins 持续交付
jenkins学习笔记之四:jenkins常用pipline DSL方法
jenkins学习笔记之四:jenkins常用pipline DSL方法
|
5月前
|
存储 jenkins Shell
Jenkins Pipeline 流水线任务 补充篇
Jenkins Pipeline 流水线任务 补充篇
230 1
|
监控 jenkins Java
docker部署Jenkins与任务创建【七千字超详细指南】
docker部署Jenkins与任务创建【七千字超详细指南】
912 0
|
存储 Kubernetes jenkins
k8s初探(6)-Jenkins自动部署(2) 利用git软件向jenkins发送构建任务
k8s初探(6)-Jenkins自动部署(2) 利用git软件向jenkins发送构建任务
547 1
|
jenkins 持续交付
Jenkins 利用Dashboard View插件管理任务视图
Jenkins 利用Dashboard View插件管理任务视图
391 0
|
jenkins Java 程序员
远程触发Jenkins的Pipeline任务的并发问题处理
上一篇实战了通过Http请求远程触发指定的Jenkins任务,并且将参数传递给Jenkins任务的Pipeline脚本使用,文末提到有个并发问题留待本文来处理
278 0
远程触发Jenkins的Pipeline任务的并发问题处理
|
jenkins Java 程序员
远程触发Jenkins的Pipeline任务
实战远程触发Jenkins的Pipeline任务
661 0
远程触发Jenkins的Pipeline任务
|
缓存 jenkins Linux
项目部署(执行 jenkins 构建任务) | 学习笔记
快速学习 项目部署(执行 jenkins 构建任务)
项目部署(执行 jenkins 构建任务) | 学习笔记