Fix babysitter script to work on Windows (Cygwin) builders
authorAndi McClure <andi.mcclure@xamarin.com>
Thu, 1 Dec 2016 19:07:48 +0000 (14:07 -0500)
committerAndi McClure <andi.mcclure@xamarin.com>
Thu, 1 Dec 2016 19:07:48 +0000 (14:07 -0500)
commit4d4769ed848d753f22edfce87bd8ae85dff4a7e4
treef61b49a7602e8cbbec1632c426de582f916e3330
parent6e4e09dfba4670be1904a56263b91fe9f0e27163
Fix babysitter script to work on Windows (Cygwin) builders

The babysitter script used for CI results was previously able to run
either on Windows or standard UNIX. However, the builders run Cygwin,
which turns out to need special support. To make Cygwin work two
changes were made:

1. Paths which are exported to Mono get filtered through `cygpath`.
Paths received back from Mono are filtered in reverse. The script now
tracks two sets of path strings.

2. Under certain circumstances in Cygwin, pgkill() attempts to close a
process group and finds it does not exist. My assumption is that this
is because it has already been closed. I dealt with this by simply
catching the failure and printing a warning.
scripts/ci/babysitter