From 4eca6707e217fbb0f93cc9d1bec114c4c8498401 Mon Sep 17 00:00:00 2001 From: Josh Cannon <3956745+thejcannon@users.noreply.github.com> Date: Sat, 7 Dec 2024 21:33:18 -0600 Subject: [PATCH 1/3] Update schema.json --- schema.json | 122 ++++++++++++++++++++++++++++++---------------------- 1 file changed, 71 insertions(+), 51 deletions(-) diff --git a/schema.json b/schema.json index a5e5310..a171638 100644 --- a/schema.json +++ b/schema.json @@ -801,39 +801,66 @@ }, { "type": "object", - "description": "Configuration for multi-dimension Build Matrix", + "description": "Configuration for single-dimension Build Matrix", "properties": { "setup": { - "oneOf": [ - { - "type": "array", - "description": "List of elements for single-dimension Build Matrix", - "items": { "$ref": "#/definitions/matrixElement" }, - "examples": [ - ["linux", "freebsd"] - ] - }, - { - "type": "object", - "description": "Mapping of Build Matrix dimension names to their lists of elements", - "propertyNames": { + "type": "array", + "description": "List of elements for single-dimension Build Matrix", + "items": { "$ref": "#/definitions/matrixElement" }, + "examples": [ + ["linux", "freebsd"] + ] + }, + "adjustments": { + "type": "array", + "description": "List of Build Matrix adjustments", + "items": { + "type": "object", + "description": "An adjustment to a Build Matrix", + "properties": { + "with": { "type": "string", - "description": "Build Matrix dimension name", - "pattern": "^[a-zA-Z0-9_]+$" + "description": "An existing or new element for single-dimension Build Matrix", }, - "additionalProperties": { - "type": "array", - "description": "List of elements for this Build Matrix dimension", - "items": { "$ref": "#/definitions/matrixElement" } + "skip": { + "$ref": "#/definitions/skip" }, - "examples": [ - { - "os": ["linux", "freebsd"], - "arch": ["arm64", "riscv"] - } - ] - } - ] + "soft_fail": { + "$ref": "#/definitions/softFail" + } + }, + "required": ["with"], + "additionalProperties": false + } + } + }, + "required": ["setup"], + "additionalProperties": false + }, + { + "type": "object", + "description": "Configuration for multi-dimension Build Matrix", + "properties": { + "setup": { + "type": "object", + "description": "Mapping of Build Matrix dimension names to their lists of elements", + "propertyNames": { + "type": "string", + "description": "Build Matrix dimension name", + "pattern": "^[a-zA-Z0-9_]+$" + }, + "additionalProperties": { + "type": "array", + "description": "List of elements for this Build Matrix dimension", + "items": { "$ref": "#/definitions/matrixElement" } + }, + "examples": [ + { + "os": ["linux", "freebsd"], + "arch": ["arm64", "riscv"] + } + ] + } }, "adjustments": { "type": "array", @@ -843,27 +870,18 @@ "description": "An adjustment to a Build Matrix", "properties": { "with": { - "oneOf": [ - { - "type": "array", - "description": "List of existing or new elements for single-dimension Build Matrix", - "items": { "$ref": "#/definitions/matrixElement" } - }, - { - "type": "object", - "description": "Specification of a new or existing Build Matrix combination", - "propertyNames": { - "type": "string", - "description": "Build Matrix dimension name" - }, - "additionalProperties": { - "type": "string", - "description": "Build Matrix dimension element" - }, - "examples": [ - { "os": "linux", "arch": "arm64" } - ] - } + "type": "object", + "description": "Specification of a new or existing Build Matrix combination", + "propertyNames": { + "type": "string", + "description": "Build Matrix dimension name" + }, + "additionalProperties": { + "type": "string", + "description": "Build Matrix dimension element" + }, + "examples": [ + { "os": "linux", "arch": "arm64" } ] }, "skip": { @@ -873,11 +891,13 @@ "$ref": "#/definitions/softFail" } }, - "required": ["with"] + "required": ["with"], + "additionalProperties": false } } }, - "required": ["setup"] + "required": ["setup"], + "additionalProperties": false } ] }, From 10376d03ae031721008a8eb8ba1938252f7a5c96 Mon Sep 17 00:00:00 2001 From: Josh Cannon <3956745+thejcannon@users.noreply.github.com> Date: Sat, 7 Dec 2024 21:50:44 -0600 Subject: [PATCH 2/3] Update schema.json --- schema.json | 37 ++++++++++++++++++------------------- 1 file changed, 18 insertions(+), 19 deletions(-) diff --git a/schema.json b/schema.json index a171638..fbc4543 100644 --- a/schema.json +++ b/schema.json @@ -842,25 +842,24 @@ "description": "Configuration for multi-dimension Build Matrix", "properties": { "setup": { - "type": "object", - "description": "Mapping of Build Matrix dimension names to their lists of elements", - "propertyNames": { - "type": "string", - "description": "Build Matrix dimension name", - "pattern": "^[a-zA-Z0-9_]+$" - }, - "additionalProperties": { - "type": "array", - "description": "List of elements for this Build Matrix dimension", - "items": { "$ref": "#/definitions/matrixElement" } - }, - "examples": [ - { - "os": ["linux", "freebsd"], - "arch": ["arm64", "riscv"] - } - ] - } + "type": "object", + "description": "Mapping of Build Matrix dimension names to their lists of elements", + "propertyNames": { + "type": "string", + "description": "Build Matrix dimension name", + "pattern": "^[a-zA-Z0-9_]+$" + }, + "additionalProperties": { + "type": "array", + "description": "List of elements for this Build Matrix dimension", + "items": { "$ref": "#/definitions/matrixElement" } + }, + "examples": [ + { + "os": ["linux", "freebsd"], + "arch": ["arm64", "riscv"] + } + ] }, "adjustments": { "type": "array", From 01064b6e764b912962597a10b1d98978ca989fb8 Mon Sep 17 00:00:00 2001 From: Josh Cannon <3956745+thejcannon@users.noreply.github.com> Date: Sat, 7 Dec 2024 22:03:38 -0600 Subject: [PATCH 3/3] Update schema.json --- schema.json | 10 +++++----- 1 file changed, 5 insertions(+), 5 deletions(-) diff --git a/schema.json b/schema.json index fbc4543..cad9d69 100644 --- a/schema.json +++ b/schema.json @@ -813,10 +813,10 @@ }, "adjustments": { "type": "array", - "description": "List of Build Matrix adjustments", + "description": "List of single-dimension Build Matrix adjustments", "items": { "type": "object", - "description": "An adjustment to a Build Matrix", + "description": "An adjustment to a single-dimension Build Matrix", "properties": { "with": { "type": "string", @@ -863,10 +863,10 @@ }, "adjustments": { "type": "array", - "description": "List of Build Matrix adjustments", + "description": "List of multi-dimension Build Matrix adjustments", "items": { "type": "object", - "description": "An adjustment to a Build Matrix", + "description": "An adjustment to a multi-dimension Build Matrix", "properties": { "with": { "type": "object", @@ -876,7 +876,7 @@ "description": "Build Matrix dimension name" }, "additionalProperties": { - "type": "string", + "$ref": "#/definitions/matrixElement", "description": "Build Matrix dimension element" }, "examples": [