エクスポートできないリソースタイプがあると指摘されてしまいます。
質問
API Management において ARM テンプレートのエクスポートを実行したところ、
下記画像の様にエクスポートできないリソースタイプに関するエラーが表示されました。
特に悪い設定などはしていないつもりなのですが、どうしたら解決できますか?
また、このようなエラーが出てしまうリソースタイプの一覧はありますか?
回答
こちらはユーザーの設定等による問題ではなく、現時点でのプラットフォーム側の動作仕様となります。
このエラーの表示される原因は Azure の ARM テンプレートと各サービスの互換性がないためとなります。
詳細
この警告は、各リソースと ARM テンプレートの間での互換性が提供されておらず、まだエクスポートのための対応ができていないために発生するものです。
各リソースにおいて利用ができる ARM テンプレ―トのエクスポート機能については、各サービスと ARM テンプレートの間に互換性が必要となります。
各サービスが新しい更新をリリースした際、稀に既存のリソースと互換性がない場合があります。
この時、この互換性のない部分は一時的にエクスポートができない状態となります。
また、一部サービスにおいては互換性がない状態が続いているものもあります。
典型的な例としては本件で話題になっている API Management のテンプレートが挙げられます。
上記のような理由から、こちらはユーザーの設定による問題ではなく、またユーザー側で解決できるものではありません。
大変恐縮ながら、これらのエクスポートができないリソースタイプの一覧については 2021 年 6 月現在ではご用意がございません。
これは、上述の通り各サービスの更新や対応によって各サービスと ARM の間の互換状況がすぐに変化するためです。
補足
なお、API Management において、2021 年 7 月 9 日現在では、テンプレートのエクスポートを実施すると、
最大で下記の4つのリソースタイプがエクスポートできないと警告されました。
- Microsoft.ApiManagement/service/contentType
- Microsoft.ApiManagement/service/apis/policy
- Microsoft.ApiManagement/service/apis/operations/policy
- Microsoft.ApiManagement/service/products/policy
Microsoft.ApiManagement/service/contentType は開発者ポータル編集時に表示される編集項目を示しています。
Microsoft.ApiManagement/service/apis/policy、Microsoft.ApiManagement/service/apis/operations/policy、
Microsoft.ApiManagement/service/products/policyはそれぞれ、
各API、各APIのOperation、各製品のポリシーを示しています。
また、contentType 以外の3つについては、エクスポートできないエラーは表示されているものの、
テンプレート内にポリシーが出力されているようにも見受けられました。
contentType については下記の API を利用して確認することが可能です。
Content Type - List By Service
2021 年 7 月 9 日時点の内容となります。
本記事の内容は予告なく変更される場合がございますので予めご了承ください。