How to edit xml files through Jenkins pipeline?

51 views
Skip to first unread message

Gajanan Mahajan

unread,
Jun 23, 2020, 12:09:50 AM6/23/20
to Jenkins Users
I've to update xml file as a part of pipeline. From following, I've to replace `value` from `true` to false

    <bean id="SecurityFilter" class="xxx">
    <property name="cookieSecurity" value="true"/>

Also, following commented code, I've to uncomment -

    <!--
    <session-config>
    <cookie-config>
    <http-only>true</http-only>
    <secure>false</secure>
    </cookie-config>
    <tracking-mode>COOKIE</tracking-mode>
    </session-config>
    -->

Both of above snippets can be anywhere in xml file. `sed` utility won't help much here. 

Could you please suggest best possible approaches, solutions for this?

Jan Monterrubio

unread,
Jun 23, 2020, 1:40:53 AM6/23/20
to jenkins...@googlegroups.com
Since a pipeline can support groovy, you can try some of the groovy classes: 
--
You received this message because you are subscribed to the Google Groups "Jenkins Users" group.
To unsubscribe from this group and stop receiving emails from it, send an email to jenkinsci-use...@googlegroups.com.
To view this discussion on the web visit https://groups.google.com/d/msgid/jenkinsci-users/9987c908-92d7-4499-969f-b93c972ffceao%40googlegroups.com.

Ivan Fernandez Calvo

unread,
Jun 23, 2020, 12:28:35 PM6/23/20
to Jenkins Users
Hi, 

I'd not recommend processing the XML file inside the Jenkinsfile, all the Groovy code you put in a Jenkins file consumes resources in the Jenkins instance (not in the Agent) and process an XML file can be a heavy process. 
I recommend you call a command-line tool or a Python script to process the file, in that way you will use only resources in the Agent. You have an interesting Jesse Glick presentation about this kind of thing 

How To Use Jenkins Less
https://www.youtube.com/watch?reload=9&v=Zeqc6--0eQw
Reply all
Reply to author
Forward
0 new messages