68 lines
1.2 KiB
Bash
Executable file
68 lines
1.2 KiB
Bash
Executable file
#!/bin/bash
|
|
|
|
set -e
|
|
|
|
if [ "$BUILD_ASSETS" = true ]; then
|
|
BUILD_ASSETS=false npm install
|
|
|
|
# setup config files
|
|
cat << EOF > .sequelizerc
|
|
var path = require('path');
|
|
|
|
module.exports = {
|
|
'config': path.resolve('config.json'),
|
|
'migrations-path': path.resolve('lib', 'migrations'),
|
|
'models-path': path.resolve('lib', 'models'),
|
|
'url': process.env.DATABASE_URL,
|
|
'dialect': process.env.DB_TYPE
|
|
}
|
|
|
|
EOF
|
|
regex='postgres:\/\/([^:]+):([^@]+)@([^:]+):([^\/]+)\/(.+)'
|
|
|
|
if [[ $DATABASE_URL =~ $regex ]]; then
|
|
|
|
username="${BASH_REMATCH[1]}"
|
|
password="${BASH_REMATCH[2]}"
|
|
host="${BASH_REMATCH[3]}"
|
|
port="${BASH_REMATCH[4]}"
|
|
database="${BASH_REMATCH[5]}"
|
|
|
|
cat << EOF > config.json
|
|
|
|
{
|
|
"production": {
|
|
"db": {
|
|
"dialect": "postgres",
|
|
"host": "${host}",
|
|
"username": "${username}",
|
|
"password": "${password}",
|
|
"database": "${database}",
|
|
"port": "${port}",
|
|
"dialectOptions": {
|
|
"ssl": true
|
|
}
|
|
}
|
|
}
|
|
}
|
|
|
|
EOF
|
|
else
|
|
|
|
cat << EOF > config.json
|
|
|
|
{
|
|
"production": {
|
|
}
|
|
}
|
|
|
|
EOF
|
|
|
|
fi
|
|
|
|
|
|
cp public/js/config.js.example public/js/config.js
|
|
|
|
# build app
|
|
npm run build:prod
|
|
fi
|