Spaces:
Configuration error
Configuration error
# | |
# Copyright (c) 2022 Intel Corporation | |
# | |
# Licensed under the Apache License, Version 2.0 (the "License"); | |
# you may not use this file except in compliance with the License. | |
# You may obtain a copy of the License at | |
# | |
# http://www.apache.org/licenses/LICENSE-2.0 | |
# | |
# Unless required by applicable law or agreed to in writing, software | |
# distributed under the License is distributed on an "AS IS" BASIS, | |
# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. | |
# See the License for the specific language governing permissions and | |
# limitations under the License. | |
# | |
# SPDX-License-Identifier: Apache-2.0 | |
# | |
# Note: These are just placeholders for future additions to Makefile. | |
# You can remove these comments later. | |
ACTIVATE_TLT_VENV = "tlt_dev_venv/bin/activate" | |
ACTIVATE_NOTEBOOK_VENV = "tlt_notebook_venv/bin/activate" | |
ACTIVATE_TEST_VENV = "tlt_test_venv/bin/activate" | |
ACTIVATE_DOCS_VENV = $(ACTIVATE_TEST_VENV) | |
# Customize sample test run commands | |
# PY_TEST_EXTRA_ARGS="'-vvv -k test_platform_util_with_no_args'" make test | |
# PY_TEST_EXTRA_ARGS="'--collect-only'" make test | |
PY_TEST_EXTRA_ARGS ?= "--durations=0" | |
tlt_test_venv: $(CURDIR)/tests/requirements-test.txt | |
@echo "Creating a virtualenv tlt_test_venv..." | |
@test -d tlt_test_venv || virtualenv -p python3 tlt_test_venv | |
@echo "Building the TLT API in tlt_test_venv env..." | |
@. $(ACTIVATE_TEST_VENV) && pip install --editable . | |
@echo "Installing test dependencies..." | |
@. $(ACTIVATE_TEST_VENV) && pip install -r $(CURDIR)/tests/requirements-test.txt | |
tlt_notebook_venv: $(CURDIR)/notebooks/requirements.txt | |
@echo "Creating a virtualenv tlt_notebook_venv..." | |
@test -d tlt_notebook_venv || virtualenv -p python3 tlt_notebook_venv | |
@echo "Installing TF & PYT notebook dependencies..." | |
@. $(ACTIVATE_NOTEBOOK_VENV) && pip install -r $(CURDIR)/notebooks/requirements.txt | |
test: unittest integration | |
unittest: tlt_test_venv | |
@echo "Testing unit test API..." | |
@. $(ACTIVATE_TEST_VENV) && PYTHONPATH=$(CURDIR)/tests py.test -vvv -s $(PY_TEST_EXTRA_ARGS) "-k not integration and not skip" | |
integration: tlt_test_venv | |
@echo "Testing integration test API..." | |
@. $(ACTIVATE_TEST_VENV) && PYTHONPATH=$(CURDIR)/tests py.test -vvv -s $(PY_TEST_EXTRA_ARGS) "-k integration and not skip" | |
lint: tlt_test_venv | |
@echo "Style checks..." | |
@. $(ACTIVATE_TEST_VENV) && flake8 tlt tests downloader | |
clean: | |
rm -rf tlt_test_venv | |
tlt_docs_venv: tlt_test_venv $(CURDIR)/docs/requirements-docs.txt | |
@echo "Installing docs dependencies..." | |
@. $(ACTIVATE_DOCS_VENV) && pip install -r $(CURDIR)/docs/requirements-docs.txt | |
html: tlt_docs_venv | |
@echo "Building Sphinx documentation..." | |
@. $(ACTIVATE_DOCS_VENV) && $(MAKE) -C docs clean html | |
test_docs: html | |
@echo "Testing Sphinx documentation..." | |
@. $(ACTIVATE_DOCS_VENV) && $(MAKE) -C docs doctest | |
tlt_notebook_venv: tlt_test_venv | |
@echo "Installing notebook dependencies..." | |
@. $(ACTIVATE_TEST_VENV) && pip install -r $(CURDIR)/notebooks/requirements.txt | |
test_notebook_custom: tlt_notebook_venv | |
@echo "Testing Jupyter notebooks with custom datasets..." | |
@. $(ACTIVATE_TEST_VENV) && \ | |
bash run_notebooks.sh $(CURDIR)/notebooks/image_classification/tlt_api_tf_image_classification/TLT_TF_Image_Classification_Transfer_Learning.ipynb remove_for_custom_dataset && \ | |
bash run_notebooks.sh $(CURDIR)/notebooks/image_classification/tlt_api_pyt_image_classification/TLT_PyTorch_Image_Classification_Transfer_Learning.ipynb remove_for_custom_dataset && \ | |
bash run_notebooks.sh $(CURDIR)/notebooks/text_classification/tlt_api_tf_text_classification/TLT_TF_Text_Classification.ipynb remove_for_custom_dataset && \ | |
bash run_notebooks.sh $(CURDIR)/notebooks/text_classification/tlt_api_pyt_text_classification/TLT_PYT_Text_Classification.ipynb remove_for_custom_dataset | |
test_notebook_catalog: tlt_notebook_venv | |
@echo "Testing Jupyter notebooks with public catalog datasets..." | |
@. $(ACTIVATE_TEST_VENV) && \ | |
bash run_notebooks.sh $(CURDIR)/notebooks/image_classification/tlt_api_tf_image_classification/TLT_TF_Image_Classification_Transfer_Learning.ipynb remove_for_tf_dataset && \ | |
bash run_notebooks.sh $(CURDIR)/notebooks/image_classification/tlt_api_pyt_image_classification/TLT_PyTorch_Image_Classification_Transfer_Learning.ipynb remove_for_tv_dataset && \ | |
bash run_notebooks.sh $(CURDIR)/notebooks/text_classification/tlt_api_tf_text_classification/TLT_TF_Text_Classification.ipynb remove_for_tf_dataset && \ | |
bash run_notebooks.sh $(CURDIR)/notebooks/text_classification/tlt_api_pyt_text_classification/TLT_PYT_Text_Classification.ipynb remove_for_hf_dataset | |
test_tf_notebook: tlt_notebook_venv | |
@. $(ACTIVATE_TEST_VENV) && bash run_notebooks.sh tensorflow | |
test_pyt_notebook: tlt_notebook_venv | |
@. $(ACTIVATE_TEST_VENV) && bash run_notebooks.sh pytorch | |
dist: tlt_docs_venv | |
@echo "Create binary wheel..." | |
@. $(ACTIVATE_DOCS_VENV) && python setup.py bdist_wheel | |
check_dist: dist | |
@echo "Testing the wheel..." | |
@. $(ACTIVATE_DOCS_VENV) && \ | |
pip install twine && \ | |
python setup.py bdist_wheel && \ | |
twine check dist/* | |