mirror of
https://github.com/egor-tensin/cleanup-path.git
synced 2025-05-01 00:59:32 +03:00
58 lines
2 KiB
Markdown
58 lines
2 KiB
Markdown
Clean up PATH
|
|
=============
|
|
|
|
[](https://github.com/egor-tensin/cleanup-path/actions/workflows/test.yml)
|
|
|
|
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 to `0`.
|
|
|
|
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 any `dirs`,
|
|
it might not clear your PATH completely.
|
|
Actions like `setup-python`, etc. seem to have a way to propagate their values
|
|
to PATH regardless.
|
|
Also, your `shell` 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-provided `cache` action wasn't able to find the `tar`
|
|
executable on windows-2016 images (windows-2019 images have it built-in under
|
|
C:\Windows).
|
|
Composite actions don't support having the `post` stage, so it became a
|
|
JavaScript action.
|
|
|
|
License
|
|
-------
|
|
|
|
Distributed under the MIT License.
|
|
See [LICENSE.txt] for details.
|
|
|
|
[LICENSE.txt]: LICENSE.txt
|