mirror of
https://github.com/actions/setup-python.git
synced 2025-04-24 23:42:13 +00:00
* upstream/main: (33 commits) Fix virtual-env toolcache links Updated @actions/cache (#382) ci(workflow): add 'npm' cache for actions/setup-node in .github/workflows (#379) Cache hit output (#373) Add pyton-version to setup PyPy output (#365) Rework pipenv caching test (#375) Update README.md to fix setup-python version in example (#368) dist fix (#367) Cache on ghes (#363) Update dist Use `\n` instead of `os.EOL` Update dist Initialise pyproject.toml Build and format Remove console.log Remove unused file Reduce test matrix Parse values from poetry Release Add more tests ...
127 lines
3.3 KiB
YAML
127 lines
3.3 KiB
YAML
name: Validate Python e2e
|
|
on:
|
|
push:
|
|
branches:
|
|
- main
|
|
paths-ignore:
|
|
- '**.md'
|
|
pull_request:
|
|
paths-ignore:
|
|
- '**.md'
|
|
schedule:
|
|
- cron: 30 3 * * *
|
|
workflow_dispatch:
|
|
|
|
jobs:
|
|
default-version:
|
|
name: Setup default version
|
|
runs-on: ${{ matrix.os }}
|
|
strategy:
|
|
fail-fast: false
|
|
matrix:
|
|
os: [macos-latest, windows-latest, ubuntu-18.04, ubuntu-20.04]
|
|
steps:
|
|
- name: Checkout
|
|
uses: actions/checkout@v2
|
|
|
|
- name: setup default python
|
|
uses: ./
|
|
|
|
- name: Validate version
|
|
run: python --version
|
|
|
|
- name: Run simple python code
|
|
run: python -c 'import math; print(math.factorial(5))'
|
|
|
|
setup-versions-from-manifest:
|
|
name: Setup ${{ matrix.python }} ${{ matrix.os }}
|
|
runs-on: ${{ matrix.os }}
|
|
strategy:
|
|
fail-fast: false
|
|
matrix:
|
|
os: [macos-latest, windows-latest, ubuntu-18.04, ubuntu-20.04]
|
|
python: [3.5.4, 3.6.7, 3.7.5, 3.8.1]
|
|
steps:
|
|
- name: Checkout
|
|
uses: actions/checkout@v2
|
|
|
|
- name: setup-python ${{ matrix.python }}
|
|
uses: ./
|
|
with:
|
|
python-version: ${{ matrix.python }}
|
|
|
|
- name: Validate version
|
|
run: |
|
|
$pythonVersion = (python --version)
|
|
if ("Python ${{ matrix.python }}" -ne "$pythonVersion"){
|
|
Write-Host "The current version is $pythonVersion; expected version is ${{ matrix.python }}"
|
|
exit 1
|
|
}
|
|
$pythonVersion
|
|
shell: pwsh
|
|
|
|
- name: Run simple code
|
|
run: python -c 'import math; print(math.factorial(5))'
|
|
|
|
setup-versions-from-file:
|
|
name: Setup ${{ matrix.python }} ${{ matrix.os }} version file
|
|
runs-on: ${{ matrix.os }}
|
|
strategy:
|
|
fail-fast: false
|
|
matrix:
|
|
os: [macos-latest, windows-latest, ubuntu-18.04, ubuntu-20.04]
|
|
python: [3.5.4, 3.6.7, 3.7.5, 3.8.1]
|
|
steps:
|
|
- name: Checkout
|
|
uses: actions/checkout@v2
|
|
|
|
- name: build-version-file ${{ matrix.python }}
|
|
run: echo ${{ matrix.python }} > .python-version
|
|
|
|
- name: setup-python ${{ matrix.python }}
|
|
uses: ./
|
|
with:
|
|
python-version-file: '.python-version'
|
|
|
|
- name: Validate version
|
|
run: |
|
|
$pythonVersion = (python --version)
|
|
if ("Python ${{ matrix.python }}" -ne "$pythonVersion"){
|
|
Write-Host "The current version is $pythonVersion; expected version is ${{ matrix.python }}"
|
|
exit 1
|
|
}
|
|
$pythonVersion
|
|
shell: pwsh
|
|
|
|
- name: Run simple code
|
|
run: python -c 'import math; print(math.factorial(5))'
|
|
|
|
setup-pre-release-version-from-manifest:
|
|
name: Setup 3.9.0-beta.4 ${{ matrix.os }}
|
|
runs-on: ${{ matrix.os }}
|
|
strategy:
|
|
fail-fast: false
|
|
matrix:
|
|
os: [macos-latest, windows-latest, ubuntu-18.04, ubuntu-20.04]
|
|
steps:
|
|
- name: Checkout
|
|
uses: actions/checkout@v2
|
|
|
|
- name: setup-python 3.9.0-beta.4
|
|
uses: ./
|
|
with:
|
|
python-version: '3.9.0-beta.4'
|
|
|
|
- name: Validate version
|
|
run: |
|
|
$pythonVersion = (python --version)
|
|
if ("Python 3.9.0b4" -ne "$pythonVersion"){
|
|
Write-Host "The current version is $pythonVersion; expected version is 3.9.0b4"
|
|
exit 1
|
|
}
|
|
$pythonVersion
|
|
shell: pwsh
|
|
|
|
- name: Run simple code
|
|
run: python -c 'import math; print(math.factorial(5))'
|
|
|