teleport/api
Tiago Silva e868d2e9e8
Adds GCP GKE auto-discovery (#17831)
This PR presents a watcher for automatic `kube_cluster` discovery for GCP GKE clusters. Given an identity with access to the GCP cloud, the auto-discovery service will scan the cloud and register all clusters available in Kubernetes Engine.

Once the discovery service creates a `kube_cluster` on the Auth Server, the Kubernetes Service will start serving it. The credentials used to access the cluster are short-lived and generated through Google OAuth2 associated with the GCP Service Account configured for the Kubernetes Service.

GCP's Service Account must have the following role def attached:

```yaml
description: 'GKE Auto-Discovery'
includedPermissions:
- container.clusters.impersonate
- container.clusters.get
- container.clusters.list
- container.pods.get
- container.selfSubjectAccessReviews.create
- container.selfSubjectRulesReviews.create
name: projects/{projectID}/roles/GKEKubernetesAutoDisc
stage: GA
title: GKEKubernetesAutoDisc
```

Part of #16135, #13376
Related to  #12048, #16276, #16281, #16633, #14991
2022-11-11 18:10:29 +00:00
..
breaker Enable GCI linter (#17894) 2022-10-28 20:20:28 +00:00
client Naji/12220 socks proxy client (#17976) 2022-11-04 17:40:26 +00:00
constants Adds GCP GKE auto-discovery (#17831) 2022-11-11 18:10:29 +00:00
defaults gRPC conversions - SSO Auth Connectors (#13073) 2022-06-08 01:45:06 +00:00
gen/proto/go Rename BulkCreateDevice to BulkCreateDevices (#18030) 2022-11-03 22:14:45 +00:00
identityfile Enable GCI linter (#17894) 2022-10-28 20:20:28 +00:00
metadata Enable GCI linter (#17894) 2022-10-28 20:20:28 +00:00
observability/tracing Skip SSH tracing if backend doesn't support it (#18236) 2022-11-08 03:04:53 +00:00
profile Enable GCI linter (#17894) 2022-10-28 20:20:28 +00:00
proto Adds GCP GKE auto-discovery (#17831) 2022-11-11 18:10:29 +00:00
types Adds GCP GKE auto-discovery (#17831) 2022-11-11 18:10:29 +00:00
utils Ensure invalid tunnel agent connections get closed (#17899) 2022-11-04 18:05:13 +00:00
go.mod Bump Go dependencies (#18267) 2022-11-08 20:31:08 +00:00
go.sum Bump Go dependencies (#18267) 2022-11-08 20:31:08 +00:00
version.go Bump version in master to 12.0.0-dev (#17104) 2022-10-06 01:51:59 +00:00