I am trying to use PowerShell scripts as part of a custom build job. The PS script is started but never ends. I have read that PS can't be called directly from Bamboo. I did get this to work using a batch file to launch PowerShell but this seems a poor solution.
You must be a registered user to add a comment. If you've already registered, sign in. Otherwise, register and sign in.
You can also run script files as follows:
-NonInteractive -ExecutionPolicy Unrestricted -File C:\Path-to\Script.ps1 "arg" arg
You must be a registered user to add a comment. If you've already registered, sign in. Otherwise, register and sign in.
I have found this solution is less reliable with Bamboo 5.1. Instead I've created a small bat file which is where my 'powershell' executable now points to. It contains:
REM http://serverfault.com/questions/437504/why-does-psexec-hang-after-successfully-running-a-powershell-script SET ps=C:\WINDOWS\system32\WindowsPowerShell\v1.0\powershell.exe C:\Windows\System32\cmd.exe /c "echo . | %ps% -NonInteractive -ExecutionPolicy Unrestricted -File D:\%1.ps1 %2 %3 %4 %5 %6"
Then I have a number of powershell scripts in the same folder including an all-purpose one called Exec.ps1 which contains:
param([string]$command) #replacement for -command "some-power-shell-stuff" < NUL invoke-expression $command
You must be a registered user to add a comment. If you've already registered, sign in. Otherwise, register and sign in.
Hi guys,
You are welcome to check out the PowerShell Task plugin for Bamboo! It handles all nasty stuff and lets you just create and run PowerShell scripts without a hassle.
You must be a registered user to add a comment. If you've already registered, sign in. Otherwise, register and sign in.
Hi,
Still have issues getting error codes returned to bamboo. I have created a batch file and configure it as a global command:
C:\Windows\System32\cmd.exe /c "echo aaa | C:\Windows\System32\WindowsPowerShell\v1.0\powershell.exe %*; exit $LASTEXITCODE"
But still no exitcode in sight - any hints?
You must be a registered user to add a comment. If you've already registered, sign in. Otherwise, register and sign in.
you can just run:
E:\>powershell -command "& {YourPSCommand}"
E:\>powershell -command "& {get-childitem}"
You must be a registered user to add a comment. If you've already registered, sign in. Otherwise, register and sign in.
I tried creating a batchfile (see below) where the argument is the PS script file. This works but task completes before the script does. The department seems heavily invested in Powershell but I'd be open to hearing other scripting solutions.
C:\Windows\System32\cmd.exe /c "echo aaa | C:\Windows\System32\WindowsPowerShell\v1.0\powershell.exe %*"
You must be a registered user to add a comment. If you've already registered, sign in. Otherwise, register and sign in.
How about:
start c:\path\to\powershell
?
You must be a registered user to add a comment. If you've already registered, sign in. Otherwise, register and sign in.
start /wait
?
You must be a registered user to add a comment. If you've already registered, sign in. Otherwise, register and sign in.
This did run the script, however the Bamboo task started and finished basically instantly, and there was no log output or anything.
You must be a registered user to add a comment. If you've already registered, sign in. Otherwise, register and sign in.
Same result: Instant task completion and no log of any kind, although the script did execute.
You must be a registered user to add a comment. If you've already registered, sign in. Otherwise, register and sign in.
Some suggestions on stackoverflow, although none of them seem especially convincing: http://stackoverflow.com/questions/2041799/powershell-script-gets-stuck-doesnt-exit-when-called-from-batch-file
You must be a registered user to add a comment. If you've already registered, sign in. Otherwise, register and sign in.
I've never tried integrating Powershell with Bamboo before, but have you tried adding an explicit "exit" command at the end of your PS script to force the console to close?
You must be a registered user to add a comment. If you've already registered, sign in. Otherwise, register and sign in.
Yes, I've tried exit 0 and exit -1, but in both cases the task kept running.
You must be a registered user to add a comment. If you've already registered, sign in. Otherwise, register and sign in.
I'm having the same issue. The powershell task doesn't exit, either using a command task, or a script task.
You must be a registered user to add a comment. If you've already registered, sign in. Otherwise, register and sign in.
I created a task with PowerShell as the executable. My script is the argument. When the Plan is run I can see that PowerShell is launched against my script. But the Plan never exits.
You must be a registered user to add a comment. If you've already registered, sign in. Otherwise, register and sign in.
Does it work if you use Script Task and set the Inline Script to:
c:\path\to\Powershell.exe YourScript
?
You must be a registered user to add a comment. If you've already registered, sign in. Otherwise, register and sign in.
How are you currently starting PS?
You must be a registered user to add a comment. If you've already registered, sign in. Otherwise, register and sign in.
You must be a registered user to add a comment. If you've already registered, sign in. Otherwise, register and sign in.