diff --git a/README.md b/README.md
index f417eb1..9940de0 100644
--- a/README.md
+++ b/README.md
@@ -4,14 +4,14 @@
## Requirements
| Name | Version |
-|------|---------|
+| ---- | ------- |
| [terraform](#requirement\_terraform) | > 1.3 |
| [cloudflare](#requirement\_cloudflare) | ~> 5.0 |
## Providers
| Name | Version |
-|------|---------|
+| ---- | ------- |
| [cloudflare](#provider\_cloudflare) | ~> 5.0 |
| [sops](#provider\_sops) | n/a |
@@ -22,7 +22,7 @@ No modules.
## Resources
| Name | Type |
-|------|------|
+| ---- | ---- |
| [cloudflare_dns_record.api](https://registry.terraform.io/providers/cloudflare/cloudflare/latest/docs/resources/dns_record) | resource |
| [cloudflare_dns_record.apps](https://registry.terraform.io/providers/cloudflare/cloudflare/latest/docs/resources/dns_record) | resource |
| [cloudflare_dns_record.apps_wildcard](https://registry.terraform.io/providers/cloudflare/cloudflare/latest/docs/resources/dns_record) | resource |
@@ -38,7 +38,6 @@ No modules.
| [cloudflare_zero_trust_access_group.admins](https://registry.terraform.io/providers/cloudflare/cloudflare/latest/docs/resources/zero_trust_access_group) | resource |
| [cloudflare_zero_trust_access_identity_provider.github](https://registry.terraform.io/providers/cloudflare/cloudflare/latest/docs/resources/zero_trust_access_identity_provider) | resource |
| [cloudflare_zero_trust_organization.main](https://registry.terraform.io/providers/cloudflare/cloudflare/latest/docs/resources/zero_trust_organization) | resource |
-| [cloudflare_zero_trust_tunnel_cloudflared.cluster_apps](https://registry.terraform.io/providers/cloudflare/cloudflare/latest/docs/resources/zero_trust_tunnel_cloudflared) | resource |
| [cloudflare_zero_trust_tunnel_cloudflared.warp](https://registry.terraform.io/providers/cloudflare/cloudflare/latest/docs/resources/zero_trust_tunnel_cloudflared) | resource |
| [cloudflare_zero_trust_tunnel_cloudflared_route.private_network](https://registry.terraform.io/providers/cloudflare/cloudflare/latest/docs/resources/zero_trust_tunnel_cloudflared_route) | resource |
| [cloudflare_zone_setting.brotli](https://registry.terraform.io/providers/cloudflare/cloudflare/latest/docs/resources/zone_setting) | resource |
@@ -60,6 +59,6 @@ No inputs.
## Outputs
| Name | Description |
-|------|-------------|
+| ---- | ----------- |
| [tunnel\_ids](#output\_tunnel\_ids) | Cloudflare Tunnel IDs for reference in kustomize-cluster ConfigMaps |
diff --git a/cf-tunnels.tf b/cf-tunnels.tf
index 1b51d05..af41a9a 100644
--- a/cf-tunnels.tf
+++ b/cf-tunnels.tf
@@ -1,30 +1,9 @@
-# Cloudflare Tunnels for OpenShift workloads
-# Tunnels connect cloudflared pods to Cloudflare edge network
+# Cloudflare Tunnels — connect cloudflared pods to Cloudflare's edge.
#
-# The cluster-apps tunnel is managed by cloudflare-operator in OpenShift.
-# Tunnel credentials are managed in kustomize-cluster via SOPS/KSOPS.
-# DNS records for app endpoints are managed by TunnelBinding resources in cluster.
-
-# =============================================================================
-# Consolidated HTTP Tunnel (managed by cloudflare-operator)
-# =============================================================================
-
-# Consolidated tunnel for all HTTP workloads
-# Lifecycle managed by cloudflare-operator ClusterTunnel resource in OpenShift
-# Import: tofu import cloudflare_zero_trust_tunnel_cloudflared.cluster_apps 03f750691b4ad4d59aa4b7205adaa108/1ac3a39c-7d97-422e-88e5-1f82b6334bbb
-resource "cloudflare_zero_trust_tunnel_cloudflared" "cluster_apps" {
- account_id = local.account_id
- name = "cluster-apps"
-
- lifecycle {
- # Tunnel is managed by cloudflare-operator, prevent Terraform from modifying/deleting
- ignore_changes = all
- }
-}
-
-# =============================================================================
-# WARP Connector (IP routing for Zero Trust VPN)
-# =============================================================================
+# The cluster-apps tunnel is created and owned by cloudflare-operator
+# (see kustomize-cluster/operators/cloudflare/cluster-tunnel.yaml). Tunnel
+# credentials live in the cluster's Secret. DNS records for app endpoints
+# are reconciled by TunnelBinding resources, not managed here.
resource "cloudflare_zero_trust_tunnel_cloudflared" "warp" {
account_id = local.account_id
diff --git a/outputs.tf b/outputs.tf
index 9f26b18..c36825b 100644
--- a/outputs.tf
+++ b/outputs.tf
@@ -5,7 +5,6 @@
output "tunnel_ids" {
description = "Cloudflare Tunnel IDs for reference in kustomize-cluster ConfigMaps"
value = {
- cluster_apps = cloudflare_zero_trust_tunnel_cloudflared.cluster_apps.id
- warp = cloudflare_zero_trust_tunnel_cloudflared.warp.id
+ warp = cloudflare_zero_trust_tunnel_cloudflared.warp.id
}
}