2017-01-06 7 views
1

を作成する方法に応じて、エラーをスローし、私はこれをやっている:コードはAWSラムダによって実行されたときにラムダはジップが現在

gulp.task('newInstanceSetup', function() { 
    return gulp.src('./**/*',{cwd:'./new_instance_setup'}) 
     .pipe(zip('archive.zip')) 
     .pipe(lambda(newInstanceSetup_params, opts)) 
     .pipe(gulp.dest('.')); 
}); 

これは、エラーが発生します。

{ 
    "errorMessage": "Cannot find module 'async'", 
    "errorType": "Error", 
    "stackTrace": [ 
    "Function.Module._load (module.js:276:25)", 
    "Module.require (module.js:353:17)", 
    "require (internal/module.js:12:17)", 
    "Object.<anonymous> (/var/task/index.js:5:9)", 
    "Module._compile (module.js:409:26)", 
    "Object.Module._extensions..js (module.js:416:10)", 
    "Module.load (module.js:343:32)", 
    "Function.Module._load (module.js:300:12)", 
    "Module.require (module.js:353:17)" 
    ] 
} 

私は手動で(アーカイブに追加します>> 7-ZIPすべて>右クリックを選択し...)それはラムダとの作品アーカイブを作成しますジップやフォルダの内容をアップロードした場合。

gulpプロセスによって作成されたarchive.zipを手動でアップロードすると、Lambdaはコード実行時にエラーをスローします。それは、エラーがgulp圧縮プロセスのどこかにあると私に信じさせる。

私が両方のアーカイブを調べると、ファイルサイズは異なりますが、内容は一見して同じに見えます。

zipはこれが原因で、WindowsとLinux間のアクセス許可の問題の発生したgulp-zip

+0

あなたは 'node_modules'をビュンていますか? –

+0

@ExplosionPills私はそう信じています。これが 'gulp.src'コマンドの意図です。それを目の当たりにした後、node_modulesディレクトリとすべてのサブディレクトリが、gulp生成アーカイブにあります – Houseman

答えて