This issue is archived. You can view it, but you can't modify it. Learn more

ExportXMLWordPrintable

      Set an environment variable to PROJECTS=job1,job2
      Add Trigger parameterized build on other projects step and set Projects to build to $PROJECTS

      When running the job you will get an

      11:14:36 java.lang.ArrayIndexOutOfBoundsException: 1
      11:14:36 	at hudson.plugins.parameterizedtrigger.BuildTrigger.perform(BuildTrigger.java:123)
      11:14:36 	at hudson.tasks.BuildStepMonitor$1.perform(BuildStepMonitor.java:20)
      11:14:36 	at hudson.model.AbstractBuild$AbstractBuildExecution.perform(AbstractBuild.java:735)
      11:14:36 	at hudson.model.AbstractBuild$AbstractBuildExecution.performAllBuildSteps(AbstractBuild.java:676)
      11:14:36 	at hudson.model.Build$BuildExecution.cleanUp(Build.java:196)
      11:14:36 	at hudson.model.Run.execute(Run.java:1782)
      11:14:36 	at hudson.model.FreeStyleBuild.run(FreeStyleBuild.java:43)
      11:14:36 	at hudson.model.ResourceController.execute(ResourceController.java:97)
      11:14:36 	at hudson.model.Executor.run(Executor.java:405)

      The offending code is

      					String[] projects = config.getProjects(build.getEnvironment(listener)).split(",");
      					String[] vars = config.getProjects().split(",");
      					for (int i = 0; i < projects.length; i++) {
      if (vars[i].trim().contains("$")) {

      One can easily see the arrays will be of different length when an enviorment variable contains the , character.

      I don't understand why this logic is needed there though and the commit message only says "Trigger project by using parameters". sshelomentsev ?

            Assignee:
            huybrechts
            Reporter:
            Jakub Bochenski
            Archiver:
            Jenkins Service Account

              Created:
              Updated:
              Archived: