diff --git a/docs/plugins/introduction.mdx b/docs/plugins/introduction.mdx
index 8212b09f0..77eac1f68 100644
--- a/docs/plugins/introduction.mdx
+++ b/docs/plugins/introduction.mdx
@@ -76,7 +76,7 @@ The `pre-parse` plugin is triggered at the first step in the execution pipeline,
step to add custom logic before parsing begins.
For pre-parse plugin configuration
-[click here](supergraph-modeling/engine-plugins.mdx#lifecyclepluginhook-lifecyclepluginhookpreparse)
+[click here](supergraph-modeling/engine-plugins.mdx#lifecyclepluginhook-lifecyclepreparsepluginhook)
### Pre-Parse Plugin Request
@@ -100,7 +100,7 @@ A sample request that is sent to the `pre-parse` plugin is as follows:
```
**Note**: The request sent to the plugin can be customized based on the plugin's
-[configuration](supergraph-modeling/engine-plugins.mdx#lifecyclepluginhook-lifecyclepluginhookconfigrequest).
+[configuration](supergraph-modeling/engine-plugins.mdx#lifecyclepluginhook-lifecyclepreresponsepluginhookconfigrequest).
### Pre-Parse Plugin Response
@@ -129,14 +129,14 @@ the metadata.
Please note that if a plugin returns a `Response`, `User Error` or `Internal Error` response, the execution stops and
the response is sent to the client. The subsequent plugins are not executed.
-Let's take an example where the engine is confiured with two pre-parse plugins: `Pre-parse hook 1` and `Pre-parse hook
-2`.
+Let's take an example where the engine is confiured with two pre-parse plugins: `Pre-parse hook 1` and
+`Pre-parse hook 2`.
-In this example, the engine is configured with two pre-parse plugins. The engine sends the request to `Pre-parse hook
-1`, which processes the request and sends a response. Now, depending on the response, the engine either continues with
-the execution or stops and sends the response to the client.
+In this example, the engine is configured with two pre-parse plugins. The engine sends the request to
+`Pre-parse hook 1`, which processes the request and sends a response. Now, depending on the response, the engine either
+continues with the execution or stops and sends the response to the client.
#### Case 1: Continue
@@ -152,11 +152,15 @@ The `Continue` response body is ignored by DDN. The plugin can return an empty r
#### Case 2: Response/ User Error/ Internal Error
If `Pre-parse hook 1` returns a `Response` response (HTTP status code is 200) or a `User Error` response (HTTP status
-code is 400) or an `Internal Error` response (HTTP status code is 500), the engine stops the execution and sends
-the response to the client. The subsequent plugins are not executed.
-
-
+code is 400) or an `Internal Error` response (HTTP status code is 500), the engine stops the execution and sends the
+response to the client. The subsequent plugins are not executed.
+
+
If all the pre-parse plugins return a `Continue` response (HTTP status code 204), the engine continues with the
execution and sends the response generated by the engine to the client.
diff --git a/docs/supergraph-modeling/engine-plugins.mdx b/docs/supergraph-modeling/engine-plugins.mdx
index 878e86e12..cfb22bd3a 100644
--- a/docs/supergraph-modeling/engine-plugins.mdx
+++ b/docs/supergraph-modeling/engine-plugins.mdx
@@ -54,30 +54,29 @@ definition:
variables: {}
```
-| Field | Description | Reference |
-| --------------------------- | ------------------------------------------------------------------------- | ----------------------------------------------------------------------------------------- |
-| `name` | The name of the lifecycle plugin hook. | [LifecyclePluginHookPreParse](#lifecyclepluginhook-lifecyclepluginhookpreparse) |
-| `url` | The URL to access the plugin. | [LifecyclePluginHookPreParse](#lifecyclepluginhook-lifecyclepluginhookpreparse) |
-| `pre` | The stage of the request lifecycle. | [LifecyclePluginHookPreParse](#lifecyclepluginhook-lifecyclepluginhookpreparse) |
-| `config` | Configuration for the plugin. | [LifecyclePluginHookConfig](#lifecyclepluginhook-lifecyclepluginhookconfig) |
-| `config.request` | The shape of the request object. | [LifecyclePluginHookConfigRequest](#lifecyclepluginhook-lifecyclepluginhookconfigrequest) |
-| `config.request.headers` | The headers that should be included for each request. | [LifecyclePluginHookHeadersConfig](#lifecyclepluginhook-lifecyclepluginhookheadersconfig) |
-| `config.request.rawRequest` | The configuration of the raw request, including any queries or variables. | [RawRequestConfig](#lifecyclepluginhook-rawrequestconfig) |
+| Field | Description | Reference |
+| --------------------------- | ------------------------------------------------------------------------- | ------------------------------------------------------------------------------------------------------------------------------------------------------------ |
+| `name` | The name of the lifecycle plugin hook. | [LifecyclePluginHookPreParse](#lifecyclepluginhook-lifecyclepreparsepluginhook) |
+| `url` | The URL to access the plugin. | [LifecyclePluginHookPreParse](#lifecyclepluginhook-lifecyclepreparsepluginhook) |
+| `pre` | The stage of the request lifecycle. | [LifecyclePluginHookPreParse](#lifecyclepluginhook-lifecyclepreparsepluginhook) |
+| `config` | Configuration for the plugin. | [PreParse](#lifecyclepluginhook-lifecyclepreparsepluginhookconfig) or [PreResponse](#lifecyclepluginhook-lifecyclepreresponsepluginhookconfig) |
+| `config.request` | The shape of the request object. | [PreParse](#lifecyclepluginhook-lifecyclepreparsepluginhookconfigrequest) or [PreResponse](#lifecyclepluginhook-lifecyclepreresponsepluginhookconfigrequest) |
+| `config.request.headers` | The headers that should be included for each request. | [LifecyclePluginHookHeadersConfig](#lifecyclepluginhook-lifecyclepluginhookheadersconfig) |
+| `config.request.rawRequest` | The configuration of the raw request, including any queries or variables. | [RawRequestConfig](#lifecyclepluginhook-rawrequestconfig) |
## Metadata structure
-
### LifecyclePluginHook {#lifecyclepluginhook-lifecyclepluginhook}
Definition of a lifecycle plugin hook.
-| Key | Value | Required | Description |
-|-----|-----|-----|-----|
-| `kind` | `LifecyclePluginHook` | true | |
-| `version` | `v1` | true | |
-| `definition` | [LifecyclePluginHookPreParse](#lifecyclepluginhook-lifecyclepluginhookpreparse) | true | Definition of a lifecycle plugin hook - version 1. |
+| Key | Value | Required | Description |
+| ------------ | ------------------------------------------------------------------- | -------- | -------------------------------------------------- |
+| `kind` | `LifecyclePluginHook` | true | |
+| `version` | `v1` | true | |
+| `definition` | [LifecyclePluginHookV1](#lifecyclepluginhook-lifecyclepluginhookv1) | true | Definition of a lifecycle plugin hook - version 1. |
- **Example:**
+**Example:**
```yaml
kind: LifecyclePluginHook
@@ -99,91 +98,117 @@ definition:
variables: {}
```
+#### LifecyclePluginHookV1 {#lifecyclepluginhook-lifecyclepluginhookv1}
-#### LifecyclePluginHookPreParse {#lifecyclepluginhook-lifecyclepluginhookpreparse}
+Definition of a lifecycle plugin hook - version 1.
-Definition of a lifecycle plugin hook for the pre-parse stage.
+**One of the following values:**
-| Key | Value | Required | Description |
-|-----|-----|-----|-----|
-| `pre` | `parse` | true | |
-| `name` | string | true | The name of the lifecycle plugin hook. |
-| `url` | [EnvironmentValue](#lifecyclepluginhook-environmentvalue) | true | The URL to access the lifecycle plugin hook. |
-| `config` | [LifecyclePluginHookConfig](#lifecyclepluginhook-lifecyclepluginhookconfig) | true | Configuration for the lifecycle plugin hook. |
+| Value | Description |
+| ------------------------------------------------------------------------------------- | ----------------------------------------------------------------- |
+| [LifecyclePreParsePluginHook](#lifecyclepluginhook-lifecyclepreparsepluginhook) | Definition of a lifecycle plugin hook for the pre-parse stage. |
+| [LifecyclePreResponsePluginHook](#lifecyclepluginhook-lifecyclepreresponsepluginhook) | Definition of a lifecycle plugin hook for the pre-response stage. |
+#### LifecyclePreResponsePluginHook {#lifecyclepluginhook-lifecyclepreresponsepluginhook}
+Definition of a lifecycle plugin hook for the pre-response stage.
-#### LifecyclePluginHookConfig {#lifecyclepluginhook-lifecyclepluginhookconfig}
+| Key | Value | Required | Description |
+| -------- | ------------------------------------------------------------------------------------------------- | -------- | -------------------------------------------- |
+| `pre` | `response` | true | |
+| `name` | string | true | The name of the lifecycle plugin hook. |
+| `url` | [EnvironmentValue](#lifecyclepluginhook-environmentvalue) | true | The URL to access the lifecycle plugin hook. |
+| `config` | [LifecyclePreResponsePluginHookConfig](#lifecyclepluginhook-lifecyclepreresponsepluginhookconfig) | true | Configuration for the lifecycle plugin hook. |
+
+#### LifecyclePreResponsePluginHookConfig {#lifecyclepluginhook-lifecyclepreresponsepluginhookconfig}
Configuration for a lifecycle plugin hook.
-| Key | Value | Required | Description |
-|-----|-----|-----|-----|
-| `request` | [LifecyclePluginHookConfigRequest](#lifecyclepluginhook-lifecyclepluginhookconfigrequest) | true | Configuration for the request to the lifecycle plugin hook. |
+| Key | Value | Required | Description |
+| --------- | --------------------------------------------------------------------------------------------------------------- | -------- | ----------------------------------------------------------- |
+| `request` | [LifecyclePreResponsePluginHookConfigRequest](#lifecyclepluginhook-lifecyclepreresponsepluginhookconfigrequest) | true | Configuration for the request to the lifecycle plugin hook. |
+#### LifecyclePreResponsePluginHookConfigRequest {#lifecyclepluginhook-lifecyclepreresponsepluginhookconfigrequest}
+Configuration for a lifecycle plugin hook request.
-#### LifecyclePluginHookConfigRequest {#lifecyclepluginhook-lifecyclepluginhookconfigrequest}
+| Key | Value | Required | Description |
+| ------------- | ------------------------------------------------------------------------------------------------ | -------- | --------------------------------------------------------------------- |
+| `headers` | [LifecyclePluginHookHeadersConfig](#lifecyclepluginhook-lifecyclepluginhookheadersconfig) / null | false | Configuration for the headers. |
+| `session` | [LeafConfig](#lifecyclepluginhook-leafconfig) / null | false | Configuration for the session (includes roles and session variables). |
+| `rawRequest` | [RawRequestConfig](#lifecyclepluginhook-rawrequestconfig) | true | Configuration for the raw request. |
+| `rawResponse` | [LeafConfig](#lifecyclepluginhook-leafconfig) / null | false | Configuration for the response. |
-Configuration for a lifecycle plugin hook request.
+#### LifecyclePreParsePluginHook {#lifecyclepluginhook-lifecyclepreparsepluginhook}
-| Key | Value | Required | Description |
-|-----|-----|-----|-----|
-| `headers` | [LifecyclePluginHookHeadersConfig](#lifecyclepluginhook-lifecyclepluginhookheadersconfig) / null | false | Configuration for the headers. |
-| `session` | [LeafConfig](#lifecyclepluginhook-leafconfig) / null | false | Configuration for the session (includes roles and session variables). |
-| `rawRequest` | [RawRequestConfig](#lifecyclepluginhook-rawrequestconfig) | true | Configuration for the raw request. |
+Definition of a lifecycle plugin hook for the pre-parse stage.
+| Key | Value | Required | Description |
+| -------- | ------------------------------------------------------------------------------------------- | -------- | -------------------------------------------- |
+| `pre` | `parse` | true | |
+| `name` | string | true | The name of the lifecycle plugin hook. |
+| `url` | [EnvironmentValue](#lifecyclepluginhook-environmentvalue) | true | The URL to access the lifecycle plugin hook. |
+| `config` | [LifecyclePreParsePluginHookConfig](#lifecyclepluginhook-lifecyclepreparsepluginhookconfig) | true | Configuration for the lifecycle plugin hook. |
+#### LifecyclePreParsePluginHookConfig {#lifecyclepluginhook-lifecyclepreparsepluginhookconfig}
-#### RawRequestConfig {#lifecyclepluginhook-rawrequestconfig}
+Configuration for a lifecycle plugin hook.
-Configuration for the raw request.
+| Key | Value | Required | Description |
+| --------- | --------------------------------------------------------------------------------------------------------- | -------- | ----------------------------------------------------------- |
+| `request` | [LifecyclePreParsePluginHookConfigRequest](#lifecyclepluginhook-lifecyclepreparsepluginhookconfigrequest) | true | Configuration for the request to the lifecycle plugin hook. |
-| Key | Value | Required | Description |
-|-----|-----|-----|-----|
-| `query` | [LeafConfig](#lifecyclepluginhook-leafconfig) / null | false | Configuration for the query. |
-| `variables` | [LeafConfig](#lifecyclepluginhook-leafconfig) / null | false | Configuration for the variables. |
+#### LifecyclePreParsePluginHookConfigRequest {#lifecyclepluginhook-lifecyclepreparsepluginhookconfigrequest}
+
+Configuration for a lifecycle plugin hook request.
+
+| Key | Value | Required | Description |
+| ------------ | ------------------------------------------------------------------------------------------------ | -------- | --------------------------------------------------------------------- |
+| `headers` | [LifecyclePluginHookHeadersConfig](#lifecyclepluginhook-lifecyclepluginhookheadersconfig) / null | false | Configuration for the headers. |
+| `session` | [LeafConfig](#lifecyclepluginhook-leafconfig) / null | false | Configuration for the session (includes roles and session variables). |
+| `rawRequest` | [RawRequestConfig](#lifecyclepluginhook-rawrequestconfig) | true | Configuration for the raw request. |
+
+#### RawRequestConfig {#lifecyclepluginhook-rawrequestconfig}
+Configuration for the raw request.
+| Key | Value | Required | Description |
+| ----------- | ---------------------------------------------------- | -------- | -------------------------------- |
+| `query` | [LeafConfig](#lifecyclepluginhook-leafconfig) / null | false | Configuration for the query. |
+| `variables` | [LeafConfig](#lifecyclepluginhook-leafconfig) / null | false | Configuration for the variables. |
#### LeafConfig {#lifecyclepluginhook-leafconfig}
Leaf Configuration.
| Key | Value | Required | Description |
-|-----|-----|-----|-----|
-
-
+| --- | ----- | -------- | ----------- |
#### LifecyclePluginHookHeadersConfig {#lifecyclepluginhook-lifecyclepluginhookheadersconfig}
Configuration for a lifecycle plugin hook headers.
-| Key | Value | Required | Description |
-|-----|-----|-----|-----|
-| `additional` | [HttpHeaders](#lifecyclepluginhook-httpheaders) / null | false | Additional headers to be sent with the request. |
-| `forward` | [string] | false | Headers to be forwarded from the incoming request. |
-
-
+| Key | Value | Required | Description |
+| ------------ | ------------------------------------------------------ | -------- | -------------------------------------------------- |
+| `additional` | [HttpHeaders](#lifecyclepluginhook-httpheaders) / null | false | Additional headers to be sent with the request. |
+| `forward` | [string] | false | Headers to be forwarded from the incoming request. |
#### HttpHeaders {#lifecyclepluginhook-httpheaders}
-Key value map of HTTP headers to be sent with an HTTP request. The key is the header name and the value is a potential reference to an environment variable.
-
-| Key | Value | Required | Description |
-|-----|-----|-----|-----|
-| `` | [EnvironmentValue](#lifecyclepluginhook-environmentvalue) | false | |
-
+Key value map of HTTP headers to be sent with an HTTP request. The key is the header name and the value is a potential
+reference to an environment variable.
+| Key | Value | Required | Description |
+| ------------- | --------------------------------------------------------- | -------- | ----------- |
+| `` | [EnvironmentValue](#lifecyclepluginhook-environmentvalue) | false | |
#### EnvironmentValue {#lifecyclepluginhook-environmentvalue}
Either a literal string or a reference to a Hasura secret
-
**Must have exactly one of the following fields:**
-| Key | Value | Required | Description |
-|-----|-----|-----|-----|
-| `value` | string | false | |
-| `valueFromEnv` | string | false | |
+| Key | Value | Required | Description |
+| -------------- | ------ | -------- | ----------- |
+| `value` | string | false | |
+| `valueFromEnv` | string | false | |
diff --git a/docs/supergraph-modeling/models.mdx b/docs/supergraph-modeling/models.mdx
index 6185cd855..50d6196de 100644
--- a/docs/supergraph-modeling/models.mdx
+++ b/docs/supergraph-modeling/models.mdx
@@ -464,7 +464,7 @@ The name of a collection in a data connector.
#### DataConnectorName {#model-dataconnectorname}
-The name of a data connector.
+The name of the data connector backing this model.
**Value:** string
@@ -510,7 +510,7 @@ The name of a user-defined type.
#### ModelName {#model-modelname}
-The name of the data model.
+The name of data model.
**Value:** string
\ No newline at end of file
diff --git a/docs/supergraph-modeling/relationships.mdx b/docs/supergraph-modeling/relationships.mdx
index 74e8f8c19..05665f055 100644
--- a/docs/supergraph-modeling/relationships.mdx
+++ b/docs/supergraph-modeling/relationships.mdx
@@ -330,7 +330,7 @@ kind: Relationship
version: v1
definition:
name: Articles
- source: author
+ sourceType: author
target:
model:
name: Articles
diff --git a/utilities/generate-metadata-docs/hml_schema_resolved.json b/utilities/generate-metadata-docs/hml_schema_resolved.json
index 1d57514b5..aa8206eaa 100644
--- a/utilities/generate-metadata-docs/hml_schema_resolved.json
+++ b/utilities/generate-metadata-docs/hml_schema_resolved.json
@@ -3635,11 +3635,16 @@
"required": ["name", "objectType", "orderableFields"],
"properties": {
"name": {
- "$id": "https://hasura.io/jsonschemas/metadata/ModelName",
- "title": "ModelName",
"description": "The name of the data model.",
- "type": "string",
- "pattern": "^[_a-zA-Z][_a-zA-Z0-9]*$"
+ "allOf": [
+ {
+ "$id": "https://hasura.io/jsonschemas/metadata/ModelName",
+ "title": "ModelName",
+ "description": "The name of data model.",
+ "type": "string",
+ "pattern": "^[_a-zA-Z][_a-zA-Z0-9]*$"
+ }
+ ]
},
"objectType": {
"description": "The type of the objects of which this model is a collection.",
@@ -3699,12 +3704,11 @@
"required": ["collection", "dataConnectorName"],
"properties": {
"dataConnectorName": {
+ "$id": "https://hasura.io/jsonschemas/metadata/DataConnectorName",
+ "title": "DataConnectorName",
"description": "The name of the data connector backing this model.",
- "allOf": [
- {
- "$ref": "#/definitions/SubgraphObject/anyOf/0/anyOf/1/oneOf/0/oneOf/0/properties/definition/properties/name/allOf/0"
- }
- ]
+ "type": "string",
+ "pattern": "^[_a-zA-Z][_a-zA-Z0-9]*$"
},
"collection": {
"description": "The collection in the data connector that backs this model.",
@@ -4285,7 +4289,7 @@
"version": "v1",
"definition": {
"name": "Articles",
- "source": "author",
+ "sourceType": "author",
"target": {
"model": {
"name": "Articles",
@@ -4387,7 +4391,7 @@
"description": "The name of the data model.",
"allOf": [
{
- "$ref": "#/definitions/SubgraphObject/anyOf/0/anyOf/1/oneOf/12/oneOf/0/properties/definition/properties/modelName/allOf/0"
+ "$ref": "#/definitions/SubgraphObject/anyOf/0/anyOf/1/oneOf/8/oneOf/0/properties/definition/properties/name/allOf/0"
}
]
},
@@ -4935,11 +4939,7 @@
"description": "The name of the model for which permissions are being defined.",
"allOf": [
{
- "$id": "https://hasura.io/jsonschemas/metadata/ModelName",
- "title": "ModelName",
- "description": "The name of data model.",
- "type": "string",
- "pattern": "^[_a-zA-Z][_a-zA-Z0-9]*$"
+ "$ref": "#/definitions/SubgraphObject/anyOf/0/anyOf/1/oneOf/8/oneOf/0/properties/definition/properties/name/allOf/0"
}
]
},
@@ -5417,7 +5417,7 @@
"description": "Definition of a lifecycle plugin hook - version 1.",
"oneOf": [
{
- "title": "LifecyclePluginHookPreParse",
+ "title": "LifecyclePreParsePluginHook",
"description": "Definition of a lifecycle plugin hook for the pre-parse stage.",
"type": "object",
"required": ["config", "name", "pre", "url"],
@@ -5466,8 +5466,8 @@
"description": "Configuration for the lifecycle plugin hook.",
"allOf": [
{
- "$id": "https://hasura.io/jsonschemas/metadata/LifecyclePluginHookConfig",
- "title": "LifecyclePluginHookConfig",
+ "$id": "https://hasura.io/jsonschemas/metadata/LifecyclePreParsePluginHookConfig",
+ "title": "LifecyclePreParsePluginHookConfig",
"description": "Configuration for a lifecycle plugin hook.",
"type": "object",
"required": ["request"],
@@ -5476,8 +5476,8 @@
"description": "Configuration for the request to the lifecycle plugin hook.",
"allOf": [
{
- "$id": "https://hasura.io/jsonschemas/metadata/LifecyclePluginHookConfigRequest",
- "title": "LifecyclePluginHookConfigRequest",
+ "$id": "https://hasura.io/jsonschemas/metadata/LifecyclePreParsePluginHookConfigRequest",
+ "title": "LifecyclePreParsePluginHookConfigRequest",
"description": "Configuration for a lifecycle plugin hook request.",
"type": "object",
"required": ["rawRequest"],
@@ -5581,6 +5581,102 @@
}
},
"additionalProperties": false
+ },
+ {
+ "title": "LifecyclePreResponsePluginHook",
+ "description": "Definition of a lifecycle plugin hook for the pre-response stage.",
+ "type": "object",
+ "required": ["config", "name", "pre", "url"],
+ "properties": {
+ "pre": {
+ "type": "string",
+ "enum": ["response"]
+ },
+ "name": {
+ "description": "The name of the lifecycle plugin hook.",
+ "type": "string"
+ },
+ "url": {
+ "description": "The URL to access the lifecycle plugin hook.",
+ "allOf": [
+ {
+ "$ref": "#/definitions/SubgraphObject/anyOf/0/anyOf/1/oneOf/14/oneOf/0/properties/definition/oneOf/0/properties/url/allOf/0"
+ }
+ ]
+ },
+ "config": {
+ "description": "Configuration for the lifecycle plugin hook.",
+ "allOf": [
+ {
+ "$id": "https://hasura.io/jsonschemas/metadata/LifecyclePreResponsePluginHookConfig",
+ "title": "LifecyclePreResponsePluginHookConfig",
+ "description": "Configuration for a lifecycle plugin hook.",
+ "type": "object",
+ "required": ["request"],
+ "properties": {
+ "request": {
+ "description": "Configuration for the request to the lifecycle plugin hook.",
+ "allOf": [
+ {
+ "$id": "https://hasura.io/jsonschemas/metadata/LifecyclePreResponsePluginHookConfigRequest",
+ "title": "LifecyclePreResponsePluginHookConfigRequest",
+ "description": "Configuration for a lifecycle plugin hook request.",
+ "type": "object",
+ "required": ["rawRequest"],
+ "properties": {
+ "headers": {
+ "description": "Configuration for the headers.",
+ "anyOf": [
+ {
+ "$ref": "#/definitions/SubgraphObject/anyOf/0/anyOf/1/oneOf/14/oneOf/0/properties/definition/oneOf/0/properties/config/allOf/0/properties/request/allOf/0/properties/headers/anyOf/0"
+ },
+ {
+ "type": "null"
+ }
+ ]
+ },
+ "session": {
+ "description": "Configuration for the session (includes roles and session variables).",
+ "anyOf": [
+ {
+ "$ref": "#/definitions/SubgraphObject/anyOf/0/anyOf/1/oneOf/14/oneOf/0/properties/definition/oneOf/0/properties/config/allOf/0/properties/request/allOf/0/properties/session/anyOf/0"
+ },
+ {
+ "type": "null"
+ }
+ ]
+ },
+ "rawRequest": {
+ "description": "Configuration for the raw request.",
+ "allOf": [
+ {
+ "$ref": "#/definitions/SubgraphObject/anyOf/0/anyOf/1/oneOf/14/oneOf/0/properties/definition/oneOf/0/properties/config/allOf/0/properties/request/allOf/0/properties/rawRequest/allOf/0"
+ }
+ ]
+ },
+ "rawResponse": {
+ "description": "Configuration for the response.",
+ "anyOf": [
+ {
+ "$ref": "#/definitions/SubgraphObject/anyOf/0/anyOf/1/oneOf/14/oneOf/0/properties/definition/oneOf/0/properties/config/allOf/0/properties/request/allOf/0/properties/session/anyOf/0"
+ },
+ {
+ "type": "null"
+ }
+ ]
+ }
+ },
+ "additionalProperties": false
+ }
+ ]
+ }
+ },
+ "additionalProperties": false
+ }
+ ]
+ }
+ },
+ "additionalProperties": false
}
]
}
diff --git a/utilities/generate-metadata-docs/yaml_schema_resolved.json b/utilities/generate-metadata-docs/yaml_schema_resolved.json
index a81f9527c..12d2db1a6 100644
--- a/utilities/generate-metadata-docs/yaml_schema_resolved.json
+++ b/utilities/generate-metadata-docs/yaml_schema_resolved.json
@@ -5,10 +5,6 @@
{
"title": "CliMetadataObject",
"$ref": "#/definitions/CliMetadataObject"
- },
- {
- "title": "CliConfigObject",
- "$ref": "#/definitions/CliConfigObject"
}
],
"definitions": {
@@ -29,15 +25,6 @@
}
]
},
- "CliConfigObject": {
- "$schema": "http://json-schema.org/draft-07/schema#",
- "anyOf": [
- {
- "title": "ContextYaml",
- "$ref": "#/definitions/ContextYaml"
- }
- ]
- },
"Supergraph": {
"$schema": "http://json-schema.org/draft-07/schema#",
"type": "object",
@@ -312,152 +299,6 @@
"title": "RegionConfigurationV2"
}
}
- },
- "ContextYaml": {
- "$schema": "http://json-schema.org/draft-07/schema#",
- "anyOf": [
- {
- "$ref": "#/definitions/ContextYaml/definitions/ProjectContextV2"
- },
- {
- "$ref": "#/definitions/ContextYaml/definitions/ProjectContextV3"
- }
- ],
- "description": "DDN project Context.",
- "title": "ProjectContext",
- "definitions": {
- "ProjectContextV2": {
- "type": "object",
- "properties": {
- "kind": {
- "type": "string",
- "const": "Context"
- },
- "version": {
- "type": "string",
- "const": "v2"
- },
- "definition": {
- "$ref": "#/definitions/ContextYaml/definitions/ContextV2Definition"
- }
- },
- "required": ["kind", "version", "definition"],
- "additionalProperties": false
- },
- "ContextV2Definition": {
- "type": "object",
- "properties": {
- "current": {
- "type": "string",
- "description": "Current Active Context."
- },
- "contexts": {
- "$ref": "#/definitions/ContextYaml/definitions/Contexts",
- "description": "Configured contexts."
- }
- },
- "additionalProperties": false,
- "description": "Context V2 Definition.",
- "title": "ContextV2Definition"
- },
- "Contexts": {
- "type": "object",
- "additionalProperties": {
- "$ref": "#/definitions/ContextYaml/definitions/ContextV2Config"
- },
- "description": "Configured contexts.",
- "title": "Contexts"
- },
- "ContextV2Config": {
- "type": "object",
- "properties": {
- "project": {
- "type": "string",
- "description": "Project Name."
- },
- "supergraph": {
- "type": "string",
- "description": "Supergraph Config path."
- },
- "subgraph": {
- "type": "string",
- "description": "Subgraph Config path."
- },
- "localEnvFile": {
- "type": "string",
- "description": "Path to .env file to be used for local operations."
- },
- "cloudEnvFile": {
- "type": "string",
- "description": "Path to .env file to be used for DDN cloud operations."
- }
- },
- "additionalProperties": false,
- "description": "Context Configuration.",
- "title": "ContextV2Config"
- },
- "ProjectContextV3": {
- "type": "object",
- "properties": {
- "kind": {
- "type": "string",
- "const": "Context"
- },
- "version": {
- "type": "string",
- "const": "v3"
- },
- "definition": {
- "$ref": "#/definitions/ContextYaml/definitions/ContextV3Definition"
- }
- },
- "required": ["kind", "version", "definition"],
- "additionalProperties": false
- },
- "ContextV3Definition": {
- "type": "object",
- "additionalProperties": false,
- "properties": {
- "scripts": {
- "$ref": "#/definitions/ContextYaml/definitions/Scripts",
- "description": "Configured scripts."
- },
- "current": {
- "type": "string",
- "description": "Current Active Context."
- },
- "contexts": {
- "$ref": "#/definitions/ContextYaml/definitions/Contexts",
- "description": "Configured contexts."
- }
- },
- "description": "Context V3 Definition.",
- "title": "ContextV3Definition"
- },
- "Scripts": {
- "type": "object",
- "additionalProperties": {
- "$ref": "#/definitions/ContextYaml/definitions/ScriptConfig"
- },
- "description": "Configured scripts.",
- "title": "Scripts"
- },
- "ScriptConfig": {
- "type": "object",
- "properties": {
- "bash": {
- "type": "string"
- },
- "powershell": {
- "type": "string"
- }
- },
- "required": ["bash", "powershell"],
- "additionalProperties": false,
- "description": "Script Config.",
- "title": "ScriptConfig"
- }
- }
}
}
}