claudia.js�でLambdaのJavaScriptを更新する際にはまった話

claudia.js�でLambdaのJavaScriptを更新する際にはまった話:

claudia.jsを利用してアプリの開発を行っていますが、LambdaへのJavaScriptファイルのデプロイではまってしまいました。

根本原因は分からないままですがデプロイは成功できるようになったため同じ問題に出会った方のためにもメモしておきます。

原因がお分かりになる方がいらっしゃれば教えて頂けるとうれしいです。


発生した現象

Lambdaに配置したJSを更新するために実行したコマンドは以下です。

$ claudia update 
上記を実行すると以下のエラーが発生しました。

validating package 
Error: Cannot find module '/var/folders/51/xxxx_xxxxxxxxxxxxxxxxxx/Y/zzzz/<package name>-<package ver>-wwwwww/package/dist/app' 
    at Function.Module._resolveFilename (internal/modules/cjs/loader.js:603:15) 
    at Function.Module._load (internal/modules/cjs/loader.js:529:25) 
    at Module.require (internal/modules/cjs/loader.js:659:17) 
    at require (internal/modules/cjs/helpers.js:22:18) 
    at validatePackage (/Users/hidekita/dev/claudia-app/node_modules/claudia/src/tasks/validate-package.js:16:15) 
    at initEnvVarsFromOptions.then.then.then.then.then.then.then.dir (/Users/hidekita/dev/claudia-app/node_modules/claudia/src/commands/create.js:343:10) 
    at process.internalTickCallback (internal/process/next_tick.js:77:7) 
cannot require ./dist/app after clean installation. Check your dependencies. 


上記エラーが発生した状況

元々、claudiaで配置していたapp.jsをES5で作成し、そのファイルをGitにより管理していました。

その後、モダンなJSを利用したいと考えて、BabelによりJSファイルをコンパイルするようにしました。コンパイルにより生成したJSファイルはdistフォルダに出力するようにしました。このdistフォルダはGitで管理する必要はないと考え、.gitignoreファイルを使ってdistフォルダを無視するようにしました。

Mac 10.14.2

node 11.4.0

npm 6.5.0

開発に利用したNPMパッケージ(devDependenciesの設定)。

@babel/core: 7.2.2 
    @babel/preset-env: 7.2.3 
    babel-loader: 8.0.4 
    webpack: 4.28.3 
    webpack-cli: 3.1.2 


成功した方法

コンパイル後のapp.jsもGitで管理するように、.gitignoreファイルを修正した上でLambda上のJSの更新を実施したら成功しました。

コメント

このブログの人気の投稿

投稿時間:2021-06-17 05:05:34 RSSフィード2021-06-17 05:00 分まとめ(1274件)

投稿時間:2021-06-20 02:06:12 RSSフィード2021-06-20 02:00 分まとめ(3871件)

投稿時間:2020-12-01 09:41:49 RSSフィード2020-12-01 09:00 分まとめ(69件)