ホームページ > バックエンド開発 > Golang > マップ値のマップ用のカスタム Terraform データ ソース プロバイダー スキーマを作成するにはどうすればよいですか?

マップ値のマップ用のカスタム Terraform データ ソース プロバイダー スキーマを作成するにはどうすればよいですか?

PHPz
リリース: 2024-02-10 11:03:09
転載
845 人が閲覧しました

如何为地图值的地图创建自定义 terraform 数据源提供程序架构?

php エディター Banana は今日、マップ値のマップ用のカスタム Terraform データ ソース プロバイダー アーキテクチャを作成する方法を紹介します。インフラストラクチャ オーケストレーションに Terraform を使用する場合、多くの場合、動的構成のために外部システムまたはサービスからデータを取得する必要があります。カスタム データ ソース プロバイダーは、この目標の達成に役立ちます。カスタム データ ソース プロバイダー スキーマを作成すると、マップ値のマップから必要なデータを簡単に取得し、それを Terraform 構成に適用できます。次に、それを達成する方法を学びましょう!

質問の内容

タイプ map[string]map[string]string のロールを返す golang 関数があります。 ###例えば:### リーリー

以下に示すようにスキーマを作成しました...

リーリー

そして、ロールの値をスキーマに渡す作成メソッドです

リーリー

しかし、terraform の出力は空のマップです。どうすれば修正できますか。助けてください:)

リーリー

期待される出力は次のとおりです

map[foo:map[name:abc env:dev id:465 project:e-1] boo:map[name:def env:prd id:82 project:e-1] :doo[name:ght env:stg id:353 project:e-3]]
ログイン後にコピー

回避策

使用している terraform SDK の古いバージョンでは、ここで実行しようとしていることは有効になりません。マッピングは基本的な型 (

typestring

typeinttypebool) のみにすることができます。 この構造を作成するには、新しいフレームワーク

に移行する必要があります。このフレームワークは、(sdkv2 の場合のように) 従来の terraform v0.11 の型システムではなく、最新の terraform の型システム用に構築されています。およびそれ以前のタイプ システム。

terraform プラグイン フレームワークでは、ここで説明しようとしているものと同等の構造は

mapnestedattribute

であり、次は質問で示されているスキーマ構造を説明しています。 リーリー これは、指定されたプロパティを持つオブジェクトのマッピングを表すため、上記のスキーマ型は次の型制約と同等であり、使用できます。 テラフォーム言語の型制約構文

:

リーリー

以上がマップ値のマップ用のカスタム Terraform データ ソース プロバイダー スキーマを作成するにはどうすればよいですか?の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。

ソース:stackoverflow.com
このウェブサイトの声明
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。
人気のチュートリアル
詳細>
最新のダウンロード
詳細>
ウェブエフェクト
公式サイト
サイト素材
フロントエンドテンプレート