KubeVela篇10:KubeVela 私有云Terraform Provider Addon插件开发指南

如何Debug Terraform Controller

摸索期,肯定会遇到很多问题,有些问题可以通过日记查看,而有些问题可能需要修改源码,添加一些用于排查问题的代码。

例如,由于job中的容器执行完命令后就退出了,没办法通过exec -it命令进入容器查看当时的/data目录下执行的main.tf代码文件,也看不到当时的环境变量,可以修改源码给job加一条命令,用来查问题。

将源码克隆下来后,卸载kubevela已经安装的terraform controller,然后本地debug启动terraform controller。

vela addon disable terraform 

如何修改kubevela使用的Terraform版本

由于terraform的每个版本几乎都会修改tf协议,使用高版本特性编写的tf文件,需要高版本的terraform去解析执行,所以我们可能需要修改Terraform controller使用的oamdev/docker-terraform镜像的版本。

从Terraform controller工作原理我们了解到,Terraform controller是以启动一个Job容器的方式去执行terraform命令申请/删除资源,Job的容器镜像里面安装了terraform引擎,这个镜像就是oamdev/docker-terraform,镜像的不同版本安装的是不同的terraform版本。

假设我们现在需要修改

你可能感兴趣的:(云原生实战笔记,terraform,云原生)