声明式语法重写基于容器CICD构建流水线
调试了一下午,一句话都不想说了,看代码。 ~~~~~
参考文档
https://blog.csdn.net/weixin_42010394/article/details/90670945
实践代码
def server = "cloudslave-${UUID.randomUUID().toString()}"
pipeline{
agent{
kubernetes{
label "${runserver}"
cloud 'kubernetes'
yaml '''
apiVersion: v1
kind: Pod
metadata:
labels:
jenkins: slave
namespace: jenkins
spec:
containers:
- name: jnlp
env:
- name: PATH
value: /usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin:/usr/local/apache-maven-3.5.0/bin
- name: CLASS_PATH
value: /docker-java-home/jre/lib/rt.jar:/docker-java-home/jre/lib/dt.jar:/docker-java-home/jre/lib/tools.jar
image: registry.it.com/jenkins/slave-maven-ant-sonar-jdk8u111:latest
imagePullPolicy: IfNotPresent
resources:
limits:
cpu: '8'
memory: 16Gi
requests:
cpu: '8'
memory: 16Gi
tty: true
volumeMounts:
- mountPath: /data/jenkins
name: volume-1
- mountPath: /etc/data/m2repository
name: volume-2
- mountPath: /home/jenkins
name: workspace-volume
- mountPath: /var/run/secrets/kubernetes.io/serviceaccount
name: default-token-fcbxp
readOnly: true
workingDir: /home/jenkins
nodeSelector:
build-infra: 'true'
node-role.kubernetes.io/compute: 'true'
volumes:
- name: volume-2
persistentVolumeClaim:
claimName: m2repo
- name: volume-1
persistentVolumeClaim:
claimName: jenkins
- emptyDir: {}
name: workspace-volume
- name: default-token-fcbxp
secret:
defaultMode: 420
secretName: default-token-fcbxp
'''
}
}
options {
skipDefaultCheckout()
}
stages{
//下载代码
stage("GetCode"){
steps{
timeout(time:5, unit:"MINUTES"){
script{
ws("${workspace}"){
echo "Get Code"
}
}
}
}
}
//构建
stage("Build"){
steps{
timeout(time:10, unit:"MINUTES"){
script{
ws("${workspace}"){
echo '应用打包'
}
}
}
}
}
}
}
声明式语法重写基于容器CICD构建流水线的更多相关文章
- Jenkins pipeline声明式语法
目录 一.最简结构 二.简单例子 一.最简结构 pipeline { agent any stages { stage('pull') { st ...
- Spring声明式事务管理基于@Transactional注解
概述:我们已知道Spring声明式事务管理有两种常用的方式,一种是基于tx/aop命名空间的xml配置文件,另一种则是基于@Transactional 注解. 第一种方式我已在上文为大 ...
- Spring声明式事务管理基于tx/aop命名空间
目的:通过Spring AOP 实现Spring声明式事务管理; Spring支持编程式事务管理和声明式事务管理两种方式. 而声明式事务管理也有两种常用的方式,一种是基于tx/aop命名空间的xml配 ...
- Spring事务管理之声明式事务管理-基于注解的方式
© 版权声明:本文为博主原创文章,转载请注明出处 案例 - 利用Spring的声明式事务(TransactionProxyFactoryBean)管理模拟转账过程 数据库准备 -- 创建表 CREAT ...
- Spring事务管理之声明式事务管理-基于AspectJ的XML方式
© 版权声明:本文为博主原创文章,转载请注明出处 案例 - 利用Spring的声明式事务(AspectJ)管理模拟转账过程 数据库准备 -- 创建表 CREATE TABLE `account`( ` ...
- 【Spring】Spring的事务管理 - 2、声明式事务管理(实现基于XML、Annotation的方式。)
声明式事务管理 文章目录 声明式事务管理 基于XML方式的声明式事务 基于Annotation方式的声明式事务 简单记录 - 简单记录-Java EE企业级应用开发教程(Spring+Spring M ...
- React 核心思想之声明式渲染
React 发展很快,概念也多,本文目的在于帮助初学者理清 React 核心概念. React 及 React 生态 React 的核心概念只有 2 点: 声明式渲染(Declarative) 基于组 ...
- Spring之声明式事务
在讲声明式事务之前,先回顾一下基本的编程式事务 编程式事务: //1.获取Connection对象 Connection conn = JDBCUtils.getConnection(); try { ...
- Spring 声明式事务管理方式
声明式事务管理,基于AOP对目标代理,添加环绕通知,比编码方案优势,不具有侵入式,不需要修改原来的代码. 1.基于XML配置的声明式事务管理方案(案例) 接口Service public i ...
随机推荐
- C++的指针偏移
假设一个类的定义如下:class Ob{public:Ob() : a(1), b(10) {}int a;private:int b; };
- spring cloud gateway 拦截request Body
在接入Spring-Cloud-Gateway时,可能有需求进行缓存Json-Body数据或者Form-Urlencoded数据的情况. 由于Spring-Cloud-Gateway是以WebFlux ...
- springBoot JPA PageAble分页查询出错,PropertyReferenceException: No property creation found for type
PropertyReferenceException: No property creation found for type @RequestParam(required = false, defa ...
- TypeScript躬行记(5)——类型兼容性
TypeScript是一种基于结构类型的语言,可根据其成员来描述类型.以结构相同的Person接口和Programmer类为例,如下所示. interface Person { name: strin ...
- jenkins实现master变化时,才触发构建(过滤分支)
现状:现在是这样的,每个开发push时,都触发jenkins进行构建 期望:只有当代码被push到master时才进行构建 (根据使用的git平台)做这些配置需要先了解一些概念: (github) p ...
- 测开之路三十:Flask基础之jinja2模板继承
实现某些位置的内容固定,某些位置的内容动态展示,如: 中文文档地址:http://docs.jinkan.org/docs/jinja2/templates.html#template-inherit ...
- CATiledLayer显示超大图片的解决方案
先对图片进行了裁剪 -> 很多小图片, 然后再根据显示 进行绘制 - (void)viewDidLoad { [super viewDidLoad]; [self cutImageAndSave ...
- 如何录制视频生成GIF动态图?
前言 在分享文章时有些知识不好讲清,就打算用gif图来展示,可是在网上找了几个录视频的工具都要会员才可以生成gif动态图,很是郁闷,不过苦苦寻找后,发现LICEcap很好用,可以很方便的生成gif动态 ...
- docker 提示 Drive has not been shared 错误
Creating laradock_docker-in-docker_1 ... Creating laradock_docker-in-docker_1 ... error ERROR: for l ...
- css设置图片的高等于图片的高
<div class="box"> <img src="img/2222.jpg" /> </div> .box { pos ...