Files
datasheet-server/src/index.js
Joshua 5f4943d1d5 new server test with precommit hook to secure .env files, set up CI environment (#5)
* new server test with precommit hook to secure .env files, set up CI environment (#3)

* [TESTS] added all registered routes to api server test

* [WIP] abstracting config to env where it makes sense, refactoring elsewhere, adding more tests

* [WIP] fixed tests so they fail as expected

* [WIP]

* [DEBUG] fixed issues with the env configuration, added correct tests

* [MISC] env didn't get readded on last precommit

* [TESTS] added longer wait time for server as sometimtimes tests fail arbitrarily
2018-12-14 15:59:12 +00:00

44 lines
849 B
JavaScript
Executable File

import http from 'http'
import express from 'express'
import initialize from './initialize'
import middleware from './middleware'
import api from './api'
// import config from './sheets_config'
import dotenv from 'dotenv'
dotenv.config()
let app = express()
app.server = http.createServer(app)
// enable cross origin requests explicitly in development
if (process.env.NODE_ENV === 'development') {
const cors = require('cors')
console.log('Enabling CORS in development...')
app.use(cors())
}
const config = process.env
initialize(controller => {
app.use(
middleware({
config,
controller
})
)
app.use(
'/api',
api({
config,
controller
})
)
app.server.listen(process.env.PORT || 4040, () => {
console.log(`Started on port ${app.server.address().port}`)
})
})
export default app