Uploaded image for project: 'Jenkins'
  1. Jenkins
  2. JENKINS-32538

Provide an 'async' build option

XMLWordPrintable

    • Icon: Improvement Improvement
    • Resolution: Unresolved
    • Icon: Minor Minor
    • build-flow-plugin
    • None

      As an alternative to creating parallel blocks, it'd be very useful to have an async build option. That way, you don't have to depend on all jobs within one side of the parallel block to finish before going on to the next step:

      parallel (
          { build('job1')
             build('job2')},
          {build('job3')}
      )
      build('job4')
      

      In the above, job4 would require job1, 2, and 3 all to complete. Instead:

      async(build('job3')) //Long-running job, doesn't interfere with some other builds
      build('job1')
      build('job2')
      build('job4')
      

      Would allow Job3 to 'run in the background' of all other jobs. This could be synced with an 'await' too, that wouldn't launch a job until a certain prior job has completed.

      job3 = async(build('job3')) 
      build('job1')
      build('job2')
      build('job4')
      await(job3, build('job5')) // Requires some data from job3 before executing
      

            Unassigned Unassigned
            astraw38 Ashley Straw
            Votes:
            2 Vote for this issue
            Watchers:
            2 Start watching this issue

              Created:
              Updated: