|
406 | 406 | ] |
407 | 407 | } |
408 | 408 | }, |
| 409 | + "matrixElement": { |
| 410 | + "oneOf": [ |
| 411 | + {"type": "string"}, |
| 412 | + {"type": "integer"}, |
| 413 | + {"type": "boolean"} |
| 414 | + ] |
| 415 | + }, |
409 | 416 | "prompt": { |
410 | 417 | "type": "string", |
411 | 418 | "description": "The instructional message displayed in the dialog box when the unblock step is activated", |
|
659 | 666 | "label": { |
660 | 667 | "$ref": "#/definitions/commonOptions/label" |
661 | 668 | }, |
| 669 | + "matrix": { |
| 670 | + "oneOf": [ |
| 671 | + { |
| 672 | + "type": "array", |
| 673 | + "description": "List of elements for simple single-dimension Build Matrix", |
| 674 | + "items": { "$ref": "#/definitions/commonOptions/matrixElement" }, |
| 675 | + "examples": [ |
| 676 | + ["linux", "freebsd"] |
| 677 | + ] |
| 678 | + }, |
| 679 | + { |
| 680 | + "type": "object", |
| 681 | + "description": "Configuration for multi-dimension Build Matrix", |
| 682 | + "properties": { |
| 683 | + "setup": { |
| 684 | + "oneOf": [ |
| 685 | + { |
| 686 | + "type": "array", |
| 687 | + "description": "List of elements for single-dimension Build Matrix", |
| 688 | + "items": { "$ref": "#/definitions/commonOptions/matrixElement" }, |
| 689 | + "examples": [ |
| 690 | + ["linux", "freebsd"] |
| 691 | + ] |
| 692 | + }, |
| 693 | + { |
| 694 | + "type": "object", |
| 695 | + "description": "Mapping of Build Matrix dimension names to their lists of elements", |
| 696 | + "propertyNames": { |
| 697 | + "type": "string", |
| 698 | + "description": "Build Matrix dimension name", |
| 699 | + "pattern": "^[a-zA-Z0-9_]+$" |
| 700 | + }, |
| 701 | + "additionalProperties": { |
| 702 | + "type": "array", |
| 703 | + "description": "List of elements for this Build Matrix dimension", |
| 704 | + "items": { "$ref": "#/definitions/commonOptions/matrixElement" } |
| 705 | + }, |
| 706 | + "examples": [ |
| 707 | + { |
| 708 | + "os": ["linux", "freebsd"], |
| 709 | + "arch": ["arm64", "riscv"] |
| 710 | + } |
| 711 | + ] |
| 712 | + } |
| 713 | + ] |
| 714 | + }, |
| 715 | + "adjustments": { |
| 716 | + "type": "array", |
| 717 | + "description": "List of Build Matrix adjustments", |
| 718 | + "items": { |
| 719 | + "type": "object", |
| 720 | + "description": "An adjustment to a Build Matrix", |
| 721 | + "properties": { |
| 722 | + "with": { |
| 723 | + "oneOf": [ |
| 724 | + { |
| 725 | + "type": "array", |
| 726 | + "description": "List of existing or new elements for single-dimension Build Matrix", |
| 727 | + "items": { "$ref": "#/definitions/commonOptions/matrixElement" } |
| 728 | + }, |
| 729 | + { |
| 730 | + "type": "object", |
| 731 | + "description": "Specification of a new or existing Build Matrix combination", |
| 732 | + "propertyNames": { |
| 733 | + "type": "string", |
| 734 | + "description": "Build Matrix dimension name" |
| 735 | + }, |
| 736 | + "additionalProperties": { |
| 737 | + "type": "string", |
| 738 | + "description": "Build Matrix dimension element" |
| 739 | + }, |
| 740 | + "examples": [ |
| 741 | + { "os": "linux", "arch": "arm64" } |
| 742 | + ] |
| 743 | + } |
| 744 | + ] |
| 745 | + }, |
| 746 | + "skip": { |
| 747 | + "$ref": "#/definitions/commonOptions/skip" |
| 748 | + }, |
| 749 | + "soft_fail": { |
| 750 | + "$ref": "#/definitions/commonOptions/softFail" |
| 751 | + } |
| 752 | + }, |
| 753 | + "required": ["with"] |
| 754 | + } |
| 755 | + } |
| 756 | + }, |
| 757 | + "required": ["setup"] |
| 758 | + } |
| 759 | + ] |
| 760 | + }, |
662 | 761 | "name": { |
663 | 762 | "$ref": "#/definitions/commonOptions/label" |
664 | 763 | }, |
|
0 commit comments