Files
tar-valon-terraform/cloudflare/generate_cf_resources.sh
T

74 lines
2.0 KiB
Bash
Executable File

#!/bin/bash
# Script to generate Terraform resources using cf-terraforming for OpenTofu
resources=(
cloudflare_access_application
cloudflare_access_group
cloudflare_access_identity_provider
cloudflare_access_mutual_tls_certificate
cloudflare_access_policy
cloudflare_access_rule
cloudflare_access_service_token
cloudflare_account_member
cloudflare_api_shield
cloudflare_api_token
cloudflare_argo
cloudflare_authenticated_origin_pulls
cloudflare_authenticated_origin_pulls_certificate
cloudflare_bot_management
cloudflare_byo_ip_prefix
cloudflare_certificate_pack
cloudflare_custom_hostname
cloudflare_custom_hostname_fallback_origin
cloudflare_custom_pages
cloudflare_custom_ssl
cloudflare_filter
cloudflare_firewall_rule
cloudflare_healthcheck
cloudflare_ip_list
cloudflare_list
cloudflare_load_balancer
cloudflare_load_balancer_monitor
cloudflare_load_balancer_pool
cloudflare_logpull_retention
cloudflare_logpush_job
cloudflare_logpush_ownership_challenge
cloudflare_magic_firewall_ruleset
cloudflare_origin_ca_certificate
cloudflare_page_rule
cloudflare_rate_limit
cloudflare_record
cloudflare_ruleset
cloudflare_spectrum_application
cloudflare_tiered_cache
cloudflare_teams_list
cloudflare_teams_location
cloudflare_teams_proxy_endpoint
cloudflare_teams_rule
cloudflare_tunnel
cloudflare_turnstile_widget
cloudflare_url_normalization_settings
cloudflare_waf_group
cloudflare_waf_override
cloudflare_waf_package
cloudflare_waf_rule
cloudflare_waiting_room
cloudflare_worker_cron_trigger
cloudflare_worker_route
cloudflare_worker_script
cloudflare_workers_kv
cloudflare_workers_kv_namespace
cloudflare_zone
cloudflare_zone_dnssec
cloudflare_zone_lockdown
cloudflare_zone_settings_override
)
for resource in "${resources[@]}"; do
echo "Generating ${resource}.tf..."
cf-terraforming generate --provider-registry-hostname registry.opentofu.org --resource-type $resource > "${resource}.tf_v5"
done
echo "✅ All Terraform files generated!"