OpenFGA Github Action - Deploy
This action can be used to deploy your authorization model to an OpenFGA store.
Parameter
Required/Optional
Description
api-url
Required
The URL to your OpenFGA server
api-token
Required
The token used to when preshared keys are used to authenticate the OpenFGA server
store-id
Required
The store to which the model should be deployed
model-file-path
Optional
The path to your model file relative to the root of your project
model
Optional
The model value if file is not used, Ensure it is character escaped.
format
Optional
Authorization model input format. Can be "fga" or "json", defaults to auto-detecting from the file extension
Output
Description
authorization_model_id
The ID of the deployed Authorization Model
name : Deploy Action
on :
workflow_dispatch :
jobs :
deploy :
name : Deploy Authorization Model
runs-on : ubuntu-latest
steps :
- uses : actions/checkout@v4
- name : Deploy using a file
uses : openfga/[email protected]
with :
api-url : http://localhost:8080
api-token : ${{ secrets.KEY }}
store-id : ${{ env.STORE_ID }}
model-file-path : ./example/model.fga
- name : Deploy using a string
uses : openfga/[email protected]
with :
api-url : http://localhost:8080
api-token : ${{ secrets.KEY }}
store-id : ${{ env.STORE_ID }}
format : json
model : ' {\"schema_version\":\"1.1\",\"type_definitions\":\[\{\"type\":\"user\"\},\{\"type\":\"document\",\"relations\":\{\"reader\":\{\"this\":\{\}\},\"writer\":\{\"this\":\{\}\},\"owner\":\{\"this\":\{\}\}\},\"metadata\":\{\"relations\":\{\"reader\":\{\"directly_related_user_types\":\[\{\"type\":\"user\"\}\]\},\"writer\":\{\"directly_related_user_types\":\[\{\"type\":\"user\"\}\]\},\"owner\":\{\"directly_related_user_types\":\[\{\"type\":\"user\"\}\]\}\}\}\}\]\}'