Details
-
Bug
-
Resolution: Duplicate
-
Low
-
None
-
4.2.1
Description
I created a new project, DEBUG, which has four plans in it: MASTER, SLAVE1, SLAVE2, and SLAVE3. All three slaves are dependencies of MASTER. Each of the four plans has a single job which runs the script, timeloop.rb. Each of those jobs requires an agent with "Debugger=1". There are only two agents (local) with that capability.
Timeloop.rb takes a single command line argument. The script loops for the number of times specified by that argument. The loop sleeps for 1 second then prints a message. At the end of the script, it prints a line indicating that the script has finished. In MASTER, timeloop.rb is set to run for 5 seconds. SLAVE1, SLAVE2, and SLAVE3 are set for 30, 60, and 90 respectively.
If when MASTER is run, it runs 5 seconds, then ends and queues all three slaves. SLAVE1 and 2 run immediately, SLAVE3 remains queued. When the script in SLAVE1 ends, Bamboo waits for SLAVE2 to end before starting SLAVE3.
timeloop.rb
$stdout.sync = true time = ARGV[0].to_i for i in 0..time sleep 1 puts "Sleeping " + i.to_s + "\n"; end puts "timeloop.rb finished\n"