# Python CircleCI 2.0 configuration file # # Check https://circleci.com/docs/2.0/language-python/ for more details # version: 2.0 references: install_deps: &install_deps run: name: Install Dependences command: | pip install "$TORCH_VERSION" --user pip install -r requirements.txt --user sudo pip install pytest pytest-cov pytest-flake8 pip install -r ./tests/requirements.txt --user tests: &tests run: name: Testing command: | python --version ; pip --version ; pip list py.test pytorch_lightning tests -v --doctest-modules --junitxml=test-reports/pytest_junit.xml no_output_timeout: 15m examples: &examples run: name: PL Examples command: | pip install -r ./pl_examples/requirements.txt --user python --version ; pip --version ; pip list py.test pl_examples -v --doctest-modules --junitxml=test-reports/pytest_junit.xml no_output_timeout: 15m install_pkg: &install_pkg run: name: Install package command: | virtualenv vEnv ; source vEnv/bin/activate pip install --editable . ; cd .. & python -c "import pytorch_lightning ; print(pytorch_lightning.__version__)" deactivate ; rm -rf vEnv create_pkg: &create_pkg run: name: Create package command: | sudo pip install twine==1.13.0 python setup.py sdist twine check dist/* python setup.py clean format: &format run: name: Formatting command: | python --version ; pip --version ; pip list flake8 make_docs: &make_docs run: name: Make Documentation command: | # sudo apt-get install pandoc pip install -r requirements.txt --user sudo pip install -r docs/requirements.txt # sphinx-apidoc -o ./docs/source ./pytorch_lightning **/test_* --force --follow-links cd docs; make clean ; make html --debug --jobs 2 SPHINXOPTS="-W" jobs: Build-Docs: docker: - image: circleci/python:3.7 steps: - checkout - *make_docs Formatting: docker: - image: circleci/python:3.7 environment: - TORCH_VERSION: "torch" steps: - checkout - *install_deps - *format PyTorch: docker: - image: circleci/python:3.7 environment: - TORCH_VERSION: "torch" steps: &steps - checkout - *install_deps - *tests - store_test_results: path: test-reports - store_artifacts: path: test-reports PyTorch-v1.1: docker: - image: circleci/python:3.6 environment: - TORCH_VERSION: "torch>=1.1, <1.2" steps: *steps PyTorch-v1.2: docker: - image: circleci/python:3.6 environment: - TORCH_VERSION: "torch>=1.2, <1.3" steps: *steps PyTorch-v1.3: docker: - image: circleci/python:3.6 environment: - TORCH_VERSION: "torch>=1.3, <1.4" steps: *steps PyTorch-v1.4: docker: - image: circleci/python:3.6 environment: - TORCH_VERSION: "torch>=1.4, <1.5" steps: *steps Examples: docker: - image: circleci/python:3.7 environment: - TORCH_VERSION: "torch" steps: - checkout - *install_deps - *examples Install-pkg: docker: - image: circleci/python:3.7 steps: - checkout - *create_pkg - *install_pkg workflows: version: 2 build: jobs: - Formatting - Build-Docs - PyTorch-v1.1 - PyTorch-v1.2 - PyTorch-v1.3 - PyTorch-v1.4 - Install-pkg - Examples