Skip to content

Commit

Permalink
Add KrakenD v2.9
Browse files Browse the repository at this point in the history
Signed-off-by: Juan Cruz Viotti <[email protected]>
  • Loading branch information
jviotti committed Jan 20, 2025
1 parent 9964fb3 commit 6fd3281
Show file tree
Hide file tree
Showing 93 changed files with 10,159 additions and 8 deletions.
2 changes: 1 addition & 1 deletion DEPENDENCIES
Original file line number Diff line number Diff line change
Expand Up @@ -25,7 +25,7 @@ manfred-mac-0-5 https://github.com/getmanfred/mac v0.5
manfred-mac-0-4 https://github.com/getmanfred/mac v0.4
manfred-mac-0-3 https://github.com/getmanfred/mac v0.3
movielabs-omc-2-6 https://github.com/MovieLabs/OMC v2.6-release-1
krakend https://github.com/krakend/krakend-schema af8e4930cca880ed6956114202a8118d73e1ff2b
krakend https://github.com/krakend/krakend-schema 387038c9802c5107d982b9c76bd51d84654fc784
octue-power-curve https://github.com/octue/power-curve-schema 1.0.0.alpha-1
usnistgov-mgi-2022-08 https://github.com/usnistgov/mgi-json-schema e5e6aaf3f5eae0d15b88ecbd57f44cc28b035f11
cloudevents-1-0-0 https://github.com/cloudevents/spec v1.0
Expand Down
2 changes: 2 additions & 0 deletions vendor/krakend.mask
Original file line number Diff line number Diff line change
Expand Up @@ -7,3 +7,5 @@ README.md
v3.json
v2.7/krakend.json
v2.8/krakend.json
v2.9/krakend.json
v2.9/_root.json
7 changes: 7 additions & 0 deletions vendor/krakend/v2.7/backend/grpc.json
Original file line number Diff line number Diff line change
Expand Up @@ -32,6 +32,13 @@
},
"additionalProperties": false
},
"idle_conn_disconnect_time": {
"title": "Request naming convention",
"description": "The maximum time a connection is kept without being used.\n\nSee: https://www.krakend.io/docs/enterprise/backends/grpc/",
"default": "10m",
"$ref": "../timeunits.json#/$defs/timeunit",
"type": "string"
},
"input_mapping": {
"title": "Mapping of parameters",
"description": "A dictionary that converts query string parameters and parameters from `{placeholders}` into a different field during the backend request. When passing parameters using `{placeholder}` the parameter capitalizes the first letter, so you receive `Placeholder`.\n\nSee: https://www.krakend.io/docs/enterprise/backends/grpc/",
Expand Down
1 change: 1 addition & 0 deletions vendor/krakend/v2.8/backend.json
Original file line number Diff line number Diff line change
Expand Up @@ -84,6 +84,7 @@
"type": "array",
"items": {
"type": "string",
"pattern": ".+",
"minLength": 1
}
},
Expand Down
7 changes: 7 additions & 0 deletions vendor/krakend/v2.8/backend/grpc.json
Original file line number Diff line number Diff line change
Expand Up @@ -32,6 +32,13 @@
},
"additionalProperties": false
},
"idle_conn_disconnect_time": {
"title": "Request naming convention",
"description": "The maximum time a connection is kept without being used.\n\nSee: https://www.krakend.io/docs/enterprise/backends/grpc/",
"default": "10m",
"$ref": "../timeunits.json#/$defs/timeunit",
"type": "string"
},
"input_mapping": {
"title": "Mapping of parameters",
"description": "A dictionary that converts query string parameters and parameters from `{placeholders}` into a different field during the backend request. When passing parameters using `{placeholder}` the parameter capitalizes the first letter, so you receive `Placeholder`.\n\nSee: https://www.krakend.io/docs/enterprise/backends/grpc/",
Expand Down
12 changes: 6 additions & 6 deletions vendor/krakend/v2.8/documentation/openapi.json
Original file line number Diff line number Diff line change
Expand Up @@ -140,11 +140,11 @@
"enum": [
"integer",
"string",
"bool",
"boolean",
"object",
"array",
"float",
"datetime"
"date-time"
]
},
"enum": {
Expand Down Expand Up @@ -270,11 +270,11 @@
"enum": [
"integer",
"string",
"bool",
"boolean",
"object",
"array",
"float",
"datetime"
"date-time"
]
},
"enum": {
Expand Down Expand Up @@ -354,11 +354,11 @@
"enum": [
"integer",
"string",
"bool",
"boolean",
"object",
"array",
"float",
"datetime"
"date-time"
]
},
"enum": {
Expand Down
2 changes: 1 addition & 1 deletion vendor/krakend/v2.8/grpc.json
Original file line number Diff line number Diff line change
Expand Up @@ -58,7 +58,7 @@
"properties": {
"methods": {
"title": "Methods",
"description": "The gRPC methods available for this service (this is not related with HTTP methods despite using the same name).\n\nSee: https://www.krakend.io/docs/enterprise/grpc/server/",
"description": "The gRPC methods available for this service. The `methods` entry is the gRPC equivalent of the HTTP `endpoints`, meaning that the `backend` object under `methods` can use the same configuration as HTTP, including all its `extra_config` parameters.\n\nSee: https://www.krakend.io/docs/enterprise/grpc/server/",
"type": "array",
"items": {
"type": "object",
Expand Down
50 changes: 50 additions & 0 deletions vendor/krakend/v2.8/telemetry/opentelemetry-endpoint.json
Original file line number Diff line number Diff line change
Expand Up @@ -214,6 +214,56 @@
},
"additionalProperties": false
},
"global": {
"title": "Replace global configuration",
"description": "Overrides the global configuration for this endpoint.\n\nSee: https://www.krakend.io/docs/telemetry/opentelemetry-by-endpoint/",
"properties": {
"metrics_static_attributes": {
"title": "Static attributes",
"description": "Static attributes you want to pass for metrics. Overrides the `metrics_static_attributes` defined at the service level.",
"type": "array",
"items": {
"properties": {
"key": {
"title": "Key",
"description": "The key of the static attribute you want to send",
"type": "string"
},
"value": {
"title": "Value",
"description": "The value of the static attribute you want to send",
"type": "string"
}
},
"additionalProperties": false
}
},
"traces_static_attributes": {
"title": "Static attributes",
"description": "Static attributes you want to pass for traces. Overrides the `traces_static_attributes` defined at the service level.",
"type": "array",
"items": {
"properties": {
"key": {
"title": "Key",
"description": "The key of the static attribute you want to send",
"type": "string"
},
"value": {
"title": "Value",
"description": "The value of the static attribute you want to send",
"type": "string"
}
},
"additionalProperties": false
}
}
},
"patternProperties": {
"^[@$_#]": {}
},
"additionalProperties": false
},
"proxy": {
"title": "Report proxy activity",
"description": "Reports the activity at the beginning of the proxy layer, including spawning the required requests to multiple backends, merging, endpoint transformation and any other internals of the proxy between the request processing and the backend communication\n\nSee: https://www.krakend.io/docs/telemetry/opentelemetry-by-endpoint/",
Expand Down
74 changes: 74 additions & 0 deletions vendor/krakend/v2.8/telemetry/opentelemetry.json
Original file line number Diff line number Diff line change
Expand Up @@ -137,6 +137,72 @@
},
"additionalProperties": false
},
"histograms": {
"title": "Histograms",
"description": "Use an histogram bucket configuration different from the defaults to define the detail of histogram metrics (decrease or increase their size). You don't need to set this attribute unless you want full control of the histogram definition.\n\nSee: https://www.krakend.io/docs/telemetry/opentelemetry/",
"type": "object",
"properties": {
"size_buckets": {
"title": "Size buckets",
"description": "The size of the buckets in bytes you want to use for the histograms.\n\nSee: https://www.krakend.io/docs/telemetry/opentelemetry/",
"default": [
128,
256,
512,
1024,
4096,
8192,
16384,
32768,
65536,
262144,
524288,
1048576,
4194304,
16777216,
67108864
],
"type": "array",
"items": {
"type": "number"
}
},
"time_buckets": {
"title": "Time buckets",
"description": "The duration of buckets in seconds you want to use for the histograms.\n\nSee: https://www.krakend.io/docs/telemetry/opentelemetry/",
"default": [
0.01,
0.02,
0.05,
0.075,
0.1,
0.125,
0.15,
0.175,
0.2,
0.25,
0.3,
0.35,
0.5,
0.75,
1.0,
1.5,
2.0,
3.5,
5.0,
10.0
],
"type": "array",
"items": {
"type": "number"
}
}
},
"patternProperties": {
"^[@$_#]": {}
},
"additionalProperties": false
},
"layers": {
"title": "Layers",
"description": "A request and response flow passes through three different layers. This attribute lets you specify what data you want to export in each layer. All layers are enabled by default unless you declare this section.\n\nSee: https://www.krakend.io/docs/telemetry/opentelemetry/",
Expand Down Expand Up @@ -346,6 +412,14 @@
"default": false,
"type": "boolean"
},
"semantic_convention": {
"title": "Semantic convention naming",
"description": "The semantic convention naming you want to use. The default is an empty string which uses the original naming convention prior to 1.27. For the semantic convention of 1.27 and higher, use `1.27`\n\nSee: https://www.krakend.io/docs/telemetry/opentelemetry/",
"enum": [
"",
"1.27"
]
},
"traces_static_attributes": {
"title": "Static attributes",
"description": "Static attributes you want to pass for traces.",
Expand Down
93 changes: 93 additions & 0 deletions vendor/krakend/v2.9/async/amqp.json
Original file line number Diff line number Diff line change
@@ -0,0 +1,93 @@
{
"$schema": "http://json-schema.org/draft-07/schema#",
"$id": "https://www.krakend.io/schema/v2.9/async/amqp.json",
"title": "Async AMQP Driver",
"description": "The Async AMQP component enables the AMQP driver for the Async functionality.\n\nSee: https://www.krakend.io/docs/async/amqp/",
"type": "object",
"required": [
"name",
"host",
"exchange"
],
"properties": {
"auto_ack": {
"$id": "#async/amqp/auto_ack",
"title": "Auto ACK",
"description": "When KrakenD retrieves the messages, regardless of the success or failure of the operation, it marks them as ACK. When auto ACK is not used, only successful backend responses do the ACK, and failing messages are requeued. Defaults to `false`.\n\nSee: https://www.krakend.io/docs/async/amqp/",
"default": false,
"type": "boolean"
},
"delete": {
"$id": "#async/amqp/delete",
"title": "Delete",
"description": "When `true`, AMQP deletes the queue when there are no remaining connections. This option is **not recommended** in most of the scenarios. If for instance, the connectivity between KrakenD and AMQP is lost for whatever reason and it's the only client, AMQP will delete the queue no matter the number of messages there are inside, and when KrakenD gets the connection again the queue won't exist and future connections will recreate it again.\n\nSee: https://www.krakend.io/docs/async/amqp/",
"default": false,
"type": "boolean"
},
"durable": {
"$id": "#async/amqp/durable",
"title": "Durable",
"description": "Durable queues will survive server restarts and remain when there are no remaining consumers or bindings. Most of the times `true` is recommended, but depends on the use case.\n\nSee: https://www.krakend.io/docs/async/amqp/",
"default": false,
"type": "boolean"
},
"exchange": {
"$id": "#async/amqp/exchange",
"title": "Exchange",
"description": "The entity name where messages are retrieved (it will be created, or it must have a **topic** type if already exists).\n\nSee: https://www.krakend.io/docs/async/amqp/",
"examples": [
"some-exchange"
],
"type": "string"
},
"exclusive": {
"$id": "#async/amqp/exclusive",
"title": "Exclusive",
"description": "When `true`, AMQP will allow **a single KrakenD client** to access the queue. This option is **not recommended** in environments where the gateway needs high availability and you have several instances running.\n\nSee: https://www.krakend.io/docs/async/amqp/",
"default": false,
"type": "boolean"
},
"host": {
"$id": "#async/amqp/host",
"title": "Host",
"description": "The connection string, ends in slash. E.g: `amqp://user:password@host:5672/`.\n\nSee: https://www.krakend.io/docs/async/amqp/",
"type": "string"
},
"name": {
"$id": "#async/amqp/name",
"title": "Name",
"description": "The queue name.\n\nSee: https://www.krakend.io/docs/async/amqp/",
"type": "string"
},
"no_local": {
"$id": "#async/amqp/no_local",
"title": "No local",
"description": "The no_local flag is not supported by RabbitMQ.\n\nSee: https://www.krakend.io/docs/async/amqp/",
"type": "boolean"
},
"no_wait": {
"$id": "#async/amqp/no_wait",
"title": "No wait",
"description": "When true, do not wait for the server to confirm the request and immediately begin deliveries. If it is not possible to consume, a channel exception will be raised and the channel will be closed.\n\nSee: https://www.krakend.io/docs/async/amqp/",
"type": "boolean"
},
"prefetch_count": {
"$id": "#async/amqp/prefetch_count",
"title": "Prefetch count",
"description": "The number of messages you want to prefetch prior to consume them.\n\nSee: https://www.krakend.io/docs/async/amqp/",
"default": 10,
"type": "integer"
},
"prefetch_size": {
"$id": "#async/amqp/prefetch_size",
"title": "Prefetch size",
"description": "The number of bytes you want to use to prefetch messages.\n\nSee: https://www.krakend.io/docs/async/amqp/",
"default": 0,
"type": "integer"
}
},
"patternProperties": {
"^[@$_#]": {}
},
"additionalProperties": false
}
Loading

0 comments on commit 6fd3281

Please sign in to comment.