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
相关推荐
爱喝水的鱼丶6 小时前
SAP-ABAP:ABAP 用户出口开发规范与避坑指南:10 类典型错误与运维方案
运维·性能优化·sap·abap·增强·经验交流·出口
博、、6 小时前
从零构建智慧场馆解决方案:架构设计与开发实践
大数据·运维
敢敢是只喵i6 小时前
给现有业务系统接 AI 助手,入口怎么选?网页聊天、自动化任务与本地 Agent 对比
运维·人工智能·ai·开源·自动化·安全架构
章老师说8 小时前
BFE v1.8.6 正式发布:AI 网关计费精细化、Claude 协议与会话亲和性升级
运维·人工智能·ai·负载均衡·ai-native
Brilliantwxx8 小时前
【Linux】 进程(10) 进程控制深度解析:创建、终止与等待
linux·运维·服务器·c语言·开发语言·网络
欧米欧8 小时前
Linux基础指令上
linux·运维·服务器
爱喝水的鱼丶9 小时前
SAP-ABAP:BAdI 上下文数据获取与交互:标准数据读取与修改逻辑实现
运维·性能优化·sap·abap·增强·经验交流·badi
ARM|X86+FPGA工业主板厂家9 小时前
基于嵌入式 GPU 的智能服务机器人
linux·运维·arm开发·fpga开发·机器人
pt104310 小时前
网络自动化Python课程:Python与Linux密钥和敏感信息管理介绍
运维·自动化
严谨的麻辣烫10 小时前
2026 年静态 IP 为什么重新受到关注?从住宅代理安全问题看固定网络出口
运维·服务器·tcp/ip·网络安全