Skip to content
Snippets Groups Projects
run_pg_tests.sh 765 B
Newer Older
  • Learn to ignore specific revisions
  • #!/bin/bash
    
    # This script runs the PostgreSQL tests inside a Docker container. It expects
    # the relevant source files to be mounted into /src (done automatically by the
    # caller script). It will set up the database, run it, and then use the tox
    # configuration to run the tests.
    
    set -e
    
    # Set PGUSER so Synapse's tests know what user to connect to the database with
    export PGUSER=postgres
    
    # Initialise & start the database
    su -c '/usr/lib/postgresql/9.6/bin/initdb -D /var/lib/postgresql/data -E "UTF-8" --lc-collate="en_US.UTF-8" --lc-ctype="en_US.UTF-8" --username=postgres' postgres
    su -c '/usr/lib/postgresql/9.6/bin/pg_ctl -w -D /var/lib/postgresql/data start' postgres
    
    # Run the tests
    cd /src
    export TRIAL_FLAGS="-j 4"
    
    tox --workdir=/tmp -e py35-postgres