ServerlessFrameworkでのdeploy時にエラーが出る

概要

serverless deploy でデプロイした際に、エラーメッセージが出るのだが、

-v-verbose で違いがあった(調べた感じではどっちも同じだと思ってた)

StackTraceを見る感じ、Serverless内でエラーになってるっぽいからバグなのかなぁ。。

環境

  Your Environment Information -----------------------------
     OS:                     linux
     Node Version:           8.12.0
     Serverless Version:     1.32.0

Cannot read property 'replace' of undefined

$ serverless deploy -v
Serverless: Packaging service...
Serverless: Excluding development dependencies...
 
  Type Error ---------------------------------------------
 
  Cannot read property 'replace' of undefined
 
     For debugging logs, run again after setting the "SLS_DEBUG=*" environment variable.
 
  Get Support --------------------------------------------
     Docs:          docs.serverless.com
     Bugs:          github.com/serverless/serverless/issues
     Issues:        forum.serverless.com
 
  Your Environment Information -----------------------------
     OS:                     linux
     Node Version:           8.12.0
     Serverless Version:     1.32.0

デバッグをしてみる

$ SLS_DEBUG=* serverless deploy -v
Serverless: Load command config
Serverless: Load command config:credentials
Serverless: Load command create
Serverless: Load command install
Serverless: Load command package
Serverless: Load command deploy
Serverless: Load command deploy:function
Serverless: Load command deploy:list
Serverless: Load command deploy:list:functions
Serverless: Load command invoke
Serverless: Load command invoke:local
Serverless: Load command info
Serverless: Load command logs
Serverless: Load command login
Serverless: Load command logout
Serverless: Load command metrics
Serverless: Load command print
Serverless: Load command remove
Serverless: Load command rollback
Serverless: Load command rollback:function
Serverless: Load command slstats
Serverless: Load command plugin
Serverless: Load command plugin
Serverless: Load command plugin:install
Serverless: Load command plugin
Serverless: Load command plugin:uninstall
Serverless: Load command plugin
Serverless: Load command plugin:list
Serverless: Load command plugin
Serverless: Load command plugin:search
Serverless: Load command config
Serverless: Load command config:credentials
Serverless: Load command rollback
Serverless: Load command rollback:function
Serverless: Invoke deploy
Serverless: Invoke package
Serverless: Invoke aws:common:validate
Serverless: Invoke aws:common:cleanupTempDir
Serverless: Packaging service...
Serverless: Excluding development dependencies...
 
  Type Error ---------------------------------------------
 
  Cannot read property 'replace' of undefined
 
     For debugging logs, run again after setting the "SLS_DEBUG=*" environment variable.
 
  Stack Trace --------------------------------------------
 
TypeError: Cannot read property 'replace' of undefined
    at Object.normalizeNameToAlphaNumericOnly (/usr/local/nvm/versions/node/v8.12.0/lib/node_modules/serverless/lib/plugins/aws/lib/naming.js:32:36)
    at Object.getStreamLogicalId (/usr/local/nvm/versions/node/v8.12.0/lib/node_modules/serverless/lib/plugins/aws/lib/naming.js:236:13)
    at functionObj.events.forEach.event (/usr/local/nvm/versions/node/v8.12.0/lib/node_modules/serverless/lib/plugins/aws/package/compile/events/stream/index.js:119:16)
    at Array.forEach (<anonymous>)
    at serverless.service.getAllFunctions.forEach (/usr/local/nvm/versions/node/v8.12.0/lib/node_modules/serverless/lib/plugins/aws/package/compile/events/stream/index.js:41:28)
    at Array.forEach (<anonymous>)
    at AwsCompileStreamEvents.compileStreamEvents (/usr/local/nvm/versions/node/v8.12.0/lib/node_modules/serverless/lib/plugins/aws/package/compile/events/stream/index.js:16:47)
    at BbPromise.reduce (/usr/local/nvm/versions/node/v8.12.0/lib/node_modules/serverless/lib/classes/PluginManager.js:390:55)
From previous event:
    at PluginManager.invoke (/usr/local/nvm/versions/node/v8.12.0/lib/node_modules/serverless/lib/classes/PluginManager.js:390:22)
    at PluginManager.spawn (/usr/local/nvm/versions/node/v8.12.0/lib/node_modules/serverless/lib/classes/PluginManager.js:408:17)
    at Deploy.BbPromise.bind.then.then (/usr/local/nvm/versions/node/v8.12.0/lib/node_modules/serverless/lib/plugins/deploy/deploy.js:123:50)
From previous event:
    at Object.before:deploy:deploy [as hook] (/usr/local/nvm/versions/node/v8.12.0/lib/node_modules/serverless/lib/plugins/deploy/deploy.js:113:10)
    at BbPromise.reduce (/usr/local/nvm/versions/node/v8.12.0/lib/node_modules/serverless/lib/classes/PluginManager.js:390:55)
From previous event:
    at PluginManager.invoke (/usr/local/nvm/versions/node/v8.12.0/lib/node_modules/serverless/lib/classes/PluginManager.js:390:22)
    at PluginManager.run (/usr/local/nvm/versions/node/v8.12.0/lib/node_modules/serverless/lib/classes/PluginManager.js:421:17)
    at variables.populateService.then.then (/usr/local/nvm/versions/node/v8.12.0/lib/node_modules/serverless/lib/Serverless.js:157:33)
    at runCallback (timers.js:810:20)
    at tryOnImmediate (timers.js:768:5)
    at processImmediate [as _immediateCallback] (timers.js:745:5)
