diff --git a/bin/railway b/bin/railway index 18e671a..94fae04 100755 --- a/bin/railway +++ b/bin/railway @@ -1,8 +1,17 @@ #!/usr/bin/env node var sys = require('util'); -require('coffee-script'); -var app = require(process.cwd() + '/server'); +var fs = require('fs'); +var srvFile = process.cwd() + '/server'; +var app; +if (fs.existsSync(srvFile + '.js')) { + app = require(srvFile); +} else if (fs.existsSync(srvFile + '.coffee')) { + require('coffee-script'); + app = require(srvFile); +} else { + app = require('../lib/onrailway').createServer(); +} var railway = app.railway; var generators = railway.generators; var tools = railway.tools; diff --git a/lib/onrailway.js b/lib/onrailway.js index 1e88b2d..e2c0903 100644 --- a/lib/onrailway.js +++ b/lib/onrailway.js @@ -70,7 +70,7 @@ Railway.prototype.version = require('../package').version; * */ exports.init = function initRailway(app) { - app.root = app.root || process.cwd(); + app.root = app.root || path.dirname(module.parent.filename); // create API publishing object var railway = new Railway(app); diff --git a/templates/config/environment.coffee b/templates/config/environment.coffee index 1f953f9..0a054db 100644 --- a/templates/config/environment.coffee +++ b/templates/config/environment.coffee @@ -1,13 +1,12 @@ express = require 'express' app.configure -> - cwd = process.cwd() PREPEND_MIDDLEWARE app.set 'view engine', 'VIEWENGINE' app.set 'view options', complexNames: true app.enable 'coffee' - app.use express.static(cwd + '/public', maxAge: 86400000) + app.use express.static(app.root + '/public', maxAge: 86400000) app.use express.bodyParser() app.use express.cookieParser 'secret' app.use express.session secret: 'secret' diff --git a/templates/config/environment.js b/templates/config/environment.js index ceb6f5b..2ccab9b 100644 --- a/templates/config/environment.js +++ b/templates/config/environment.js @@ -1,9 +1,8 @@ var express = require('express'); app.configure(function(){ - var cwd = process.cwd(); PREPEND_MIDDLEWARE - app.use(express.static(cwd + '/public', {maxAge: 86400000})); + app.use(express.static(app.root + '/public', {maxAge: 86400000})); app.set('view engine', 'VIEWENGINE'); app.set('view options', {complexNames: true}); app.set('jsDirectory', '/javascripts/');