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
153
154
155
156
157
158
159
160
161
162
163
164
165
166
|
{
"$schema": "http://json-schema.org/schema#",
"type": "object",
"required": [ "input", "distribution", "output" ],
"additionalProperties": false,
"properties": {
"input": {
"type": "object",
"oneOf": [ {
"required": [ "source_package_path" ],
"additionalProperties": false,
"properties": {
"source_package_path": {
"type": "string",
"description": "path to the .dsc file that is to be built, can be relative to the location of this json file"
}
}
}, {
"required": [ "source_package_url" ],
"additionalProperties": false,
"properties": {
"source_package_url": {
"type": "string",
"format": "uri",
"description": "uri for downloading the .dsc file"
},
"checksums": {
"type": "object",
"patternProperties": { ".*": { "type": "string" } },
"default": {},
"description": "a mapping of checksum algorithms to the expected values"
}
}
}, {
"required": [ "sourcename" ],
"additionalProperties": false,
"properties": {
"sourcename": {
"type": "string",
"pattern": "^[a-z0-9][a-z0-9.+-]*$",
"description": "name of a source package to fetch from the configured distribution"
},
"version": {
"type": "string",
"pattern": "^([0-9]+:)?[a-zA-Z0-9.+~-]+$",
"description": "request a particular version of the source package"
}
}
} ]
},
"distribution": {
"type": "string",
"pattern": "^[a-z0-9-]+$",
"description": "selects the base chroot used for building"
},
"extrarepositories": {
"type": "array",
"items": {
"type": "string",
"pattern": "^(deb|deb-src) "
},
"default": [],
"description": "extra repository specifications to be added to sources.list"
},
"type": {
"type": "string",
"enum": [ "any", "all", "binary" ],
"default": "binary",
"description": "select an arch-only, indep-only or full build"
},
"build_architecture": {
"type": "string",
"minLength": 2,
"pattern": "^[a-z0-9-]+$",
"description": "build architecture, defaults to the native architecure"
},
"host_architecture": {
"type": "string",
"minLength": 2,
"pattern": "^[a-z0-9-]+$",
"description": "host architecture, defaults to the build architecture"
},
"build_profiles": {
"type": "array",
"items": { "type": "string", "pattern": "^[a-z0-9.-]+$" },
"uniqueItems": true,
"default": [],
"description": "select build profiles to enabled"
},
"build_options": {
"type": "array",
"items": { "type": "string", "pattern": "^[a-z0-9.,+=_-]+$" },
"uniqueItems": true,
"default": [],
"description": "values of DEB_BUILD_OPTIONS"
},
"parallel": {
"oneOf": [ {
"type": "integer",
"minimum": 1
}, {
"const": "auto"
} ],
"description": "add parallel=value to DEB_BUILD_OPTIONS. The special value auto is replaced with the CPU count."
},
"environment": {
"type": "object",
"propertyNames": { "pattern": "^[^=-][^=]*$" },
"patternProperties": { ".*": { "type": "string" } },
"default": [],
"description": "extra environment variables"
},
"build_path": {
"type": "string",
"description": "the path inside the chroot to peform the build"
},
"lintian": {
"type": "object",
"additionalProperties": false,
"properties": {
"run": {
"type": "boolean",
"default": false,
"description": "whether to run lintian after the build"
},
"options": {
"type": "array",
"items": { "type": "string" },
"default": [],
"description": "extra options to pass to lintian"
}
}
},
"bd-uninstallable-explainer": {
"enum": [ "apt", "dose3" ],
"description": "When installing Build-Depends fails, an explainer can be used to give details. Without this property, no explainer is run."
},
"network": {
"enum": [ "enable", "disable", "try-disable", "try-enable" ],
"description": "Decide whether the build should be able to access the internet. Without this property, the backend picks its own default. A try-prefixed value does not cause a failure when the request cannot be fulfilled."
},
"output": {
"type": "object",
"required": [ "directory" ],
"additionalProperties": false,
"properties": {
"directory": {
"type": "string",
"description": "target directory to place output artifacts, can be specified relative to the location of this json file"
},
"log": {
"type": "boolean",
"default": true,
"description": "whether to output the build log on the stdout file descriptor"
},
"artifacts": {
"type": "array",
"items": { "type": "string" },
"uniqueItems": true,
"default": [ "*" ],
"description": "Any build artifact that matches any of these glob style patterns is included in the output. Patterns allow *, ?, [ranges] and [!ranges]."
}
}
}
}
}
|