What happens when bamboo stops a build?

On linux one step of my build runs a bash script which in turn spawns a number of other processes. When the build is stopped in bamboo, I see that some of the processes continue to run on the build agent.

I assume that I need to clean up my processes when the build is being stopped, but I don't know exactly what happens when the stop occurs. How does bamboo implement the task stopping? Does it send the child process a signal? If so, which signal is it?

3 answers

1 accepted

This widget could not be displayed.

I don't know the exact mechanisms Bamboo uses when you stop a build, but we had to workaround the orphan process problem by creating an "orphan killer" daemon on the machine that periodically looked for Bamboo-owned processes with a parent PID of 1.

There is a "Hung Build Killer" plugin for Bamboo. I've never used it, but you may be able to peak at the source to get an idea of how it handles the orphaned processes.

Thanks, Brent. This isn't quite what I'm looking for - I'd like to be able to handle the stopping case in my scripts, but this is the most helpful information I've found.

This widget could not be displayed.

After writing a script to trap the signal the following takes place when you stop the build in the middle of it running a script

"Broke n Pipe" 
$SIG{PIPE} 

This widget could not be displayed.

Bamboo sends SIGTERM to the script.

Tested with Bamboo 6.4.1 on Linux, by creating the following script, running a build, then stopping it:

#!/bin/sh
trap 'echo sigterm handler > /tmp/bamboo.log' TERM
sleep 100 &
wait

Note that your SIGTERM handler will actually have to kill your own child processes, which isn't always trivial on Linux.

Suggest an answer

Log in or Sign up to answer
Atlassian Summit 2018

Meet the community IRL

Atlassian Summit is an excellent opportunity for in-person support, training, and networking.

Learn more
Community showcase
Posted Friday in Bitbucket

What is your #1 piece of advice to new users getting started using Bitbucket?

Hello Community! My name is Claire Maynard, and I’m a Product Marketing Manager on the Bitbucket team. I’m interested in hearing what advice or tips you have for new users getting started on ...

125 views 5 2
Join discussion

Atlassian User Groups

Connect with like-minded Atlassian users at free events near you!

Find a group

Connect with like-minded Atlassian users at free events near you!

Find my local user group

Unfortunately there are no AUG chapters near you at the moment.

Start an AUG

You're one step closer to meeting fellow Atlassian users at your local meet up. Learn more about AUGs

Groups near you