createdb.js
612 Bytes
const su = require('superagent')
const { prop, contains } = require('ramda')
const headers = {
'Accept': 'application/json',
'Content-Type': 'application/json',
}
const dbhost = process.env.COUCHDB_URL
const createDB = (dbname) =>
su.put(`${dbhost}/${dbname}`)
.set(headers)
.then((result) => result.body)
module.exports = (dbname) =>
su.head(`${dbhost}/${dbname}`)
.then(
(result) => result.status === 200,
(error) => {
if (error.status === 404) return false
throw error
}
)
.then((exists) => {
if(exists) return { "ok": true }
return createDB(dbname)
})