mirror of https://github.com/actions/setup-python
Add example of GraalPy to docs (#773)
This commit is contained in:
parent
b64ffcaf5b
commit
0ae58361cd
13
README.md
13
README.md
|
@ -34,6 +34,17 @@ steps:
|
||||||
python-version: 'pypy3.9'
|
python-version: 'pypy3.9'
|
||||||
- run: python my_script.py
|
- run: python my_script.py
|
||||||
```
|
```
|
||||||
|
|
||||||
|
**GraalPy**
|
||||||
|
```yaml
|
||||||
|
steps:
|
||||||
|
- uses: actions/checkout@v4
|
||||||
|
- uses: actions/setup-python@v4
|
||||||
|
with:
|
||||||
|
python-version: 'graalpy-22.3'
|
||||||
|
- run: python my_script.py
|
||||||
|
```
|
||||||
|
|
||||||
The `python-version` input is optional. If not supplied, the action will try to resolve the version from the default `.python-version` file. If the `.python-version` file doesn't exist Python or PyPy version from the PATH will be used. The default version of Python or PyPy in PATH varies between runners and can be changed unexpectedly so we recommend always setting Python version explicitly using the `python-version` or `python-version-file` inputs.
|
The `python-version` input is optional. If not supplied, the action will try to resolve the version from the default `.python-version` file. If the `.python-version` file doesn't exist Python or PyPy version from the PATH will be used. The default version of Python or PyPy in PATH varies between runners and can be changed unexpectedly so we recommend always setting Python version explicitly using the `python-version` or `python-version-file` inputs.
|
||||||
|
|
||||||
The action will first check the local [tool cache](docs/advanced-usage.md#hosted-tool-cache) for a [semver](https://github.com/npm/node-semver#versions) match. If unable to find a specific version in the tool cache, the action will attempt to download a version of Python from [GitHub Releases](https://github.com/actions/python-versions/releases) and for PyPy from the official [PyPy's dist](https://downloads.python.org/pypy/).
|
The action will first check the local [tool cache](docs/advanced-usage.md#hosted-tool-cache) for a [semver](https://github.com/npm/node-semver#versions) match. If unable to find a specific version in the tool cache, the action will attempt to download a version of Python from [GitHub Releases](https://github.com/actions/python-versions/releases) and for PyPy from the official [PyPy's dist](https://downloads.python.org/pypy/).
|
||||||
|
@ -82,7 +93,7 @@ See examples of using `cache` and `cache-dependency-path` for `pipenv` and `poet
|
||||||
- [Check latest version](docs/advanced-usage.md#check-latest-version)
|
- [Check latest version](docs/advanced-usage.md#check-latest-version)
|
||||||
- [Caching packages](docs/advanced-usage.md#caching-packages)
|
- [Caching packages](docs/advanced-usage.md#caching-packages)
|
||||||
- [Outputs and environment variables](docs/advanced-usage.md#outputs-and-environment-variables)
|
- [Outputs and environment variables](docs/advanced-usage.md#outputs-and-environment-variables)
|
||||||
- [Available versions of Python and PyPy](docs/advanced-usage.md#available-versions-of-python-and-pypy)
|
- [Available versions of Python and PyPy](advanced-usage.md#available-versions-of-python-pypy-and-graalpy)
|
||||||
- [Hosted tool cache](docs/advanced-usage.md#hosted-tool-cache)
|
- [Hosted tool cache](docs/advanced-usage.md#hosted-tool-cache)
|
||||||
- [Using `setup-python` with a self-hosted runner](docs/advanced-usage.md#using-setup-python-with-a-self-hosted-runner)
|
- [Using `setup-python` with a self-hosted runner](docs/advanced-usage.md#using-setup-python-with-a-self-hosted-runner)
|
||||||
- [Using `setup-python` on GHES](docs/advanced-usage.md#using-setup-python-on-ghes)
|
- [Using `setup-python` on GHES](docs/advanced-usage.md#using-setup-python-on-ghes)
|
||||||
|
|
|
@ -11,9 +11,10 @@
|
||||||
- [Outputs](advanced-usage.md#outputs)
|
- [Outputs](advanced-usage.md#outputs)
|
||||||
- [Environment variables](advanced-usage.md#environment-variables)
|
- [Environment variables](advanced-usage.md#environment-variables)
|
||||||
- [Using update-environment flag](advanced-usage.md#using-update-environment-flag)
|
- [Using update-environment flag](advanced-usage.md#using-update-environment-flag)
|
||||||
- [Available versions of Python and PyPy](advanced-usage.md#available-versions-of-python-and-pypy)
|
- [Available versions of Python and PyPy](advanced-usage.md#available-versions-of-python-pypy-and-graalpy)
|
||||||
- [Python](advanced-usage.md#python)
|
- [Python](advanced-usage.md#python)
|
||||||
- [PyPy](advanced-usage.md#pypy)
|
- [PyPy](advanced-usage.md#pypy)
|
||||||
|
- [GraalPy](advanced-usage.md#graalpy)
|
||||||
- [Hosted tool cache](advanced-usage.md#hosted-tool-cache)
|
- [Hosted tool cache](advanced-usage.md#hosted-tool-cache)
|
||||||
- [Using `setup-python` with a self-hosted runner](advanced-usage.md#using-setup-python-with-a-self-hosted-runner)
|
- [Using `setup-python` with a self-hosted runner](advanced-usage.md#using-setup-python-with-a-self-hosted-runner)
|
||||||
- [Windows](advanced-usage.md#windows)
|
- [Windows](advanced-usage.md#windows)
|
||||||
|
@ -459,7 +460,7 @@ Such a requirement on side-effect could be because you don't want your composite
|
||||||
update-environment: false
|
update-environment: false
|
||||||
- run: ${{ steps.cp310.outputs.python-path }} my_script.py
|
- run: ${{ steps.cp310.outputs.python-path }} my_script.py
|
||||||
```
|
```
|
||||||
## Available versions of Python and PyPy
|
## Available versions of Python, PyPy and GraalPy
|
||||||
### Python
|
### Python
|
||||||
|
|
||||||
`setup-python` is able to configure **Python** from two sources:
|
`setup-python` is able to configure **Python** from two sources:
|
||||||
|
@ -490,6 +491,11 @@ Such a requirement on side-effect could be because you don't want your composite
|
||||||
- PyPy < 7.3.3 are not available to install on-flight.
|
- PyPy < 7.3.3 are not available to install on-flight.
|
||||||
- If some versions are not available, you can open an issue in https://foss.heptapod.net/pypy/pypy/
|
- If some versions are not available, you can open an issue in https://foss.heptapod.net/pypy/pypy/
|
||||||
|
|
||||||
|
### GraalPy
|
||||||
|
|
||||||
|
`setup-python` is able to download GraalPy versions from the [official GraalPy repository](https://github.com/oracle/graalpython).
|
||||||
|
- All available versions that we can download are listed in [releases](https://github.com/oracle/graalpython/releases).
|
||||||
|
|
||||||
## Hosted tool cache
|
## Hosted tool cache
|
||||||
|
|
||||||
GitHub hosted runners have a tool cache that comes with a few versions of Python + PyPy already installed. This tool cache helps speed up runs and tool setup by not requiring any new downloads. There is an environment variable called `RUNNER_TOOL_CACHE` on each runner that describes the location of the tool cache with Python and PyPy installed. `setup-python` works by taking a specific version of Python or PyPy from this tool cache and adding it to PATH.
|
GitHub hosted runners have a tool cache that comes with a few versions of Python + PyPy already installed. This tool cache helps speed up runs and tool setup by not requiring any new downloads. There is an environment variable called `RUNNER_TOOL_CACHE` on each runner that describes the location of the tool cache with Python and PyPy installed. `setup-python` works by taking a specific version of Python or PyPy from this tool cache and adding it to PATH.
|
||||||
|
|
Loading…
Reference in New Issue