---
language: python
sudo: required
services:
- docker
install: true
branches:
only:
- master
# Stop default database instances here to avoid port conflicts.
before_script:
- sudo service mysql stop
- sudo service postgresql stop
# Clean the cache if any step fails.
before_cache:
- scripts/ci fail-clean
cache:
timeout: 1000
directories:
- $HOME/docker
stages:
- build
- test
- database
- clean
# We should label the steps if Travis ever supports it:
# https://github.com/travis-ci/travis-ci/issues/5898
jobs:
include:
- stage: build
script: scripts/ci build
- stage: test
script: scripts/ci unit
script: scripts/ci registry
script: scripts/ci registry_old
- stage: database
script: scripts/ci mysql
script: scripts/ci postgres
- stage: clean
script: scripts/ci clean