data-api-builder
data-api-builder copied to clipboard
[Enhancement]: Introduce `dab configure`
Today, it's a bit of a trick to know which verb to use in order to add, update, or modify non-entity information in the configuration file. This new verb configure is intended to set all data outside of entity information - entity information is handled by the add / update / delete verbs and is already (mostly) comprehensive.
| Configuration File Property Path | CLI Flag | Data Type | Nullable |
|---|---|---|---|
| data-source. database-type |
String: MSSQL, PostgreSQL, CosmosDB, MySQL |
❌ | |
| data-source. connection-string |
String | ❌ | |
| data-source. options.database |
String | ✅ | |
| data-source. options.container |
String | ✅ | |
| data-source. options.schema |
String | ✅ | |
| data-source. options.set-session-context |
Boolean: true, false (default: false) |
✅ | |
| data-source-files | Array of strings | ✅ | |
| runtime. rest.path |
String (default: /api) |
❌ | |
| runtime. rest.enabled |
Boolean: true, false (default: true) |
❌ | |
| runtime. rest.request-body-strict |
Boolean: true, false (default: true) |
✅ | |
| runtime. graphql.allow-introspection |
Boolean: true, false (default: true) |
✅ | |
| runtime. graphql.path |
String (default: /graphql) |
❌ | |
| runtime. graphql.enabled |
Boolean: true, false (default: true) |
❌ | |
| runtime. graphql.multiple-mutations.create.enabled |
Boolean: true, false (default: true) |
✅ | |
| runtime. host.mode |
String: Development, Production |
❌ | |
| runtime. host.cors.origins |
Array of strings | ✅ | |
| runtime. host.cors.allow-credentials |
Boolean: true, false (default: false) |
✅ | |
| runtime. host.authentication.provider |
String: StaticWebApps, AppService, AzureAD, Jwt |
✅ | |
| runtime. host.authentication.jwt.audience |
Array of strings | ✅ | |
| runtime. host.authentication.jwt.issuer |
String | ✅ | |
| runtime. cache.enabled |
Boolean: true, false (default: false) |
✅ | |
| runtime. cache.ttl-seconds |
Integer (default: 3600) |
✅ | |
| runtime. telemetry.application-insights.connection-string |
String | ✅ | |
| runtime. telemetry.application-insights.enabled |
Boolean: true, false (default: false) |
✅ | |
| runtime. host.log-level |
String: Debug, Information, Warning, Error, Fatal (default: Information) |
✅ |
Some of these values will be set in dab init and there is no plan to change this. The purpose of dab configure is to ensure the CLI is comprehensive and to allow individual modifications through the CLI.