Skip to content

Instantly share code, notes, and snippets.

@halfb00t
Created October 27, 2017 07:56
Show Gist options
  • Save halfb00t/abe67e9cc8377aeb34a4b24e863adffa to your computer and use it in GitHub Desktop.
Save halfb00t/abe67e9cc8377aeb34a4b24e863adffa to your computer and use it in GitHub Desktop.

Revisions

  1. Roger Ignazio revised this gist Apr 22, 2014. 1 changed file with 8 additions and 8 deletions.
    16 changes: 8 additions & 8 deletions add-jenkins-param.groovy
    Original file line number Diff line number Diff line change
    @@ -1,33 +1,33 @@
    // add-jenkins-param.groovy
    // Adds a parameter to all jobs on a Jenkins instance.
    // The parameter is then exposed as an environment variable.

    import hudson.model.*

    key = 'GEM_SOURCE'
    value = 'http://rubygems.delivery.puppetlabs.net'
    desc = 'The Rubygems Mirror URL'

    for(job in Hudson.instance.items) {

    println("[ " + job.name + " ] setting " + key + "=" + value)

    newParam = new StringParameterDefinition(key, value)
    newParam = new StringParameterDefinition(key, value, desc)
    paramDef = job.getProperty(ParametersDefinitionProperty.class)

    if (paramDef == null) {
    newArrList = new ArrayList<ParameterDefinition>(1)
    newArrList.add(newParam)
    newParamDef = new ParametersDefinitionProperty(newArrList)
    job.addProperty(newParamDef)
    }
    }
    else {
    // Parameters exist! We should check if this one exists already!
    // TODO: contains() isn't working for what we need. Walk the
    // params to see if the param already exists.
    if (!paramDef.parameterDefinitions.contains(newParam)) {
    found = paramDef.parameterDefinitions.find{ it.name == key }
    if (found == null) {
    paramDef.parameterDefinitions.add(newParam)
    }
    }
    job.save()
    //job.save()
    println()
    }

  2. @colinPL colinPL revised this gist Apr 22, 2014. 1 changed file with 10 additions and 9 deletions.
    19 changes: 10 additions & 9 deletions add-jenkins-param.groovy
    Original file line number Diff line number Diff line change
    @@ -1,18 +1,18 @@

    // add-jenkins-param.groovy
    // Adds a parameter to all jobs on a Jenkins instance.
    // The parameter is then exposed to the job's environment as `$PARAM_KEY`.

    import hudson.model.*

    key = 'GEM_SOURCE'
    value = 'http://rubygems.delivery.puppetlabs.net:5000'

    desc = 'The rubygems URL'

    for(job in Hudson.instance.items) {
    // TODO: this doesn't work. Don't use it!
    println("[ " + job.name + " ] setting " + key + "=" + value)

    newParam = new StringParameterDefinition(key, value)
    newParam = new StringParameterDefinition(key, value, desc)
    paramDef = job.getProperty(ParametersDefinitionProperty.class)

    if (paramDef == null) {
    @@ -22,10 +22,11 @@ for(job in Hudson.instance.items) {
    job.addProperty(newParamDef)
    } else {
    // Parameters exist! We should check if this one exists already!
    if (!paramDef.parameterDefinitions.contains(newParam)) {
    found = paramDef.parameterDefinitions.find{ it.name == key }
    if (found == null) {
    paramDef.parameterDefinitions.add(newParam)
    }
    }
    }
    job.save()
    //job.save()
    println()
    }
  3. Roger Ignazio revised this gist Apr 21, 2014. 1 changed file with 13 additions and 11 deletions.
    24 changes: 13 additions & 11 deletions add-jenkins-param.groovy
    Original file line number Diff line number Diff line change
    @@ -1,31 +1,33 @@

    // add-jenkins-param.groovy
    // Adds a parameter to all jobs on a Jenkins instance.
    // The parameter is then exposed to the job's environment as `$PARAM_KEY`.
    // The parameter is then exposed as an environment variable.

    import hudson.model.*

    key = 'GEM_SOURCE'
    value = 'http://rubygems.delivery.puppetlabs.net:5000'
    value = 'http://rubygems.delivery.puppetlabs.net'

    for(job in Hudson.instance.items) {
    // TODO: this doesn't work. Don't use it!
    println("[ " + job.name + " ] setting " + key + "=" + value)

    newParam = new StringParameterDefinition(key, value)
    paramDef = job.getProperty(ParametersDefinitionProperty.class)
    if (paramDef == null) {

    if (paramDef == null) {
    newArrList = new ArrayList<ParameterDefinition>(1)
    newArrList.add(newParam)
    newParamDef = new ParametersDefinitionProperty(newArrList)
    job.addProperty(newParamDef)
    } else {
    }
    else {
    // Parameters exist! We should check if this one exists already!
    // TODO: contains() isn't working for what we need. Walk the
    // params to see if the param already exists.
    if (!paramDef.parameterDefinitions.contains(newParam)) {
    paramDef.parameterDefinitions.add(newParam)
    }
    }
    paramDef.parameterDefinitions.add(newParam)
    }
    }
    job.save()
    println()
    }
    }

  4. @colinPL colinPL revised this gist Apr 21, 2014. 1 changed file with 17 additions and 11 deletions.
    28 changes: 17 additions & 11 deletions add-jenkins-param.groovy
    Original file line number Diff line number Diff line change
    @@ -1,25 +1,31 @@

    // add-jenkins-param.groovy
    // Adds a parameter to all jobs on a Jenkins instance.
    // The parameter is then exposed to the job's environment as `$PARAM_KEY`.

    import hudson.model.*

    key = 'GEM_SOURCE'
    value = 'http://rubygems.delivery.puppetlabs.net'
    value = 'http://rubygems.delivery.puppetlabs.net:5000'

    for(job in Hudson.instance.items) {
    // TODO: this doesn't work. Don't use it!
    println("[ " + job.name + " ] setting " + key + "=" + value)

    prop = job.getProperty(ParametersDefinitionProperty.class)
    pd = new StringParameterDefinition(key, value)

    java.util.List<ParameterDefinition> params = new java.util.ArrayList<ParameterDefinition>()
    params.addAll(prop?.parameterDefinitions)
    params.add(pv)

    pdp = new ParametersDefinitionProperty(pd)
    job.addProperty(pdp)
    newParam = new StringParameterDefinition(key, value)
    paramDef = job.getProperty(ParametersDefinitionProperty.class)

    if (paramDef == null) {
    newArrList = new ArrayList<ParameterDefinition>(1)
    newArrList.add(newParam)
    newParamDef = new ParametersDefinitionProperty(newArrList)
    job.addProperty(newParamDef)
    } else {
    // Parameters exist! We should check if this one exists already!
    if (!paramDef.parameterDefinitions.contains(newParam)) {
    paramDef.parameterDefinitions.add(newParam)
    }
    }
    job.save()
    println()
    }
    }
  5. Roger Ignazio revised this gist Apr 21, 2014. 1 changed file with 3 additions and 3 deletions.
    6 changes: 3 additions & 3 deletions add-jenkins-param.groovy
    Original file line number Diff line number Diff line change
    @@ -7,11 +7,11 @@ import hudson.model.*
    key = 'GEM_SOURCE'
    value = 'http://rubygems.delivery.puppetlabs.net'

    for(item in Hudson.instance.items) {
    for(job in Hudson.instance.items) {
    // TODO: this doesn't work. Don't use it!
    println("[ " + job.name + " ] setting " + key + "=" + value)

    prop = item.getProperty(ParametersDefinitionProperty.class)
    prop = job.getProperty(ParametersDefinitionProperty.class)
    pd = new StringParameterDefinition(key, value)

    java.util.List<ParameterDefinition> params = new java.util.ArrayList<ParameterDefinition>()
    @@ -22,4 +22,4 @@ for(item in Hudson.instance.items) {
    job.addProperty(pdp)
    job.save()
    println()
    }
    }
  6. Roger Ignazio created this gist Apr 21, 2014.
    25 changes: 25 additions & 0 deletions add-jenkins-param.groovy
    Original file line number Diff line number Diff line change
    @@ -0,0 +1,25 @@
    // add-jenkins-param.groovy
    // Adds a parameter to all jobs on a Jenkins instance.
    // The parameter is then exposed to the job's environment as `$PARAM_KEY`.

    import hudson.model.*

    key = 'GEM_SOURCE'
    value = 'http://rubygems.delivery.puppetlabs.net'

    for(item in Hudson.instance.items) {
    // TODO: this doesn't work. Don't use it!
    println("[ " + job.name + " ] setting " + key + "=" + value)

    prop = item.getProperty(ParametersDefinitionProperty.class)
    pd = new StringParameterDefinition(key, value)

    java.util.List<ParameterDefinition> params = new java.util.ArrayList<ParameterDefinition>()
    params.addAll(prop?.parameterDefinitions)
    params.add(pv)

    pdp = new ParametersDefinitionProperty(pd)
    job.addProperty(pdp)
    job.save()
    println()
    }