github.com/abemedia/appcast@v0.4.0/pkg/pipe/testdata/jsonschema.json (about) 1 { 2 "$schema": "https://json-schema.org/draft/2020-12/schema", 3 "properties": { 4 "title": { 5 "type": "string" 6 }, 7 "description": { 8 "type": "string" 9 }, 10 "version": { 11 "type": "string" 12 }, 13 "prerelease": { 14 "type": "boolean" 15 }, 16 "upload-packages": { 17 "type": "boolean" 18 }, 19 "source": { 20 "oneOf": [ 21 { 22 "properties": { 23 "type": { 24 "type": "string", 25 "const": "azureblob" 26 }, 27 "bucket": { 28 "type": "string" 29 }, 30 "folder": { 31 "type": "string" 32 }, 33 "url": { 34 "type": "string" 35 } 36 }, 37 "additionalProperties": false, 38 "type": "object", 39 "required": [ 40 "bucket" 41 ] 42 }, 43 { 44 "properties": { 45 "type": { 46 "type": "string", 47 "const": "gcs" 48 }, 49 "bucket": { 50 "type": "string" 51 }, 52 "folder": { 53 "type": "string" 54 }, 55 "url": { 56 "type": "string" 57 } 58 }, 59 "additionalProperties": false, 60 "type": "object", 61 "required": [ 62 "bucket" 63 ] 64 }, 65 { 66 "properties": { 67 "type": { 68 "type": "string", 69 "const": "s3" 70 }, 71 "bucket": { 72 "type": "string" 73 }, 74 "folder": { 75 "type": "string" 76 }, 77 "endpoint": { 78 "type": "string" 79 }, 80 "region": { 81 "type": "string" 82 }, 83 "disable-ssl": { 84 "type": "boolean" 85 }, 86 "url": { 87 "type": "string" 88 } 89 }, 90 "additionalProperties": false, 91 "type": "object", 92 "required": [ 93 "bucket" 94 ] 95 }, 96 { 97 "properties": { 98 "type": { 99 "type": "string", 100 "const": "file" 101 }, 102 "path": { 103 "type": "string" 104 }, 105 "url": { 106 "type": "string" 107 } 108 }, 109 "additionalProperties": false, 110 "type": "object", 111 "required": [ 112 "path" 113 ] 114 }, 115 { 116 "properties": { 117 "type": { 118 "type": "string", 119 "const": "github" 120 }, 121 "owner": { 122 "type": "string" 123 }, 124 "repo": { 125 "type": "string" 126 } 127 }, 128 "additionalProperties": false, 129 "type": "object", 130 "required": [ 131 "owner", 132 "repo" 133 ] 134 }, 135 { 136 "properties": { 137 "type": { 138 "type": "string", 139 "const": "gitlab" 140 }, 141 "owner": { 142 "type": "string" 143 }, 144 "repo": { 145 "type": "string" 146 }, 147 "url": { 148 "type": "string" 149 } 150 }, 151 "additionalProperties": false, 152 "type": "object", 153 "required": [ 154 "owner", 155 "repo" 156 ] 157 }, 158 { 159 "properties": { 160 "type": { 161 "type": "string", 162 "const": "local" 163 }, 164 "path": { 165 "type": "string" 166 }, 167 "version": { 168 "type": "string" 169 } 170 }, 171 "additionalProperties": false, 172 "type": "object", 173 "required": [ 174 "path", 175 "version" 176 ] 177 } 178 ] 179 }, 180 "target": { 181 "oneOf": [ 182 { 183 "properties": { 184 "type": { 185 "type": "string", 186 "const": "azureblob" 187 }, 188 "bucket": { 189 "type": "string" 190 }, 191 "folder": { 192 "type": "string" 193 }, 194 "url": { 195 "type": "string" 196 } 197 }, 198 "additionalProperties": false, 199 "type": "object", 200 "required": [ 201 "bucket" 202 ] 203 }, 204 { 205 "properties": { 206 "type": { 207 "type": "string", 208 "const": "gcs" 209 }, 210 "bucket": { 211 "type": "string" 212 }, 213 "folder": { 214 "type": "string" 215 }, 216 "url": { 217 "type": "string" 218 } 219 }, 220 "additionalProperties": false, 221 "type": "object", 222 "required": [ 223 "bucket" 224 ] 225 }, 226 { 227 "properties": { 228 "type": { 229 "type": "string", 230 "const": "s3" 231 }, 232 "bucket": { 233 "type": "string" 234 }, 235 "folder": { 236 "type": "string" 237 }, 238 "endpoint": { 239 "type": "string" 240 }, 241 "region": { 242 "type": "string" 243 }, 244 "disable-ssl": { 245 "type": "boolean" 246 }, 247 "url": { 248 "type": "string" 249 } 250 }, 251 "additionalProperties": false, 252 "type": "object", 253 "required": [ 254 "bucket" 255 ] 256 }, 257 { 258 "properties": { 259 "type": { 260 "type": "string", 261 "const": "file" 262 }, 263 "path": { 264 "type": "string" 265 }, 266 "url": { 267 "type": "string" 268 } 269 }, 270 "additionalProperties": false, 271 "type": "object", 272 "required": [ 273 "path" 274 ] 275 }, 276 { 277 "properties": { 278 "type": { 279 "type": "string", 280 "const": "github" 281 }, 282 "owner": { 283 "type": "string" 284 }, 285 "repo": { 286 "type": "string" 287 }, 288 "branch": { 289 "type": "string" 290 }, 291 "folder": { 292 "type": "string" 293 } 294 }, 295 "additionalProperties": false, 296 "type": "object", 297 "required": [ 298 "owner", 299 "repo" 300 ] 301 } 302 ] 303 }, 304 "apk": { 305 "properties": { 306 "disabled": { 307 "type": "boolean" 308 }, 309 "folder": { 310 "type": "string" 311 }, 312 "key-name": { 313 "type": "string" 314 } 315 }, 316 "additionalProperties": false, 317 "type": "object" 318 }, 319 "apt": { 320 "properties": { 321 "disabled": { 322 "type": "boolean" 323 }, 324 "folder": { 325 "type": "string" 326 }, 327 "compress": { 328 "items": { 329 "type": "string", 330 "enum": [ 331 "none", 332 "gzip", 333 "bzip2", 334 "xz", 335 "lzma", 336 "lz4", 337 "zstd" 338 ] 339 }, 340 "type": "array" 341 } 342 }, 343 "additionalProperties": false, 344 "type": "object" 345 }, 346 "yum": { 347 "properties": { 348 "disabled": { 349 "type": "boolean" 350 }, 351 "folder": { 352 "type": "string" 353 } 354 }, 355 "additionalProperties": false, 356 "type": "object" 357 }, 358 "sparkle": { 359 "properties": { 360 "disabled": { 361 "type": "boolean" 362 }, 363 "folder": { 364 "type": "string" 365 }, 366 "title": { 367 "type": "string" 368 }, 369 "description": { 370 "type": "string" 371 }, 372 "filename": { 373 "type": "string" 374 }, 375 "detect-os": { 376 "additionalProperties": { 377 "type": "string" 378 }, 379 "type": "object" 380 }, 381 "params": { 382 "items": { 383 "properties": { 384 "os": { 385 "type": "string", 386 "enum": [ 387 "macos", 388 "windows", 389 "windows-x86", 390 "windows-x64" 391 ] 392 }, 393 "version": { 394 "type": "string" 395 }, 396 "installer-arguments": { 397 "type": "string" 398 }, 399 "minimum-system-version": { 400 "type": "string" 401 }, 402 "minimum-autoupdate-version": { 403 "type": "string" 404 }, 405 "ignore-skipped-upgrades-below-version": { 406 "type": "string" 407 }, 408 "critical-update": { 409 "type": "boolean" 410 }, 411 "critical-update-below-version": { 412 "type": "string" 413 } 414 }, 415 "additionalProperties": false, 416 "type": "object" 417 }, 418 "type": "array" 419 } 420 }, 421 "additionalProperties": false, 422 "type": "object" 423 }, 424 "appinstaller": { 425 "properties": { 426 "disabled": { 427 "type": "boolean" 428 }, 429 "folder": { 430 "type": "string" 431 }, 432 "on-launch": { 433 "properties": { 434 "hours-between-update-checks": { 435 "type": "integer", 436 "maximum": 255, 437 "minimum": 0 438 }, 439 "show-prompt": { 440 "type": "boolean" 441 }, 442 "update-blocks-activation": { 443 "type": "boolean" 444 } 445 }, 446 "additionalProperties": false, 447 "type": "object" 448 }, 449 "automatic-background-task": { 450 "type": "boolean" 451 }, 452 "force-update-from-any-version": { 453 "type": "boolean" 454 } 455 }, 456 "additionalProperties": false, 457 "type": "object" 458 } 459 }, 460 "additionalProperties": false, 461 "type": "object", 462 "required": [ 463 "source", 464 "target" 465 ] 466 }