Replies: 2 comments
-
@Raid55 Hey, did you by any chance identify such pointers? Even I am looking for the same. |
Beta Was this translation helpful? Give feedback.
-
I'm facing a similar problem in that I want to use an init container to automatically install a new model when it is changed. Currently, I'm keeping the auth model hard-coded in my source code as this makes for good dev exp and allows integration tests to apply it during setup. I have resorted to inserting a type with the hash of the auth model in the name (i.e. Procedure:
This makes sense in a devops setting. When we need to change the model, we deploy a "dual model". Once all instances have been rolled over to the new auth model, we can migrate the permission entries and, if necessary, finish with deploying a new "singular model" which drops support for the old auth model. This works well for a smallish microservice architecture built from a mono-repo where the devs have embraced devops. |
Beta Was this translation helpful? Give feedback.
-
I apologize is this question is unrelated to openFGA, but it would be helpful to understand the best practice or be pointed in the right direction where I can read more about this without the anxiety of my "best guess".
I am building out our authz system using openFGA and I am nearing completion of a POC. However there are a few things that I could use some help on that i could not find on the Discord or on the github disc.
Being an amateur infra engineer, does anyone have solid pointers to some good reading around deploying OpenFGA in production? This would involve:
Right now my thought is to have a job install the CLI and run a "temporary server" connected to the staging/prod permissions database (psql) and make the changes. Once they are made, store environment variables as part of the backend docker image, thinking that if we reverted the auth_model_id would still be the previous one, regardless of if a new schema was created on the db. I am also thinking that a k8s job could run to handle schema migrations and env variable management (restart backend pods with new vars).
I am hoping to find a solution that will not be a burden on other engineers or the devExp as they make changes to the model and that will prevent mistakes from being made...but have a plan for when they eventually happen.
Any help or links to some third party libraries that can help with this type of mgmt in general is most welcome.
Beta Was this translation helpful? Give feedback.
All reactions