mirror of
				https://gitea.com/actions/setup-python.git
				synced 2025-10-31 19:58:55 +08:00 
			
		
		
		
	Update README.md
This commit is contained in:
		
							
								
								
									
										49
									
								
								README.md
									
									
									
									
									
								
							
							
						
						
									
										49
									
								
								README.md
									
									
									
									
									
								
							| @@ -28,7 +28,7 @@ Matrix Testing: | ||||
| ```yaml | ||||
| jobs: | ||||
|   build: | ||||
|     runs-on: ubuntu-16.04 | ||||
|     runs-on: ubuntu-latest | ||||
|     strategy: | ||||
|       matrix: | ||||
|         python-version: [ '2.x', '3.x', 'pypy2', 'pypy3' ] | ||||
| @@ -42,6 +42,53 @@ jobs: | ||||
|           architecture: x64 | ||||
|       - run: python my_script.py | ||||
| ``` | ||||
|  | ||||
| Exclude a specific Python version: | ||||
| ```yaml | ||||
| jobs: | ||||
|   build: | ||||
|     runs-on: ubuntu-latest | ||||
|     strategy: | ||||
|       matrix: | ||||
|         os: [ubuntu-latest, macos-latest, windows-latest] | ||||
|         python-version: [2.7, 3.6, 3.7, 3.8, pypy2, pypy3] | ||||
|         exclude: | ||||
|           - os: macos-latest | ||||
|             python-version: 3.8 | ||||
|           - os: windows-latest | ||||
|             python-version: 3.6 | ||||
|     steps: | ||||
|       - uses: actions/checkout@v1 | ||||
|       - name: Set up Python | ||||
|         uses: actions/setup-python@v1 | ||||
|         with: | ||||
|           python-version: ${{ matrix.python-version }} | ||||
|       - name: Display Python version | ||||
|         run: python -c "import sys; print(sys.version)" | ||||
| ``` | ||||
|  | ||||
| # Getting started with Python + Actions | ||||
|  | ||||
| Check out our detailed guide on using [Python with GitHub Actions](https://help.github.com/en/actions/automating-your-workflow-with-github-actions/using-python-with-github-actions). | ||||
|  | ||||
| # Hosted Tool Cache | ||||
|  | ||||
| GitHub hosted runners have a tools cache that comes with Python + PyPy already installed. This tools 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 this tools cache and there is where you will find Python and PyPy installed. `setup-python` works by taking a specific version of Python or PyPy in this tools cache and adding it to PATH. | ||||
|  | ||||
| || Location | | ||||
| |------|-------| | ||||
| |**Tool Cache Directory** |`RUNNER_TOOL_CACHE`| | ||||
| |**Python Tool Cache**|`RUNNER_TOOL_CACHE/Python/*`| | ||||
| |**PyPy Tool Cache**|`RUNNER_TOOL_CACHE/PyPy/*`| | ||||
|  | ||||
| GitHub virtual environments are setup in [actions/virtual-environments](https://github.com/actions/virtual-environments). During the setup, the available versions of Python and PyPy are automatically downloaded, setup and documented. | ||||
| - [Tools cache setup for Ubuntu](https://github.com/actions/virtual-environments/blob/master/images/linux/scripts/installers/1804/hosted-tool-cache.sh) | ||||
| - [Tools cache setup for Windows](https://github.com/actions/virtual-environments/blob/master/images/win/scripts/Installers/Download-ToolCache.ps1) | ||||
|  | ||||
| # Using Python without `setup-python` | ||||
|  | ||||
| `setup-python` helps keep your dependencies explicit and ensures consistent behavior between different runners. If you use `python` in a shell on a GitHub hosted runner without `setup-python` it will default to whatever is in PATH. The default version of Python in PATH vary between runners and can change unexpectedly so we recommend you always use `setup-python`. | ||||
|  | ||||
| # Available versions of Python | ||||
|  | ||||
| For detailed information regarding the available versions of Python that are installed see [Software installed on GitHub-hosted runners](https://help.github.com/en/actions/automating-your-workflow-with-github-actions/software-installed-on-github-hosted-runners) | ||||
|   | ||||
		Reference in New Issue
	
	Block a user
	 Konrad Pabjan
					Konrad Pabjan