2021-11-17 18:31:22 +08:00
|
|
|
name: e2e-cache
|
|
|
|
|
|
|
|
on:
|
|
|
|
pull_request:
|
|
|
|
paths-ignore:
|
|
|
|
- '**.md'
|
|
|
|
push:
|
|
|
|
branches:
|
|
|
|
- main
|
|
|
|
- releases/*
|
|
|
|
paths-ignore:
|
|
|
|
- '**.md'
|
2024-06-28 02:18:32 +08:00
|
|
|
workflow_dispatch:
|
2021-11-17 18:31:22 +08:00
|
|
|
|
|
|
|
permissions:
|
|
|
|
contents: read
|
|
|
|
jobs:
|
|
|
|
python-pip-dependencies-caching:
|
|
|
|
name: Test pip (Python ${{ matrix.python-version}}, ${{ matrix.os }})
|
|
|
|
runs-on: ${{ matrix.os }}
|
|
|
|
strategy:
|
|
|
|
fail-fast: false
|
|
|
|
matrix:
|
2024-10-24 21:38:22 +08:00
|
|
|
os: [ubuntu-latest, windows-latest, macos-latest, macos-13]
|
|
|
|
python-version: ['3.9', 'pypy-3.9-v7.x', '3.10', 'pypy-3.10-v7.x']
|
2021-11-17 18:31:22 +08:00
|
|
|
steps:
|
2023-11-08 18:16:06 +08:00
|
|
|
- uses: actions/checkout@v4
|
2021-11-17 18:31:22 +08:00
|
|
|
- name: Setup Python
|
|
|
|
uses: ./
|
|
|
|
with:
|
|
|
|
python-version: ${{ matrix.python-version }}
|
|
|
|
cache: 'pip'
|
|
|
|
- name: Install dependencies
|
|
|
|
run: pip install numpy pandas requests
|
|
|
|
|
|
|
|
python-pipenv-dependencies-caching:
|
|
|
|
name: Test pipenv (Python ${{ matrix.python-version}}, ${{ matrix.os }})
|
|
|
|
runs-on: ${{ matrix.os }}
|
|
|
|
strategy:
|
|
|
|
fail-fast: false
|
|
|
|
matrix:
|
2024-10-24 21:38:22 +08:00
|
|
|
os: [ubuntu-latest, windows-latest, macos-latest, macos-13]
|
|
|
|
python-version: ['3.9', 'pypy-3.9-v7.x', '3.10', 'pypy-3.10-v7.x']
|
2021-11-17 18:31:22 +08:00
|
|
|
steps:
|
2023-11-08 18:16:06 +08:00
|
|
|
- uses: actions/checkout@v4
|
2021-11-17 18:31:22 +08:00
|
|
|
- name: Setup Python
|
2023-07-13 20:11:40 +08:00
|
|
|
id: cache-pipenv
|
2021-11-17 18:31:22 +08:00
|
|
|
uses: ./
|
|
|
|
with:
|
|
|
|
python-version: ${{ matrix.python-version }}
|
|
|
|
cache: 'pipenv'
|
2022-01-26 23:54:54 +08:00
|
|
|
- name: Install pipenv
|
2022-06-30 01:09:14 +08:00
|
|
|
run: curl https://raw.githubusercontent.com/pypa/pipenv/master/get-pipenv.py | python
|
2023-07-13 20:11:40 +08:00
|
|
|
- name: Prepare environment
|
2022-06-30 02:16:07 +08:00
|
|
|
shell: pwsh
|
2022-04-04 21:12:24 +08:00
|
|
|
run: |
|
2022-06-30 01:09:14 +08:00
|
|
|
mv ./__tests__/data/Pipfile.lock .
|
|
|
|
mv ./__tests__/data/Pipfile .
|
2023-07-13 20:11:40 +08:00
|
|
|
mv ./__tests__/test-pipenv.py .
|
|
|
|
- name: Install dependencies
|
|
|
|
shell: pwsh
|
|
|
|
if: steps.cache-pipenv.outputs.cache-hit != 'true'
|
|
|
|
run: |
|
2022-06-30 02:28:20 +08:00
|
|
|
if ("${{ matrix.python-version }}" -Match "pypy") {
|
2023-07-13 20:11:40 +08:00
|
|
|
pipenv install --python pypy # --keep-outdated
|
2022-06-30 02:38:02 +08:00
|
|
|
} else {
|
2023-07-13 20:11:40 +08:00
|
|
|
pipenv install --python ${{ matrix.python-version }} # --keep-outdated
|
2022-06-30 02:16:07 +08:00
|
|
|
}
|
2023-07-13 20:11:40 +08:00
|
|
|
- name: Run Python Script
|
|
|
|
run: pipenv run python test-pipenv.py
|
2021-11-17 18:31:22 +08:00
|
|
|
|
2021-11-24 22:50:35 +08:00
|
|
|
python-poetry-dependencies-caching:
|
|
|
|
name: Test poetry (Python ${{ matrix.python-version}}, ${{ matrix.os }})
|
|
|
|
runs-on: ${{ matrix.os }}
|
|
|
|
strategy:
|
|
|
|
fail-fast: false
|
|
|
|
matrix:
|
2024-10-24 21:38:22 +08:00
|
|
|
os: [ubuntu-latest, windows-latest, macos-latest, macos-13]
|
|
|
|
python-version: ['3.9', 'pypy-3.9-v7.x', '3.10', 'pypy-3.10-v7.x']
|
2021-11-24 22:50:35 +08:00
|
|
|
steps:
|
2023-11-08 18:16:06 +08:00
|
|
|
- uses: actions/checkout@v4
|
2021-11-24 22:50:35 +08:00
|
|
|
- name: Install poetry
|
|
|
|
run: pipx install poetry
|
2022-07-25 21:02:06 +08:00
|
|
|
- name: Init pyproject.toml
|
|
|
|
run: mv ./__tests__/data/pyproject.toml .
|
2021-11-24 22:50:35 +08:00
|
|
|
- name: Setup Python
|
|
|
|
uses: ./
|
|
|
|
with:
|
|
|
|
python-version: ${{ matrix.python-version }}
|
|
|
|
cache: 'poetry'
|
|
|
|
- name: Install dependencies
|
2022-07-25 21:02:06 +08:00
|
|
|
run: poetry install
|
2021-11-24 22:50:35 +08:00
|
|
|
|
2021-11-17 18:31:22 +08:00
|
|
|
python-pip-dependencies-caching-path:
|
2024-06-28 02:18:32 +08:00
|
|
|
name: Test pip (Python ${{ matrix.python-version}}, ${{ matrix.os }}, caching path)
|
2021-11-17 18:31:22 +08:00
|
|
|
runs-on: ${{ matrix.os }}
|
|
|
|
strategy:
|
|
|
|
fail-fast: false
|
|
|
|
matrix:
|
2024-10-24 21:38:22 +08:00
|
|
|
os: [ubuntu-latest, windows-latest, macos-latest, macos-13]
|
|
|
|
python-version: ['3.9', 'pypy-3.9-v7.x', '3.10', 'pypy-3.10-v7.x']
|
2021-11-17 18:31:22 +08:00
|
|
|
steps:
|
2023-11-08 18:16:06 +08:00
|
|
|
- uses: actions/checkout@v4
|
2021-11-17 18:31:22 +08:00
|
|
|
- name: Setup Python
|
|
|
|
uses: ./
|
|
|
|
with:
|
|
|
|
python-version: ${{ matrix.python-version }}
|
|
|
|
cache: 'pip'
|
|
|
|
cache-dependency-path: __tests__/data/requirements.txt
|
|
|
|
- name: Install dependencies
|
|
|
|
run: pip install numpy pandas requests
|
|
|
|
|
|
|
|
python-pipenv-dependencies-caching-path:
|
2024-06-28 02:18:32 +08:00
|
|
|
name: Test pipenv (Python ${{ matrix.python-version}}, ${{ matrix.os }}, caching path)
|
2021-11-17 18:31:22 +08:00
|
|
|
runs-on: ${{ matrix.os }}
|
|
|
|
strategy:
|
|
|
|
fail-fast: false
|
|
|
|
matrix:
|
2024-10-24 21:38:22 +08:00
|
|
|
os: [ubuntu-latest, windows-latest, macos-latest, macos-13]
|
|
|
|
python-version: ['3.9', 'pypy-3.9-v7.x', '3.10', 'pypy-3.10-v7.x']
|
2021-11-17 18:31:22 +08:00
|
|
|
steps:
|
2023-11-08 18:16:06 +08:00
|
|
|
- uses: actions/checkout@v4
|
2021-11-17 18:31:22 +08:00
|
|
|
- name: Setup Python
|
2023-07-13 20:11:40 +08:00
|
|
|
id: cache-pipenv
|
2021-11-17 18:31:22 +08:00
|
|
|
uses: ./
|
|
|
|
with:
|
|
|
|
python-version: ${{ matrix.python-version }}
|
|
|
|
cache: 'pipenv'
|
2022-04-04 21:12:24 +08:00
|
|
|
cache-dependency-path: '**/pipenv-requirements.txt'
|
2022-01-26 23:54:54 +08:00
|
|
|
- name: Install pipenv
|
2022-06-30 01:09:14 +08:00
|
|
|
run: curl https://raw.githubusercontent.com/pypa/pipenv/master/get-pipenv.py | python
|
2023-07-13 20:11:40 +08:00
|
|
|
- name: Prepare environment
|
2022-06-30 02:16:07 +08:00
|
|
|
shell: pwsh
|
2022-04-04 21:12:24 +08:00
|
|
|
run: |
|
2022-06-30 01:09:14 +08:00
|
|
|
mv ./__tests__/data/Pipfile.lock .
|
|
|
|
mv ./__tests__/data/Pipfile .
|
2023-07-13 20:11:40 +08:00
|
|
|
mv ./__tests__/test-pipenv.py .
|
|
|
|
- name: Install dependencies
|
|
|
|
shell: pwsh
|
|
|
|
if: steps.cache-pipenv.outputs.cache-hit != 'true'
|
|
|
|
run: |
|
2022-06-30 02:28:20 +08:00
|
|
|
if ("${{ matrix.python-version }}" -Match "pypy") {
|
2023-07-13 20:11:40 +08:00
|
|
|
pipenv install --python pypy # --keep-outdated
|
2022-06-30 02:38:02 +08:00
|
|
|
} else {
|
2023-07-13 20:11:40 +08:00
|
|
|
pipenv install --python ${{ matrix.python-version }} # --keep-outdated
|
2023-03-09 18:44:56 +08:00
|
|
|
}
|
2023-07-13 20:11:40 +08:00
|
|
|
- name: Run Python Script
|
|
|
|
run: pipenv run python test-pipenv.py
|