Forked from
IGWN Computing and Software / GraceDB / GraceDB Server
685 commits behind, 7 commits ahead of the upstream repository.
Code owners
Assign users and groups as approvers for specific file changes. Learn more.
.gitlab-ci.yml 2.94 KiB
---
image: docker:latest
variables:
APT_CACHE_DIR: "${CI_PROJECT_DIR}/.cache/apt"
DOCKER_DRIVER: overlay
DOCKER_BRANCH: $CI_REGISTRY_IMAGE:$CI_COMMIT_REF_NAME
DOCKER_LATEST: $CI_REGISTRY_IMAGE:latest
PIP_CACHE_DIR: "${CI_PROJECT_DIR}/.cache/pip"
stages:
- test
- branch
- latest
before_script:
- docker login -u gitlab-ci-token -p $CI_JOB_TOKEN $CI_REGISTRY
.test: &test
image: igwn/base:stretch
services:
- mysql:5.6
variables:
AWS_SES_ACCESS_KEY_ID: "fake_aws_id"
AWS_SES_SECRET_ACCESS_KEY: "fake_aws_key"
DJANGO_ALERT_EMAIL_FROM: "fake_email"
DJANGO_DB_HOST: "mysql"
DJANGO_DB_PORT: "3306"
DJANGO_DB_NAME: "fake_name"
DJANGO_DB_USER: "root"
DJANGO_DB_PASSWORD: "fake_password"
DJANGO_PRIMARY_FQDN: "fake_fqdn"
DJANGO_SECRET_KEY: "fake_key"
DJANGO_SETTINGS_MODULE: "config.settings.container.dev"
DJANGO_TWILIO_ACCOUNT_SID: "fake_sid"
DJANGO_TWILIO_AUTH_TOKEN: "fake_token"
DJANGO_AWS_ELASTICACHE_ADDR: "fake_server:80"
LVALERT_OVERSEER_PORT: "2"
LVALERT_SERVER: "fake_server"
LVALERT_USER: "fake_user"
LVALERT_PASSWORD: "fake_password"
MYSQL_DB: "${DJANGO_DB_NAME}"
MYSQL_ROOT_PASSWORD: "${DJANGO_DB_PASSWORD}"
before_script:
# create apt cache directory
- mkdir -pv ${APT_CACHE_DIR}
# set python version
- PYTHON_VERSION="${CI_JOB_NAME##*:}"
- PYTHON_MAJOR="${PYTHON_VERSION:0:1}"
- PYTHON="python3"
# install build requirements
- apt-get -yqq update
- apt-get -o dir::cache::archives="${APT_CACHE_DIR}" install -yqq
git
libmariadbclient-dev
libldap2-dev
libsasl2-dev
libssl-dev
libxml2-dev
swig
pkg-config
libpng-dev
libfreetype6-dev
libmariadb-dev-compat
libxslt-dev
${PYTHON}-pip
# install everything else from pip
- ${PYTHON} -m pip install -r requirements.txt
# create logs path required for tests
- mkdir -pv ../logs/