451fddaff0
Finally, the old test database is destroyed before the build which is simpler and makes more sense.
43 lines
1.2 KiB
YAML
43 lines
1.2 KiB
YAML
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'@'%'"
|
|
# Remove the old test database if it has not been done yet
|
|
- mysql --user=root --password="$MYSQL_ROOT_PASSWORD" --host="$DBHOST"
|
|
-e "DROP DATABASE test_$DBNAME" || true
|
|
- pip install --cache-dir vendor/pip -t vendor/python -r requirements-devel.txt
|
|
|
|
test:
|
|
stage: test
|
|
script:
|
|
- python manage.py test
|