diff --git a/.gitlab-ci.yml b/.gitlab-ci.yml new file mode 100644 index 00000000..f420a9f5 --- /dev/null +++ b/.gitlab-ci.yml @@ -0,0 +1,40 @@ +services: + - mysql:latest + - redis:latest + +variables: + # GestioCOF settings + DJANGO_SETTINGS_MODULE: "cof.settings_dev" + DBNAME: "cof_gestion" + DBUSER: "cof_gestion" + DBPASSWD: "cof_password" + DBHOST: "mysql" + REDIS_HOST: "redis" + + # Cached packages + PYTHONPATH: "$CI_PROJECT_DIR/vendor/python" + + # mysql service configuration + MYSQL_DATABASE: "$DBNAME" + MYSQL_USER: "$DBUSER" + MYSQL_PASSWORD: "$DBPASSWD" + MYSQL_ROOT_PASSWORD: "root_password" + + +cache: + paths: + - vendor/python + - vendor/pip + - vendor/apt + +before_script: + - mkdir -p vendor/{python,pip,apt} + - apt-get update -q && apt-get -o dir::cache::archives="vendor/apt" install -yqq mysql-client + - mysql --user=root --password="$MYSQL_ROOT_PASSWORD" --host="$DBHOST" + -e "GRANT ALL ON test_$DBNAME.* TO '$DBUSER'@'%'" + - pip install --cache-dir vendor/pip -t vendor/python -r requirements-devel.txt + +test: + stage: test + script: + - python manage.py test diff --git a/cof/settings_dev.py b/cof/settings_dev.py index 6747963b..1c3476dd 100644 --- a/cof/settings_dev.py +++ b/cof/settings_dev.py @@ -98,6 +98,7 @@ DATABASES = { 'NAME': os.environ['DBNAME'], 'USER': os.environ['DBUSER'], 'PASSWORD': os.environ['DBPASSWD'], + 'HOST': os.environ.get('DBHOST', 'localhost'), } } @@ -179,7 +180,7 @@ CHANNEL_LAYERS = { "default": { "BACKEND": "asgi_redis.RedisChannelLayer", "CONFIG": { - "hosts": [("localhost", 6379)], + "hosts": [(os.environ.get("REDIS_HOST", "localhost"), 6379)], }, "ROUTING": "cof.routing.channel_routing", } diff --git a/requirements-devel.txt b/requirements-devel.txt index dc8dbc45..425dfc36 100644 --- a/requirements-devel.txt +++ b/requirements-devel.txt @@ -1,2 +1,3 @@ +-r requirements.txt django-debug-toolbar ipython