使用groovy修改xml(JenkinsFile)

时间:2017-12-26 16:24:20

标签: xml amazon-web-services jenkins groovy

我有一个 context.xml 文件。 context.xml 的内容如下所示

<?xml version='1.0' encoding='utf-8'?>
<Context>
    <WatchedResource>WEB-INF/web.xml</WatchedResource>
    <Manager className="com.amazonaws.services.dynamodb.sessionmanager.DynamoDBSessionManager"
        awsAccessKey=""
        awsSecretKey=""
        table="MyTable"
        regionId="us-east-1"
        createIfNotExist="true" />
</Context>

使用JenkinsFile(groovy)我需要将值添加到 awsAccessKey awsSecretKey ,并更新到 context.xml

我们可以在Jenkinsfile中使用普通的groovy代码进行文件操作吗?

任何人都可以帮助我

1 个答案:

答案 0 :(得分:2)

您可以使用Groovy的XmlSlurper,只需在解析后更改属性的内容,然后将其重新序列化回文件,如下所示:

def slurper = new groovy.util.XmlSlurper().parseText(xmlOriginal)
slurper.Manager.@awsAccessKey = "Meow"
slurper.Manager.@awsSecretKey = "Woof"
def xmlModified = groovy.xml.XmlUtil.serialize(slurper)
new File("context.xml") << xmlModified