Skip to content

Commit

Permalink
Add schema
Browse files Browse the repository at this point in the history
  • Loading branch information
nickdnk committed Oct 23, 2024
1 parent 7d6a988 commit 8dedc70
Showing 1 changed file with 108 additions and 0 deletions.
108 changes: 108 additions & 0 deletions schema.json
Original file line number Diff line number Diff line change
@@ -0,0 +1,108 @@
{
"$schema": "https://json-schema.org/draft/2019-09/schema",
"title": "roadrunner-amqp",
"type": "object",
"description": "The schema contains all the valid configuration parameters for the AMQP plugin for the roadrunner job system.",
"additionalProperties": false,
"properties": {
"driver": {
"type": "string",
"enum": [
"amqp"
]
},
"config": {
"type": "object",
"additionalProperties": false,
"description": "Configuration for the AMQP driver.",
"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"
},
"consume_all": {
"$ref": "https://raw.githubusercontent.com/roadrunner-server/jobs/refs/heads/master/schema.json#/definitions/PipelineProperties/consume_all"
},
"delete_queue_on_stop": {
"type": "boolean",
"default": false,
"description": "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": "Exchange name",
"type": "string",
"default": "amqp.default"
},
"redial_timeout": {
"description": "Redial timeout (in seconds). How long to try to reconnect to the AMQP server",
"type": "integer",
"default": 60
},
"exchange_durable": {
"description": "Durable exchange (rabbitmq option: 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 consumer_id is identified by a string that is unique and scoped for all consumers on this channel",
"type": "string",
"default": "roadrunner+uuid"
},
"exchange_auto_delete": {
"description": "Auto-delete (exchange is deleted when last queue is unbound from it): https://www.rabbitmq.com/tutorials/amqp-concepts.html#exchanges",
"type": "boolean",
"default": false
},
"queue_auto_delete": {
"description": "Auto-delete (queue that has had at least one consumer is deleted when last consumer unsubscribes)",
"type": "boolean",
"default": false
},
"exchange_type": {
"description": "Exchange type",
"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 is true, 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": "Use rabbitmq mechanism to requeue the job on fail",
"type": "boolean",
"default": false
},
"queue_headers": {
"description": "Queue declare args.",
"type": "object",
"patternProperties": {
"^[a-zA-Z0-9._-]+$": {
"type": "string"
}
},
"additionalProperties": false
}
}
}
}
}

0 comments on commit 8dedc70

Please sign in to comment.