2016-11-15 8 views
1

私はExpressJSアプリを整理しようとしています、like the accepted answerここにあります。
現在、私のフォルダ構造はAWS CodePipeline配備時にサブフォルダの依存関係をインストールするにはどうすればいいですか?

ルート(独自のpackage.jsonとexpressjsプロジェクト)
--api(独自のpackage.jsonとexpressjsプロジェクト)のようなものです(私はサブフォルダ、サブドメインを使用しないでください) --panel(シングルページアプリ)
--site(シングルページアプリ)
package.json(ルートフォルダのpackage.json)
app.js(ルートフォルダのapp.js)

マイルートレベルのapp.jsは以下のようなAPIプロジェクトで

express() 
.use(helmet()) 
.use(compression()) 
.use('/api', require('./api/app').app) 
.use('/panel', express.static('./panel')) 
.use('/', express.static('./site')) 
.listen(port); 

私app.jsは、私はElastic Beanstalkでに展開する私のプロジェクトとCodePipelineを保存するためのGithubを使用

exports.app = app; 

で終わります。しかし、それは動作しません、EBインスタンスは赤です。これは、ログからである:(CORSがAPIプロジェクトの依存関係です)

Error: Cannot find module 'cors' 
    at Function.Module._resolveFilename (module.js:469:15) 
    at Function.Module._load (module.js:417:25) 
    at Module.require (module.js:497:17) 
    at require (internal/module.js:20:19) 
    at Object.<anonymous> (/var/app/current/api/app.js:3:18) 
    at Module._compile (module.js:570:32) 
    at Object.Module._extensions..js (module.js:579:10) 
    at Module.load (module.js:487:32) 
    at tryModuleLoad (module.js:446:12) 
    at Function.Module._load (module.js:438:3) 
module.js:471 
    throw err; 

だから私の質問は、私が展開CodePipeline中にサブフォルダの依存関係をインストールすることができますどのように、このですか?添加することにより解決

答えて

1

"scripts": { 
    ... 
    "postinstall": "cd api && npm install" 
}, 

危険-パーマと.npmrcファイルを= TRUE

それに

関連する問題