Run a build via the Windows Subsystem for Linux on Windows 10

Brandon Kohn September 14, 2017

I'm trying to test running jobs in bamboo which invoke a script using the bash.exe from the WSL on Windows 10 (without much luck). In my test bamboo is running on a local account as a service which also happens to be my account (for testing). I have ubuntu bash shells open so-as to keep the WSL alive. I created a simple .sh script which does :

```
#!/bin/bash
echo "hello world"
```

Then in my task I setup the WSL bash as an executable ("c:\Windows\System32\bash.exe") and create a command task using that executable with arguments:

`-c "/mnt/c/path/to/my/script.sh"`


When I run it.. it just hangs. Does anyone have experience getting this to work? Thoughts?

 

1 answer

0 votes
Jeyanthan I
Atlassian Team
Atlassian Team members are employees working across the company in a wide variety of roles.
September 15, 2017

Hi,

Did you get any clue from the Build logs? Maybe it gives you a clue on why it hangs.

I suggest you to use script task in your plan and invoke your script like below by choosing powershell as the interpreter.

bash ./script.sh
Brandon Kohn September 15, 2017

I actually didn't find anything helpful in the build logs. I also tried using a script task. In each case it hangs as soon as wsl bash.exe is called. It actually hung all night when I left it to run.

Brandon Kohn September 15, 2017

At this point I would like to recreate the mechanism for how the call to bash or the script is made in a small test which mimics the way bamboo does it. My guess is that there is something about the calling context/environment which doesn't work with WSL.

Jeyanthan I
Atlassian Team
Atlassian Team members are employees working across the company in a wide variety of roles.
September 15, 2017

I guess it is because powershell doesn't close it's output stream properly and thus Bamboo wouldn't get exit 0 or 1 to decide if the task is a pass or fail. Check if this KB helps -  Powershell script hangs.

You should basically add a '-inputformat none' to the command argument.

-inputformat none -command

 

Jeyanthan I
Atlassian Team
Atlassian Team members are employees working across the company in a wide variety of roles.
November 23, 2017

Filed a feature request to track this (although this is not officially supported) - BAM-18870

Suggest an answer

Log in or Sign up to answer
TAGS
AUG Leaders

Atlassian Community Events