Terraform 文档表明这应该已经发生:
\nhttps://www.terraform.io/docs/language/expressions/types.html
\n\n\nnull:表示不存在或遗漏的值。如果您将资源或模块的参数设置为 null,Terraform 的行为就像您完全省略了它 \xe2\x80\x94 它将使用参数的默认值(如果有),或者如果参数有默认值,则会引发错误是强制性的。
\n
我正在调用一个模块“foo”,它具有以下变量文件:
\nvariable "bar" {\n type = string\n default = "HelloWorld"\n}\nRun Code Online (Sandbox Code Playgroud)\n实施例1
\n当我使用以下代码调用它时:
\nmodule "foo" {\n source = "../modules/foo"\n bar = null\n}\nRun Code Online (Sandbox Code Playgroud)\n结果是一个错误。“str”参数值无效:参数不能为空。当使用 bar 时触发。
\n实施例2
\n当我使用此代码调用它时(省略它,而不是将其置空):
\nmodule "foo" {\n source = "../modules/foo"\n # bar = null\n}\nRun Code Online (Sandbox Code Playgroud)\n结果是它有效。“bar”变量默认为“HelloWorld”。
\n这似乎是 Terraform 中的一个错误,其他人也提出了但没有解决。\n https://github.com/hashicorp/terraform/issues/27730
\n有谁知道解决方案或解决方法?
\n版本信息:
\nTerraform v1.0.5\non linux_amd64\n+ provider registry.terraform.io/hashicorp/google v3.51.0\n+ provider registry.terraform.io/hashicorp/null v3.1.0\n+ provider registry.terraform.io/hashicorp/random …Run Code Online (Sandbox Code Playgroud) 我最近遇到了一个授权新的 Google App Script 项目的问题,特别是使用 Cloud SQL 管理 API 的项目。
相同的代码存在于之前授权的 GAS 项目中并且工作正常,但是如果我获取 GAS 项目的副本并尝试第一次运行某个函数,我将无法完成授权过程。下面列出了我正在经历的屏幕:
警告屏幕 (3) 是该过程中最近添加的内容。我不记得今年早些时候创建和运行新项目时遇到过它。我想知道 Google 最近是否对其 OAuth2.0 的安全实现进行了任何更改。
此外,此问题似乎仅影响对 Cloud SQL 管理 API 的 REST 调用。在上面提到的同一个项目中,我能够运行将数据写入同一 Google 项目中的 BigQuery 表的函数,该项目也托管 Cloud SQL 实例。显然,某些范围和代码可以工作。
“ https://www.googleapis.com/auth/sqlservice.admin ”范围包含在我请求并批准的范围列表中。我什至尝试手动编辑 URL 以添加更多请求的范围,但它仍然无法让我通过“执行该操作需要授权”屏幕。
有人有什么想法吗?
编辑:
触发身份验证的相关代码。
// Function to get the ip address of a given CloudSQL instance
function _getInstanceIpAddress_(projectId, sqlInstance) {
var token = _getAuthenticationToken_();
// Create the header authorisation …Run Code Online (Sandbox Code Playgroud) google-api google-apps-script oauth-2.0 google-cloud-sql google-oauth
android ×1
google-api ×1
google-oauth ×1
google-play ×1
oauth-2.0 ×1
publish ×1
rollout ×1
terraform ×1