# 新リソース 14 個と移行の新相棒、tf-migrate 爆誕！

みんな、しぃちゃんだよ。今日は Infrastructure as Code 勢がニヤッとしちゃいそうなニュースを見つけたから、さっそく紹介するね。

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

Cloudflare の Changelog で、[Terraform Provider](https://registry.terraform.io/providers/cloudflare/cloudflare/latest/docs) の v5.19.0 が公開されたと発表されたよ。今回の柱は大きく 2 つ。ひとつは AI Gateway・Pipelines・R2 Data Catalog・User Groups・Vulnerability Scanner・Workers Observability・Zero Trust にまたがる新しいリソースが 14 個追加されたこと。もうひとつは v4 から v5 への移行体験が大幅に改善されたことで、26 リソース向けの自動 state upgrader が、新しい [tf-migrate CLI ツール](https://github.com/cloudflare/tf-migrate)と組み合わさって使えるようになったの。

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

これまで Terraform Provider を v4 から v5 に上げるときは、リソース名の変更・属性の書き換え・moved ブロックの用意を手作業で追いかける必要があって、地味に神経を使う作業だったんだよね。移行支援には `cmd/migrate` というツールも用意されていたんだけど、今回のリリースでそちらは非推奨に。役目は `tf-migrate` に譲り、`cmd/migrate` 自体は将来のリリースで削除される予定と明記されているの([#7062](https://github.com/cloudflare/terraform-provider-cloudflare/pull/7062))。

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

`tf-migrate` がリソースのリネーム・属性の更新・moved ブロックの生成を自動でやってくれるようになったから、手作業の手間とアップグレード時の事故リスクをまとめて減らせるようになったよ。さらに 26 リソースに増えた state upgrader が state 側の橋渡しを担ってくれるので、v4 時代に作ったリソースを壊さずに v5 へ引き継ぎやすくなったの。既に Cloudflare を Terraform で運用してるチームほど、この改善をダイレクトに感じられるはず。

## 深く潜ってみよう

新しく管理できるようになったリソースは、次の 14 個。

- cloudflare_ai_gateway(AI Gateway インスタンス)
- cloudflare_certificate_authorities_hostname_associations(mTLS 証明書のホスト名アソシエーション)
- cloudflare_custom_page_asset(カスタムページアセット)
- cloudflare_pipeline(Cloudflare Pipelines)
- cloudflare_r2_data_catalog(R2 Data Catalog)
- cloudflare_user_group(ユーザーグループ)
- cloudflare_user_group_members(ユーザーグループのメンバーシップ)
- cloudflare_vulnerability_scanner_credential(脆弱性スキャナーの認証情報)
- cloudflare_vulnerability_scanner_credential_set(脆弱性スキャナーの認証情報セット)
- cloudflare_vulnerability_scanner_target_environment(脆弱性スキャナーのターゲット環境)
- cloudflare_workers_observability_destination(Workers Observability の送信先)
- cloudflare_zero_trust_device_ip_profile(Zero Trust デバイスの IP プロファイル)
- cloudflare_zero_trust_device_subnet(Zero Trust デバイスのサブネット)
- cloudflare_zero_trust_dlp_settings(Zero Trust の DLP 設定)

state upgrader が対応した 26 リソースには account・custom_hostname・mtls_certificate・workers_custom_domain・zone_setting などが含まれていて、v4 と v5 の state が混在するときのスキーマの曖昧さも解消されたみたい。ほかにも `ruleset` が configuration rules で `content_converter` と `redirects_for_ai_training` に対応したり、`zero_trust_gateway_logging` が import できるようになったりと、細かい改善も同梱されてるよ。バグ修正のセクションでは `zero_trust_access_policy` の nil pointer panic 修正や、`certificate_pack` の state upgrader でのドリフト対策なんかが並んでる。地味だけど、実運用でハマりがちなところを丁寧に潰した印象。

移行手順の詳細は [Version 5 Migration Guide](https://registry.terraform.io/providers/cloudflare/cloudflare/latest/docs/guides/version-5-migration) にまとまっていて、tf-migrate 自体は GitHub リポジトリで公開されてるから、気になる人は覗いてみてね。

## まとめ

- Terraform Provider v5.19.0 で AI Gateway・Pipelines・Zero Trust など 14 個の新リソースが追加
- v4 から v5 への移行向けに、26 リソース対応の自動 state upgrader が登場
- 新ツール `tf-migrate` がリソースのリネーム・属性更新・moved ブロック生成を自動化
- 旧来の `cmd/migrate` は非推奨になり、将来のリリースで削除予定
- Cloudflare を Terraform で運用中で、そろそろ v5 に上げたいと思っていた人に一番効くアップデート
