我对terraform和golang还是很陌生,我正在尝试为POC实现一个自定义提供程序,以检查我们是否可以利用terraform供我们自己使用。
我能够根据该视频和一些GitHub示例编写和构建golang提供程序。
我创建了一个go工作区,并将$ GOPATH设置为默认值$ HOME / go。
Terraform软件包安装在$ GOPATH / src / github / hashicorp中。
Terraform二进制文件安装在$ HOME / dev中,并在$ PATH中指定。
根据视频,我在/ terraform / builtin / providers / mycustomprovider中创建了提供程序包
然后将包打包到$ GOPATH / bin
一旦我尝试“地形计划”,我将得到以下信息:
provider.incapsula:未安装合适的版本
版本要求:“(任何版本)”
安装的版本:无
我将自定义提供程序二进制文件添加到terraform.d / plugins中,并尝试再次运行“ terraform plan”。
现在我收到以下错误:
错误:要求用户输入错误:发生1个错误:* provider.incapsula:fork / exec〜/ .terraform.d / plugins / darwin_amd64 / terraform-provider-incapsula:权限被拒绝
我尝试将chmod更改为666,然后将二进制文件切成字符串,但没有运气,我仍然遇到相同的错误。
我试图寻找这种问题,但找不到任何参考。
我将不胜感激。
谢谢!
terraform ×1