Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/ssis/2.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
使用terraform 0.13.5和digitalocean获得401_Terraform_Digital Ocean - Fatal编程技术网

使用terraform 0.13.5和digitalocean获得401

使用terraform 0.13.5和digitalocean获得401,terraform,digital-ocean,Terraform,Digital Ocean,我以前能够将terraform 0.11与digitalocean一起使用。此后,我将terraform版本更新为0.13.5,并更新了digitalocean提供商。但是,在这次更改之后,我无法提供任何资源,因为我从digitalocean收到了一个401错误。我甚至尝试过使用一个新的身份验证令牌,但这产生了相同的结果 Error: Error creating droplet: POST https://api.digitalocean.com/v2/droplets: 401 Unable

我以前能够将terraform 0.11与digitalocean一起使用。此后,我将terraform版本更新为0.13.5,并更新了digitalocean提供商。但是,在这次更改之后,我无法提供任何资源,因为我从digitalocean收到了一个401错误。我甚至尝试过使用一个新的身份验证令牌,但这产生了相同的结果

Error: Error creating droplet: POST https://api.digitalocean.com/v2/droplets: 401 Unable to authenticate you
我已经修改了TF_LOG值,但是没有提供任何额外的细节来帮助调试这个问题。有没有关于如何进一步排除故障的想法


令牌是有效的,因为我可以将其用于curl,但不能用于terraform 0.13.5和digitalocean provider 2.2.0。

可能发生的情况是,升级后,您没有正确加载变量。 因此terraform正在向提供者传递一个空令牌。然后,提供者尝试使用空/错误的令牌进行身份验证,但失败导致401

如果您提供的是默认值,要确认问题,请尝试删除默认值,并让它改为询问您

试一试

并确保使用toke将文件命名为
which.auto.tfvars
auto.tfvars
是关键):

do_token = ua0uhk0a0ka0k7a0o90ia0oekadho0eka9

它应该可以工作,或者向您索要代币。

将尝试恢复-谢谢,但这并没有解决问题。当CLI请求时,我复制了pwd,但结果仍然是401响应(我已经在terraform之外的提供商验证了代码,它确实成功通过了身份验证)/当我创建新ssh密钥、将公钥添加到digitalocean并将其用于部署时,问题得到了解决。
do_token = ua0uhk0a0ka0k7a0o90ia0oekadho0eka9