首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
MCP广场
社区首页 >问答首页 >如何使用terraform为aws lambda指定dotnet 6运行时?

如何使用terraform为aws lambda指定dotnet 6运行时?
EN

Stack Overflow用户
提问于 2022-08-23 14:35:30
回答 2查看 528关注 0票数 0

我可以使用terraform中的输入(从GitLab CI管道执行)部署dotnetcore3.1运行时:

代码语言:javascript
运行
复制
variable "runtime" {
  type = string
  default = "dotnetcore3.1"
}

部署之后,我可以手动将运行时从.NET Core3.1更改为.NET 6:

但是如何在地形中指定.NET 6呢?

我试过:

代码语言:javascript
运行
复制
variable "runtime" {
  type = string
  default = "dotnet6"
}

但是,在我的管道中会出现以下错误:

Error: expected runtime to be one of [nodejs nodejs4.3 nodejs6.10 nodejs8.10 nodejs10.x nodejs12.x nodejs14.x java8 java8.al2 java11 python2.7 python3.6 python3.7 python3.8 dotnetcore1.0 dotnetcore2.0 dotnetcore2.1 dotnetcore3.1 nodejs4.3-edge go1.x ruby2.5 ruby2.7 provided provided.al2], got dotnet6

如何在TF中选择.NET 6运行时?

EN

回答 2

Stack Overflow用户

回答已采纳

发布于 2022-08-23 20:28:54

似乎.NET 6不受Terraform的支持。

这并不是完全正确的,AWS提供程序支持dotnet6运行时,您只需要有一个版本的提供程序就可以支持它。

目前,AWS提供程序的最新版本是4.27.0。对dotnet6的支持是围绕4.4.0版本引入的。调整提供程序,使其具有大于4.4.0的版本,就足以获得dotnet6支持。

因此,您需要修改您的required_providers块如下:

代码语言:javascript
运行
复制
terraform {
  required_providers {
    aws = {
      source = "hashicorp/aws"
      version = ">=4.4.0"
    }
  }
}
票数 2
EN

Stack Overflow用户

发布于 2022-08-23 15:19:02

dotnet6工作得很好。

我怀疑你的TF版本和/或AWS提供商已经过时了。我正在使用dotnet6作为一个lmabda,非常好,如下所示。

代码语言:javascript
运行
复制
"terraformVersions": {
    "terraformMajorVersion": "1",
    "providerVersions": {
        "aws": "4.14.0",
    }
票数 1
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/73460626

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档