我可以使用terraform中的输入(从GitLab CI管道执行)部署dotnetcore3.1运行时:
variable "runtime" {
type = string
default = "dotnetcore3.1"
}
部署之后,我可以手动将运行时从.NET Core3.1更改为.NET 6:
但是如何在地形中指定.NET 6呢?
我试过:
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运行时?
发布于 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
块如下:
terraform {
required_providers {
aws = {
source = "hashicorp/aws"
version = ">=4.4.0"
}
}
}
发布于 2022-08-23 15:19:02
dotnet6
工作得很好。
我怀疑你的TF版本和/或AWS提供商已经过时了。我正在使用dotnet6
作为一个lmabda,非常好,如下所示。
"terraformVersions": {
"terraformMajorVersion": "1",
"providerVersions": {
"aws": "4.14.0",
}
https://stackoverflow.com/questions/73460626
复制相似问题