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
相关推荐
HiDev_1 小时前
【非标自动化】2、认识元器件(固态继电器)
运维·自动化
明达智控技术1 小时前
国产 PLC 落地立库自动化,MC5000边缘智能控制器破局
运维·自动化
小绫网络安全1 小时前
Kali Linux渗透测试入门教程:从零搭建到实战攻防
linux·运维·服务器
西安景驰电子2 小时前
《PTP精确时间协议系列》第一篇:从原理到应用,全面解读IEEE 1588
linux·运维·服务器·开发语言·网络·windows·php
云原生指北3 小时前
Docker Sandboxes 上手:从安装到第一次跑 Agent
运维·docker·容器
小马同学-4 小时前
高可用-Keepalived全解析
linux·运维
ziyun6668884 小时前
Docker 容器化 Web 服务架构搭建与自动化运维项目
运维·docker·架构
梦想的旅途24 小时前
企微 API 二次开发:利用 AI Agent 实现自动化运维
运维·人工智能·企业微信
安科瑞-小李5 小时前
铁路智能运维进化路线:自动化→状态可视→预测维护
运维·自动化·数据采集·能耗可视化
酷可达拉斯5 小时前
自动化运维-Ansible任务控制与流程控制
运维·自动化·ansible