如何在Jenkins Pipeline中使用Groovy读取CSV文件并提取首个URL
Jenkins Pipeline用Groovy提取CSV首个URL
以下是直接可用的Pipeline代码,能读取指定CSV文件、提取第一行的URL并存储到变量中:
pipeline { agent any stages { stage('Extract First URL from CSV') { steps { script { // 读取工作区根目录下的urls.csv文件 def csvContent = readFile(file: 'urls.csv') // 按行分割内容,过滤空行 def csvLines = csvContent.split('\n').findAll { it.trim() != '' } if (csvLines.isEmpty()) { error 'CSV文件为空或无有效内容' } // 分割第一行内容(假设CSV用逗号分隔) def firstLineParts = csvLines[0].split(',') if (firstLineParts.size() < 1) { error 'CSV第一行格式错误,未包含URL' } // 去除URL前后空格并存储到变量 def firstUrl = firstLineParts[0].trim() echo "提取到的首个URL: ${firstUrl}" // 后续可直接使用firstUrl变量执行其他操作 } } } } }
关键细节说明
- 文件路径适配:如果CSV文件不在工作区根目录,调整
readFile的file参数即可,比如'./config/api_urls.csv'。 - 分隔符自定义:若CSV用分号
;或制表符\t分隔,把split(',')替换成对应分隔符即可。 - 带表头的CSV处理:如果CSV第一行是表头(如
url,credentialId),只需把csvLines[0]改成csvLines[1],跳过表头行读取数据。 - 异常防护:代码中加入了空文件、格式错误的判断,避免Pipeline因无效CSV直接崩溃。
内容的提问来源于stack exchange,提问作者user18388778
相关产品推荐
相关产品推荐

