name: Unit-tests on Linux CPU on: pull_request: push: branches: - nightly - main - release/* workflow_dispatch: env: CHANNEL: "nightly" jobs: tests: strategy: matrix: python_version: ["3.8", "3.9", "3.10"] fail-fast: false uses: pytorch/test-infra/.github/workflows/linux_job.yml@main with: runner: linux.12xlarge repository: pytorch/vision script: | # Mark Build Directory Safe git config --global --add safe.directory /__w/vision/vision # Set up Environment Variables export PYTHON_VERSION="${{ matrix.python_version }}" export VERSION="cpu" export CUDATOOLKIT="cpuonly" # Set CHANNEL if [[ (${GITHUB_EVENT_NAME} = 'pull_request' && (${GITHUB_BASE_REF} = 'release'*)) || (${GITHUB_REF} = 'refs/heads/release'*) ]]; then export CHANNEL=test else export CHANNEL=nightly fi # Create Conda Env conda create -yp ci_env --quiet python="${PYTHON_VERSION}" numpy libpng jpeg scipy 'ffmpeg<4.3' conda activate /work/ci_env # Install PyTorch, Torchvision, and testing libraries set -ex conda install \ --yes \ -c "pytorch-${CHANNEL}" \ -c nvidia "pytorch-${CHANNEL}"::pytorch[build="*${VERSION}*"] \ "${CUDATOOLKIT}" python3 setup.py develop python3 -m pip install --progress-bar=off pytest pytest-mock 'av<10' # Run Tests python3 -m torch.utils.collect_env python3 -m pytest --junitxml=test-results/junit.xml --durations 20