Jenkins script example

news/2024/9/25 17:11:17

1. 参数化构建

2. Jenkins script

podTemplate(name: 'jenkins-slave-4000', cloud: 'kubernetes',namespace: 'default', label: 'jenkins-slave-4000',containers: [containerTemplate(name: 'jnlp',image: "${HARBOR_URL}/ops/jenkins-slave:v2.2.2",alwaysPullImage: true),],volumes: [hostPathVolume(mountPath: '/var/run/docker.sock', hostPath: '/var/run/docker.sock'),hostPathVolume(mountPath: '/usr/bin/docker', hostPath: '/usr/bin/docker'),hostPathVolume(mountPath: '/usr/local/java', hostPath: '/usr/local/jdk1.8.0_181'),hostPathVolume(mountPath: '/usr/local/maven', hostPath: '/usr/local/maven'),],imagePullSecrets: ['harbor-pull-secret']
)
{node('jenkins-slave-4000'){stage('Git Checkout'){checkout([$class: 'GitSCM', branches: [[name: "origin/${branch}"]], doGenerateSubmoduleConfigurations: false, submoduleCfg: [], userRemoteConfigs: [[credentialsId: "fd788290-8ae0-4207-9e68-e17fcc562275", url: "http://172.16.5.234/standardcmp/java-demo.git"]]])}stage('Build') {sh '''
            ls -lacd java-demo2mvn clean -Dmaven.test.skip=true packagecp -f java-demo-gateway/target/java-demo-gateway-0.0.1-SNAPSHOT.jar CICD/mno.jar'''
        }stage('Build and Push Image'){withCredentials([usernamePassword(credentialsId: 'ecd8b664-a4bb-4269-847f-cf1bb96b8006', passwordVariable: 'password', usernameVariable: 'username')]) {sh '''
                ls -lacd java-demo2/CICDdocker login -u $username -p $password ${HARBOR_URL}docker build --build-arg HARBOR_URL=$HARBOR_URL  --build-arg MEM_REQUEST=${MEM_REQUEST} -t ${HARBOR_URL}/java-demo/java-demo:${BUILD_TIMESTAMP}  .docker push ${HARBOR_URL}/java-demo/java-demo:${BUILD_TIMESTAMP}docker tag ${HARBOR_URL}/java-demo/java-demo:${BUILD_TIMESTAMP} ${HARBOR_URL}/java-demo/java-demo:${K8S_ENV}docker push ${HARBOR_URL}/java-demo/java-demo:${K8S_ENV}'''
            }}stage('Deploy to k8s'){sh '''
            cd  java-demo2/CICDls -lased -i "s/:latest/:${BUILD_TIMESTAMP}/;s/HARBOR_URL/${HARBOR_URL}/;s/SERVICE_PORT/${SERVICE_PORT}/;s/K8S_ENV/${K8S_ENV}/;s/MEM_REQUEST/${MEM_REQUEST}/" deploy.yaml'''
kubernetesDeploy configs: 'java-demo2/CICD/deploy.yaml',kubeConfig: [path: ''], kubeconfigId: "4557ba41-47b1-4f64-b5da-40fe95bb07ce", secretName: '', ssh: [sshCredentialsId: '*', sshServer: ''],textCredentials: [certificateAuthorityData: '', clientCertificateData: '', clientKeyData: '', serverUrl: 'https://']}}
}

 

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.ryyt.cn/news/30719.html

如若内容造成侵权/违法违规/事实不符,请联系我们进行投诉反馈,一经查实,立即删除!

相关文章

SystemVerilog -- 3.0 SystemVerilog Threads

SystemVerilog Threads What are SystemVerilog threads or processes ? thread 或 process 是作为单独实体执行的任何一段代码。在 verilog 中,每个initial和always块都作为单独的 thread 生成,这些 threads 从 0 time 开始并行运行。block 还会创建并运行的不同 threads。…

24年5.12流片复盘

非常值得纪念的一天,因为去年这个时候流片delay,今年顺利流出去了,这是一个大的进步,但是还是要做复盘。 首先是进度整体上的复盘。这次流片从一月初开始进行规划,到五月初投片,总共花费五个月时间,五个月内,按照最初的时间规划,一月是把规划基本都做完,给项目参与人…

kettle从入门到精通 第五十九课 ETL之kettle 邮件发送多个附件,使用正则轻松解决

问题场景: 一个朋友说他用kettle将生成好的多个文件(a.xls和b.xls,文件在data目录下)发送给客户,但是data目录下还有其他的文件,他如果指定data目录发送会把 data目录下面的所有文件都作为附件进行发送,显然不符合要求,所以他当时的临时解决方法是创建个临时目录,里面…

VSCode养宠物

安装扩展vscode-pets https://marketplace.visualstudio.com/items?itemName=tonybaloney.vscode-pets 安装好后点击右下角的小松鼠图标选择一个宠物 选择一个颜色 起一个名字 回车 如果想要删除 ctrl + shift + p Pet Coding: Remove pet

抽丝剥茧:详述一次DevServer Proxy配置无效问题的细致排查过程

事情的起因是这样的,在一个已上线的项目中,其中一个包含登录和获取菜单的接口因响应时间较长,后端让我尝试未经服务转发的另一域名下的新接口,旧接口允许跨域请求,但新接口不允许本地访问(只允许发布测试/生产的域名访问)。 问题 那么问题来了,本地环境该如何成功访问到…

QT: Expression:c = -1 c = 255

报错内容分析错误 注意看报错位置位于isctype.cpp文件的Line:36我们打开isctype.cpp,其36行内容如下 extern "C" int __cdecl _chvalidator(int const c, int const mask) {_ASSERTE(c >= -1 && c <= 255);return _chvalidator_l(nullptr, c, mask); …

Pyqt6Pyside6 信号与槽详解

信号与槽 对于可视化编程,需要将界面上的控件有机结合起来,实现控件功能的联动和交互操作。比如点击按钮,实现某项功能。对按钮功能的定义,是通过信号(signal)与槽(slot)机制实现的。信号与槽是PySide6编程的基础,也是Qt的一大创新,有了信号与槽的编程机制,在PySide6中处…

minio依赖报错

引入minio-sdk后启动报错 现象一 1缺失kotlin.collections.ArraysKt.copyInto([B[BIII)[B解决方法 提升kotlin-stdin依赖 <dependency><groupId>org.jetbrains.kotlin</groupId><artifactId>kotlin-stdlib</artifactId><version>1.3.70<…