From previous event:
    at Serverless.run (/usr/local/nvm/versions/node/v8.12.0/lib/node_modules/serverless/lib/Serverless.js:144:8)
    at serverless.init.then (/usr/local/nvm/versions/node/v8.12.0/lib/node_modules/serverless/bin/serverless:43:50)
    at <anonymous>
 
  Get Support --------------------------------------------
     Docs:          docs.serverless.com
     Bugs:          github.com/serverless/serverless/issues
     Issues:        forum.serverless.com
 
  Your Environment Information -----------------------------
     OS:                     linux
     Node Version:           8.12.0
     Serverless Version:     1.32.0

region.toLowerCase is not a function

$ serverless deploy -verbose
 
  Type Error ---------------------------------------------
 
  region.toLowerCase is not a function
 
     For debugging logs, run again after setting the "SLS_DEBUG=*" environment variable.
 
  Get Support --------------------------------------------
     Docs:          docs.serverless.com
     Bugs:          github.com/serverless/serverless/issues
     Issues:        forum.serverless.com
 
  Your Environment Information -----------------------------
     OS:                     linux
     Node Version:           8.12.0
     Serverless Version:     1.32.0

デバッグをしてみる

$ SLS_DEBUG=* serverless deploy -verbose
Serverless: Load command config
Serverless: Load command config:credentials
Serverless: Load command create
Serverless: Load command install
Serverless: Load command package
Serverless: Load command deploy
Serverless: Load command deploy:function
Serverless: Load command deploy:list
Serverless: Load command deploy:list:functions
Serverless: Load command invoke
Serverless: Load command invoke:local
Serverless: Load command info
Serverless: Load command logs
Serverless: Load command login
Serverless: Load command logout
Serverless: Load command metrics
Serverless: Load command print
Serverless: Load command remove
Serverless: Load command rollback
Serverless: Load command rollback:function
Serverless: Load command slstats
Serverless: Load command plugin
Serverless: Load command plugin
Serverless: Load command plugin:install
Serverless: Load command plugin
Serverless: Load command plugin:uninstall
Serverless: Load command plugin
Serverless: Load command plugin:list
Serverless: Load command plugin
Serverless: Load command plugin:search
Serverless: Load command config
Serverless: Load command config:credentials
Serverless: Load command rollback
Serverless: Load command rollback:function
Serverless: Invoke deploy
Serverless: Invoke package
Serverless: Invoke aws:common:validate
Serverless: Invoke aws:common:cleanupTempDir
 
  Type Error ---------------------------------------------
 
  region.toLowerCase is not a function
 
     For debugging logs, run again after setting the "SLS_DEBUG=*" environment variable.
 
  Stack Trace --------------------------------------------
 
TypeError: region.toLowerCase is not a function
    at getS3EndpointForRegion (/usr/local/nvm/versions/node/v8.12.0/lib/node_modules/serverless/lib/plugins/aws/utils/getS3EndpointForRegion.js:4:28)
    at AwsProvider.isS3TransferAccelerationSupported (/usr/local/nvm/versions/node/v8.12.0/lib/node_modules/serverless/lib/plugins/aws/provider/awsProvider.js:335:22)
    at AwsPackage.generateCoreTemplate (/usr/local/nvm/versions/node/v8.12.0/lib/node_modules/serverless/lib/plugins/aws/package/lib/generateCoreTemplate.js:27:61)
From previous event:
    at Object.package:initialize [as hook] (/usr/local/nvm/versions/node/v8.12.0/lib/node_modules/serverless/lib/plugins/aws/package/index.js:60:10)
    at BbPromise.reduce (/usr/local/nvm/versions/node/v8.12.0/lib/node_modules/serverless/lib/classes/PluginManager.js:390:55)
From previous event:
    at PluginManager.invoke (/usr/local/nvm/versions/node/v8.12.0/lib/node_modules/serverless/lib/classes/PluginManager.js:390:22)
    at PluginManager.spawn (/usr/local/nvm/versions/node/v8.12.0/lib/node_modules/serverless/lib/classes/PluginManager.js:408:17)
    at Deploy.BbPromise.bind.then.then (/usr/local/nvm/versions/node/v8.12.0/lib/node_modules/serverless/lib/plugins/deploy/deploy.js:123:50)
From previous event:
    at Object.before:deploy:deploy [as hook] (/usr/local/nvm/versions/node/v8.12.0/lib/node_modules/serverless/lib/plugins/deploy/deploy.js:113:10)
    at BbPromise.reduce (/usr/local/nvm/versions/node/v8.12.0/lib/node_modules/serverless/lib/classes/PluginManager.js:390:55)
From previous event:
    at PluginManager.invoke (/usr/local/nvm/versions/node/v8.12.0/lib/node_modules/serverless/lib/classes/PluginManager.js:390:22)
    at PluginManager.run (/usr/local/nvm/versions/node/v8.12.0/lib/node_modules/serverless/lib/classes/PluginManager.js:421:17)
    at variables.populateService.then.then (/usr/local/nvm/versions/node/v8.12.0/lib/node_modules/serverless/lib/Serverless.js:157:33)
    at runCallback (timers.js:810:20)
    at tryOnImmediate (timers.js:768:5)
    at processImmediate [as _immediateCallback] (timers.js:745:5)
From previous event:
    at Serverless.run (/usr/local/nvm/versions/node/v8.12.0/lib/node_modules/serverless/lib/Serverless.js:144:8)
    at serverless.init.then (/usr/local/nvm/versions/node/v8.12.0/lib/node_modules/serverless/bin/serverless:43:50)
    at <anonymous>
 
  Get Support --------------------------------------------
     Docs:          docs.serverless.com
     Bugs:          github.com/serverless/serverless/issues
     Issues:        forum.serverless.com
 
  Your Environment Information -----------------------------
     OS:                     linux
     Node Version:           8.12.0
     Serverless Version:     1.32.0