Showing results for 
Search instead for 
Did you mean: 
Pilot Lvl 1
Message 1 of 5

Append PATH on Windows

Solved! Go to Solution.

I'm trying to install, but I fail to add it to the PATH environment variable for subsequent steps. I tried:


set PATH=C:\Users\runneradmin\scoop\shims;%PATH%





[Environment]::SetEnvironmentVariable("Path", $env:Path, [System.EnvironmentVariableTarget]::Machine)

(with a modified $env:Path).


When I print the PATH variable in the next step, it always remains unchanged. What's the correct way to do this?

4 Replies
GitHub Staff
Message 2 of 5

Re: Append PATH on Windows

Each step is run its own process space so environment changes do not automatically propgate.  If you want to update the path you can use the `add-path` command as documented  

Pilot Lvl 1
Message 3 of 5

Re: Append PATH on Windows

Thanks a lot, this worked without problems!


I saw this page before but somehow thought that it only applied to the Node.js toolkit.

Mission Specialist Lvl 1
Message 4 of 5

Re: Append PATH on Windows

The cited documentation suggests the modification is seen by all subsequent steps in the job.  So it would seem at odds with your assertion that each step is its own process.


I've not been able to get `::add-path::/path/to/dir` to augment PATH, either within the step or within the job.  Would appreciate sample yaml that augments the PATH variable, as the documentation offers none.

Copilot Lvl 2
Message 5 of 5

Re: Append PATH on Windows

It seems like the correct way on Windows is (contrary to the doc):

      - name: Add strawperryperl to the PATH to override the existing Perl installation so we can compile OpenSSL locally
        run: echo "##[add-path]C:\strawberry\c\bin;C:\strawberry\perl\site\bin;C:\strawberry\perl\bin"
        if: matrix.os == 'windows'