Azure / data-api-builder

Data API builder provides modern REST and GraphQL endpoints to your Azure Databases and on-prem stores.
https://aka.ms/dab/docs
MIT License
912 stars 187 forks source link

[Enhancement] `dab configure --runtime` in CLI #2403

Open abhishekkumams opened 2 weeks ago

abhishekkumams commented 2 weeks ago

Below are the requirements for adding support for updating runtime section of the config using dab-configure command.

Configuration File Property Path CLI Flag Data Type Nullable
runtime.
rest.path
--runtime.rest.path String (default: /api)
runtime.
rest.enabled
--runtime.rest.enabled Boolean: true, false (default: true)
runtime.
rest.request-body-strict
--runtime.rest.request-body-strict Boolean: true, false (default: true)
runtime.
graphql.allow-introspection
--runtime.graphql.allow-introspection Boolean: true, false (default: true)
runtime.
graphql.path
--runtime.graphql.path String (default: /graphql)
runtime.
graphql.enabled
--runtime.graphql.enabled Boolean: true, false (default: true)
runtime.
graphql.multiple-mutations.create.enabled
--runtime.graphql.multiple-mutations.create.enabled Boolean: true, false (default: true)
runtime.
host.mode
--runtime.host.mode String: Development, Production
runtime.
host.cors.origins
--runtime.host.cors.origins Array of strings
runtime.
host.cors.allow-credentials
--runtime.host.cors.allow-credentials Boolean: true, false (default: false)
runtime.
host.authentication.provider
--runtime.host.authentication.provider String: StaticWebApps, AppService, AzureAD, Jwt
runtime.
host.authentication.jwt.audience
--runtime.host.authentication.jwt.audience Array of strings
runtime.
host.authentication.jwt.issuer
--runtime.host.authentication.jwt.issuer String
runtime.
cache.enabled
--runtime.cache.enabled Boolean: true, false (default: false)
runtime.
cache.ttl-seconds
--runtime.cache.ttl-seconds Integer (default: 3600)

Design guide: Design guide: https://github.com/Azure/data-api-builder/blob/main/docs/design/dab-configure.md

Have a look at the original issue: https://github.com/Azure/data-api-builder/issues/2251 Attached to this issue are other PRs which can be used to get better understanding.

NOTE: Feel free to break the task into multiple PRs such as rest/graphql/host.

abhishekkumams commented 1 week ago

@sezal98, Please don't change the name of this issue. This was created to track dab-configure at a single place. Just like you created the issue for host and rest, create another one for graphQL. once done, you can add those as sub-issue to this task.

Image

https://docs.github.com/en/issues/tracking-your-work-with-issues/using-issues/adding-sub-issues

sezal98 commented 1 week ago

Added sub issues as suggested.