Newer
Older
DOCKER_COMPOSE_DEV = docker-compose
DOCKER_COMPOSE_CI = docker-compose -f docker-compose.yml
DOCKER_COMPOSE = $(DOCKER_COMPOSE_DEV)
VENV = venv
PIP = $(VENV)/bin/pip
PYTHON = $(VENV)/bin/python
NOT_SLOW_PYTEST_ARGS = -m 'not slow'
ARGS =
venv-clean:
@if [ -d "$(VENV)" ]; then \
rm -rf "$(VENV)"; \
$(PIP) install -r requirements.build.txt
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
$(PIP) install -r requirements.prereq.txt
$(PIP) install -r requirements.txt
$(PIP) install -r requirements.dev.txt
dev-nltk-download-models:
$(PYTHON) -m nltk.downloader punkt
dev-venv: venv-create dev-install dev-nltk-download-models
dev-flake8:
$(PYTHON) -m flake8 sciencebeam_gym tests setup.py
dev-pylint:
$(PYTHON) -m pylint sciencebeam_gym tests setup.py
dev-lint: dev-flake8 dev-pylint
dev-pytest:
$(PYTHON) -m pytest -p no:cacheprovider $(ARGS)
.dev-watch:
$(PYTHON) -m pytest_watch -- -p no:cacheprovider -p no:warnings $(ARGS)
dev-watch-slow:
@$(MAKE) .dev-watch
dev-watch:
@$(MAKE) ARGS="$(ARGS) $(NOT_SLOW_PYTEST_ARGS)" .dev-watch
dev-test: dev-lint dev-pytest
build:
$(DOCKER_COMPOSE) build sciencebeam-gym
$(DOCKER_COMPOSE) build sciencebeam-gym-base-dev sciencebeam-gym-dev
test: build-dev
$(DOCKER_COMPOSE) run --rm sciencebeam-gym-dev ./project_tests.sh
$(DOCKER_COMPOSE) run --rm sciencebeam-gym-dev pytest $(ARGS)
@$(MAKE) ARGS="$(ARGS) $(NOT_SLOW_PYTEST_ARGS)" pytest
.require-AUTOCUT_MODEL_PATH:
@if [ -z "$(AUTOCUT_MODEL_PATH)" ]; then \
echo "AUTOCUT_MODEL_PATH required"; \
exit 1; \
fi
shell-dev:
$(DOCKER_COMPOSE) run --rm sciencebeam-gym bash
autocut-start: .require-AUTOCUT_MODEL_PATH build
$(DOCKER_COMPOSE) run --rm \
-v "$(AUTOCUT_MODEL_PATH):/tmp/model.pkl" \
-e "AUTOCUT_MODEL_PATH=/tmp/model.pkl" \
-p $(PORT):8080 \
sciencebeam-gym \
start-autocut.sh
autocut-start-cloud: .require-AUTOCUT_MODEL_PATH build
$(DOCKER_COMPOSE) run --rm \
-v $$HOME/.config/gcloud:/root/.config/gcloud \
-e "AUTOCUT_MODEL_PATH=$(AUTOCUT_MODEL_PATH)" \
-p $(PORT):8080 \
make DOCKER_COMPOSE="$(DOCKER_COMPOSE_CI)" build test