GitLab Agent on GKE AutoPilot doesn't expose to internet?

Problem to solve

GitLab Agent with Auto DevOps deploying to GKE AutoPilot doesn’t expose pods to internet automatically. Cluster IP type Services are created, which in AutoPilot, are not accessible from the internet.

If I manually make a load balancer Service and target the pod port, I can reach my pod from the internet. To do that I have to veer away from infra-as-code or create a cluster-repo. I also have to ignore some UI warnings such as “This workload is managed by Helm. Changes made here may be overwritten.” when I click expose on my workload in GKE.

All the GitLab Agent and Auto DevOps docs and multiple videos on the matter failed to mention these additional steps and knowledge needed to get even the most basic of webpages up. Am I missing something?

Steps to reproduce

  • Create a GKE AutoPilot cluster
  • Create a GitLab hello-world http server
  • Install GitLab agent from GitLab project UI, set KUBE_CONTEXT and enable Auto DevOps manual staged deployment
  • Deploy a hello-world app

Configuration

  • As vanilla as humanly possible

Versions

  • GitLab.com SaaS

Versions

  • GitLab (Web: /help or self-managed system information sudo gitlab-rake gitlab:env:info):
  • GitLab Runner, if self-hosted (Web /admin/runners or CLI gitlab-runner --version):

Cloud-native

  • Agent for Kubernetes (Operate > Kubernetes clusters): latest
  • Kubernetes (kubectl version): latest

Helpful resources

kubectl get service staging-auto-deploy
NAME                  TYPE        CLUSTER-IP      EXTERNAL-IP   PORT(S)    AGE
staging-auto-deploy   ClusterIP   34.118.237.96   <none>        5000/TCP   2d3h

The ingress class is set to nginx… which is not installed in my AutoPilot cluster, nor did ANY of the documention on GitLab indicate that is a requirement. Using Nginx greatly complicates certificate issuance and maintenance burden, vs built-in GKE Load Balancer.

Why is it not using a Load Balancer? how can I make one on the same domain without interfering with GitLab Agent?