I am trying to run a pipeline with sh
instead of bat
on Windows.
I have added the following paths in the global properties:
C:\Program Files\Git\usr\bin
C:\Program Files\Git\bin
but it still does not work.
When I run the pipeline, I get the following error message:
[pipeline] sh
/usr/bin/sh: C:\Program Files\Git\bin\sh.exe: Command not found
[pipeline] }
Note that the file sh.exe
is located in the folder C:\Program Files\Git\bin\
However, if I use a Freestyle project with Execute Shell
, it works correctly.
What else can I do to fix the problem?
CodePudding user response:
One thing you can do is to set the path variable when the pipeline is running. So basically you run this batch command within your pipeline:
SET PATH=PATH;"C:\Program Files\Git\bin"
and now, if you were to run sh
as a batch command, it should refer to the sh.exe
in "C:\Program Files\Git\bin
CodePudding user response:
It turns out that the space in Program Files
was the one that was causing problems when trying to run the pipeline. Therefore sh.exe
was not found in C:\Program Files\Git\bin\
.
So I had to move Git\bin
location somewhere else where there are no spaces in the path.