Skip to content

Instantly share code, notes, and snippets.

Show Gist options
  • Save mark-cabardo/d033c05e9dabd11edf4875d33b7088f2 to your computer and use it in GitHub Desktop.
Save mark-cabardo/d033c05e9dabd11edf4875d33b7088f2 to your computer and use it in GitHub Desktop.
jenkins-job-dsl-write-read-file-test.groovy
/**
* Jenkins Job DSL Groovy Script showing how to write & read files to Jenkins Workspace
*/
import groovy.json.JsonSlurper
import groovy.json.JsonBuilder
import groovy.json.JsonOutput
import hudson.FilePath
import hudson.*
def projects = []
projects.add([projectname: 'maven-project-base', ci: true, deployment: false])
projects.add([projectname: 'maven-project-common', ci: true, deployment: false])
projects.add([projectname: 'maven-project-webapp', ci: true, deployment: true])
def json = JsonOutput.toJson(projects)
println json
hudson.FilePath workspace = hudson.model.Executor.currentExecutor().getCurrentWorkspace()
new File("${workspace}/test.json").write(new JsonBuilder(projects).toPrettyString())
File f = new File("${workspace}/test.json")
def slurper = new JsonSlurper()
def jsonText = f.getText()
println "jsonText ${jsonText}"
projects = slurper.parseText( jsonText )
projects.each {
println it.projectname
}
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment