如何从 groovy Jenkinsfile 中的 xml 文件读取 xml 属性

Ash*_*ley 3 xml groovy jenkins jenkins-groovy jenkins-pipeline

我有一个如下所示的 XML 文件:-

<?xml version="1.0" encoding="UTF-8"?>
<properties>
<Targets>
   <Target>
      <branch>develop</branch>
      <env>dev</env>
   </Target>
   <Target>
      <branch>master</branch>
      <env>prod</env>
   </Target>
</Targets>
</properties>
Run Code Online (Sandbox Code Playgroud)

现在我想从脚本化的 Jenkinsfile (groovy) 中的该文件中读取第一个分支和第二个分支的值以及第一个环境和第二个环境。有没有办法解析此 XML,然后提取 groovy 脚本化 Jenkinsfile 中分支和环境的实际值?

Ash*_*ley 6

我能够使用 Jenkinsfile 中的以下内容解决此问题:-

node {

checkout scm
def File = readFile "${env.WORKSPACE}/myproperties.xml"
echo "${File}"

def xml = new XmlSlurper().parseText(File)
def env = xml.Targets.Target[1].env[0]

echo "${env}"

}
Run Code Online (Sandbox Code Playgroud)