Skip to content

cherrypick '[RELEASE-ONLY CHANGES] Specific conda token for test chan… #809

cherrypick '[RELEASE-ONLY CHANGES] Specific conda token for test chan…

cherrypick '[RELEASE-ONLY CHANGES] Specific conda token for test chan… #809

name: Integration Test
on:
pull_request:
branches: [main]
workflow_dispatch:
jobs:
tests:
strategy:
matrix:
python_version: ["3.8"]
fail-fast: false
uses: pytorch/test-infra/.github/workflows/linux_job.yml@main
with:
runner: linux.12xlarge
repository: pytorch/text
script: |
# Mark Build Directory Safe
git config --global --add safe.directory /__w/text/text
# 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 python="${PYTHON_VERSION}"
conda activate /work/ci_env
python3 -m pip --quiet install cmake>=3.18.0 ninja
conda env update --file ".circleci/unittest/linux/scripts/environment.yml" --prune
# TorchText-specific Setup
printf "* Downloading SpaCy English models\n"
python -m spacy download en_core_web_sm
printf "* Downloading SpaCy German models\n"
python -m spacy download de_core_news_sm
# Install PyTorch, Torchvision, and TorchData
set -ex
conda install \
--yes \
-c "pytorch-${CHANNEL}" \
-c nvidia "pytorch-${CHANNEL}"::pytorch[build="*${VERSION}*"] \
"${CUDATOOLKIT}"
printf "Installing torchdata nightly\n"
python3 -m pip install --pre torchdata --index-url https://download.pytorch.org/whl/nightly/cpu
python3 setup.py develop
# Install integration test dependencies
python3 -m pip --quiet install parameterized
python3 -m pip --quiet install requests
python3 -m pip --quiet install sentencepiece
python3 -m pip --quiet install tqdm
python3 -m pip --quiet install expecttest
# Run Tests
python3 -m torch.utils.collect_env
cd test
pytest integration_tests -v --use-tmp-hub-dir