services: - mysql:5.7 variables: MYSQL_DATABASE: wopen MYSQL_ROOT_PASSWORD: root types: - test before_script: - apt-get update -qy - apt-get install -y default-mysql-client default-libmysqlclient-dev python-mysqldb gdal-bin libproj-dev proj-data proj-bin binutils - cd whats-open/ - pip install pipenv - pipenv install --system --deploy - export WOPEN_SECRET_KEY=$(dd if=/dev/urandom count=100 | tr -dc "A-Za-z0-9" | fold -w 60 | head -n1 2>/dev/null) - export WOPEN_EMAIL_DOMAIN="@masonlive.gmu.edu" - export WOPEN_DB_NAME="wopen" - export WOPEN_DB_USER="root" - export WOPEN_DB_PASSWORD="root" - export WOPEN_DB_HOST="mysql" - export WOPEN_DB_PORT=3306 - export WOPEN_SUPERUSER=admin - export WOPEN_ENV=dev - python manage.py makemigrations - python manage.py makemigrations api - python manage.py migrate - echo "from django.contrib.auth.models import User; User.objects.filter(username='$WOPEN_SUPERUSER$WOPEN_EMAIL_DOMAIN').delete(); User.objects.create_superuser('$WOPEN_SUPERUSER$WOPEN_EMAIL_DOMAIN', '$WOPEN_SUPERUSER', 'admin')" | python manage.py shell - python3 manage.py loaddata --format json categoriesFixture locationFixture openTimeFixture scheduleFixture settingsFixture whats-open-py3.7: image: library/python:3.7 type: test script: - python3 manage.py test --verbosity 2 --keepdb --noinput api.tests.APIClientTests