【问题标题】:Debugging 'serverless-webpack': GraphQL error: Lambda services-publishService threw an Error during invocation调试“serverless-webpack”:GraphQL 错误:Lambda services-publishService 在调用期间抛出错误
【发布时间】:2017-09-15 09:05:42
【问题描述】:

使用“serverless-webpack”,尝试部署。我发出SLS_DEBUG=* sls deploy --verbose,一切都很好,直到:

Serverless: Couldn't publish this deploy information to the Serverless Platform.

  Error --------------------------------------------------

  GraphQL error: Lambda services-publishService threw an Error during invocation

     For debugging logs, run again after setting the "SLS_DEBUG=*" environment variable.

  Stack Trace --------------------------------------------

Error: GraphQL error: Lambda services-publishService threw an Error during invocation
    at new ApolloError (/Users/jamesfishwick/Documents/get-mobile-screen/node_modules/apollo-client/apollo.umd.js:1975:28)
    at /Users/jamesfishwick/Documents/get-mobile-screen/node_modules/apollo-client/apollo.umd.js:2889:33
    at <anonymous>
    at process._tickDomainCallback (internal/process/next_tick.js:228:7)
From previous event:
    at fetchEndpoint.then.endpoint (/Users/jamesfishwick/Documents/get-mobile-screen/node_modules/serverless/lib/plugins/platform/platform.js:168:16)
From previous event:
    at provider.getAccountId.then.accountId (/Users/jamesfishwick/Documents/get-mobile-screen/node_modules/serverless/lib/plugins/platform/platform.js:119:51)
From previous event:
    at Platform.publishService (/Users/jamesfishwick/Documents/get-mobile-screen/node_modules/serverless/lib/plugins/platform/platform.js:118:41)
    at BbPromise.reduce (/Users/jamesfishwick/Documents/get-mobile-screen/node_modules/serverless/lib/classes/PluginManager.js:261:55)
From previous event:
    at PluginManager.invoke (/Users/jamesfishwick/Documents/get-mobile-screen/node_modules/serverless/lib/classes/PluginManager.js:261:22)
    at PluginManager.run (/Users/jamesfishwick/Documents/get-mobile-screen/node_modules/serverless/lib/classes/PluginManager.js:292:17)
    at variables.populateService.then (/Users/jamesfishwick/Documents/get-mobile-screen/node_modules/serverless/lib/Serverless.js:99:33)
    at runCallback (timers.js:781:20)
    at tryOnImmediate (timers.js:743:5)
    at processImmediate [as _immediateCallback] (timers.js:714:5)
From previous event:
    at Serverless.run (/Users/jamesfishwick/Documents/get-mobile-screen/node_modules/serverless/lib/Serverless.js:86:74)
    at serverless.init.then (/Users/jamesfishwick/Documents/get-mobile-screen/node_modules/serverless/bin/serverless:39:50)
    at <anonymous>

不完全确定从哪里开始。

我的 .babelrc 是(使用 babel-preset-env):

    {
  "plugins": ["transform-runtime", "ramda"],
  "presets": [
    [
      "env",
      {
        "targets": {
          "node": "6.10"
        },
        "modules": false,
        "loose": true,
        "debug": true
      }
    ]
  ]
}

我的“webpack.config.js”是:

var nodeExternals = require('webpack-node-externals');

module.exports = {
  entry: './handler.js',
  externals: [nodeExternals()], // in order to ignore all modules in node_modules folder
  target: 'node',
  module: {
    loaders: [
      {
        test: /\.js$/,
        exclude: /node_modules/, // in order to ignore built-in modules like path, fs, etc.
        loaders: ['babel-loader'],
        include: __dirname,
      },
    ],
  },
};

(相关)“serverless.yml”是:

service: get-mobile-screen

provider:
  name: aws
  runtime: nodejs6.10

custom:
  webpackIncludeModules:
    packagePath: './package.json'

functions:
  index:
    handler: handler.getMobileScreen
    events:
      - http: GET getMobileScreen

plugins:
  - serverless-webpack
  - serverless-offline  

【问题讨论】:

  • 你用 SLS_DEBUG=* 再次运行了吗?
  • 是的,见第一句话。
  • 对不起,我的错。我调换了 sls 和 *.
  • 您可以尝试从无服务器平台注销吗? sls logout 然后再试一次。

标签: node.js deployment webpack aws-lambda serverless-framework


【解决方案1】:

认为问题在于 apollo-client 库使用汇总来生成 UMD...而 webpack 在 UMD 上遇到了问题。太好了,你是做什么的?

This Webpack 插件可能会修复它。如果没有...可以分享一下使用 apollo 客户端的代码吗?

【讨论】:

  • 这无疑会对某些人有所帮助。将来可能是我 ;) 问题实际上是 serverless-webpack 中的一个错误
猜你喜欢
  • 2020-09-04
  • 1970-01-01
  • 2018-11-28
  • 1970-01-01
  • 1970-01-01
  • 2017-10-25
  • 2018-08-06
  • 1970-01-01
  • 1970-01-01
相关资源
最近更新 更多