From b4f9c1006d8856e1820f78bc6792f0cdc9f62d65 Mon Sep 17 00:00:00 2001 From: Benjamin Bertrand <benjamin.bertrand@esss.se> Date: Fri, 13 Dec 2019 11:11:47 +0100 Subject: [PATCH] Speed up local tests on OSX Using a volume for postgres data makes the tests very slow on OSX. When running the tests, there is no need to persist the data (db is recreated before each session). `make db_test` should be used to start postgres without mounting the data volume (skip the docker-compose.override.yml). --- .gitignore | 1 + Makefile | 6 +++--- docker-compose.override.yml | 2 -- docker-compose.yml | 2 ++ 4 files changed, 6 insertions(+), 5 deletions(-) diff --git a/.gitignore b/.gitignore index 58d5bab..a2a9259 100644 --- a/.gitignore +++ b/.gitignore @@ -15,3 +15,4 @@ junit.xml /app/static/files/* !/app/static/files/.empty .vscode +.mypy_cache diff --git a/Makefile b/Makefile index 3daf9a4..9ed6d66 100644 --- a/Makefile +++ b/Makefile @@ -50,9 +50,9 @@ upgrade_db: ## upgrade the dev database test: ## run the tests (on current directory) docker-compose run --rm web pytest --cov=app -v -db_image: ## start postgres and redis to test the latest image -# Pass docker-compose.yml to skip docker-compose.override.yml - docker-compose -f docker-compose.yml up -d postgres redis +db_test: ## start required containers for test +# Pass docker-compose.yml to skip docker-compose.override.yml (db not mounted as volume for speed) + docker-compose -f docker-compose.yml up -d postgres redis elasticsearch worker test_image: ## run the tests (on the latest image) # Pass docker-compose.yml to skip docker-compose.override.yml diff --git a/docker-compose.override.yml b/docker-compose.override.yml index 7e98c78..477c1c3 100644 --- a/docker-compose.override.yml +++ b/docker-compose.override.yml @@ -12,8 +12,6 @@ services: command: flask run --host 0.0.0.0 --port 8000 ports: - "8000:8000" - volumes: - - .:/app worker: environment: LOCAL_SETTINGS: /app/settings.cfg diff --git a/docker-compose.yml b/docker-compose.yml index c0fe71f..302c81a 100644 --- a/docker-compose.yml +++ b/docker-compose.yml @@ -8,6 +8,8 @@ services: - postgres - redis - elasticsearch + volumes: + - .:/app worker: image: registry.esss.lu.se/ics-infrastructure/csentry:master container_name: csentry_worker -- GitLab