61 lines
1.3 KiB
Makefile
61 lines
1.3 KiB
Makefile
|
|
# execute default build
|
|
default: build
|
|
|
|
# builds the python module using poetry
|
|
build:
|
|
echo "building..."
|
|
poetry build
|
|
|
|
# print a message displaying whether nix is being used
|
|
checknix:
|
|
#!/usr/bin/env bash
|
|
set -euxo pipefail
|
|
if [[ "${DO_NIX_CUSTOM:=0}" -eq 1 ]]; then
|
|
echo "In an interactive nix env."
|
|
else
|
|
echo "Using poetry as runner, no nix detected."
|
|
fi
|
|
|
|
# run all tests
|
|
test: fmt
|
|
#!/usr/bin/env bash
|
|
set -euxo pipefail
|
|
|
|
if [[ "${DO_NIX_CUSTOM:=0}" -eq 1 ]]; then
|
|
echo "testing, using nix..."
|
|
flake8 deepdog tests
|
|
mypy deepdog
|
|
pytest
|
|
else
|
|
echo "testing..."
|
|
poetry run flake8 deepdog tests
|
|
poetry run mypy deepdog
|
|
poetry run pytest
|
|
fi
|
|
|
|
# format code
|
|
fmt:
|
|
#!/usr/bin/env bash
|
|
set -euxo pipefail
|
|
if [[ "${DO_NIX_CUSTOM:=0}" -eq 1 ]]; then
|
|
black .
|
|
else
|
|
poetry run black .
|
|
fi
|
|
find deepdog -type f -name "*.py" -exec sed -i -e 's/ /\t/g' {} \;
|
|
find tests -type f -name "*.py" -exec sed -i -e 's/ /\t/g' {} \;
|
|
|
|
# release the app, checking that our working tree is clean and ready for release, optionally takes target version
|
|
release version="":
|
|
#!/usr/bin/env bash
|
|
set -euxo pipefail
|
|
if [[ -n "{{version}}" ]]; then
|
|
./scripts/release.sh {{version}}
|
|
else
|
|
./scripts/release.sh
|
|
fi
|
|
|
|
htmlcov:
|
|
poetry run pytest --cov-report=html
|