keycloak_openid_user_client_role_protocol_mapper.grafana_role_mapper was missing. It is configured to make the client roles for this Application (and only those for this application) available in the grafana_roles claim. We can also disable full scope, as we're not interested in other role mappings. The Terraform files are a bit reorganized, everything configuring the Grafana client lives in grafana.tf (and vice-versa for Forgejo, Buildkite and Gerrit). The only thing left in permissions.tf is global groups, their memberships and mappings. Change-Id: I37b0755f4f8658518083353ec6cc0193e805d5c2 Reviewed-on: https://cl.snix.dev/c/snix/+/30476 Tested-by: besadii Autosubmit: Florian Klink <flokli@flokli.de> Reviewed-by: Jonas Chevalier <zimbatm@zimbatm.com> |
||
|---|---|---|
| .. | ||
| .gitignore | ||
| attributes.tf | ||
| buildkite.tf | ||
| default.nix | ||
| forgejo.tf | ||
| gerrit.tf | ||
| grafana.tf | ||
| identity_providers.tf | ||
| main.tf | ||
| permissions.tf | ||
| README.md | ||
Terraform for Keycloak
This contains the Terraform configuration for deploying TVL's Keycloak
instance (which lives at auth.tvl.fyi).
Secrets are needed for applying this. The encrypted file
//ops/secrets/tf-keycloak.age contains export calls which should
be sourced, for example via direnv, by users with the appropriate
credentials.
An example direnv configuration used by tazjin is this:
# //ops/keycloak/.envrc
source_up
eval $(age --decrypt -i ~/.ssh/id_ed25519 $(git rev-parse --show-toplevel)/ops/secrets/tf-keycloak.age)