Tags: manuelwallrapp/results
Tags
tkn-results: Add service account based auth. The Result API accepts bearer token auth, which is then checked against the cluster. For human accounts, this means accepting a token that likely has much higher priviledge than the Result API needs. As an alternative, this adds support for fetching a service account bearer token as a delegate for Result operations - the service account is expected to have much finer permissions, reducing the scope / blast radius of the credential. This change: - Adds a service_account config field - Refactors client creation to allow for fake dependencies (i.e. k8s client) to be injected for tests. - Adds tests for token generation, SSL cert reading.
Add results-release service account. This service account includes the Workload Identity annotations (https://cloud.google.com/kubernetes-engine/docs/how-to/workload-identity#authenticating_to) to map this to a correspond GCP Service Account. Workload Identity is already enabled for the dogfooding cluster.
Move top level docs to docs folder. This is necessary for the Tekton website to render this page properly (it assumes everything is rooted in 1 folder). GitHub supports rendering project READMEs stored in the docs folder (https://docs.github.com/en/github/creating-cloning-and-archiving-repositories/about-readmes) so this should have minimal impact on the browser UX.