對于 Terraform 插件,Terraform Core 是用 Go 編程語言撰寫的靜態編譯二進制檔案。
我的問題是客戶端庫總是需要用 Go 撰寫嗎?
如果我們想為一個沒有 Go 客戶端庫的目標 API 創建一個新的提供者怎么辦?
uj5u.com熱心網友回復:
這篇文章似乎回答了您的問題。關鍵段落是:
雖然可以撰寫非 Go 提供程式,但由于 Terraform 使用了 gRPC 協議,這比乍一看要難。多個包,從編碼器和解碼器到 Terraform 的型別系統,都需要用這種新語言重新實作。插件 SDK 也需要重新實作,這不是一個微不足道的挑戰。非 Go 提供商與 Registry、terraform init 和 Terraform 生態系統的其他部分互動的方式尚不清楚。
請注意,這不一定會阻止創建此類插件,因為您可以在 Go 中撰寫一個呼叫庫的存根(CGO,通過 RPC 等)。
轉載請註明出處,本文鏈接:https://www.uj5u.com/qukuanlian/334883.html
