【发布时间】:2019-07-02 23:41:48
【问题描述】:
我正在尝试通过 sbt 创建 AWS lambda 函数。 我有 sbt 插件
addSbtPlugin("com.gilt.sbt" % "sbt-aws-lambda" % "0.6.6")
我有一个环境变量
'val env = Option(System.getProperty("myEnv")).getOrElse("int")'
我想在下面的 sbt 设置中使用这个变量 以及针对 lambda 名称的 sbt 设置下的以下参数
.settings(
s3Bucket := Some(s"bucket-name-resized-payload"),
**lambdaName := Some(s"xxxx-xxxxx-$env"),**
fork in Test := true,
handlerName := Some("handler name"),
roleArn := Some("arn:aws:iam::xxxxxxxx:role/xxx_xx_xxxx_role"),
region := Some("eu-xxxx-1"),
awsLambdaTimeout := Some(60),
deployMethod := Some("S3")
我想要实现的是,如果代码在集成环境中运行,那么创建的函数应该是 Xxxx-xxx-int,同样在 prod 中 staging xxx-xxx-sta。 sbt 是通过 Jenkins 构建的。 现在我对如何传递参数感到困惑 sbt -Denv := 当代码通过 jenkins 构建时 我不希望为所有环境创建相同的 lambda 名称。 请帮忙
【问题讨论】: