# まさかの影響 15%！Cloudflare の Terraform v5、v5.6.0 でバグ一掃だよ！

やっほー、しぃちゃんだよ！ 今日は IaC 勢に嬉しい(というかホッとする)ニュースだよ。Cloudflare の Terraform provider が v5.6.0 にアップデートされて、たまっていたバグがまとめて直ったみたい！

## なにが発表されたの？

Cloudflare の Changelog によると、2025 年 6 月 17 日に Terraform provider の v5.6.0 がリリースされたよ。今年の頭に登場したばかりの Terraform v5 provider について、ローンチ後に想定以上の数のバグ報告がユーザーから寄せられていて、その影響はリソース全体の約 15% にも及んでいたことが明かされたの。今回の v5.6.0 は、それらの問題をまとめて修正するリリースなんだって。

## 今までどうだったの？

これまでの Terraform provider と違って、v5 provider は Cloudflare の REST API の OpenAPI スキーマから自動生成される仕組みに変わったの。実装の手間は減らせるはずだったんだけど、その分ローンチ直後から色々なリソースで不具合が表面化しちゃって、たとえばこんな困りごとが起きていたよ。

- `cloudflare_zero_trust_access_identity_provider` や `cloudflare_zone` で、`terraform plan` を実行するたびに差分が出続けてしまう(実際は変更していないのに毎回検出される)
- `cloudflare_page_rules` で `cache_level` を `cache_ttl_by_status` に設定するとランタイムパニックが発生
- `cloudflare_zero_trust_tunnel_cloudflared_config` でリクエストのシリアライズに失敗する
- `zone_lockdown` リソースにドキュメント化されていない `priority` フィールドがあった
- `cloudflare_zero_trust_device_default_profile_local_domain_fallback` と `cloudflare_account_subscription` が import に対応していなかった

Zero Trust のトンネル設定やゾーン設定、ページルールといった、実際の運用でよく触るリソースが軒並み対象になっていたんだね。

## これで何が変わるの？

v5.6.0 では、上に挙げた問題がまとめて修正されているよ。GitHub 上では実に 13 件の issue がこのリリースでクローズされていて、たとえば以下のような報告が解決済みになったの。

- `zero_trust_tunnel_cloudflared_virtual_network` を更新すると 500 エラーになる問題(#5098)
- ページルールを変更するとパニックする問題(#5577)
- `cloudflare_zone_setting` の `value` と `enabled` のスキーマが分かりにくく混乱していた問題(#5653)
- トンネルのシークレットをローテーションできない問題(#5561)

これまで CI/CD の apply が謎のパニックで落ちたり、plan のたびに無駄な差分が出て困っていたチームは、v5.6.0 へ上げるだけでかなりスッキリしそうだよ。Cloudflare の Zero Trust やゾーン設定を Terraform で管理している人は、まさに刺さるアップデートだね。

## 深く潜ってみよう

新しく追加されたリソースは、この 4 つだよ。

- `cloudflare_schema_validation_operation_settings`
- `cloudflare_schema_validation_schemas`
- `cloudflare_schema_validation_settings`
- `cloudflare_zero_trust_device_settings`

スキーマバリデーション関連のリソースがまとまって増えたのと、Zero Trust のデバイス設定を扱うリソースが加わった形だね。細かい修正点はこれ以外にも「Other bug fixes」としてまとめられているので、全部の変更点を確認したい人は [GitHub の changelog](https://github.com/cloudflare/terraform-provider-cloudflare) を見てね。

ちなみに v4 から v5 への移行を検討している人向けには、Grit を使った自動移行スクリプト付きの [migration guide](https://developers.cloudflare.com/terraform/) が用意されているよ。ただし Terraform module を使っている構成には自動スクリプトが対応していないので、その場合は手動での移行が必要とのこと。適用前には必ず `terraform plan` で差分を確認してから進めるよう案内されているよ。

## まとめ

- Cloudflare の Terraform provider v5.6.0 がリリースされたよ
- v5 は OpenAPI スキーマからの自動生成に変わった影響で、リソースの約 15% にバグが出ていたことが判明
- ゾーン設定・ページルール・Zero Trust トンネル関連など 13 件の issue がこのリリースでクローズ
- 新リソースはスキーマバリデーション系 3 つと `cloudflare_zero_trust_device_settings` の計 4 つ
- v4 → v5 移行には Grit の自動スクリプトが使えるけど、module 利用時は手動移行が必要

Cloudflare のリソースを Terraform で管理していて、原因不明のパニックや無駄な差分に悩まされていたインフラ担当さんには、まさに待望のアップデートだよ！
