Triggering a build with a parameterized node label to run on the same node doesn't work in most cases because it will take an addition executor on the node.

XMLWordPrintable

      If you have a parametrized job that you attempt to use node lables with for spawning a prerequisite build that cannot run with other builds running on the same node,eg. a set of MSI installer tests, the down stream job has to run on a different node.
      Example:
      if I have a project in the following state.
      JOB_NAME:test msi installer
      NODE_NAME:the_node #only 1 executor.. nothing should be running when we are running an msi installer.
      1rst build step:
      trigger parameterized build:run_install
      with:"Block until triggered projects"=True
      with:node lable parameter
      with: name=label
      with: parameter=$NODE_NAME

      When the root build is triggered, the first thing it will do is trigger a build on the sub project and wait for it to finish. However, when the sub build project, in the example run_install, starts running, it will take an additional executor on the node. This creates a hang which will go on forever or until the build times out or is canceled. The hang occurs because the sub job is waiting for an executor on the_node that is being taken by the job that kicked it off and is waiting for it to finish, the root job; a deadlock of resources. Jenkins should free up and then reserve executors for jobs that are running on the same node during the build process to fix issues like this.

            Assignee:
            Unassigned
            Reporter:
            Russell Weber
            Votes:
            0 Vote for this issue
            Watchers:
            2 Start watching this issue

              Created:
              Updated: