-
Notifications
You must be signed in to change notification settings - Fork 9
/
Copy pathschema.json
152 lines (152 loc) · 5.92 KB
/
schema.json
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
{
"$id": "https://raw.githubusercontent.com/roadrunner-server/amqp/refs/heads/master/schema.json",
"$schema": "https://json-schema.org/draft/2019-09/schema",
"title": "roadrunner-amqp",
"description": "The schema contains all the valid configuration parameters for the AMQP plugin for the roadrunner job system.",
"definitions": {
"pipeline": {
"type": "object",
"required": [
"driver"
],
"additionalProperties": false,
"properties": {
"driver": {
"type": "string",
"enum": [
"amqp"
]
},
"config": {
"type": "object",
"additionalProperties": false,
"description": "Configuration options for the AMQP pipeline.",
"properties": {
"priority": {
"$ref": "https://raw.githubusercontent.com/roadrunner-server/jobs/refs/heads/master/schema.json#/definitions/PipelineProperties/priority"
},
"prefetch": {
"$ref": "https://raw.githubusercontent.com/roadrunner-server/jobs/refs/heads/master/schema.json#/definitions/PipelineProperties/prefetch"
},
"delete_queue_on_stop": {
"type": "boolean",
"default": false,
"description": "Whether to delete the queue when stopping the pipeline."
},
"queue": {
"$ref": "https://raw.githubusercontent.com/roadrunner-server/jobs/refs/heads/master/schema.json#/definitions/PipelineProperties/queue"
},
"exchange": {
"description": "The name of the exchange.",
"type": "string",
"default": "amqp.default"
},
"redial_timeout": {
"description": "Redial timeout (in seconds). How long to try to reconnect to the AMQP server. Default or zero means 60.",
"type": "integer",
"default": 60
},
"exchange_durable": {
"description": "Whether the exchange is durable. See https://www.rabbitmq.com/tutorials/amqp-concepts.html#exchanges",
"type": "boolean",
"default": false
},
"durable": {
"type": "boolean",
"default": false,
"description": "Whether the queue is durable."
},
"consumer_id": {
"description": "The unique identifier for the consumer amongst all consumers on this channel.",
"type": "string",
"default": "roadrunner-<uuid>"
},
"exchange_auto_delete": {
"description": "Whether to auto-delete the exchange when the last queue is unbound from it. See https://www.rabbitmq.com/tutorials/amqp-concepts.html#exchanges",
"type": "boolean",
"default": false
},
"queue_auto_delete": {
"description": "Whether to auto-delete queues that have had at least one consumer when the last consumer unsubscribes.",
"type": "boolean",
"default": false
},
"exchange_type": {
"description": "The type of exchange.",
"type": "string",
"default": "direct"
},
"routing_key": {
"description": "Routing key for the queue.",
"type": "string"
},
"exclusive": {
"description": "Declare a queue exclusive at the exchange.",
"type": "boolean",
"default": false
},
"multiple_ack": {
"description": "When multiple ACK is enabled, this delivery and all prior unacknowledged deliveries on the same channel will be acknowledged. This is useful for batch processing of deliveries.",
"type": "boolean",
"default": false
},
"requeue_on_fail": {
"description": "Whether to use RabbitMQ mechanisms to requeue the job on failure.",
"type": "boolean",
"default": false
},
"queue_headers": {
"description": "Queue declare args.",
"type": "object",
"minProperties": 1,
"additionalProperties": false,
"patternProperties": {
"^[a-zA-Z0-9._-]+$": {
"type": "string",
"minLength": 1
}
}
}
}
}
}
},
"driver": {
"type": "object",
"additionalProperties": false,
"description": "Configuration options for the AMQP driver.",
"properties": {
"addr": {
"title": "AMQP Server URI",
"description": "AMQP URI to connect to the rabbitmq server. See https://www.rabbitmq.com/uri-spec.html",
"type": "string",
"default": "amqp://guest:[email protected]:5672",
"minLength": 1
},
"tls": {
"title": "TLS Configuration",
"type": "object",
"description": "TLS configuration options for AMQP.",
"properties": {
"key": {
"$ref": "https://raw.githubusercontent.com/roadrunner-server/http/refs/heads/master/schema.json#/$defs/SSL/properties/key"
},
"cert": {
"$ref": "https://raw.githubusercontent.com/roadrunner-server/http/refs/heads/master/schema.json#/$defs/SSL/properties/cert"
},
"root_ca": {
"$ref": "https://raw.githubusercontent.com/roadrunner-server/http/refs/heads/master/schema.json#/$defs/SSL/properties/root_ca"
},
"client_auth_type": {
"$ref": "https://raw.githubusercontent.com/roadrunner-server/http/refs/heads/master/schema.json#/$defs/ClientAuthType"
}
},
"required": [
"key",
"cert"
]
}
}
}
}
}