From 8fc7d6e27242b9955c6e4cb155cb27e4e33f0711 Mon Sep 17 00:00:00 2001 From: "Matthew W. Thompson" Date: Mon, 5 Feb 2024 11:16:29 -0600 Subject: [PATCH] Allow pytest 8 in deployment tests --- .github/workflows/CI.yml | 9 ----- .github/workflows/conda.yml | 58 +++++++++---------------------- .github/workflows/examples.yml | 30 ++++------------ devtools/conda-envs/conda.yaml | 9 ----- devtools/conda-envs/conda_oe.yaml | 11 ------ 5 files changed, 23 insertions(+), 94 deletions(-) delete mode 100644 devtools/conda-envs/conda.yaml delete mode 100644 devtools/conda-envs/conda_oe.yaml diff --git a/.github/workflows/CI.yml b/.github/workflows/CI.yml index 108edf8ed..fff552d58 100644 --- a/.github/workflows/CI.yml +++ b/.github/workflows/CI.yml @@ -1,14 +1,6 @@ name: CI on: - push: - branches: - - "main" - - "maintenance/.*" - pull_request: - branches: - - "main" - - "maintenance/.*" schedule: # Nightly tests run on main by default: # Scheduled workflows run on the latest commit on the default or base branch. @@ -41,7 +33,6 @@ jobs: env: OE_LICENSE: ${{ github.workspace }}/oe_license.txt - PACKAGE: openff PYTEST_ARGS: -r fE --tb=short -nauto COV: --cov=openff/toolkit --cov-config=setup.cfg --cov-append --cov-report=xml diff --git a/.github/workflows/conda.yml b/.github/workflows/conda.yml index 4e0d33b1d..98bc19ba8 100644 --- a/.github/workflows/conda.yml +++ b/.github/workflows/conda.yml @@ -1,6 +1,7 @@ name: Conda latest on: + push: release: types: - released @@ -20,59 +21,43 @@ jobs: strategy: fail-fast: false matrix: - os: [ubuntu-latest, macos-latest] - python-version: ["3.9", "3.10"] + os: [ubuntu-latest] + python-version: ["3.11"] openeye: ["true", "false"] env: - CI_OS: ${{ matrix.os }} OPENEYE: ${{ matrix.openeye }} - PYVER: ${{ matrix.python-version }} OE_LICENSE: ${{ github.workspace }}/oe_license.txt - PACKAGE: openff-toolkit + PYTEST_ARGS: -r fE --tb=short steps: - - uses: actions/checkout@v4 - - name: Vanilla install from conda uses: mamba-org/setup-micromamba@v1 - if: ${{ matrix.openeye == 'false' }} - with: - environment-file: devtools/conda-envs/conda.yaml - create-args: >- - python=${{ matrix.python-version }} - - name: Install from conda with OpenEye - uses: mamba-org/setup-micromamba@v1 - if: ${{ matrix.openeye == 'true' }} with: - environment-file: devtools/conda-envs/conda_oe.yaml + environment-name: latest-deployment create-args: >- python=${{ matrix.python-version }} + openff-toolkit-examples + pytest-xdist + pytest-rerunfailures - - name: Additional info about the build - run: | - uname -a - df -h - ulimit -a + - name: Install OpenEye Toolkits + if: ${{ matrix.openeye == 'true' }} + run: micromamba install openeye-toolkits -c openeye - name: Make oe_license.txt file from GH org secret "OE_LICENSE" + if: ${{ matrix.openeye == 'true' }} env: OE_LICENSE_TEXT: ${{ secrets.OE_LICENSE }} run: | echo "${OE_LICENSE_TEXT}" > ${OE_LICENSE} - name: Environment Information - run: | - conda info - conda list + run: micromamba info && micromamba list - name: Check installed toolkits run: | - # Checkout the state of the repo as of the last release (including RCs) export LATEST_TAG=$(git ls-remote --tags https://github.com/openforcefield/openff-toolkit.git | cut -f2 | grep -E "([0-9]+)\.([0-9]+)\.([0-9]+)$" | sort --version-sort | tail -1 | sed 's/refs\/tags\///') - git fetch --tags - git checkout tags/$LATEST_TAG - git log -1 | cat if [[ "$OPENEYE" == true ]]; then python -c "from openff.toolkit.utils.toolkits import OPENEYE_AVAILABLE; assert OPENEYE_AVAILABLE, 'OpenEye unavailable'" @@ -86,9 +71,6 @@ jobs: - name: Check that correct OFFTK version was installed run: | - # Go up one directory to ensure that we don't just load the OFFTK from the checked-out repo - cd ../ - export LATEST_TAG=$(git ls-remote --tags https://github.com/openforcefield/openff-toolkit.git | cut -f2 | grep -E "([0-9]+)\.([0-9]+)\.([0-9]+)$" | sort --version-sort | tail -1 | sed 's/refs\/tags\///') export FOUND_VER=$(python -c "import openff.toolkit; print(openff.toolkit.__version__)") @@ -102,20 +84,14 @@ jobs: exit 1 fi - cd openff-toolkit - - name: Test the package run: | - python -m pip install utilities/test_plugins - - pwd - ls - if [[ "$OPENEYE" == true ]]; then python -c "import openff.toolkit; print(openff.toolkit.__file__)" python -c "import openeye; print(openeye.oechem.OEChemIsLicensed())" fi - PYTEST_ARGS=" -r fE --tb=short --runslow openff/toolkit/_tests/conftest.py" - PYTEST_ARGS+=" --ignore=openff/toolkit/_tests/test_links.py" - pytest $PYTEST_ARGS openff + # PYTEST_ARGS+=" --runslow -x" + # PYTEST_ARGS+=" --ignore=openff/toolkit/_tests/test_links.py" + + python -m pytest --pyargs "openff.toolkit" $PYTEST_ARGS $COV --trace-config --ignore="_tests/test_examples.py" -x diff --git a/.github/workflows/examples.yml b/.github/workflows/examples.yml index d03bc2ec2..d2fc904d4 100644 --- a/.github/workflows/examples.yml +++ b/.github/workflows/examples.yml @@ -1,14 +1,6 @@ name: Examples on: - push: - branches: - - "main" - - "maintenance/.+" - pull_request: - branches: - - "main" - - "maintenance/.+" schedule: - cron: "0 0 * * *" @@ -66,24 +58,13 @@ jobs: create-args: >- python=${{ matrix.python-version }} - - name: Additional info about the build - run: | - uname -a - df -h - ulimit -a - - name: Make oe_license.txt file from GH org secret "OE_LICENSE" env: OE_LICENSE_TEXT: ${{ secrets.OE_LICENSE }} - run: | - echo "${OE_LICENSE_TEXT}" > ${OE_LICENSE} + run: echo "${OE_LICENSE_TEXT}" > ${OE_LICENSE} - name: Install package - run: | - # Maybe remove the packaged openff-toolkit, installed as a dependency of openmmforcefields - # and/or Interchange - micromamba remove --force openff-toolkit-base - python -m pip install . + run: python -m pip install . - name: Remove undesired toolkits run: | @@ -92,7 +73,7 @@ jobs: # so don't remove it. if [ ! -z "${{ env.PACKAGES_TO_REMOVE }}" ]; then for cpkg in ${{ env.PACKAGES_TO_REMOVE }}; do - if [[ $(conda list | grep $cpkg) ]]; then micromamba remove --force $cpkg --yes ; fi + if [[ $(micromamba list | grep $cpkg) ]]; then micromamba remove --force $cpkg --yes ; fi done fi @@ -119,10 +100,11 @@ jobs: python -c "from openff.toolkit.utils.toolkits import ${TK}_AVAILABLE; assert not ${TK}_AVAILABLE, '${TK} available'" done fi + - name: Environment Information run: | - conda info - conda list + micromamba info + micromamba list - name: Run example scripts run: | diff --git a/devtools/conda-envs/conda.yaml b/devtools/conda-envs/conda.yaml deleted file mode 100644 index ec34886aa..000000000 --- a/devtools/conda-envs/conda.yaml +++ /dev/null @@ -1,9 +0,0 @@ -name: latest-deployment -channels: - - conda-forge -dependencies: - # Base depends - - openff-toolkit-examples - # Tests - - pytest=7.4 - - pytest-rerunfailures diff --git a/devtools/conda-envs/conda_oe.yaml b/devtools/conda-envs/conda_oe.yaml deleted file mode 100644 index d379d4cb2..000000000 --- a/devtools/conda-envs/conda_oe.yaml +++ /dev/null @@ -1,11 +0,0 @@ -name: latest-deployment -channels: - - conda-forge - - openeye -dependencies: - # Base depends - - openff-toolkit-examples - # Tests - - openeye-toolkits - - pytest=7.4 - - pytest-rerunfailures