Clean up PATH
This GitHub action cleans up the PATH variable.
The PATH variable on Windows runners is a cesspool. For example, it includes seemingly dozens of MinGW distributions. This action takes a page out of MSYS2's book here, and cleans PATH so that only the default paths are included.
Use it in your workflow like this:
- name: Clean up PATH
uses: egor-tensin/cleanup-path@v4
- You can pass additional directory paths to add to PATH using the
dirs
parameter. - System directories under C:\Windows are added to PATH by default.
Disable this by setting the
default
parameter to0
.
API
Input | Value | Default | Description |
---|---|---|---|
dirs | empty | ✓ | No additional paths. |
any | Additional paths, separated by a semicolon (;). | ||
default | 1 | ✓ | Add the default directories under C:\Windows. |
any | Don't add the default directories. |
The action sets the PATH environment variable.
Notes
- Even if you call the action with
default: 0
and don't specify anydirs
, it might not clear your PATH completely. Actions likesetup-python
, etc. seem to have a way to propagate their values to PATH regardless. Also, yourshell
selection matters. - v1 of this action is a simple composite action with the same API.
At some point, it turned out that restoring PATH value might be desirable in
the action's
post
stage. In particular, the GitHub-providedcache
action wasn't able to find thetar
executable on windows-2016 images (windows-2019 images have it built-in under C:\Windows). Composite actions don't support having thepost
stage, so it became a JavaScript action.
License
Distributed under the MIT License. See LICENSE.txt for details.