When setting up a GKE cluster for use with Juju, it appears with an invalid cloud name that's unable to be used. For example, the automatic cloud name for a cluster I just set up is:
gke_gothic-list-89514_us-central1-c_cluster-1
And the error you get when bootstrapping is:
ERROR registering juju admin service account for cloud "gke_gothic-list-89514_us-central1-c_cluster-1": ensuring service account "juju-credential-gke_gothic-list-89514_us-central1-c_cluster-1" in namespace "kube-system": ServiceAccount "juju-credential-gke_gothic-list-89514_us-central1-c_cluster-1" is invalid: metadata.name: Invalid value: "juju-credential-gke_gothic-list-89514_us-central1-c_cluster-1": a lowercase RFC 1123 subdomain must consist of lower case alphanumeric characters, '-' or '.', and must start and end with an alphanumeric character (e.g. 'example.com', regex used for validation is '[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*')
So I believe the problem with the automatic name is that is has underscores in it.
It's not hard to work around this by adding a new cloud connected to the same cluster with add-k8s (eg: "juju add-k8s --gke mygke"), but it would be nice if the automatic cloud name was actually usable.