Skip to content

Fix the CI

Fix the CI #3288

Workflow file for this run

name: check
on:
push:
tags-ignore: ["**"]
pull_request:
schedule:
- cron: "0 8 * * *"
concurrency:
group: ${{ github.workflow }}-${{ github.ref }}
cancel-in-progress: true
jobs:
test:
name: test ${{ matrix.py }} - ${{ matrix.os }}
if: github.event_name != 'schedule' || github.repository_owner == 'pypa'
runs-on: ${{ matrix.os }}
strategy:
fail-fast: false
matrix:
py:
# - "3.12.0-beta.2"
# - "3.11"
# - "3.10"
# - "3.9"
# - "3.8"
# - "3.7"
- pypy-3.9
# - pypy-3.8
# - pypy-3.7
os:
# - ubuntu-latest
# - macos-latest
- windows-latest
# include:
# - { os: macos-latest, py: "[email protected]" }
# - { os: macos-latest, py: "[email protected]" }
steps:
- uses: taiki-e/install-action@cargo-binstall
- name: Install OS dependencies
run: |
set -x
for i in 1 2 3; do
echo "try $i" && \
${{ runner.os == 'Linux' && 'sudo apt-get update -y && sudo apt-get install snapd fish csh -y' || true }} && \
${{ runner.os == 'Linux' && 'cargo binstall -y nu' || true }} && \
${{ runner.os == 'macOS' && 'brew install fish tcsh nushell' || true }} && \
${{ runner.os == 'Windows' && 'choco install nushell' || true }} && \
exit 0 || true;
sleep 1
done
exit 1
shell: bash
- name: Setup python for tox
uses: actions/setup-python@v4
with:
python-version: "3.11"
- name: Install tox
run: python -m pip install tox pip -U
- uses: actions/checkout@v3
with:
fetch-depth: 0
- name: Use local virtualenv for tox
run: python -m pip install .
- name: Setup brew python for test ${{ matrix.py }}
if: startsWith(matrix.py,'brew@')
run: |
set -e
PY=$(echo '${{ matrix.py }}' | cut -c 6-)
brew upgrade python@$PY || brew install python@$PY
echo "/usr/local/opt/python@$PY/libexec/bin" >>"${GITHUB_PATH}"
shell: bash
- name: Setup python for test ${{ matrix.py }}
if: "!( startsWith(matrix.py,'brew@') || endsWith(matrix.py, '-dev') )"
uses: actions/setup-python@v4
with:
python-version: ${{ matrix.py }}
- name: Pick environment to run
run: |
import os; import platform; import sys; from pathlib import Path
env = f'TOXENV=py{"" if platform.python_implementation() == "CPython" else "py"}3{sys.version_info.minor}'
print(f"Picked: {env} for {sys.version} based of {sys.executable}")
with Path(os.environ["GITHUB_ENV"]).open("ta") as file_handler:
file_handler.write(env)
shell: python
- name: Setup test suite
run: tox -vv --notest
- name: Run test suite
run: tox --skip-pkg-install
env:
PYTEST_ADDOPTS: "-vv --durations=20"
CI_RUN: "yes"
DIFF_AGAINST: HEAD
#
# check:
# name: ${{ matrix.tox_env }} - ${{ matrix.os }}
# if: github.event_name != 'schedule' || github.repository_owner == 'pypa'
# runs-on: ${{ matrix.os }}
# strategy:
# fail-fast: false
# matrix:
# os:
# - ubuntu-latest
# - windows-latest
# tox_env:
# - dev
# - docs
# - readme
# - upgrade
# - zipapp
# exclude:
# - { os: windows-latest, tox_env: readme }
# - { os: windows-latest, tox_env: docs }
# steps:
# - uses: actions/checkout@v3
# with:
# fetch-depth: 0
# - name: Setup Python "3.11"
# uses: actions/setup-python@v4
# with:
# python-version: "3.11"
# - name: Install tox
# run: python -m pip install tox
# - name: Run check for ${{ matrix.tox_env }}
# run: python -m tox -e ${{ matrix.tox_env }}
# env:
# UPGRADE_ADVISORY: "yes"