Skip to content

Commit

Permalink
Add PostgreSQL 10 to CI (#1947)
Browse files Browse the repository at this point in the history
* Exit with error code when create-test-tables fails

* Add PostgreSQL 10 to CI

and change to Ubuntu 18.04 so building OpenSSL isn’t necessary, and move old PostgreSQL version tests to the latest Node LTS.

* Add Node 13 to CI

* Preserve create-test-tables’s compatibility with PostgreSQL <9.4
  • Loading branch information
charmander authored and brianc committed Nov 20, 2019
1 parent 30f67bb commit 8f56b8c
Show file tree
Hide file tree
Showing 5 changed files with 66 additions and 122 deletions.
64 changes: 35 additions & 29 deletions .travis.yml
@@ -1,50 +1,56 @@
language: node_js
sudo: true
dist: trusty
dist: bionic

before_script:
- node script/create-test-tables.js pg://postgres@127.0.0.1:5432/postgres

before_install:
- if [ $TRAVIS_OS_NAME == "linux" ]; then
if [[ $(node -v) =~ v[1-9][0-9] ]]; then
source ./ci_scripts/build.sh;
fi
fi


env:
- CC=clang CXX=clang++ npm_config_clang=1 PGUSER=postgres PGDATABASE=postgres

node_js:
- lts/dubnium
- lts/erbium
- 13

addons:
postgresql: "10"

matrix:
include:
- node_js: "lts/boron"
addons:
postgresql: "9.6"
- node_js: "lts/argon"
addons:
postgresql: "9.6"
- node_js: "10"
# different Node versions on PostgreSQL 9.5 that require precise
- node_js: lts/argon
addons:
postgresql: "9.6"
- node_js: "12"
addons:
postgresql: "9.6"
- node_js: "lts/carbon"
postgresql: "9.5"
dist: precise
- node_js: lts/boron
addons:
postgresql: "9.1"
postgresql: "9.5"
dist: precise
- node_js: "lts/carbon"
- node_js: lts/carbon
addons:
postgresql: "9.2"
- node_js: "lts/carbon"
postgresql: "9.5"
dist: precise

# different PostgreSQL versions on Node LTS
- node_js: lts/erbium
addons:
postgresql: "9.3"
- node_js: "lts/carbon"
- node_js: lts/erbium
addons:
postgresql: "9.4"
- node_js: "lts/carbon"
- node_js: lts/erbium
addons:
postgresql: "9.5"
- node_js: "lts/carbon"
- node_js: lts/erbium
addons:
postgresql: "9.6"

# PostgreSQL 9.1 and 9.2 only work on precise
- node_js: lts/carbon
addons:
postgresql: "9.1"
dist: precise
- node_js: lts/carbon
addons:
postgresql: "9.2"
dist: precise
9 changes: 0 additions & 9 deletions ci_scripts/build.sh

This file was deleted.

38 changes: 0 additions & 38 deletions ci_scripts/install_libpq.sh

This file was deleted.

35 changes: 0 additions & 35 deletions ci_scripts/install_openssl.sh

This file was deleted.

42 changes: 31 additions & 11 deletions script/create-test-tables.js
Expand Up @@ -38,15 +38,35 @@ var con = new pg.Client({
password: args.password,
database: args.database
})
con.connect()
var query = con.query('drop table if exists person')
con.query('create table person(id serial, name varchar(10), age integer)', (err, res) => {
console.log('Created table person')
console.log('Filling it with people')
})
people.map(function (person) {
return con.query(new pg.Query("insert into person(name, age) values('" + person.name + "', '" + person.age + "')"))
}).pop().on('end', function () {
console.log('Inserted 26 people')
con.end()

con.connect((err) => {
if (err) {
throw err
}

con.query(
'DROP TABLE IF EXISTS person;'
+ ' CREATE TABLE person (id serial, name varchar(10), age integer)',
(err) => {
if (err) {
throw err
}

console.log('Created table person')
console.log('Filling it with people')

con.query(
'INSERT INTO person (name, age) VALUES'
+ people
.map((person) => ` ('${person.name}', ${person.age})`)
.join(','),
(err, result) => {
if (err) {
throw err
}

console.log(`Inserted ${result.rowCount} people`)
con.end()
})
})
})

0 comments on commit 8f56b8c

Please sign in to comment.