forked from kedro-org/kedro-plugins
-
Notifications
You must be signed in to change notification settings - Fork 0
/
Makefile
70 lines (52 loc) · 2.71 KB
/
Makefile
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
package:
cd $(plugin);\
rm -Rf dist;\
python -m build
pypi:
python -m pip install twine -U
python -m twine upload $(plugin)/dist/*
install: package
cd $(plugin) && pip install -U dist/*.whl
install-pip-setuptools:
python -m pip install -U pip setuptools wheel
lint:
pre-commit run -a --hook-stage manual ruff-$(plugin) && pre-commit run trailing-whitespace --all-files && pre-commit run end-of-file-fixer --all-files && pre-commit run check-yaml --all-files && pre-commit run check-added-large-files --all-files && pre-commit run check-case-conflict --all-files && pre-commit run check-merge-conflict --all-files && pre-commit run debug-statements --all-files && pre-commit run black-$(plugin) --all-files --hook-stage manual && pre-commit run secret_scan --all-files --hook-stage manual && pre-commit run bandit --all-files --hook-stage manual
test:
cd $(plugin) && pytest tests --cov-config pyproject.toml --numprocesses 4 --dist loadfile
# Run test_tensorflow_model_dataset separately, because these tests are flaky when run as part of the full test-suite
dataset-tests:
cd kedro-datasets && pytest tests --cov-config pyproject.toml --numprocesses 4 --dist loadfile --ignore tests/tensorflow
cd kedro-datasets && pytest tests/tensorflow/test_tensorflow_model_dataset.py --no-cov
test-sequential:
cd $(plugin) && pytest tests --cov-config pyproject.toml
e2e-tests:
cd $(plugin) && behave
secret-scan:
trufflehog --max_depth 1 --exclude_paths trufflehog-ignore.txt .
clean:
cd $(plugin);\
rm -rf build dist pip-wheel-metadata .pytest_cache;\
find . -regex ".*/__pycache__" -exec rm -rf {} +;\
find . -regex ".*\.egg-info" -exec rm -rf {} +;\
install-test-requirements:
cd $(plugin) && pip install ".[test]"
install-pre-commit:
pre-commit install --install-hooks
uninstall-pre-commit:
pre-commit uninstall
pre-commit uninstall --hook-type pre-push
sign-off:
echo "git interpret-trailers --if-exists doNothing \c" >> .git/hooks/commit-msg
echo '--trailer "Signed-off-by: $$(git config user.name) <$$(git config user.email)>" \c' >> .git/hooks/commit-msg
echo '--in-place "$$1"' >> .git/hooks/commit-msg
chmod +x .git/hooks/commit-msg
# kedro-datasets related only
test-no-spark:
cd kedro-datasets && pytest tests --no-cov --ignore tests/spark --ignore tests/databricks --numprocesses 4 --dist loadfile
test-no-spark-sequential:
cd kedro-datasets && pytest tests --no-cov --ignore tests/spark --ignore tests/databricks
# kedro-datasets/snowflake tests skipped from default scope
test-snowflake-only:
cd kedro-datasets && pytest tests --no-cov --numprocesses 1 --dist loadfile -m snowflake
rtd:
cd kedro-datasets && python -m sphinx -WETan -j auto -D language=en -b linkcheck -d _build/doctrees docs/source _build/linkcheck