Hudson cannot find powershell after upgrading to PowerShell 3

One of my tasks was needed for the ConvertTo-Json , available in powershell 3.0. So I installed WMF 3.0 on our Windows Server 2008 R2 (SP1). After rebooting, all my powershell using jobs result in an error:

 [workspace] $ powershell.exe "& 'C:\Users\HUDSON~1\AppData\Local\Temp\hudson1263303013566726397.ps1'" The system cannot find the file specified FATAL: command execution failed java.io.IOException: Cannot run program "powershell.exe" (in directory "C:\hudson\jobs\MyProject\workspace"): CreateProcess error=2, The system cannot find the file specified at java.lang.ProcessBuilder.start(ProcessBuilder.java:1029) at hudson.Proc$LocalProc.<init>(Proc.java:192) at hudson.Proc$LocalProc.<init>(Proc.java:164) at hudson.Launcher$LocalLauncher.launch(Launcher.java:639) at hudson.Launcher$ProcStarter.start(Launcher.java:274) at hudson.Launcher$ProcStarter.join(Launcher.java:281) at hudson.tasks.CommandInterpreter.perform(CommandInterpreter.java:84) at hudson.tasks.CommandInterpreter.perform(CommandInterpreter.java:60) at hudson.tasks.BuildStepMonitor$1.perform(BuildStepMonitor.java:19) at hudson.model.AbstractBuild$AbstractRunner.perform(AbstractBuild.java:630) at hudson.model.Build$RunnerImpl.build(Build.java:175) at hudson.model.Build$RunnerImpl.doRun(Build.java:137) at hudson.model.AbstractBuild$AbstractRunner.run(AbstractBuild.java:429) at hudson.model.Run.run(Run.java:1366) at hudson.model.FreeStyleBuild.run(FreeStyleBuild.java:46) at hudson.model.ResourceController.execute(ResourceController.java:88) at hudson.model.Executor.run(Executor.java:145) Caused by: java.io.IOException: CreateProcess error=2, The system cannot find the file specified at java.lang.ProcessImpl.create(Native Method) at java.lang.ProcessImpl.<init>(ProcessImpl.java:188) at java.lang.ProcessImpl.start(ProcessImpl.java:132) at java.lang.ProcessBuilder.start(ProcessBuilder.java:1021) ... 16 more 

Running powershell.exe from the command line is very simple.

What happened? How to fix it?

I use the Powershell plugin to run scripts and I cannot find any configuration area for it.

+3
source share
2 answers

After a day, we found the answer. We are still not sure why this happened, but the powershell directory has disappeared from the Hudson path. Then, although the PS3 was installed and the machine was restarted, Hudson for some reason did not take the new PATH variable.

Manually shutting down and restarting Hudson finally made him pick the correct PATH and fix the problem.

+5
source

George:

I had the same problem with the Task Scheduler right after installing PowerShell 3.0. Running simply "powershell" or "powershell.exe" as a scheduled task failed. The reboot of the machine was fixed (I could not just restart the task scheduler in Windows Server 2008 R2).

My hunch is what happens after a reboot when installing PS 3.0, the path is installed, and by this time all your automatic services (such as Task Scheduler or Hudson) have started.

So, let this be a warning to both friend and foe. When you install PowerShell 3.0, reboot twice!

+2
source

Source: https://habr.com/ru/post/987028/


All Articles