您可以克隆AWS Lambda吗?

时间:2019-05-01 19:21:41

标签: amazon-web-services aws-lambda

克隆不同的环境。暂存/ QA / PROD / DEV等。

有没有一种简便的方法可以克隆我的lambda,给它起一个不同的名字并从那里调整配置?

2 个答案:

答案 0 :(得分:0)

这是terraform代码(“基础结构即代码”)的示例,可用于在不同环境dev / prod中标记出相同的lambda。 如果您看一下这段代码function_name = "${var.environment}-first_lambda",就可以清楚地知道函数的名称如何以dev / prod等环境为前缀。 此变量可以在terraform命令执行时传递,例如TF_VAR_environment="dev" terraform apply,也可以在variables.tf中默认设置,也可以使用* .tfvars

传递。
#main.tf 
resource "aws_lambda_function" "first_lambda" {
  function_name = "${var.environment}-first_lambda"

  filename         = "${data.archive_file.first_zip.output_path}"
  source_code_hash = "${data.archive_file.first_zip.output_base64sha256}"

  role    = "${aws_iam_role.iam_for_lambda.arn}"
  handler = "first_lambda.lambda_handler"
  runtime = "python3.6"
  timeout = 15

  environment {
    variables = {
      value_one   = "some value_one"
    }
  }
}
# variables.tf
variable "environment" {
  type = "string"
  description = "The name of the environment within the project"
  default = "dev"
}

答案 1 :(得分:0)

您将需要在新帐户中重新创建Lambda函数。转到lambda函数,单击“操作”并导出函数。

  

下载部署程序包(您的代码和库)和/或AWS   定义功能的无服务器应用程序模型(SAM)文件,   它的事件来源和权限。

     

您或共享此文件的其他人可以使用AWS CloudFormation   部署和管理类似的无服务器应用程序。学到更多   关于如何使用AWS CloudFormation部署无服务器应用程序。