build parameter availability in DSL from pipelines

XMLWordPrintable

    • Type: Bug
    • Resolution: Won't Fix
    • Priority: Minor
    • Component/s: job-dsl-plugin
    • None
    • Environment:
      Jenkins 2.10
      JOB DSL 1.48

      I am trying to execute a grrovy DSL script as part of a pipeline. The basic structure is as follows

              step([
                  $class: 'ExecuteDslScripts',
                  scriptLocation: [targets: ['myseed.groovy'].join('\n')],
              ])
      

      The pipeline job contains a string parameter named as gitProject. Trying to access it's value by using "${gitProject}" from within the groovy DSL results in an error that says gitProject is not defined. Trying to wrap the step as follows doesn't help either

          withEnv(["gitProject=$gitProject"]) {
              sh 'set'
              step([
                  $class: 'ExecuteDslScripts',
                  scriptLocation: [targets: ['myseed.groovy'].join('\n')],
              ])
          }
      

      My guess is that the withEnv approach would not work as job DSLs do not have access to all environment variables; only whitelisted ones and build parameters make it. So I guess some change needs to be done to the plugin to ensure that it is able to access build parameters from within pipelines as well

            Assignee:
            Daniel Spilker
            Reporter:
            Arvind Jayaprakash
            Votes:
            8 Vote for this issue
            Watchers:
            11 Start watching this issue

              Created:
              Updated:
              Resolved: