私は、ユーザーがクラウド リソース (クラウド インスタンス、Kubernetes クラスターなど) をクラウド プラットフォームで管理するのに役立つTerraform プラグイン/プロバイダー (リンク) を構築しています。
現時点では、クラウド プラットフォームは作成後の Kubernetes ノード サイズの変更をサポートしていません。ユーザーがノード サイズを変更する場合は、新しいノード サイズで新しいノード プールを作成する必要があります。
そこで、このブロックをプラグイン コード、特に Kubernetes クラスターの更新メソッド (リンク)に追加します。
if d.HasChange("target_nodes_size") {
errMsg := []string{
"[ERR] Unable to update 'target_nodes_size' after creation.",
"Please create a new node pool with the new node size.",
}
return fmt.Errorf(strings.Join(errMsg, " "))
}
terraform apply
問題は、コマンドを実行したときにのみエラーが表示されることです。私が欲しいのは、ユーザーがterraform plan
コマンドを実行したときに表示して、新しいノードプールを作成せずにノードサイズを変更できないことを早期に認識できるようにすることです。
target_nodes_size
そのフィールドを不変にして、terraform plan
出力の早い段階でエラーを表示するにはどうすればよいですか?