The homelab binds Envoy to node ports 80/443 with hostPort, because VMware bridging over Wi-Fi never made a LoadBalancer IP reachable (claude.md issue #6). Here it is a real cloud load balancer, and since the nodes have no public IPs it is the single inbound path to the cluster. envoy.service.loadBalancerIP pins it to the address Terraform reserved, which is what makes DNS work: every hostname here is <name>.35.238.248.203.nip.io, so an unpinned Service would take a fresh ephemeral address and point every hostname at nothing. That field is deprecated upstream (Kubernetes 1.24). GKE's replacement annotation is not a drop-in — it takes the address resource's name, and on an external Service also requires spec.loadBalancerClass: networking.gke.io/l4-regional-external, changing which controller programs the load balancer. GKE still honours the field, so this is the smaller change. contour.ingressClass.name is pinned to "contour" because every Ingress in this cluster names that class; the chart default derives a name from the release instead. Envoy stays a DaemonSet, which is what makes the chart's default externalTrafficPolicy: Local (real client IPs) correct. Co-Authored-By: Claude Opus 5 <noreply@anthropic.com> Claude-Session: https://claude.ai/code/session_01LEsTefWWifp4ikvhHF5s6N
devops-infra-helm-charts
This branch (main) is part of the restructuring process for the gcp-devops-admin repository, aimed at organizing helmcharts of all infrastructure tools and their corresponding value files. The purpose of this repository is to centralize and manage these resources efficiently.
Directory Structure
helm-templates
This directory is intended for caching or forking helm charts locally. If there's a need to modify or customize any helm chart, it can be done here. Otherwise, the charts will be used directly from the provider.
helm-overrides
The helm-overrides folder stores custom values files for helm charts. These files can be used to override the default values provided by the helm charts, whether they are forked or used directly from the provider.
cluster_name
Each tool within the repository may have different values based on the specific clusters. This directory is used to manage configurations and values tailored to different clusters.
manifests
The manifests directory contains manifest files that need to be applied only once. Examples include service-to-service configurations, storage classes, and any other manifest-related files necessary for the operation of the infrastructure tools.
Additional Notes
Please ensure that all changes made to this branch align with the restructuring objectives and follow the best practices for managing helm charts and infrastructure-related configurations.
For any questions or concerns, please reach out to the designated repository maintainers.