jenkins_Pipeline_grooy&常见的dsl

Groovy-简介

Groovy是一种功能强大,可选类型和动态语言,支持Java平台

旨在提高开发人员的生产力得益于简洁,熟悉且简单易学的语法。

可以与任何Java程序顺利集成,并立即为您的应用程序提供强大的功能,包括脚本编写功能,特定领域语言编写,运行时和编译时元编程以及函数式编程

复制代码
https://bintray.com/artifact/download/groovy/maven/apache-groovy-binary-2.5.8.zip

1.下载安装包(先安装JDK)
2.解压安装包
3.获取安装包bin目录
4.写入/etc/profile文件
export GROOVY_HOME=xxx
export PATH=$PATH:$GROOVY_HOME/bin
source /etc/profile

[root@vm ~]# groovyConsole  #无图形化,打不开groovyConsole
[root@vm ~]# groovysh
groovy 复制代码
// Groovy数据类型-string
表示:单引号、双引号、三引号
常用方法:
contains()是否包含特定内容 返回true false
size()1ength()字符串数量大小长度
toString()转换成string类型
index0f()元素的索引
endsWith()是否指定字符结尾minus()plus() 去掉、增加字符串
reverse()反向排序
substring(1,2)字符串的指定索引开始的子字符串
toUpperCase()toLowerCase()字符串大小写转换
split()字符串分割 默认空格分割 返回列表
# "devopstestops".endsWith("ops")   #true

// Groovy数据类型-list
列表符号:[]
常用方法
+ - += -= 元素增加减少
isEmpty()判断  是否为空
add() 添加元素
intersect([2,3]) disjoint([1])	取交集、判断是否有交集
flatten()	合并嵌套的列表
unique()	去重
reverse()sort()	反转 升序
count()元素个数
join()将元素按照参数链接
sum() min() max() 求和 最小值 最大值
contains() 包含特定元素
remove(2)removeA11()
eachf}遍历


// Groovy数据类型-map
表示:[:]常用方法:
size()map大小
['key'] .key get()获取value
isEmpty()是否为空
containKey()是否包含key
containValue()是否包含指定的value
keySet()生成key的列表
each{}遍历map
remove('a') 删除元素(k-v)

流程语句

groovy 复制代码
Groovy条件语句-if
Groovy条件语句-switch // 跟shell的case相似
Groovy循环语句-for/while
Groovy函数
Groovy正则表达式

jenkins常用的DSL方法

使用流水线语法工具生成代码片段

groovy 复制代码
// 找不到的都需要装插件
readJSON 	//Json数据格式化
withCredentials		//凭据
checkout		//git 或者svn 代码切换分支
publishHTML		// 生成html报告
input		 //  交互停留,选择输入
BuildUser		// 构建用户,需插件支持
httpRequest		// 接口访问,传参,需插件支持,
email		// 邮件通知
rtUpload
cleanWs
junit
archive
相关推荐
12345,catch a tiger25 分钟前
虚拟机ubuntu安装Vmware Tools
linux·运维·ubuntu
程序猿编码3 小时前
一个授予普通进程ROOT权限的Linux内核级后门:原理与实现深度解析
linux·运维·服务器·内核·root权限
小夏子_riotous3 小时前
openstack的使用——9. 密钥管理服务Barbican
linux·运维·服务器·系统架构·centos·云计算·openstack
梦想的旅途23 小时前
自动化运营如何防封?解析 API 协议下的拟人化风控算法
运维·自动化
AC赳赳老秦4 小时前
OpenClaw text-translate技能:多语言批量翻译,解决跨境工作沟通难题
大数据·运维·数据库·人工智能·python·deepseek·openclaw
andeyeluguo4 小时前
docker总结
运维·docker·容器
w6100104664 小时前
cka-2026-etcd
运维·服务器·etcd·cka
航Hang*5 小时前
VMware vSphere 云平台运维与管理基础——第5章:VMware vSphere 5.5 高级特性
运维·服务器·开发语言·windows·学习·虚拟化
Benszen5 小时前
Linux容器:轻量级虚拟化革命
java·linux·运维
问简5 小时前
ubuntu 字体相关问题
运维·服务器·ubuntu