Run tests on both PostgreSQL 9.4 and 9.6 on CircleCI

This commit is contained in:
steve-chavez
2017-10-18 17:41:55 -05:00
committed by Steve Chávez
parent 188f947437
commit 57477749aa
+41 -1
View File
@@ -57,7 +57,7 @@ jobs:
- image: circleci/buildpack-deps:trusty
environment:
- PGHOST=localhost
- image: circleci/postgres:9.6.2
- image: circleci/postgres:9.4.14
environment:
- POSTGRES_USER=circleci
- POSTGRES_DB=circleci
@@ -106,6 +106,38 @@ jobs:
- ".stack-work"
key: v1-stack-dependencies-{{ checksum "postgrest.cabal" }}-{{ checksum "stack.yaml" }}
build-test-9.6:
docker:
- image: circleci/buildpack-deps:trusty
environment:
- PGHOST=localhost
- image: circleci/postgres:9.6.2
environment:
- POSTGRES_USER=circleci
- POSTGRES_DB=circleci
steps:
- checkout
- restore_cache:
keys:
- v1-stack-dependencies-{{ checksum "postgrest.cabal" }}-{{ checksum "stack.yaml" }}
- run:
name: install stack & dependencies
command: |
curl -L https://github.com/commercialhaskell/stack/releases/download/v1.1.2/stack-1.1.2-linux-x86_64.tar.gz | tar zx -C /tmp
sudo mv /tmp/stack-1.1.2-linux-x86_64/stack /usr/bin
sudo apt-get update
sudo apt-get install -y libgmp-dev
sudo apt-get install -y postgresql-client
stack setup
- run:
name: build src and tests
command: |
stack build --fast -j1
stack build --fast --test --no-run-tests
- run:
name: run tests
command: POSTGREST_TEST_CONNECTION=$(test/create_test_db "postgres://circleci@localhost" postgrest_test) stack test
centos6:
<<: *build-distro-bin
@@ -152,9 +184,14 @@ workflows:
filters:
tags:
only: /v[0-9]+(\.[0-9]+)*/
- build-test-9.6:
filters:
tags:
only: /v[0-9]+(\.[0-9]+)*/
- centos6:
requires:
- build-test
- build-test-9.6
filters:
tags:
only: /v[0-9]+(\.[0-9]+)*/
@@ -163,6 +200,7 @@ workflows:
- centos7:
requires:
- build-test
- build-test-9.6
filters:
tags:
only: /v[0-9]+(\.[0-9]+)*/
@@ -171,6 +209,7 @@ workflows:
- ubuntu:
requires:
- build-test
- build-test-9.6
filters:
tags:
only: /v[0-9]+(\.[0-9]+)*/
@@ -179,6 +218,7 @@ workflows:
- ubuntui386:
requires:
- build-test
- build-test-9.6
filters:
tags:
only: /v[0-9]+(\.[0-9]+)*/