{
"$schema": "http://json-schema.org/draft-07/schema#",
"title": "yard module configuration Schema",
"anyOf": [
{
"type": "null"
},
{
"type": "object",
"properties": {
"description": {
"type": "string",
"description": "This is a modules description"
},
"split": {
"type": "boolean",
"description": "If true, this module is split across output positions using two or three containerfile/dockerfile blocks. The build fragment is hoisted to the start of the generated Containerfile, the install fragment is injected where the module is declared, and the optional finalize fragment is appended after all declared modules. Defaults to false.",
"default": false
},
"args": {
"type": "object",
"properties": {
"required": {
"type": "array",
"items": {
"type": "string"
},
"minItems": 1
},
"optional": {
"type": "array",
"items": {
"type": "string"
}
}
},
"anyOf": [
{
"required": [
"optional"
]
},
{
"required": [
"required"
]
}
]
},
"requires": {
"type": "array",
"items": {
"type": "string",
"minLength": 1
},
"description": "Module paths that must be included earlier in any output using this module. Each path is resolved relative to this module file."
},
"required_files": {
"type": "array",
"items": {
"type": "string"
},
"description": "List of required files for the module. Must be absolution paths from the current directory without a starting \"/\"."
}
},
"required": [],
"additionalProperties": false
}
]
}