-
Notifications
You must be signed in to change notification settings - Fork 6
/
Copy patharduino-tooling-gh-label-configuration-schema.json
69 lines (69 loc) · 1.85 KB
/
arduino-tooling-gh-label-configuration-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
{
"$schema": "http://json-schema.org/draft-07/schema#",
"$id": "https://raw.githubusercontent.com/arduino/tooling-project-assets/main/workflow-templates/assets/sync-labels/arduino-tooling-gh-label-configuration-schema.json",
"title": "Arduino tooling repository label configuration file JSON schema",
"description": "Required structure of the configuration file used to define GitHub issue/PR labels, as well as the standardized format for Arduino's tooling labels. See: https://github.com/arduino/tooling-project-assets/blob/main/workflow-templates/sync-labels.md",
"type": "array",
"uniqueItems": true,
"items": {
"type": "object",
"properties": {
"name": {
"allOf": [
{
"$ref": "#/$defs/name_base"
},
{
"anyOf": [
{
"$comment": "Standardized label format",
"pattern": "^.+: .+$"
},
{
"$comment": "Allowed exceptions to the standardized format",
"enum": ["help wanted"]
}
]
}
]
},
"color": {
"enum": [
"940404",
"ff0000",
"ffa200",
"ffff00",
"00ff00",
"92a600",
"008000",
"00ba9e",
"00ffff",
"0000ff",
"800080",
"d876e3",
"ff00ff",
"c0c0c0"
]
},
"description": {
"type": "string",
"maxLength": 100
},
"aliases": {
"type": "array",
"items": {
"$ref": "#/$defs/name_base"
}
}
},
"additionalProperties": false,
"required": ["name", "color", "description"]
},
"$defs": {
"name_base": {
"$comment": "Fundamental requirements",
"type": "string",
"maxLength": 50
}
}
}