diff --git a/.gitlab-ci.yml b/.gitlab-ci.yml index c4f9da37109c1b3962d270594c1351c2b8df0619..8d179095c9cfa42f324b5e182dd10910a9cc4956 100644 --- a/.gitlab-ci.yml +++ b/.gitlab-ci.yml @@ -1,5 +1,6 @@ stages: - test + - build variables: DEBIAN_FRONTEND: noninteractive @@ -15,3 +16,26 @@ test: - flake8 - django-admin makemigrations --dry-run --check --noinput --settings=self_registration.settings.development - django-admin test --settings=self_registration.settings.development + +build: + stage: build + image: docker + services: + - docker:dind + before_script: + - docker login -u gitlab-ci-token -p $CI_JOB_TOKEN registry.git.mpib-berlin.mpg.de + - docker pull $CONTAINER_IMAGE:latest || true + script: + - docker build --cache-from $CONTAINER_IMAGE:latest -t $CONTAINER_IMAGE:$CI_COMMIT_REF_NAME . + after_script: + - > + if [ "$CI_COMMIT_REF_NAME" == "main" ]; then + docker tag $CONTAINER_IMAGE:$CI_COMMIT_REF_NAME $CONTAINER_IMAGE:latest + docker push $CONTAINER_IMAGE:latest + fi + - > + if [ -n "$CI_COMMIT_TAG" ]; then + docker tag $CONTAINER_IMAGE:$CI_COMMIT_REF_NAME $CONTAINER_IMAGE:stable + docker push $CONTAINER_IMAGE:$CI_COMMIT_REF_NAME + docker push $CONTAINER_IMAGE:stable + fi diff --git a/Dockerfile b/Dockerfile new file mode 100644 index 0000000000000000000000000000000000000000..0294dff125fda8d7913fa735465a9a5c6b8a0b97 --- /dev/null +++ b/Dockerfile @@ -0,0 +1,26 @@ +FROM node:14.17.4 +COPY package.json . +RUN npm install --production + +FROM alpine:3.13.5 + +ENV PYTHONUNBUFFERED 1 +ENV PKGS gettext python3 py3-pip py3-wheel uwsgi uwsgi-python py3-psycopg2 py3-pyldap + +RUN adduser -D -g '' uwsgi + +RUN apk update && apk add $PKGS + +WORKDIR code/ +COPY setup.cfg setup.py uwsgi.ini LICENSE ./ +COPY --from=0 node_modules/ node_modules + +RUN pip3 install -e . && \ + pip3 install django-auth-ldap + +COPY self_registration/ self_registration + +RUN django-admin collectstatic --no-input --settings=self_registration.settings.development && \ + django-admin compilemessages -l de + +CMD uwsgi uwsgi.ini --die-on-term diff --git a/self_registration/locale/de/LC_MESSAGES/django.po b/self_registration/locale/de/LC_MESSAGES/django.po new file mode 100644 index 0000000000000000000000000000000000000000..e19b5afe5db5fa9f213522e852936491622f713b --- /dev/null +++ b/self_registration/locale/de/LC_MESSAGES/django.po @@ -0,0 +1,18 @@ +# SOME DESCRIPTIVE TITLE. +# Copyright (C) YEAR THE PACKAGE'S COPYRIGHT HOLDER +# This file is distributed under the same license as the PACKAGE package. +# FIRST AUTHOR , YEAR. +# +msgid "" +msgstr "" +"Project-Id-Version: PACKAGE VERSION\n" +"Report-Msgid-Bugs-To: \n" +"POT-Creation-Date: 2020-11-11 17:23+0000\n" +"PO-Revision-Date: YEAR-MO-DA HO:MI+ZONE\n" +"Last-Translator: FULL NAME \n" +"Language-Team: LANGUAGE \n" +"Language: \n" +"MIME-Version: 1.0\n" +"Content-Type: text/plain; charset=UTF-8\n" +"Content-Transfer-Encoding: 8bit\n" +"Plural-Forms: nplurals=2; plural=(n != 1);\n" diff --git a/uwsgi.ini b/uwsgi.ini new file mode 100644 index 0000000000000000000000000000000000000000..68a8c8eda38f98fd8f03d9682fbfd478f690200f --- /dev/null +++ b/uwsgi.ini @@ -0,0 +1,14 @@ +[uwsgi] +master=true +chdir=/code +uid=uwsgi +threads=4 +disable-logging=True + +socket=0.0.0.0:8000 +protocol=http +static-map=/static=/code/self_registration/collected_static +static-map=/favicon.ico=/code/self_registration/collected_static/images/favicon.ico + +wsgi-file=self_registration/wsgi.py +plugin=python