diff --git a/Makefile b/Makefile index 770ce9eaf..9d5a9c66a 100644 --- a/Makefile +++ b/Makefile @@ -85,19 +85,19 @@ docs: docker-compose run backend bash -c 'cd ../docs&&sphinx-build -b html -d _build/doctrees . _build/html' build_balancer: - docker build -t docker-registry.siecobywatelska.pl/small_eod/balancer:${TAG} balancer/ + docker build -t registry.digitalocean.com/ad-masterthesis/small-eod/balancer:${TAG} balancer/ build_frontend: - docker build --target prod -t docker-registry.siecobywatelska.pl/small_eod/frontend:${TAG} frontend-project/ + docker build --target prod -t registry.digitalocean.com/ad-masterthesis/small-eod/frontend:${TAG} frontend-project/ build_backend: - docker build --target prod -t docker-registry.siecobywatelska.pl/small_eod/backend:${TAG} backend-project/ + docker build --target prod -t registry.digitalocean.com/ad-masterthesis/small-eod/backend:${TAG} backend-project/ push_balancer: - docker push docker-registry.siecobywatelska.pl/small_eod/balancer:${TAG} + docker push registry.digitalocean.com/ad-masterthesis/small-eod/balancer:${TAG} push_frontend: - docker push docker-registry.siecobywatelska.pl/small_eod/frontend:${TAG} + docker push registry.digitalocean.com/ad-masterthesis/small-eod/frontend:${TAG} push_backend: - docker push docker-registry.siecobywatelska.pl/small_eod/backend:${TAG} + docker push registry.digitalocean.com/ad-masterthesis/small-eod/backend:${TAG} diff --git a/backend-project/Dockerfile b/backend-project/Dockerfile index 2f9704e70..cd36864b9 100644 --- a/backend-project/Dockerfile +++ b/backend-project/Dockerfile @@ -38,11 +38,11 @@ FROM prod_settings AS prod RUN pip install --no-cache-dir -r $REQS_FILE COPY . /code/ # timeout increased due slow loading of pyparsing -CMD ["bash", "-c", "python manage.py collectstatic --no-input && python manage.py migrate && gunicorn -w 3 -b 0.0.0.0:8000 --timeout 60 config.wsgi"] +CMD ["bash", "-c", "python manage.py collectstatic --no-input && python manage.py migrate --no-input && gunicorn --worker-tmp-dir /dev/shm/ --capture-output -b 0.0.0.0:8000 config.wsgi"] # DEVELOPMENT BUILD FROM dev_settings AS dev # Add git required by coveralls RUN pip install --no-cache-dir -r $REQS_FILE COPY . /code/ -CMD ["bash", "-c", "python manage.py collectstatic --no-input && python manage.py migrate && python manage.py runserver 0.0.0.0:8000"] +CMD ["bash", "-c", "python manage.py collectstatic --no-input && python manage.py migrate --no-input && python manage.py runserver 0.0.0.0:8000"] diff --git a/backend-project/config/settings/base.py b/backend-project/config/settings/base.py index 569adfe9f..dffa5b011 100644 --- a/backend-project/config/settings/base.py +++ b/backend-project/config/settings/base.py @@ -103,7 +103,7 @@ DATABASES = { "default": env.db(), - "migration": env.db("MIGRATION_DATABASE_URL"), + "migration": env.db("MIGRATION_DATABASE_URL", default="sqlite://:memory:"), } # Password validation diff --git a/backend-project/small_eod/tags/fields.py b/backend-project/small_eod/tags/fields.py index 97a26574c..fb806da1d 100644 --- a/backend-project/small_eod/tags/fields.py +++ b/backend-project/small_eod/tags/fields.py @@ -11,6 +11,8 @@ def __init__(self, *args, **kwargs): def to_representation(self, data): return [ - self.child.to_representation(item) if item is not None else None + self.child.to_representation(item) + if item is not None and hasattr(item, "all") + else None for item in data.all() ] diff --git a/docker-compose.yml b/docker-compose.yml index 84a32e5fd..767570f69 100644 --- a/docker-compose.yml +++ b/docker-compose.yml @@ -58,6 +58,7 @@ services: frontend: build: context: ./frontend-project + target: dev environment: COMMIT_SHA: '${COMMIT_SHA:-unknown_sha}' COMMIT_BRANCH: '${COMMIT_BRANCH:-unknown_branch}' diff --git a/frontend-project/Dockerfile b/frontend-project/Dockerfile index 1a39fbafc..7662b4494 100644 --- a/frontend-project/Dockerfile +++ b/frontend-project/Dockerfile @@ -3,6 +3,10 @@ FROM node:16.9.1-slim@sha256:af6f241029c4d63107c6ccbbd030c44d331786d724bd9c2e615 RUN apt update && apt install -y g++ git make python3 WORKDIR /code +# DEVELOPMENT BUILD +FROM env +CMD ["bash", "-c", "yarn && yarn start"] + # PRODUCTION BUILD FROM env AS builder COPY ./ /code @@ -13,7 +17,3 @@ COPY ./nginx.conf /etc/nginx/conf.d/default.conf COPY --from=builder /code/dist /usr/share/nginx/html EXPOSE 8000 CMD ["nginx", "-g", "daemon off;"] - -# DEVELOPMENT BUILD -FROM env -CMD ["bash", "-c", "yarn && yarn start"] diff --git a/frontend-project/vercel.json b/frontend-project/vercel.json index e7deb75d6..d2df9d8f6 100644 --- a/frontend-project/vercel.json +++ b/frontend-project/vercel.json @@ -1,10 +1,10 @@ { "version": 2, "routes": [ - { "src": "/api/(?.*)", "dest": "https://dev.small-eod.siecobywatelska.pl/api/$path" }, + { "src": "/api/(?.*)", "dest": "https://small-eod-dev-4nvf3.ondigitalocean.app/api/$path" }, { "src": "/static/(?.*)", - "dest": "https://dev.small-eod.siecobywatelska.pl/static/$path" + "dest": "https://small-eod-dev-4nvf3.ondigitalocean.app/static/$path" }, { "handle": "filesystem" }, { "src": "/.*", "dest": "/index.html" }