简体   繁体   English

如何整理我的 serverless.yml 文件?

[英]How do I de-clutter my serverless.yml file?

I'm working on a serverless backend project at the moment.我目前正在开发一个无服务器后端项目。 As I keep adding functions to my serverless.yml file, I can't help but wonder, surely there's a better way to write function configurations in other, seperate.yaml files, and then reference these in serverless.yml.当我不断向 serverless.yml 文件添加功能时,我不禁想知道,肯定有更好的方法可以在其他单独的.yaml 文件中编写 function 配置,然后在 serverless.yml 中引用这些配置。 Unfortunately, I've got no idea how to do this.不幸的是,我不知道该怎么做。

My project structure is like this:我的项目结构是这样的:

无服务器文件夹结构

And my functions are:我的功能是:

functions:
  create:   
    handler: users/create.create
    events:
      - http:
          path: users/create
          method: post
          cors: true

  login:   
    handler: users/login.login
    events:
      - http:
          path: users/login
          method: post
          cors: true

  list:
    handler: users/list.list
    events:
      - http:
          path: users
          method: get
          cors: true

  get:
    handler: users/get.get
    events:
      - http:
          path: users/{id}
          method: get
          cors: true

  update:
    handler: users/update.update
    events:
      - http:
          path: users/{id}
          method: put
          cors: true

  delete:
    handler: users/delete.delete
    events:
      - http:
          path: users/{id}
          method: delete
          cors: true

  create_addr:
    handler: address/create.create
    events:
      - http:
          path: address
          method: post
          cors: true

  delete_addr:
    handler: address/delete.delete
    events:
      - http:
          path: address/{id}
          method: delete
          cors: true

  get_addr:
    handler: address/get.get
    events:
      - http:
          path: address/{id}
          method: get
          cors: true

  update_addr:
    handler: address/update.update
    events:
      - http:
          path: address/{id}
          method: put
          cors: true


  create_order:
    handler: order/create.create
    events:
      - http:
          path: order
          method: post
          cors: true

  delete_order:
    handler: order/delete.delete
    events:
      - http:
          path: order/{id}
          method: delete
          cors: true

  get_order:
    handler: order/get.get
    events:
      - http:
          path: order/{id}
          method: get
          cors: true

How do I go on about this?我该如何 go 关于这个?

According to the docs , you can do:根据文档,您可以执行以下操作:

# serverless.yml
functions:
  create: ${file(../create.yml)}
  login: ${file(../login.yml)}
  list: ${file(../list.yml)}
  get: ${file(../get.yml)}
  # ...
# create.yml
handler: users/create.create
events:
  - http:
      path: users/create
      method: post
      cors: true

And so on.等等。

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

相关问题 如何从serverless.yml文件中提取REST API ID和资源ID? - How do I extract the REST API ID and Resource ID from a serverless.yml file? 如何配置 serverless.yml 文件以在我收到 sqs 中的消息后立即触发 lambda - How to configure serverless.yml file to trigger lambda as soon as i recieving messages in sqs 如何从我的 Lambda NodeJS 中的 serverless.yml 获取服务名称和函数名称? - How can I get service-name and function-name from serverless.yml in my Lambda NodeJS? 检查serverless.yml文件中的env变量(无服务器框架) - Check env variables in serverless.yml file (Serverless Framework) 如何摆脱 serverless.yml 中的“警告:遇到无效配置”? - How can I get rid of the "Warning: Invalid configuration encountered" in serverless.yml? 如何在测试中获取 serverless.yml 中定义的环境变量 - How to get environment variables defined in serverless.yml in tests 启用 aws-xray serverless.yml - enabling aws-xray serverless.yml 在serverless.yml中创建两个dynamoDB表 - Creating two dynamoDB tables in serverless.yml 在 serverless.yml 中定义可选的查询参数 - Define optional query parameters in serverless.yml 如何为多运行时AWS Lambda服务设置serverless.yml和webpack.config - How to setup serverless.yml and webpack.config for a multiple-runtime AWS Lambda service
 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM