golangci-lint/jsonschema/custom-gcl.jsonschema.json
2024-03-12 00:54:03 +01:00

76 lines
1.9 KiB
JSON

{
"$schema": "https://json-schema.org/draft/2020-12/schema",
"$ref": "#/$defs/Configuration",
"$defs": {
"Configuration": {
"properties": {
"version": {
"type": "string",
"description": "golangci-lint version."
},
"name": {
"type": "string",
"description": "Name of the binary."
},
"destination": {
"type": "string",
"description": "Destination is the path to a directory to store the binary."
},
"plugins": {
"items": {
"$ref": "#/$defs/Plugin"
},
"type": "array",
"description": "Plugins information."
}
},
"additionalProperties": false,
"type": "object",
"required": [
"version"
],
"description": "Configuration represents the configuration file."
},
"Plugin": {
"oneOf": [
{
"required": [
"version"
],
"title": "version"
},
{
"required": [
"path"
],
"title": "path"
}
],
"properties": {
"module": {
"type": "string",
"description": "Module name."
},
"import": {
"type": "string",
"description": "Import to use."
},
"version": {
"type": "string",
"description": "Version of the module.\nOnly for module available through a Go proxy."
},
"path": {
"type": "string",
"description": "Path to the local module.\nOnly for local module."
}
},
"additionalProperties": false,
"type": "object",
"required": [
"module"
],
"description": "Plugin represents information about a plugin."
}
},
"description": "mygcl configuration definition file"
}