javascript - 如何使用 inlineCode 在无服务器中定义 lambda 函数?
问题描述
考虑一段无服务器代码:
functions:
MyFunc:
handler: index.handler
name: "my_name"
runtime: nodejs12.x
memorySize: 512
timeout: 30
inlineCode: |
exports.handler = function(event, context) {
console.log("ok");
};
description: description
这导致将源文件夹中的所有内容打包。我无法禁用它。如果我添加事件:
package:
artifact: dummy.zip
部署失败,因为dummy.zip
是空文件。但是为什么在指定时我需要一个 zip 文件inlineCode
?有没有办法inlineCode
仅使用参数禁用打包和部署 nodejs 功能?
解决方案
解决方法是将 lambda 函数定义定义为普通的 cloudformation 资源,如下所示:
resources:
Resources:
MyFunc:
Type: AWS::Lambda::Function
Properties:
FunctionName: "my_name"
Handler: index.handler
Runtime: nodejs10.x
Role: !GetAtt LambdaRole.Arn # do not forget to define role by hand :(
Code:
ZipFile: |
exports.handler = function(event, context, callback) {
console.log(event);
const response = {
statusCode: 200,
body: JSON.stringify('Hello Node')
};
callback(null, response);
};
推荐阅读
- sas - 识别触发事件后的第一次发生
- android - 基于存储在 Firebase 生成的实例 ID 下的 lastMessageKey 的时间戳值排列 RecyclerView 项目的 Firebase 查询
- android - 图片不能在 iPhone 上使用,但它们可以在 Android 上使用?
- javascript - 当包裹在 "$(document).ready(function () {" 中时,Bootstrap selectpicker 会出错
- asp.net-mvc - 将 x509 证书上传到 Azure ADD 或 Microsoft 注册门户上的应用程序清单
- javascript - papa.unparse 创建空的 csv 文件
- asp.net - EntityFramework 代码第一个一对多
- python - Python:为什么 numpy.corrcoef() 会返回 NaN 值?
- python - 关于可能导致此 TensorFlow 错误的任何想法?(从未使用过对象)
- c# - 使用带有 soap:mustUnderstand 属性的 Web 服务