Search code examples
jenkinsgroovybuildjenkins-pipelineenvironment

How to read properties file from Jenkins 2.0 pipeline script


I am attempting to write a pipeline script to use with Jenkins 2.0 to replicate our existing build. This original build used the envInject plugin to read a Java properties file, but I can't see how to do this from the pipeline Groovy script. I have Googled and found the following, but it doesn't work (FileNotFoundException):

Properties props = new Properties()
File propsFile = new File('./Builder/project.properties')
props.load(propsFile.newDataInputStream())

Thanks!


Solution

  • I just fought with this yesterday and today. I wish the availability of this was easier to find.

    Grab the 'Pipeline Utility Steps' plugin.

    Use the readProperties step.

     def props = readProperties  file: 'dir/my.properties'
    

    One word of warning - what I expected to be booleans in the properties files were treated as strings.