From cfab7475d79c5457989ce878a6c333871e1703aa Mon Sep 17 00:00:00 2001 From: kthoden Date: Tue, 8 Sep 2020 11:03:17 +0200 Subject: [PATCH 1/4] Switch to SQLite database --- docker-compose.yaml | 26 +++++++++++++------------- scripts/config/env_default.conf | 4 ++-- scripts/init.py | 6 +++--- src/eoa/settings.py | 17 ++++++++++++----- 4 files changed, 30 insertions(+), 23 deletions(-) diff --git a/docker-compose.yaml b/docker-compose.yaml index 11bfc8a..3ad24c7 100644 --- a/docker-compose.yaml +++ b/docker-compose.yaml @@ -2,22 +2,22 @@ version: '3.7' services: - db: - image: postgres:11 - volumes: - - ./${DATABASE_DATA_DIR}:${DATABASE_DATA_DIR_IN_CONTAINER} - container_name: ${DB_CONTAINER} - user: ${USER}:${GROUP} - environment: - # postgres data dir - - PGDATA=${DATABASE_DATA_DIR_IN_CONTAINER} - # postgres user - - POSTGRES_USER=postgres + # db: + # image: postgres:11 + # volumes: + # - ./${DATABASE_DATA_DIR}:${DATABASE_DATA_DIR_IN_CONTAINER} + # container_name: ${DB_CONTAINER} + # user: ${USER}:${GROUP} + # environment: + # # postgres data dir + # - PGDATA=${DATABASE_DATA_DIR_IN_CONTAINER} + # # postgres user + # - POSTGRES_USER=postgres # eoa-django webserver: - depends_on: - - db + # depends_on: + # - db build: . image: ${WEB_SERVER_IMAGE} container_name: ${WEB_SERVER_CONTAINER} diff --git a/scripts/config/env_default.conf b/scripts/config/env_default.conf index 4d45193..6dc8aec 100644 --- a/scripts/config/env_default.conf +++ b/scripts/config/env_default.conf @@ -13,8 +13,8 @@ DEPENDENCIES_DIR=dependencies RUNTIME_DIR=runtime_data -DATABASE_DATA_DIR=${RUNTIME_DIR}/postgres_data -DATABASE_DATA_DIR_IN_CONTAINER=/eoa/postgres_data +# DATABASE_DATA_DIR=${RUNTIME_DIR}/postgres_data +# DATABASE_DATA_DIR_IN_CONTAINER=/eoa/postgres_data SRC_DIR=src SRC_DIR_IN_CONTAINER=/eoa/server diff --git a/scripts/init.py b/scripts/init.py index 8b30523..031484a 100755 --- a/scripts/init.py +++ b/scripts/init.py @@ -39,9 +39,9 @@ def create_dirs( config ): BASE_DIR / config['RES_DIR'] / "static/custom_static" ) - create_dir( - BASE_DIR / config['DATABASE_DATA_DIR'] - ) + # create_dir( + # BASE_DIR / config['DATABASE_DATA_DIR'] + # ) """ this extra copy is necessary in order to diff --git a/src/eoa/settings.py b/src/eoa/settings.py index 14f7f4a..a889b7a 100644 --- a/src/eoa/settings.py +++ b/src/eoa/settings.py @@ -127,11 +127,18 @@ DATABASES = { 'default': { - 'ENGINE': 'django.db.backends.postgresql', - 'NAME': 'postgres', - 'USER': 'postgres', - 'HOST': 'db', - 'PORT': '5432', + 'CONN_MAX_AGE': 0, + 'ENGINE': 'django.db.backends.sqlite3', + 'HOST': 'localhost', + 'NAME': 'project.db', + 'PASSWORD': '', + 'PORT': '', + 'USER': '' + # 'ENGINE': 'django.db.backends.postgresql', + # 'NAME': 'postgres', + # 'USER': 'postgres', + # 'HOST': 'db', + # 'PORT': '5432', } } From e07ac766906d3b6c7892d954f1b48b7ee77c136f Mon Sep 17 00:00:00 2001 From: kthoden Date: Tue, 8 Sep 2020 11:03:27 +0200 Subject: [PATCH 2/4] Update requirements --- requirements.txt | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/requirements.txt b/requirements.txt index bb56e08..006e084 100644 --- a/requirements.txt +++ b/requirements.txt @@ -4,7 +4,7 @@ Django==3.0.9 django-auth-ldap==2.0.0 django-classy-tags==2.0.0 django-cms==3.7.4 -django-eoapublications @ git+https://github.molgen.mpg.de/EditionOpenAccess/django-eoapublications@a89d22a3f4d9e1bb20f018233bfe84b218807086 +django-eoapublications @ git+https://github.molgen.mpg.de/EditionOpenAccess/django-eoapublications@adfa6c9186254499f28358d945095f854ebff2d3 django-eoaforthcoming @ git+https://github.molgen.mpg.de/EditionOpenAccess/django-eoaforthcoming@fd0a16b1f83c66eafdb1b62d7a74b3cc262d8a1c django-eoaseries @ git+https://github.molgen.mpg.de/EditionOpenAccess/django-eoaseries@79f410cc53ca447c35235349ebf50a4a7d9da3e8 django-eoaauthors @ git+https://github.molgen.mpg.de/EditionOpenAccess/django-eoaauthors@8ff542d051c7811e0ef0d22b2e3487d7cdb3d892 @@ -34,7 +34,7 @@ gunicorn==20.0.4 html5lib==1.1 lxml==4.5.2 Pillow==7.2.0 -pkg-resources==0.0.0 +pkg-resources pyasn1==0.4.6 pyasn1-modules==0.2.6 python-ldap==3.2.0 From 668d0e87b5b4112b5850d28e352d110f408f230f Mon Sep 17 00:00:00 2001 From: kthoden Date: Tue, 8 Sep 2020 12:01:26 +0200 Subject: [PATCH 3/4] Remove requirement --- requirements.txt | 1 - 1 file changed, 1 deletion(-) diff --git a/requirements.txt b/requirements.txt index 006e084..a5c68e0 100644 --- a/requirements.txt +++ b/requirements.txt @@ -34,7 +34,6 @@ gunicorn==20.0.4 html5lib==1.1 lxml==4.5.2 Pillow==7.2.0 -pkg-resources pyasn1==0.4.6 pyasn1-modules==0.2.6 python-ldap==3.2.0 From de74df7530bb07d5cb8257ce072714ac5cd248c9 Mon Sep 17 00:00:00 2001 From: kthoden Date: Tue, 8 Sep 2020 12:02:03 +0200 Subject: [PATCH 4/4] Create sqlite database --- src/project.db | Bin 0 -> 872448 bytes 1 file changed, 0 insertions(+), 0 deletions(-) create mode 100644 src/project.db diff --git a/src/project.db b/src/project.db new file mode 100644 index 0000000000000000000000000000000000000000..b3d495f02a545e7a1972db4eecef6e031a44d90b GIT binary patch literal 872448 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 a`tHDx#0|pw7%>=(IloFURY^Yw|Nj8RsXjpf literal 0 HcmV?d00001