When reading the docs, terms "Teams" and "Teams API" are mentioned, but I had a hard time finding out what it was about. Eventually I found some specs on the API and the fake-teams-api, but from a postgres-operator user documentation perspective it wasn't clear at all what teams are about. Did I overlook something? Or perhaps the documentation around the concept of Teams and the teams-api can be improved?
+1. I had the exact same experience. It's still a bit unclear to me - is this something Zalando-internal that the outside world can safely ignore in this context?
There was once a bit more docs and there is even manifests how to deploy the "fake" team API.
This is the most basic API: /.../<teamname> -> ["name","anothername"]
With this anyone can provide a minimal API around whatever service they use and how they want to bootstrap default human users and super user team members.
We will put this in the docs. It is not required for the operator to work, makes it just more convenient.
"not required for the operator to work" is what I thought as well, but the teamId seems to be a mandatory field. The submission API errors about missing team name when submitting a Postgresql yaml manifest without teamId. When filling it with bogus, it's later ignored as no team API URL is configured. Perhaps teamId should be optional?
This team ID and the expected prefix imho serves a good purpose on ensuring unique cluster names and reducing the risk of colliding entities. It is very easy to create/apply changes to entities in K8S if your environment is lax.
But it may be worth discussing how a manifest or cluster setup could look like without it.
I feel as though all that's missing is a simple explanation of the teamId in the docs. It doesn't seem clear to me what it is for, and so I can't give sensible values.
Hey. I was installing the postgres-operator & going through the config, trying to understand what the different pieces of it were. I ran into this comment about the teams api, for an oauth_token_secret_name, & couldn't find much info on what the Teams API is. This thread is one of the the things that's turned up.
Not sure if this Teams thing is a postgres thing, a zalando/spilo thing, or perhaps a kube thing? We got a little help in this comment from Jan-M but I'm still missing some of the ground-level info to understand what/whose Teams API is being talked about here.
Edit: ah! Sorry. I started by trying to search online, but the user guide gives me some better starting context, starting here. I hope this helps other people, please pardon me & my posting.
maybe it's worth considering making the teamId and the associated restrictions on the postgressql's name optionally optional (e.g. via a config setting for the operator)?