fleetfizz 0.5.2 → 0.7.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/dist/fleetfizz.mjs +1925 -960
- package/package.json +2 -1
- package/schema.json +1340 -71
package/schema.json
CHANGED
|
@@ -24,95 +24,1157 @@
|
|
|
24
24
|
}
|
|
25
25
|
},
|
|
26
26
|
"machines": {
|
|
27
|
-
"type": "
|
|
28
|
-
"
|
|
27
|
+
"type": "array",
|
|
28
|
+
"items": {
|
|
29
29
|
"type": "string",
|
|
30
30
|
"minLength": 1
|
|
31
31
|
},
|
|
32
|
-
"
|
|
33
|
-
|
|
34
|
-
|
|
35
|
-
|
|
36
|
-
|
|
37
|
-
|
|
38
|
-
|
|
39
|
-
},
|
|
40
|
-
"additionalProperties": false
|
|
41
|
-
}
|
|
32
|
+
"minItems": 1,
|
|
33
|
+
"uniqueItems": true,
|
|
34
|
+
"allOf": [
|
|
35
|
+
{
|
|
36
|
+
"description": "The Fleet: each Machine's tailnet name. A tailnet member that is not listed is not part of the Fleet."
|
|
37
|
+
}
|
|
38
|
+
]
|
|
42
39
|
},
|
|
43
40
|
"repos": {
|
|
44
|
-
"type": "
|
|
45
|
-
"
|
|
46
|
-
"
|
|
47
|
-
|
|
48
|
-
"
|
|
49
|
-
|
|
50
|
-
"prefixItems": [
|
|
51
|
-
{
|
|
52
|
-
"type": "string",
|
|
53
|
-
"enum": ["darwin", "linux"]
|
|
54
|
-
}
|
|
55
|
-
],
|
|
56
|
-
"minItems": 1,
|
|
57
|
-
"items": {
|
|
41
|
+
"type": "object",
|
|
42
|
+
"properties": {
|
|
43
|
+
"platforms": {
|
|
44
|
+
"type": "array",
|
|
45
|
+
"prefixItems": [
|
|
46
|
+
{
|
|
58
47
|
"type": "string",
|
|
59
48
|
"enum": ["darwin", "linux"]
|
|
60
49
|
}
|
|
50
|
+
],
|
|
51
|
+
"minItems": 1,
|
|
52
|
+
"items": {
|
|
53
|
+
"type": "string",
|
|
54
|
+
"enum": ["darwin", "linux"]
|
|
61
55
|
},
|
|
62
|
-
"
|
|
63
|
-
|
|
64
|
-
|
|
65
|
-
|
|
66
|
-
|
|
67
|
-
|
|
68
|
-
|
|
69
|
-
|
|
70
|
-
|
|
71
|
-
|
|
56
|
+
"allOf": [
|
|
57
|
+
{
|
|
58
|
+
"description": "`darwin`, `linux`, or both."
|
|
59
|
+
}
|
|
60
|
+
]
|
|
61
|
+
},
|
|
62
|
+
"machines": {
|
|
63
|
+
"type": "array",
|
|
64
|
+
"prefixItems": [
|
|
65
|
+
{
|
|
72
66
|
"type": "string",
|
|
73
67
|
"minLength": 1
|
|
74
68
|
}
|
|
69
|
+
],
|
|
70
|
+
"minItems": 1,
|
|
71
|
+
"items": {
|
|
72
|
+
"type": "string",
|
|
73
|
+
"minLength": 1
|
|
75
74
|
},
|
|
76
|
-
"
|
|
75
|
+
"allOf": [
|
|
76
|
+
{
|
|
77
|
+
"description": "Machine names from `machines`."
|
|
78
|
+
}
|
|
79
|
+
]
|
|
80
|
+
},
|
|
81
|
+
"dependsOn": {
|
|
82
|
+
"type": "array",
|
|
83
|
+
"items": {
|
|
77
84
|
"type": "string",
|
|
78
|
-
"
|
|
79
|
-
"description": "a GitHub \"owner/repo\""
|
|
85
|
+
"enum": ["vp", "brew", "cask", "repos"]
|
|
80
86
|
},
|
|
81
|
-
"
|
|
87
|
+
"allOf": [
|
|
88
|
+
{
|
|
89
|
+
"description": "Providers whose Items must succeed on a Machine before this one changes there."
|
|
90
|
+
}
|
|
91
|
+
]
|
|
92
|
+
},
|
|
93
|
+
"cloneRoot": {
|
|
94
|
+
"anyOf": [
|
|
95
|
+
{
|
|
96
|
+
"anyOf": [
|
|
97
|
+
{
|
|
98
|
+
"type": "object",
|
|
99
|
+
"properties": {
|
|
100
|
+
"platforms": {
|
|
101
|
+
"type": "array",
|
|
102
|
+
"prefixItems": [
|
|
103
|
+
{
|
|
104
|
+
"type": "string",
|
|
105
|
+
"enum": ["darwin", "linux"]
|
|
106
|
+
}
|
|
107
|
+
],
|
|
108
|
+
"minItems": 1,
|
|
109
|
+
"items": {
|
|
110
|
+
"type": "string",
|
|
111
|
+
"enum": ["darwin", "linux"]
|
|
112
|
+
},
|
|
113
|
+
"allOf": [
|
|
114
|
+
{
|
|
115
|
+
"description": "`darwin`, `linux`, or both."
|
|
116
|
+
}
|
|
117
|
+
]
|
|
118
|
+
},
|
|
119
|
+
"machines": {
|
|
120
|
+
"type": "array",
|
|
121
|
+
"prefixItems": [
|
|
122
|
+
{
|
|
123
|
+
"type": "string",
|
|
124
|
+
"minLength": 1
|
|
125
|
+
}
|
|
126
|
+
],
|
|
127
|
+
"minItems": 1,
|
|
128
|
+
"items": {
|
|
129
|
+
"type": "string",
|
|
130
|
+
"minLength": 1
|
|
131
|
+
},
|
|
132
|
+
"allOf": [
|
|
133
|
+
{
|
|
134
|
+
"description": "Machine names from `machines`."
|
|
135
|
+
}
|
|
136
|
+
]
|
|
137
|
+
},
|
|
138
|
+
"path": {
|
|
139
|
+
"type": "string",
|
|
140
|
+
"minLength": 1
|
|
141
|
+
}
|
|
142
|
+
},
|
|
143
|
+
"required": ["path"],
|
|
144
|
+
"additionalProperties": false
|
|
145
|
+
},
|
|
146
|
+
{
|
|
147
|
+
"type": "string",
|
|
148
|
+
"minLength": 1
|
|
149
|
+
}
|
|
150
|
+
]
|
|
151
|
+
},
|
|
152
|
+
{
|
|
153
|
+
"type": "array",
|
|
154
|
+
"prefixItems": [
|
|
155
|
+
{
|
|
156
|
+
"anyOf": [
|
|
157
|
+
{
|
|
158
|
+
"type": "object",
|
|
159
|
+
"properties": {
|
|
160
|
+
"platforms": {
|
|
161
|
+
"type": "array",
|
|
162
|
+
"prefixItems": [
|
|
163
|
+
{
|
|
164
|
+
"type": "string",
|
|
165
|
+
"enum": ["darwin", "linux"]
|
|
166
|
+
}
|
|
167
|
+
],
|
|
168
|
+
"minItems": 1,
|
|
169
|
+
"items": {
|
|
170
|
+
"type": "string",
|
|
171
|
+
"enum": ["darwin", "linux"]
|
|
172
|
+
},
|
|
173
|
+
"allOf": [
|
|
174
|
+
{
|
|
175
|
+
"description": "`darwin`, `linux`, or both."
|
|
176
|
+
}
|
|
177
|
+
]
|
|
178
|
+
},
|
|
179
|
+
"machines": {
|
|
180
|
+
"type": "array",
|
|
181
|
+
"prefixItems": [
|
|
182
|
+
{
|
|
183
|
+
"type": "string",
|
|
184
|
+
"minLength": 1
|
|
185
|
+
}
|
|
186
|
+
],
|
|
187
|
+
"minItems": 1,
|
|
188
|
+
"items": {
|
|
189
|
+
"type": "string",
|
|
190
|
+
"minLength": 1
|
|
191
|
+
},
|
|
192
|
+
"allOf": [
|
|
193
|
+
{
|
|
194
|
+
"description": "Machine names from `machines`."
|
|
195
|
+
}
|
|
196
|
+
]
|
|
197
|
+
},
|
|
198
|
+
"path": {
|
|
199
|
+
"type": "string",
|
|
200
|
+
"minLength": 1
|
|
201
|
+
}
|
|
202
|
+
},
|
|
203
|
+
"required": ["path"],
|
|
204
|
+
"additionalProperties": false
|
|
205
|
+
},
|
|
206
|
+
{
|
|
207
|
+
"type": "string",
|
|
208
|
+
"minLength": 1
|
|
209
|
+
}
|
|
210
|
+
]
|
|
211
|
+
}
|
|
212
|
+
],
|
|
213
|
+
"minItems": 1,
|
|
214
|
+
"items": {
|
|
215
|
+
"anyOf": [
|
|
216
|
+
{
|
|
217
|
+
"type": "object",
|
|
218
|
+
"properties": {
|
|
219
|
+
"platforms": {
|
|
220
|
+
"type": "array",
|
|
221
|
+
"prefixItems": [
|
|
222
|
+
{
|
|
223
|
+
"type": "string",
|
|
224
|
+
"enum": ["darwin", "linux"]
|
|
225
|
+
}
|
|
226
|
+
],
|
|
227
|
+
"minItems": 1,
|
|
228
|
+
"items": {
|
|
229
|
+
"type": "string",
|
|
230
|
+
"enum": ["darwin", "linux"]
|
|
231
|
+
},
|
|
232
|
+
"allOf": [
|
|
233
|
+
{
|
|
234
|
+
"description": "`darwin`, `linux`, or both."
|
|
235
|
+
}
|
|
236
|
+
]
|
|
237
|
+
},
|
|
238
|
+
"machines": {
|
|
239
|
+
"type": "array",
|
|
240
|
+
"prefixItems": [
|
|
241
|
+
{
|
|
242
|
+
"type": "string",
|
|
243
|
+
"minLength": 1
|
|
244
|
+
}
|
|
245
|
+
],
|
|
246
|
+
"minItems": 1,
|
|
247
|
+
"items": {
|
|
248
|
+
"type": "string",
|
|
249
|
+
"minLength": 1
|
|
250
|
+
},
|
|
251
|
+
"allOf": [
|
|
252
|
+
{
|
|
253
|
+
"description": "Machine names from `machines`."
|
|
254
|
+
}
|
|
255
|
+
]
|
|
256
|
+
},
|
|
257
|
+
"path": {
|
|
258
|
+
"type": "string",
|
|
259
|
+
"minLength": 1
|
|
260
|
+
}
|
|
261
|
+
},
|
|
262
|
+
"required": ["path"],
|
|
263
|
+
"additionalProperties": false
|
|
264
|
+
},
|
|
265
|
+
{
|
|
266
|
+
"type": "string",
|
|
267
|
+
"minLength": 1
|
|
268
|
+
}
|
|
269
|
+
]
|
|
270
|
+
}
|
|
271
|
+
}
|
|
272
|
+
],
|
|
273
|
+
"allOf": [
|
|
274
|
+
{
|
|
275
|
+
"description": "Where a Machine keeps its Managed Clones: a path, or a list of `{ path, platforms?, machines? }` where a Machine gets the first that targets it. `~` expands on that Machine. Default: `~/.local/share/fleetfizz/clones`."
|
|
276
|
+
}
|
|
277
|
+
]
|
|
278
|
+
},
|
|
279
|
+
"items": {
|
|
280
|
+
"type": "object",
|
|
281
|
+
"propertyNames": {
|
|
82
282
|
"type": "string",
|
|
83
283
|
"minLength": 1
|
|
84
284
|
},
|
|
85
|
-
"
|
|
285
|
+
"additionalProperties": {
|
|
286
|
+
"anyOf": [
|
|
287
|
+
{
|
|
288
|
+
"type": "object",
|
|
289
|
+
"properties": {
|
|
290
|
+
"platforms": {
|
|
291
|
+
"type": "array",
|
|
292
|
+
"prefixItems": [
|
|
293
|
+
{
|
|
294
|
+
"type": "string",
|
|
295
|
+
"enum": ["darwin", "linux"]
|
|
296
|
+
}
|
|
297
|
+
],
|
|
298
|
+
"minItems": 1,
|
|
299
|
+
"items": {
|
|
300
|
+
"type": "string",
|
|
301
|
+
"enum": ["darwin", "linux"]
|
|
302
|
+
},
|
|
303
|
+
"allOf": [
|
|
304
|
+
{
|
|
305
|
+
"description": "`darwin`, `linux`, or both."
|
|
306
|
+
}
|
|
307
|
+
]
|
|
308
|
+
},
|
|
309
|
+
"machines": {
|
|
310
|
+
"type": "array",
|
|
311
|
+
"prefixItems": [
|
|
312
|
+
{
|
|
313
|
+
"type": "string",
|
|
314
|
+
"minLength": 1
|
|
315
|
+
}
|
|
316
|
+
],
|
|
317
|
+
"minItems": 1,
|
|
318
|
+
"items": {
|
|
319
|
+
"type": "string",
|
|
320
|
+
"minLength": 1
|
|
321
|
+
},
|
|
322
|
+
"allOf": [
|
|
323
|
+
{
|
|
324
|
+
"description": "Machine names from `machines`."
|
|
325
|
+
}
|
|
326
|
+
]
|
|
327
|
+
},
|
|
328
|
+
"origin": {
|
|
329
|
+
"type": "string",
|
|
330
|
+
"title": "GitHub origin",
|
|
331
|
+
"description": "a GitHub \"owner/repo\"",
|
|
332
|
+
"allOf": [
|
|
333
|
+
{
|
|
334
|
+
"description": "The GitHub `owner/repo`."
|
|
335
|
+
}
|
|
336
|
+
]
|
|
337
|
+
},
|
|
338
|
+
"ref": {
|
|
339
|
+
"type": "string",
|
|
340
|
+
"minLength": 1,
|
|
341
|
+
"allOf": [
|
|
342
|
+
{
|
|
343
|
+
"description": "A branch, or a full 40-character commit SHA to pin it."
|
|
344
|
+
}
|
|
345
|
+
]
|
|
346
|
+
},
|
|
347
|
+
"install": {
|
|
348
|
+
"type": "string",
|
|
349
|
+
"minLength": 1,
|
|
350
|
+
"allOf": [
|
|
351
|
+
{
|
|
352
|
+
"description": "The Install Command, run in a login shell inside the Managed Clone."
|
|
353
|
+
}
|
|
354
|
+
]
|
|
355
|
+
},
|
|
356
|
+
"outputs": {
|
|
357
|
+
"type": "array",
|
|
358
|
+
"items": {
|
|
359
|
+
"type": "string",
|
|
360
|
+
"minLength": 1
|
|
361
|
+
},
|
|
362
|
+
"allOf": [
|
|
363
|
+
{
|
|
364
|
+
"description": "Paths outside the clone the Install Command produces. If one changes by hand, the repo reinstalls."
|
|
365
|
+
}
|
|
366
|
+
]
|
|
367
|
+
},
|
|
368
|
+
"files": {
|
|
369
|
+
"type": "object",
|
|
370
|
+
"propertyNames": {
|
|
371
|
+
"type": "string",
|
|
372
|
+
"minLength": 1
|
|
373
|
+
},
|
|
374
|
+
"additionalProperties": {
|
|
375
|
+
"type": "string"
|
|
376
|
+
},
|
|
377
|
+
"allOf": [
|
|
378
|
+
{
|
|
379
|
+
"description": "Gitignored files (Clone Files) written into the clone before every install, keyed by path. Never secrets."
|
|
380
|
+
}
|
|
381
|
+
]
|
|
382
|
+
}
|
|
383
|
+
},
|
|
384
|
+
"required": ["origin", "ref", "install"],
|
|
385
|
+
"additionalProperties": false
|
|
386
|
+
},
|
|
387
|
+
{
|
|
388
|
+
"type": "array",
|
|
389
|
+
"prefixItems": [
|
|
390
|
+
{
|
|
391
|
+
"type": "object",
|
|
392
|
+
"properties": {
|
|
393
|
+
"platforms": {
|
|
394
|
+
"type": "array",
|
|
395
|
+
"prefixItems": [
|
|
396
|
+
{
|
|
397
|
+
"type": "string",
|
|
398
|
+
"enum": ["darwin", "linux"]
|
|
399
|
+
}
|
|
400
|
+
],
|
|
401
|
+
"minItems": 1,
|
|
402
|
+
"items": {
|
|
403
|
+
"type": "string",
|
|
404
|
+
"enum": ["darwin", "linux"]
|
|
405
|
+
},
|
|
406
|
+
"allOf": [
|
|
407
|
+
{
|
|
408
|
+
"description": "`darwin`, `linux`, or both."
|
|
409
|
+
}
|
|
410
|
+
]
|
|
411
|
+
},
|
|
412
|
+
"machines": {
|
|
413
|
+
"type": "array",
|
|
414
|
+
"prefixItems": [
|
|
415
|
+
{
|
|
416
|
+
"type": "string",
|
|
417
|
+
"minLength": 1
|
|
418
|
+
}
|
|
419
|
+
],
|
|
420
|
+
"minItems": 1,
|
|
421
|
+
"items": {
|
|
422
|
+
"type": "string",
|
|
423
|
+
"minLength": 1
|
|
424
|
+
},
|
|
425
|
+
"allOf": [
|
|
426
|
+
{
|
|
427
|
+
"description": "Machine names from `machines`."
|
|
428
|
+
}
|
|
429
|
+
]
|
|
430
|
+
},
|
|
431
|
+
"origin": {
|
|
432
|
+
"type": "string",
|
|
433
|
+
"title": "GitHub origin",
|
|
434
|
+
"description": "a GitHub \"owner/repo\"",
|
|
435
|
+
"allOf": [
|
|
436
|
+
{
|
|
437
|
+
"description": "The GitHub `owner/repo`."
|
|
438
|
+
}
|
|
439
|
+
]
|
|
440
|
+
},
|
|
441
|
+
"ref": {
|
|
442
|
+
"type": "string",
|
|
443
|
+
"minLength": 1,
|
|
444
|
+
"allOf": [
|
|
445
|
+
{
|
|
446
|
+
"description": "A branch, or a full 40-character commit SHA to pin it."
|
|
447
|
+
}
|
|
448
|
+
]
|
|
449
|
+
},
|
|
450
|
+
"install": {
|
|
451
|
+
"type": "string",
|
|
452
|
+
"minLength": 1,
|
|
453
|
+
"allOf": [
|
|
454
|
+
{
|
|
455
|
+
"description": "The Install Command, run in a login shell inside the Managed Clone."
|
|
456
|
+
}
|
|
457
|
+
]
|
|
458
|
+
},
|
|
459
|
+
"outputs": {
|
|
460
|
+
"type": "array",
|
|
461
|
+
"items": {
|
|
462
|
+
"type": "string",
|
|
463
|
+
"minLength": 1
|
|
464
|
+
},
|
|
465
|
+
"allOf": [
|
|
466
|
+
{
|
|
467
|
+
"description": "Paths outside the clone the Install Command produces. If one changes by hand, the repo reinstalls."
|
|
468
|
+
}
|
|
469
|
+
]
|
|
470
|
+
},
|
|
471
|
+
"files": {
|
|
472
|
+
"type": "object",
|
|
473
|
+
"propertyNames": {
|
|
474
|
+
"type": "string",
|
|
475
|
+
"minLength": 1
|
|
476
|
+
},
|
|
477
|
+
"additionalProperties": {
|
|
478
|
+
"type": "string"
|
|
479
|
+
},
|
|
480
|
+
"allOf": [
|
|
481
|
+
{
|
|
482
|
+
"description": "Gitignored files (Clone Files) written into the clone before every install, keyed by path. Never secrets."
|
|
483
|
+
}
|
|
484
|
+
]
|
|
485
|
+
}
|
|
486
|
+
},
|
|
487
|
+
"required": ["origin", "ref", "install"],
|
|
488
|
+
"additionalProperties": false
|
|
489
|
+
}
|
|
490
|
+
],
|
|
491
|
+
"minItems": 1,
|
|
492
|
+
"items": {
|
|
493
|
+
"type": "object",
|
|
494
|
+
"properties": {
|
|
495
|
+
"platforms": {
|
|
496
|
+
"type": "array",
|
|
497
|
+
"prefixItems": [
|
|
498
|
+
{
|
|
499
|
+
"type": "string",
|
|
500
|
+
"enum": ["darwin", "linux"]
|
|
501
|
+
}
|
|
502
|
+
],
|
|
503
|
+
"minItems": 1,
|
|
504
|
+
"items": {
|
|
505
|
+
"type": "string",
|
|
506
|
+
"enum": ["darwin", "linux"]
|
|
507
|
+
},
|
|
508
|
+
"allOf": [
|
|
509
|
+
{
|
|
510
|
+
"description": "`darwin`, `linux`, or both."
|
|
511
|
+
}
|
|
512
|
+
]
|
|
513
|
+
},
|
|
514
|
+
"machines": {
|
|
515
|
+
"type": "array",
|
|
516
|
+
"prefixItems": [
|
|
517
|
+
{
|
|
518
|
+
"type": "string",
|
|
519
|
+
"minLength": 1
|
|
520
|
+
}
|
|
521
|
+
],
|
|
522
|
+
"minItems": 1,
|
|
523
|
+
"items": {
|
|
524
|
+
"type": "string",
|
|
525
|
+
"minLength": 1
|
|
526
|
+
},
|
|
527
|
+
"allOf": [
|
|
528
|
+
{
|
|
529
|
+
"description": "Machine names from `machines`."
|
|
530
|
+
}
|
|
531
|
+
]
|
|
532
|
+
},
|
|
533
|
+
"origin": {
|
|
534
|
+
"type": "string",
|
|
535
|
+
"title": "GitHub origin",
|
|
536
|
+
"description": "a GitHub \"owner/repo\"",
|
|
537
|
+
"allOf": [
|
|
538
|
+
{
|
|
539
|
+
"description": "The GitHub `owner/repo`."
|
|
540
|
+
}
|
|
541
|
+
]
|
|
542
|
+
},
|
|
543
|
+
"ref": {
|
|
544
|
+
"type": "string",
|
|
545
|
+
"minLength": 1,
|
|
546
|
+
"allOf": [
|
|
547
|
+
{
|
|
548
|
+
"description": "A branch, or a full 40-character commit SHA to pin it."
|
|
549
|
+
}
|
|
550
|
+
]
|
|
551
|
+
},
|
|
552
|
+
"install": {
|
|
553
|
+
"type": "string",
|
|
554
|
+
"minLength": 1,
|
|
555
|
+
"allOf": [
|
|
556
|
+
{
|
|
557
|
+
"description": "The Install Command, run in a login shell inside the Managed Clone."
|
|
558
|
+
}
|
|
559
|
+
]
|
|
560
|
+
},
|
|
561
|
+
"outputs": {
|
|
562
|
+
"type": "array",
|
|
563
|
+
"items": {
|
|
564
|
+
"type": "string",
|
|
565
|
+
"minLength": 1
|
|
566
|
+
},
|
|
567
|
+
"allOf": [
|
|
568
|
+
{
|
|
569
|
+
"description": "Paths outside the clone the Install Command produces. If one changes by hand, the repo reinstalls."
|
|
570
|
+
}
|
|
571
|
+
]
|
|
572
|
+
},
|
|
573
|
+
"files": {
|
|
574
|
+
"type": "object",
|
|
575
|
+
"propertyNames": {
|
|
576
|
+
"type": "string",
|
|
577
|
+
"minLength": 1
|
|
578
|
+
},
|
|
579
|
+
"additionalProperties": {
|
|
580
|
+
"type": "string"
|
|
581
|
+
},
|
|
582
|
+
"allOf": [
|
|
583
|
+
{
|
|
584
|
+
"description": "Gitignored files (Clone Files) written into the clone before every install, keyed by path. Never secrets."
|
|
585
|
+
}
|
|
586
|
+
]
|
|
587
|
+
}
|
|
588
|
+
},
|
|
589
|
+
"required": ["origin", "ref", "install"],
|
|
590
|
+
"additionalProperties": false
|
|
591
|
+
}
|
|
592
|
+
}
|
|
593
|
+
]
|
|
594
|
+
},
|
|
595
|
+
"allOf": [
|
|
596
|
+
{
|
|
597
|
+
"description": "Tracked Repos, keyed by name, which names the Managed Clone and the `repos:<name>` Item. Each is `{ origin, ref, install, ... }`, or a list of Variants, of which a Machine gets the first that targets it."
|
|
598
|
+
}
|
|
599
|
+
]
|
|
600
|
+
}
|
|
601
|
+
},
|
|
602
|
+
"additionalProperties": false,
|
|
603
|
+
"allOf": [
|
|
604
|
+
{
|
|
605
|
+
"description": "Each Tracked Repo is cloned on every targeted Machine and installed from its origin ref."
|
|
606
|
+
}
|
|
607
|
+
]
|
|
608
|
+
},
|
|
609
|
+
"vp": {
|
|
610
|
+
"type": "object",
|
|
611
|
+
"properties": {
|
|
612
|
+
"platforms": {
|
|
613
|
+
"type": "array",
|
|
614
|
+
"prefixItems": [
|
|
615
|
+
{
|
|
616
|
+
"type": "string",
|
|
617
|
+
"enum": ["darwin", "linux"]
|
|
618
|
+
}
|
|
619
|
+
],
|
|
620
|
+
"minItems": 1,
|
|
621
|
+
"items": {
|
|
622
|
+
"type": "string",
|
|
623
|
+
"enum": ["darwin", "linux"]
|
|
624
|
+
},
|
|
625
|
+
"allOf": [
|
|
626
|
+
{
|
|
627
|
+
"description": "`darwin`, `linux`, or both."
|
|
628
|
+
}
|
|
629
|
+
]
|
|
630
|
+
},
|
|
631
|
+
"machines": {
|
|
632
|
+
"type": "array",
|
|
633
|
+
"prefixItems": [
|
|
634
|
+
{
|
|
635
|
+
"type": "string",
|
|
636
|
+
"minLength": 1
|
|
637
|
+
}
|
|
638
|
+
],
|
|
639
|
+
"minItems": 1,
|
|
640
|
+
"items": {
|
|
86
641
|
"type": "string",
|
|
87
642
|
"minLength": 1
|
|
88
643
|
},
|
|
89
|
-
"
|
|
644
|
+
"allOf": [
|
|
645
|
+
{
|
|
646
|
+
"description": "Machine names from `machines`."
|
|
647
|
+
}
|
|
648
|
+
]
|
|
649
|
+
},
|
|
650
|
+
"dependsOn": {
|
|
651
|
+
"type": "array",
|
|
652
|
+
"items": {
|
|
653
|
+
"type": "string",
|
|
654
|
+
"enum": ["vp", "brew", "cask", "repos"]
|
|
655
|
+
},
|
|
656
|
+
"allOf": [
|
|
657
|
+
{
|
|
658
|
+
"description": "Providers whose Items must succeed on a Machine before this one changes there."
|
|
659
|
+
}
|
|
660
|
+
]
|
|
661
|
+
},
|
|
662
|
+
"version": {
|
|
663
|
+
"type": "string",
|
|
664
|
+
"minLength": 1,
|
|
665
|
+
"allOf": [
|
|
666
|
+
{
|
|
667
|
+
"description": "The vp version. Pin it exactly."
|
|
668
|
+
}
|
|
669
|
+
]
|
|
670
|
+
},
|
|
671
|
+
"node": {
|
|
672
|
+
"type": "string",
|
|
673
|
+
"minLength": 1,
|
|
674
|
+
"allOf": [
|
|
675
|
+
{
|
|
676
|
+
"description": "The default Node version. Pin it exactly."
|
|
677
|
+
}
|
|
678
|
+
]
|
|
679
|
+
},
|
|
680
|
+
"npm": {
|
|
681
|
+
"type": "string",
|
|
682
|
+
"minLength": 1,
|
|
683
|
+
"allOf": [
|
|
684
|
+
{
|
|
685
|
+
"description": "The default npm version."
|
|
686
|
+
}
|
|
687
|
+
]
|
|
688
|
+
},
|
|
689
|
+
"pnpm": {
|
|
690
|
+
"type": "string",
|
|
691
|
+
"minLength": 1,
|
|
692
|
+
"allOf": [
|
|
693
|
+
{
|
|
694
|
+
"description": "The default pnpm version."
|
|
695
|
+
}
|
|
696
|
+
]
|
|
697
|
+
},
|
|
698
|
+
"yarn": {
|
|
699
|
+
"type": "string",
|
|
700
|
+
"minLength": 1,
|
|
701
|
+
"allOf": [
|
|
702
|
+
{
|
|
703
|
+
"description": "The default Yarn version."
|
|
704
|
+
}
|
|
705
|
+
]
|
|
706
|
+
},
|
|
707
|
+
"bun": {
|
|
708
|
+
"type": "string",
|
|
709
|
+
"minLength": 1,
|
|
710
|
+
"allOf": [
|
|
711
|
+
{
|
|
712
|
+
"description": "The default Bun version."
|
|
713
|
+
}
|
|
714
|
+
]
|
|
715
|
+
},
|
|
716
|
+
"items": {
|
|
717
|
+
"type": "object",
|
|
718
|
+
"propertyNames": {
|
|
90
719
|
"type": "string",
|
|
91
720
|
"minLength": 1
|
|
92
721
|
},
|
|
93
|
-
"
|
|
94
|
-
"
|
|
95
|
-
|
|
722
|
+
"additionalProperties": {
|
|
723
|
+
"anyOf": [
|
|
724
|
+
{
|
|
725
|
+
"anyOf": [
|
|
726
|
+
{
|
|
727
|
+
"type": "object",
|
|
728
|
+
"properties": {
|
|
729
|
+
"platforms": {
|
|
730
|
+
"type": "array",
|
|
731
|
+
"prefixItems": [
|
|
732
|
+
{
|
|
733
|
+
"type": "string",
|
|
734
|
+
"enum": ["darwin", "linux"]
|
|
735
|
+
}
|
|
736
|
+
],
|
|
737
|
+
"minItems": 1,
|
|
738
|
+
"items": {
|
|
739
|
+
"type": "string",
|
|
740
|
+
"enum": ["darwin", "linux"]
|
|
741
|
+
},
|
|
742
|
+
"allOf": [
|
|
743
|
+
{
|
|
744
|
+
"description": "`darwin`, `linux`, or both."
|
|
745
|
+
}
|
|
746
|
+
]
|
|
747
|
+
},
|
|
748
|
+
"machines": {
|
|
749
|
+
"type": "array",
|
|
750
|
+
"prefixItems": [
|
|
751
|
+
{
|
|
752
|
+
"type": "string",
|
|
753
|
+
"minLength": 1
|
|
754
|
+
}
|
|
755
|
+
],
|
|
756
|
+
"minItems": 1,
|
|
757
|
+
"items": {
|
|
758
|
+
"type": "string",
|
|
759
|
+
"minLength": 1
|
|
760
|
+
},
|
|
761
|
+
"allOf": [
|
|
762
|
+
{
|
|
763
|
+
"description": "Machine names from `machines`."
|
|
764
|
+
}
|
|
765
|
+
]
|
|
766
|
+
},
|
|
767
|
+
"range": {
|
|
768
|
+
"type": "string",
|
|
769
|
+
"minLength": 1
|
|
770
|
+
}
|
|
771
|
+
},
|
|
772
|
+
"required": ["range"],
|
|
773
|
+
"additionalProperties": false
|
|
774
|
+
},
|
|
775
|
+
{
|
|
776
|
+
"type": "string",
|
|
777
|
+
"minLength": 1
|
|
778
|
+
}
|
|
779
|
+
]
|
|
780
|
+
},
|
|
781
|
+
{
|
|
782
|
+
"type": "array",
|
|
783
|
+
"prefixItems": [
|
|
784
|
+
{
|
|
785
|
+
"anyOf": [
|
|
786
|
+
{
|
|
787
|
+
"type": "object",
|
|
788
|
+
"properties": {
|
|
789
|
+
"platforms": {
|
|
790
|
+
"type": "array",
|
|
791
|
+
"prefixItems": [
|
|
792
|
+
{
|
|
793
|
+
"type": "string",
|
|
794
|
+
"enum": ["darwin", "linux"]
|
|
795
|
+
}
|
|
796
|
+
],
|
|
797
|
+
"minItems": 1,
|
|
798
|
+
"items": {
|
|
799
|
+
"type": "string",
|
|
800
|
+
"enum": ["darwin", "linux"]
|
|
801
|
+
},
|
|
802
|
+
"allOf": [
|
|
803
|
+
{
|
|
804
|
+
"description": "`darwin`, `linux`, or both."
|
|
805
|
+
}
|
|
806
|
+
]
|
|
807
|
+
},
|
|
808
|
+
"machines": {
|
|
809
|
+
"type": "array",
|
|
810
|
+
"prefixItems": [
|
|
811
|
+
{
|
|
812
|
+
"type": "string",
|
|
813
|
+
"minLength": 1
|
|
814
|
+
}
|
|
815
|
+
],
|
|
816
|
+
"minItems": 1,
|
|
817
|
+
"items": {
|
|
818
|
+
"type": "string",
|
|
819
|
+
"minLength": 1
|
|
820
|
+
},
|
|
821
|
+
"allOf": [
|
|
822
|
+
{
|
|
823
|
+
"description": "Machine names from `machines`."
|
|
824
|
+
}
|
|
825
|
+
]
|
|
826
|
+
},
|
|
827
|
+
"range": {
|
|
828
|
+
"type": "string",
|
|
829
|
+
"minLength": 1
|
|
830
|
+
}
|
|
831
|
+
},
|
|
832
|
+
"required": ["range"],
|
|
833
|
+
"additionalProperties": false
|
|
834
|
+
},
|
|
835
|
+
{
|
|
836
|
+
"type": "string",
|
|
837
|
+
"minLength": 1
|
|
838
|
+
}
|
|
839
|
+
]
|
|
840
|
+
}
|
|
841
|
+
],
|
|
842
|
+
"minItems": 1,
|
|
843
|
+
"items": {
|
|
844
|
+
"anyOf": [
|
|
845
|
+
{
|
|
846
|
+
"type": "object",
|
|
847
|
+
"properties": {
|
|
848
|
+
"platforms": {
|
|
849
|
+
"type": "array",
|
|
850
|
+
"prefixItems": [
|
|
851
|
+
{
|
|
852
|
+
"type": "string",
|
|
853
|
+
"enum": ["darwin", "linux"]
|
|
854
|
+
}
|
|
855
|
+
],
|
|
856
|
+
"minItems": 1,
|
|
857
|
+
"items": {
|
|
858
|
+
"type": "string",
|
|
859
|
+
"enum": ["darwin", "linux"]
|
|
860
|
+
},
|
|
861
|
+
"allOf": [
|
|
862
|
+
{
|
|
863
|
+
"description": "`darwin`, `linux`, or both."
|
|
864
|
+
}
|
|
865
|
+
]
|
|
866
|
+
},
|
|
867
|
+
"machines": {
|
|
868
|
+
"type": "array",
|
|
869
|
+
"prefixItems": [
|
|
870
|
+
{
|
|
871
|
+
"type": "string",
|
|
872
|
+
"minLength": 1
|
|
873
|
+
}
|
|
874
|
+
],
|
|
875
|
+
"minItems": 1,
|
|
876
|
+
"items": {
|
|
877
|
+
"type": "string",
|
|
878
|
+
"minLength": 1
|
|
879
|
+
},
|
|
880
|
+
"allOf": [
|
|
881
|
+
{
|
|
882
|
+
"description": "Machine names from `machines`."
|
|
883
|
+
}
|
|
884
|
+
]
|
|
885
|
+
},
|
|
886
|
+
"range": {
|
|
887
|
+
"type": "string",
|
|
888
|
+
"minLength": 1
|
|
889
|
+
}
|
|
890
|
+
},
|
|
891
|
+
"required": ["range"],
|
|
892
|
+
"additionalProperties": false
|
|
893
|
+
},
|
|
894
|
+
{
|
|
895
|
+
"type": "string",
|
|
896
|
+
"minLength": 1
|
|
897
|
+
}
|
|
898
|
+
]
|
|
899
|
+
}
|
|
900
|
+
}
|
|
901
|
+
]
|
|
902
|
+
},
|
|
903
|
+
"allOf": [
|
|
904
|
+
{
|
|
905
|
+
"description": "Globals, keyed by package. Each is a Range, `{ range, platforms?, machines? }` to target it, or a list of Variants, of which a Machine gets the first that targets it."
|
|
906
|
+
}
|
|
907
|
+
]
|
|
908
|
+
}
|
|
909
|
+
},
|
|
910
|
+
"additionalProperties": false,
|
|
911
|
+
"allOf": [
|
|
912
|
+
{
|
|
913
|
+
"description": "The vite-plus toolchain."
|
|
914
|
+
}
|
|
915
|
+
]
|
|
916
|
+
},
|
|
917
|
+
"brew": {
|
|
918
|
+
"type": "object",
|
|
919
|
+
"properties": {
|
|
920
|
+
"platforms": {
|
|
921
|
+
"type": "array",
|
|
922
|
+
"prefixItems": [
|
|
923
|
+
{
|
|
96
924
|
"type": "string",
|
|
97
|
-
"
|
|
925
|
+
"enum": ["darwin", "linux"]
|
|
98
926
|
}
|
|
927
|
+
],
|
|
928
|
+
"minItems": 1,
|
|
929
|
+
"items": {
|
|
930
|
+
"type": "string",
|
|
931
|
+
"enum": ["darwin", "linux"]
|
|
99
932
|
},
|
|
100
|
-
"
|
|
101
|
-
|
|
102
|
-
|
|
933
|
+
"allOf": [
|
|
934
|
+
{
|
|
935
|
+
"description": "`darwin`, `linux`, or both."
|
|
936
|
+
}
|
|
937
|
+
]
|
|
938
|
+
},
|
|
939
|
+
"machines": {
|
|
940
|
+
"type": "array",
|
|
941
|
+
"prefixItems": [
|
|
942
|
+
{
|
|
103
943
|
"type": "string",
|
|
104
944
|
"minLength": 1
|
|
105
|
-
},
|
|
106
|
-
"additionalProperties": {
|
|
107
|
-
"type": "string"
|
|
108
945
|
}
|
|
109
|
-
|
|
946
|
+
],
|
|
947
|
+
"minItems": 1,
|
|
948
|
+
"items": {
|
|
949
|
+
"type": "string",
|
|
950
|
+
"minLength": 1
|
|
951
|
+
},
|
|
952
|
+
"allOf": [
|
|
953
|
+
{
|
|
954
|
+
"description": "Machine names from `machines`."
|
|
955
|
+
}
|
|
956
|
+
]
|
|
110
957
|
},
|
|
111
|
-
"
|
|
112
|
-
|
|
113
|
-
|
|
958
|
+
"dependsOn": {
|
|
959
|
+
"type": "array",
|
|
960
|
+
"items": {
|
|
961
|
+
"type": "string",
|
|
962
|
+
"enum": ["vp", "brew", "cask", "repos"]
|
|
963
|
+
},
|
|
964
|
+
"allOf": [
|
|
965
|
+
{
|
|
966
|
+
"description": "Providers whose Items must succeed on a Machine before this one changes there."
|
|
967
|
+
}
|
|
968
|
+
]
|
|
969
|
+
},
|
|
970
|
+
"items": {
|
|
971
|
+
"type": "object",
|
|
972
|
+
"propertyNames": {
|
|
973
|
+
"type": "string",
|
|
974
|
+
"minLength": 1
|
|
975
|
+
},
|
|
976
|
+
"additionalProperties": {
|
|
977
|
+
"anyOf": [
|
|
978
|
+
{
|
|
979
|
+
"anyOf": [
|
|
980
|
+
{
|
|
981
|
+
"type": "object",
|
|
982
|
+
"properties": {
|
|
983
|
+
"platforms": {
|
|
984
|
+
"type": "array",
|
|
985
|
+
"prefixItems": [
|
|
986
|
+
{
|
|
987
|
+
"type": "string",
|
|
988
|
+
"enum": ["darwin", "linux"]
|
|
989
|
+
}
|
|
990
|
+
],
|
|
991
|
+
"minItems": 1,
|
|
992
|
+
"items": {
|
|
993
|
+
"type": "string",
|
|
994
|
+
"enum": ["darwin", "linux"]
|
|
995
|
+
},
|
|
996
|
+
"allOf": [
|
|
997
|
+
{
|
|
998
|
+
"description": "`darwin`, `linux`, or both."
|
|
999
|
+
}
|
|
1000
|
+
]
|
|
1001
|
+
},
|
|
1002
|
+
"machines": {
|
|
1003
|
+
"type": "array",
|
|
1004
|
+
"prefixItems": [
|
|
1005
|
+
{
|
|
1006
|
+
"type": "string",
|
|
1007
|
+
"minLength": 1
|
|
1008
|
+
}
|
|
1009
|
+
],
|
|
1010
|
+
"minItems": 1,
|
|
1011
|
+
"items": {
|
|
1012
|
+
"type": "string",
|
|
1013
|
+
"minLength": 1
|
|
1014
|
+
},
|
|
1015
|
+
"allOf": [
|
|
1016
|
+
{
|
|
1017
|
+
"description": "Machine names from `machines`."
|
|
1018
|
+
}
|
|
1019
|
+
]
|
|
1020
|
+
},
|
|
1021
|
+
"range": {
|
|
1022
|
+
"type": "string",
|
|
1023
|
+
"enum": ["*", "latest"],
|
|
1024
|
+
"description": "\"*\" (install when missing, never upgrade) or \"latest\" (brew update, then upgrade on every Ship)"
|
|
1025
|
+
}
|
|
1026
|
+
},
|
|
1027
|
+
"required": ["range"],
|
|
1028
|
+
"additionalProperties": false
|
|
1029
|
+
},
|
|
1030
|
+
{
|
|
1031
|
+
"type": "string",
|
|
1032
|
+
"enum": ["*", "latest"],
|
|
1033
|
+
"description": "\"*\" (install when missing, never upgrade) or \"latest\" (brew update, then upgrade on every Ship)"
|
|
1034
|
+
}
|
|
1035
|
+
]
|
|
1036
|
+
},
|
|
1037
|
+
{
|
|
1038
|
+
"type": "array",
|
|
1039
|
+
"prefixItems": [
|
|
1040
|
+
{
|
|
1041
|
+
"anyOf": [
|
|
1042
|
+
{
|
|
1043
|
+
"type": "object",
|
|
1044
|
+
"properties": {
|
|
1045
|
+
"platforms": {
|
|
1046
|
+
"type": "array",
|
|
1047
|
+
"prefixItems": [
|
|
1048
|
+
{
|
|
1049
|
+
"type": "string",
|
|
1050
|
+
"enum": ["darwin", "linux"]
|
|
1051
|
+
}
|
|
1052
|
+
],
|
|
1053
|
+
"minItems": 1,
|
|
1054
|
+
"items": {
|
|
1055
|
+
"type": "string",
|
|
1056
|
+
"enum": ["darwin", "linux"]
|
|
1057
|
+
},
|
|
1058
|
+
"allOf": [
|
|
1059
|
+
{
|
|
1060
|
+
"description": "`darwin`, `linux`, or both."
|
|
1061
|
+
}
|
|
1062
|
+
]
|
|
1063
|
+
},
|
|
1064
|
+
"machines": {
|
|
1065
|
+
"type": "array",
|
|
1066
|
+
"prefixItems": [
|
|
1067
|
+
{
|
|
1068
|
+
"type": "string",
|
|
1069
|
+
"minLength": 1
|
|
1070
|
+
}
|
|
1071
|
+
],
|
|
1072
|
+
"minItems": 1,
|
|
1073
|
+
"items": {
|
|
1074
|
+
"type": "string",
|
|
1075
|
+
"minLength": 1
|
|
1076
|
+
},
|
|
1077
|
+
"allOf": [
|
|
1078
|
+
{
|
|
1079
|
+
"description": "Machine names from `machines`."
|
|
1080
|
+
}
|
|
1081
|
+
]
|
|
1082
|
+
},
|
|
1083
|
+
"range": {
|
|
1084
|
+
"type": "string",
|
|
1085
|
+
"enum": ["*", "latest"],
|
|
1086
|
+
"description": "\"*\" (install when missing, never upgrade) or \"latest\" (brew update, then upgrade on every Ship)"
|
|
1087
|
+
}
|
|
1088
|
+
},
|
|
1089
|
+
"required": ["range"],
|
|
1090
|
+
"additionalProperties": false
|
|
1091
|
+
},
|
|
1092
|
+
{
|
|
1093
|
+
"type": "string",
|
|
1094
|
+
"enum": ["*", "latest"],
|
|
1095
|
+
"description": "\"*\" (install when missing, never upgrade) or \"latest\" (brew update, then upgrade on every Ship)"
|
|
1096
|
+
}
|
|
1097
|
+
]
|
|
1098
|
+
}
|
|
1099
|
+
],
|
|
1100
|
+
"minItems": 1,
|
|
1101
|
+
"items": {
|
|
1102
|
+
"anyOf": [
|
|
1103
|
+
{
|
|
1104
|
+
"type": "object",
|
|
1105
|
+
"properties": {
|
|
1106
|
+
"platforms": {
|
|
1107
|
+
"type": "array",
|
|
1108
|
+
"prefixItems": [
|
|
1109
|
+
{
|
|
1110
|
+
"type": "string",
|
|
1111
|
+
"enum": ["darwin", "linux"]
|
|
1112
|
+
}
|
|
1113
|
+
],
|
|
1114
|
+
"minItems": 1,
|
|
1115
|
+
"items": {
|
|
1116
|
+
"type": "string",
|
|
1117
|
+
"enum": ["darwin", "linux"]
|
|
1118
|
+
},
|
|
1119
|
+
"allOf": [
|
|
1120
|
+
{
|
|
1121
|
+
"description": "`darwin`, `linux`, or both."
|
|
1122
|
+
}
|
|
1123
|
+
]
|
|
1124
|
+
},
|
|
1125
|
+
"machines": {
|
|
1126
|
+
"type": "array",
|
|
1127
|
+
"prefixItems": [
|
|
1128
|
+
{
|
|
1129
|
+
"type": "string",
|
|
1130
|
+
"minLength": 1
|
|
1131
|
+
}
|
|
1132
|
+
],
|
|
1133
|
+
"minItems": 1,
|
|
1134
|
+
"items": {
|
|
1135
|
+
"type": "string",
|
|
1136
|
+
"minLength": 1
|
|
1137
|
+
},
|
|
1138
|
+
"allOf": [
|
|
1139
|
+
{
|
|
1140
|
+
"description": "Machine names from `machines`."
|
|
1141
|
+
}
|
|
1142
|
+
]
|
|
1143
|
+
},
|
|
1144
|
+
"range": {
|
|
1145
|
+
"type": "string",
|
|
1146
|
+
"enum": ["*", "latest"],
|
|
1147
|
+
"description": "\"*\" (install when missing, never upgrade) or \"latest\" (brew update, then upgrade on every Ship)"
|
|
1148
|
+
}
|
|
1149
|
+
},
|
|
1150
|
+
"required": ["range"],
|
|
1151
|
+
"additionalProperties": false
|
|
1152
|
+
},
|
|
1153
|
+
{
|
|
1154
|
+
"type": "string",
|
|
1155
|
+
"enum": ["*", "latest"],
|
|
1156
|
+
"description": "\"*\" (install when missing, never upgrade) or \"latest\" (brew update, then upgrade on every Ship)"
|
|
1157
|
+
}
|
|
1158
|
+
]
|
|
1159
|
+
}
|
|
1160
|
+
}
|
|
1161
|
+
]
|
|
1162
|
+
},
|
|
1163
|
+
"allOf": [
|
|
1164
|
+
{
|
|
1165
|
+
"description": "Formulae, keyed by name. Each is `\"*\"` or `\"latest\"`, `{ range, platforms?, machines? }` to target it, or a list of Variants, of which a Machine gets the first that targets it. A tapped name (`owner/tap/name`) taps on install."
|
|
1166
|
+
}
|
|
1167
|
+
]
|
|
1168
|
+
}
|
|
1169
|
+
},
|
|
1170
|
+
"additionalProperties": false,
|
|
1171
|
+
"allOf": [
|
|
1172
|
+
{
|
|
1173
|
+
"description": "Homebrew Formulae. Needs Homebrew on the Machine; a Ship never installs it."
|
|
1174
|
+
}
|
|
1175
|
+
]
|
|
114
1176
|
},
|
|
115
|
-
"
|
|
1177
|
+
"cask": {
|
|
116
1178
|
"type": "object",
|
|
117
1179
|
"properties": {
|
|
118
1180
|
"platforms": {
|
|
@@ -127,7 +1189,12 @@
|
|
|
127
1189
|
"items": {
|
|
128
1190
|
"type": "string",
|
|
129
1191
|
"enum": ["darwin", "linux"]
|
|
130
|
-
}
|
|
1192
|
+
},
|
|
1193
|
+
"allOf": [
|
|
1194
|
+
{
|
|
1195
|
+
"description": "`darwin`, `linux`, or both."
|
|
1196
|
+
}
|
|
1197
|
+
]
|
|
131
1198
|
},
|
|
132
1199
|
"machines": {
|
|
133
1200
|
"type": "array",
|
|
@@ -141,29 +1208,231 @@
|
|
|
141
1208
|
"items": {
|
|
142
1209
|
"type": "string",
|
|
143
1210
|
"minLength": 1
|
|
144
|
-
}
|
|
145
|
-
|
|
146
|
-
|
|
147
|
-
|
|
148
|
-
|
|
1211
|
+
},
|
|
1212
|
+
"allOf": [
|
|
1213
|
+
{
|
|
1214
|
+
"description": "Machine names from `machines`."
|
|
1215
|
+
}
|
|
1216
|
+
]
|
|
149
1217
|
},
|
|
150
|
-
"
|
|
151
|
-
"type": "
|
|
152
|
-
"
|
|
1218
|
+
"dependsOn": {
|
|
1219
|
+
"type": "array",
|
|
1220
|
+
"items": {
|
|
1221
|
+
"type": "string",
|
|
1222
|
+
"enum": ["vp", "brew", "cask", "repos"]
|
|
1223
|
+
},
|
|
1224
|
+
"allOf": [
|
|
1225
|
+
{
|
|
1226
|
+
"description": "Providers whose Items must succeed on a Machine before this one changes there."
|
|
1227
|
+
}
|
|
1228
|
+
]
|
|
153
1229
|
},
|
|
154
|
-
"
|
|
1230
|
+
"items": {
|
|
155
1231
|
"type": "object",
|
|
156
1232
|
"propertyNames": {
|
|
157
1233
|
"type": "string",
|
|
158
1234
|
"minLength": 1
|
|
159
1235
|
},
|
|
160
1236
|
"additionalProperties": {
|
|
161
|
-
"
|
|
162
|
-
|
|
163
|
-
|
|
1237
|
+
"anyOf": [
|
|
1238
|
+
{
|
|
1239
|
+
"anyOf": [
|
|
1240
|
+
{
|
|
1241
|
+
"type": "object",
|
|
1242
|
+
"properties": {
|
|
1243
|
+
"platforms": {
|
|
1244
|
+
"type": "array",
|
|
1245
|
+
"prefixItems": [
|
|
1246
|
+
{
|
|
1247
|
+
"type": "string",
|
|
1248
|
+
"enum": ["darwin", "linux"]
|
|
1249
|
+
}
|
|
1250
|
+
],
|
|
1251
|
+
"minItems": 1,
|
|
1252
|
+
"items": {
|
|
1253
|
+
"type": "string",
|
|
1254
|
+
"enum": ["darwin", "linux"]
|
|
1255
|
+
},
|
|
1256
|
+
"allOf": [
|
|
1257
|
+
{
|
|
1258
|
+
"description": "`darwin`, `linux`, or both."
|
|
1259
|
+
}
|
|
1260
|
+
]
|
|
1261
|
+
},
|
|
1262
|
+
"machines": {
|
|
1263
|
+
"type": "array",
|
|
1264
|
+
"prefixItems": [
|
|
1265
|
+
{
|
|
1266
|
+
"type": "string",
|
|
1267
|
+
"minLength": 1
|
|
1268
|
+
}
|
|
1269
|
+
],
|
|
1270
|
+
"minItems": 1,
|
|
1271
|
+
"items": {
|
|
1272
|
+
"type": "string",
|
|
1273
|
+
"minLength": 1
|
|
1274
|
+
},
|
|
1275
|
+
"allOf": [
|
|
1276
|
+
{
|
|
1277
|
+
"description": "Machine names from `machines`."
|
|
1278
|
+
}
|
|
1279
|
+
]
|
|
1280
|
+
},
|
|
1281
|
+
"range": {
|
|
1282
|
+
"type": "string",
|
|
1283
|
+
"enum": ["*", "latest"],
|
|
1284
|
+
"description": "\"*\" (install when missing, never upgrade) or \"latest\" (brew update, then upgrade on every Ship)"
|
|
1285
|
+
}
|
|
1286
|
+
},
|
|
1287
|
+
"required": ["range"],
|
|
1288
|
+
"additionalProperties": false
|
|
1289
|
+
},
|
|
1290
|
+
{
|
|
1291
|
+
"type": "string",
|
|
1292
|
+
"enum": ["*", "latest"],
|
|
1293
|
+
"description": "\"*\" (install when missing, never upgrade) or \"latest\" (brew update, then upgrade on every Ship)"
|
|
1294
|
+
}
|
|
1295
|
+
]
|
|
1296
|
+
},
|
|
1297
|
+
{
|
|
1298
|
+
"type": "array",
|
|
1299
|
+
"prefixItems": [
|
|
1300
|
+
{
|
|
1301
|
+
"anyOf": [
|
|
1302
|
+
{
|
|
1303
|
+
"type": "object",
|
|
1304
|
+
"properties": {
|
|
1305
|
+
"platforms": {
|
|
1306
|
+
"type": "array",
|
|
1307
|
+
"prefixItems": [
|
|
1308
|
+
{
|
|
1309
|
+
"type": "string",
|
|
1310
|
+
"enum": ["darwin", "linux"]
|
|
1311
|
+
}
|
|
1312
|
+
],
|
|
1313
|
+
"minItems": 1,
|
|
1314
|
+
"items": {
|
|
1315
|
+
"type": "string",
|
|
1316
|
+
"enum": ["darwin", "linux"]
|
|
1317
|
+
},
|
|
1318
|
+
"allOf": [
|
|
1319
|
+
{
|
|
1320
|
+
"description": "`darwin`, `linux`, or both."
|
|
1321
|
+
}
|
|
1322
|
+
]
|
|
1323
|
+
},
|
|
1324
|
+
"machines": {
|
|
1325
|
+
"type": "array",
|
|
1326
|
+
"prefixItems": [
|
|
1327
|
+
{
|
|
1328
|
+
"type": "string",
|
|
1329
|
+
"minLength": 1
|
|
1330
|
+
}
|
|
1331
|
+
],
|
|
1332
|
+
"minItems": 1,
|
|
1333
|
+
"items": {
|
|
1334
|
+
"type": "string",
|
|
1335
|
+
"minLength": 1
|
|
1336
|
+
},
|
|
1337
|
+
"allOf": [
|
|
1338
|
+
{
|
|
1339
|
+
"description": "Machine names from `machines`."
|
|
1340
|
+
}
|
|
1341
|
+
]
|
|
1342
|
+
},
|
|
1343
|
+
"range": {
|
|
1344
|
+
"type": "string",
|
|
1345
|
+
"enum": ["*", "latest"],
|
|
1346
|
+
"description": "\"*\" (install when missing, never upgrade) or \"latest\" (brew update, then upgrade on every Ship)"
|
|
1347
|
+
}
|
|
1348
|
+
},
|
|
1349
|
+
"required": ["range"],
|
|
1350
|
+
"additionalProperties": false
|
|
1351
|
+
},
|
|
1352
|
+
{
|
|
1353
|
+
"type": "string",
|
|
1354
|
+
"enum": ["*", "latest"],
|
|
1355
|
+
"description": "\"*\" (install when missing, never upgrade) or \"latest\" (brew update, then upgrade on every Ship)"
|
|
1356
|
+
}
|
|
1357
|
+
]
|
|
1358
|
+
}
|
|
1359
|
+
],
|
|
1360
|
+
"minItems": 1,
|
|
1361
|
+
"items": {
|
|
1362
|
+
"anyOf": [
|
|
1363
|
+
{
|
|
1364
|
+
"type": "object",
|
|
1365
|
+
"properties": {
|
|
1366
|
+
"platforms": {
|
|
1367
|
+
"type": "array",
|
|
1368
|
+
"prefixItems": [
|
|
1369
|
+
{
|
|
1370
|
+
"type": "string",
|
|
1371
|
+
"enum": ["darwin", "linux"]
|
|
1372
|
+
}
|
|
1373
|
+
],
|
|
1374
|
+
"minItems": 1,
|
|
1375
|
+
"items": {
|
|
1376
|
+
"type": "string",
|
|
1377
|
+
"enum": ["darwin", "linux"]
|
|
1378
|
+
},
|
|
1379
|
+
"allOf": [
|
|
1380
|
+
{
|
|
1381
|
+
"description": "`darwin`, `linux`, or both."
|
|
1382
|
+
}
|
|
1383
|
+
]
|
|
1384
|
+
},
|
|
1385
|
+
"machines": {
|
|
1386
|
+
"type": "array",
|
|
1387
|
+
"prefixItems": [
|
|
1388
|
+
{
|
|
1389
|
+
"type": "string",
|
|
1390
|
+
"minLength": 1
|
|
1391
|
+
}
|
|
1392
|
+
],
|
|
1393
|
+
"minItems": 1,
|
|
1394
|
+
"items": {
|
|
1395
|
+
"type": "string",
|
|
1396
|
+
"minLength": 1
|
|
1397
|
+
},
|
|
1398
|
+
"allOf": [
|
|
1399
|
+
{
|
|
1400
|
+
"description": "Machine names from `machines`."
|
|
1401
|
+
}
|
|
1402
|
+
]
|
|
1403
|
+
},
|
|
1404
|
+
"range": {
|
|
1405
|
+
"type": "string",
|
|
1406
|
+
"enum": ["*", "latest"],
|
|
1407
|
+
"description": "\"*\" (install when missing, never upgrade) or \"latest\" (brew update, then upgrade on every Ship)"
|
|
1408
|
+
}
|
|
1409
|
+
},
|
|
1410
|
+
"required": ["range"],
|
|
1411
|
+
"additionalProperties": false
|
|
1412
|
+
},
|
|
1413
|
+
{
|
|
1414
|
+
"type": "string",
|
|
1415
|
+
"enum": ["*", "latest"],
|
|
1416
|
+
"description": "\"*\" (install when missing, never upgrade) or \"latest\" (brew update, then upgrade on every Ship)"
|
|
1417
|
+
}
|
|
1418
|
+
]
|
|
1419
|
+
}
|
|
1420
|
+
}
|
|
1421
|
+
]
|
|
1422
|
+
},
|
|
1423
|
+
"allOf": [
|
|
1424
|
+
{
|
|
1425
|
+
"description": "Casks, keyed by name. Each is `\"*\"` or `\"latest\"`, `{ range, platforms?, machines? }` to target it, or a list of Variants, of which a Machine gets the first that targets it. A tapped name (`owner/tap/name`) taps on install."
|
|
1426
|
+
}
|
|
1427
|
+
]
|
|
164
1428
|
}
|
|
165
1429
|
},
|
|
166
|
-
"additionalProperties": false
|
|
1430
|
+
"additionalProperties": false,
|
|
1431
|
+
"allOf": [
|
|
1432
|
+
{
|
|
1433
|
+
"description": "Homebrew Casks, macOS only. Needs Homebrew on the Machine."
|
|
1434
|
+
}
|
|
1435
|
+
]
|
|
167
1436
|
}
|
|
168
1437
|
},
|
|
169
1438
|
"required": ["machines"],
|