From f9f3e19ba386eb566ff86c61631a5d87d0f8f75b Mon Sep 17 00:00:00 2001 From: Josh Soref <2119212+jsoref@users.noreply.github.com> Date: Tue, 22 Sep 2026 16:49:27 -0400 Subject: [PATCH 1/2] Note that `matrix` variable names are case insensitive --- content/actions/reference/workflows-and-actions/contexts.md | 2 ++ .../actions/reference/workflows-and-actions/workflow-syntax.md | 2 ++ .../actions/workflows/matrix-keys-are-case-insensitive.md | 2 ++ 3 files changed, 6 insertions(+) create mode 100644 data/reusables/actions/workflows/matrix-keys-are-case-insensitive.md diff --git a/content/actions/reference/workflows-and-actions/contexts.md b/content/actions/reference/workflows-and-actions/contexts.md index 73f4e13158f9..be3a45d835ae 100644 --- a/content/actions/reference/workflows-and-actions/contexts.md +++ b/content/actions/reference/workflows-and-actions/contexts.md @@ -730,6 +730,8 @@ There are no standard properties in the `matrix` context, only those which are d | `matrix` | `object` | This context is only available for jobs in a matrix, and changes for each job in a workflow run. You can access this context from any job or step in a workflow. This object contains the properties listed below. | | `matrix.` | `string` | The value of a matrix property. | +{% data reusables.actions.workflows.matrix-keys-are-case-insensitive %} + ### Example contents of the `matrix` context The following example contents of the `matrix` context is from a job in a matrix that has the `os` and `node` matrix properties defined in the workflow. The job is executing the matrix combination of an `ubuntu-latest` OS and Node.js version `16`. diff --git a/content/actions/reference/workflows-and-actions/workflow-syntax.md b/content/actions/reference/workflows-and-actions/workflow-syntax.md index bef2d287efba..f21517189d49 100644 --- a/content/actions/reference/workflows-and-actions/workflow-syntax.md +++ b/content/actions/reference/workflows-and-actions/workflow-syntax.md @@ -1242,6 +1242,8 @@ A matrix will generate a maximum of 256 jobs per workflow run. This limit applie The variables that you define become properties in the `matrix` context, and you can reference the property in other areas of your workflow file. In this example, you can use `matrix.version` and `matrix.os` to access the current value of `version` and `os` that the job is using. For more information, see [AUTOTITLE](/actions/reference/workflows-and-actions/contexts). +{% data reusables.actions.workflows.matrix-keys-are-case-insensitive %} + By default, {% data variables.product.github %} will maximize the number of jobs run in parallel depending on runner availability. The order of the variables in the matrix determines the order in which the jobs are created. The first variable you define will be the first job that is created in your workflow run. ### Using a single-dimension matrix diff --git a/data/reusables/actions/workflows/matrix-keys-are-case-insensitive.md b/data/reusables/actions/workflows/matrix-keys-are-case-insensitive.md new file mode 100644 index 000000000000..f7de222adbed --- /dev/null +++ b/data/reusables/actions/workflows/matrix-keys-are-case-insensitive.md @@ -0,0 +1,2 @@ +> [!NOTE] +> * The variable names are case insensitive. For example, `OS` and `os` will be treated as the same variable. From d4ae731459433442c3575e99a0fa94732908fb07 Mon Sep 17 00:00:00 2001 From: Ben Ahmady <32935794+subatoi@users.noreply.github.com> Date: Wed, 23 Sep 2026 07:59:27 +0100 Subject: [PATCH 2/2] Update data/reusables/actions/workflows/matrix-keys-are-case-insensitive.md --- .../actions/workflows/matrix-keys-are-case-insensitive.md | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/data/reusables/actions/workflows/matrix-keys-are-case-insensitive.md b/data/reusables/actions/workflows/matrix-keys-are-case-insensitive.md index f7de222adbed..c8afe51ec74f 100644 --- a/data/reusables/actions/workflows/matrix-keys-are-case-insensitive.md +++ b/data/reusables/actions/workflows/matrix-keys-are-case-insensitive.md @@ -1,2 +1,2 @@ > [!NOTE] -> * The variable names are case insensitive. For example, `OS` and `os` will be treated as the same variable. +> The variable names are case insensitive. For example, `OS` and `os` will be treated as the same variable.