如何使用 Terraform 连接到 OCI?
How do I connect to OCI using Terraform?
我正在使用来自 https://github.com/terraform-providers/terraform-provider-oci
的 Terraform OCI 提供程序连接到 OCI,享受乐趣和游戏
我失败的连接地形是:
provider "oci" {
tenancy_ocid = var.tenancy_ocid
user_ocid = var.user_ocid
fingerprint = var.fingerprint
private_key_path = var.private_key_path
private_key_password = var.private_key_password
region = var.region
}
在我的 var.tf 中引用了相应的 pem 文件:
variable "private_key_path" {
type = string
default = "~/.oci/oci_api_key.pem"
}
我得到的错误是:
Error: can not create client, bad configuration: did not find a proper configuration for private key
我正在按照此设置正确的凭据:https://docs.cloud.oracle.com/en-us/iaas/Content/API/Concepts/apisigningkey.htm
我该如何解决这个问题?
感谢 John Hanley,我将 var.tf 修改为以下内容,它成功了!请注意从 ~/.oci
到完整路径 /Users/jnevill/.oci
的更改。这是在 Macos 上使用 brew 安装的 terraform。
variable "private_key_path" {
type = string
default = "/Users/jnevill/.oci/oci_api_key.pem"
}
谢天谢地,这是一个简单的解决方案 - 感谢 John Hanley 为我指明了正确的方向。简而言之,~
在 private_key_path 变量中不起作用。
解决方案
将 pem 引用从 ~
更改为 /Users/YourUserName/
这使 terraform 能够正确引用 pem 文件。
失败变量
variable "private_key_path" {
type = string
default = "~/.oci/oci_api_key.pem"
}
工作变量
variable "private_key_path" {
type = string
default = "/Users/jnevill/.oci/oci_api_key.pem"
}
我正在使用来自 https://github.com/terraform-providers/terraform-provider-oci
的 Terraform OCI 提供程序连接到 OCI,享受乐趣和游戏我失败的连接地形是:
provider "oci" {
tenancy_ocid = var.tenancy_ocid
user_ocid = var.user_ocid
fingerprint = var.fingerprint
private_key_path = var.private_key_path
private_key_password = var.private_key_password
region = var.region
}
在我的 var.tf 中引用了相应的 pem 文件:
variable "private_key_path" {
type = string
default = "~/.oci/oci_api_key.pem"
}
我得到的错误是:
Error: can not create client, bad configuration: did not find a proper configuration for private key
我正在按照此设置正确的凭据:https://docs.cloud.oracle.com/en-us/iaas/Content/API/Concepts/apisigningkey.htm
我该如何解决这个问题?
感谢 John Hanley,我将 var.tf 修改为以下内容,它成功了!请注意从 ~/.oci
到完整路径 /Users/jnevill/.oci
的更改。这是在 Macos 上使用 brew 安装的 terraform。
variable "private_key_path" {
type = string
default = "/Users/jnevill/.oci/oci_api_key.pem"
}
谢天谢地,这是一个简单的解决方案 - 感谢 John Hanley 为我指明了正确的方向。简而言之,~
在 private_key_path 变量中不起作用。
解决方案
将 pem 引用从 ~
更改为 /Users/YourUserName/
这使 terraform 能够正确引用 pem 文件。
失败变量
variable "private_key_path" {
type = string
default = "~/.oci/oci_api_key.pem"
}
工作变量
variable "private_key_path" {
type = string
default = "/Users/jnevill/.oci/oci_api_key.pem"
}