Skip to content

test

test #3519

Workflow file for this run

name: 'build'
on:
push:
branches:
- "main"
pull_request:
branches:
- '*'
schedule:
- cron: "30 2 * * *"
branches:
- "main"
jobs:
check_skip:
runs-on: ubuntu-latest
outputs:
skip: ${{ steps.result_step.outputs.ci-skip }}
steps:
- uses: actions/checkout@v3
with:
fetch-depth: 0
- id: result_step
uses: mstachniuk/ci-skip@master
with:
commit-filter: '[skip ci];[ci skip];[skip github]'
commit-filter-separator: ';'
latest:
needs: check_skip
if: ${{ needs.check_skip.outputs.skip == 'false' }}
runs-on: ${{ matrix.os }}
strategy:
fail-fast: false
matrix:
os: ["ubuntu-latest", "macos-latest", "windows-latest"]
python-version: ["3.10", "3.11", "3.12"]
# Install the min or latest dependencies for skrub
# as defined in setup.cfg at [options.extra_require].
#
# Installing these extra dependencies will overwrite the already
# installed version defined at install_requires.
dependencies-version-type: ["minimal", "latest"]
include:
- os: "ubuntu-latest"
os-name: "Ubuntu"
- os: "macos-latest"
os-name: "MacOS"
- os: "windows-latest"
os-name: "Windows"
- dependencies-version: "dev"
- dependencies-version: "dev, pyarrow"
python-version: "3.11"
- dependencies-version: "dev, polars"
python-version: "3.11"
- dependencies-version: "dev, polars"
python-version: "3.12"
- dependencies-version: "dev, min-py310"
python-version: "3.10"
dependencies-version-type: "minimal"
name: ${{ matrix.os-name }} with Python ${{ matrix.python-version }} and ${{ matrix.dependencies-version-type }} dependencies
defaults:
run:
shell: bash
steps:
- uses: actions/checkout@v3
- uses: actions/setup-python@v4
with:
python-version: ${{ matrix.python-version }}
name: 'Setup python'
- shell: bash {0}
run: ./build_tools/github/install.sh
name: 'Install skrub'
env:
DEPS_VERSION: ${{ matrix.dependencies-version }}
- shell: bash {0}
run: |
cp $GITHUB_WORKSPACE/pyproject.toml .
$GITHUB_WORKSPACE/build_tools/github/test.sh
working-directory: ${{ runner.temp }}
name: 'Run tests'
- uses: codecov/codecov-action@v3
with:
directory: ${{ runner.temp }}
verbose: true
if: success()
name: 'Upload coverage to CodeCov'
run_nightly:
runs-on: ubuntu-latest
outputs:
run: ${{ github.event_name == 'schedule' || contains(steps.get_head_commit_message.outputs.COMMIT_MSG, '[deps nightly]') }}
steps:
- uses: actions/checkout@v3
with:
ref: ${{ github.event.pull_request.head.sha }}
- id: get_head_commit_message
name: get head commit message
run: echo "COMMIT_MSG=$(git show -s --format=%s)" >> "$GITHUB_OUTPUT"
nightly:
needs: run_nightly
if: ${{ needs.run_nightly.outputs.run == 'true' }}
runs-on: ubuntu-latest
name: test against nighlty dependencies
steps:
- uses: actions/checkout@v3
- uses: actions/setup-python@v4
with:
python-version: "3.11"
name: 'Setup python'
- shell: bash {0}
run: ./build_tools/github/install.sh
name: 'Install skrub'
env:
INSTALL_NIGHTLY: "true"
DEPS_VERSION: "dev"
- shell: bash {0}
run: ./build_tools/github/test.sh
name: 'Run tests'