forked from TrueCloudLab/frostfs-testcases
42 lines
No EOL
1.2 KiB
Makefile
42 lines
No EOL
1.2 KiB
Makefile
SHELL := /bin/bash
|
|
PYTHON_VERSION := 3.10
|
|
VENV_NAME = frostfs-testcases-${PYTHON_VERSION}
|
|
VENV_DIR := venv.${VENV_NAME}
|
|
|
|
current_dir := $(shell pwd)
|
|
FROM_VENV := . ${VENV_DIR}/bin/activate &&
|
|
|
|
venv: create requirements paths precommit
|
|
@echo Ready
|
|
|
|
precommit:
|
|
@echo Isntalling pre-commit hooks
|
|
${FROM_VENV} pre-commit install
|
|
|
|
paths:
|
|
@echo Append paths for project
|
|
@echo Virtual environment: ${VENV_DIR}
|
|
@rm -rf ${VENV_DIR}/lib/python${PYTHON_VERSION}/site-packages/_paths.pth
|
|
@touch ${VENV_DIR}/lib/python${PYTHON_VERSION}/site-packages/_paths.pth
|
|
@echo ${current_dir} | tee ${VENV_DIR}/lib/python${PYTHON_VERSION}/site-packages/_paths.pth
|
|
|
|
create: ${VENV_DIR}
|
|
|
|
${VENV_DIR}:
|
|
@echo Create virtual environment ${VENV_DIR}
|
|
virtualenv --python=python${PYTHON_VERSION} --prompt=${VENV_NAME} ${VENV_DIR}
|
|
|
|
requirements:
|
|
@echo Isntalling pip requirements
|
|
${FROM_VENV} pip install -e ../frostfs-testlib
|
|
${FROM_VENV} pip install -Ur requirements.txt
|
|
${FROM_VENV} pip install -Ur requirements_dev.txt
|
|
|
|
|
|
#### VALIDATION SECTION ####
|
|
lint: create requirements
|
|
${FROM_VENV} pip install -e ../frostfs-testlib;
|
|
${FROM_VENV} pylint --disable R,C,W pytest_tests
|
|
|
|
validation: lint
|
|
${FROM_VENV} pytest --collect-only
|