Skip to content

Commit 0f794a4

Browse files
authored
Update re-usable workflows to use nightly_next (#3122)
### Motivation: Updating the CI parameters for changing nightly job targets with each new Swift version (6.0, 6.1, ...) is onerous. Whilst this gives us some value in the non-nightly pipelines by forcing adopters to apply thought to what is applied to each supported version, the nightlies arguably deliver less value in this regard as they tend to be non-required. ### Modifications: Change parameters to refer to nightly_next rather than nightly_6_1, implement a shim so that the old parameter names still work. ### Result: We will be able to modify top-level workflows to use nightly_next terminology. Test run with an additional commit opting in to use these changes at the top level https://github.com/apple/swift-nio/actions/runs/13524774485/job/37792437713?pr=3122
1 parent ad3cbec commit 0f794a4

File tree

3 files changed

+36
-12
lines changed

3 files changed

+36
-12
lines changed

.github/workflows/benchmarks.yml

Lines changed: 6 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -28,7 +28,11 @@ on:
2828
default: false
2929
linux_nightly_6_1_enabled:
3030
type: boolean
31-
description: "Boolean to enable the Linux nightly 6.1 Swift version matrix job. Defaults to true."
31+
description: "⚠️ Deprecated, use linux_nightly_next_enabled."
32+
default: true
33+
linux_nightly_next_enabled:
34+
type: boolean
35+
description: "Boolean to enable the Linux nightly matrix job for the next Swift version. Defaults to true."
3236
default: true
3337
linux_nightly_main_enabled:
3438
type: boolean
@@ -67,7 +71,7 @@ jobs:
6771
MATRIX_LINUX_5_9_ENABLED: ${{ inputs.linux_5_9_enabled }}
6872
MATRIX_LINUX_5_10_ENABLED: ${{ inputs.linux_5_10_enabled }}
6973
MATRIX_LINUX_6_0_ENABLED: ${{ inputs.linux_6_0_enabled }}
70-
MATRIX_LINUX_NIGHTLY_6_1_ENABLED: ${{ inputs.linux_nightly_6_1_enabled }}
74+
MATRIX_LINUX_NIGHTLY_NEXT_ENABLED: ${{ inputs.linux_nightly_6_1_enabled && inputs.linux_nightly_next_enabled }}
7175
MATRIX_LINUX_NIGHTLY_MAIN_ENABLED: ${{ inputs.linux_nightly_main_enabled }}
7276

7377
benchmarks:

.github/workflows/cxx_interop.yml

Lines changed: 6 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -21,7 +21,11 @@ on:
2121
default: false
2222
linux_nightly_6_1_enabled:
2323
type: boolean
24-
description: "Boolean to enable the Linux nightly 6.0 Swift version matrix job. Defaults to true."
24+
description: "⚠️ Deprecated, use linux_nightly_next_enabled."
25+
default: true
26+
linux_nightly_next_enabled:
27+
type: boolean
28+
description: "Boolean to enable the Linux matrix job using the nightly build for the next Swift version. Defaults to true."
2529
default: true
2630
linux_nightly_main_enabled:
2731
type: boolean
@@ -60,7 +64,7 @@ jobs:
6064
MATRIX_LINUX_5_9_ENABLED: ${{ inputs.linux_5_9_enabled }}
6165
MATRIX_LINUX_5_10_ENABLED: ${{ inputs.linux_5_10_enabled }}
6266
MATRIX_LINUX_6_0_ENABLED: ${{ inputs.linux_6_0_enabled }}
63-
MATRIX_LINUX_NIGHTLY_6_1_ENABLED: ${{ inputs.linux_nightly_6_1_enabled }}
67+
MATRIX_LINUX_NIGHTLY_NEXT_ENABLED: ${{ inputs.linux_nightly_6_1_enabled && inputs.linux_nightly_next_enabled }}
6468
MATRIX_LINUX_NIGHTLY_MAIN_ENABLED: ${{ inputs.linux_nightly_main_enabled }}
6569

6670
cxx-interop:

.github/workflows/unit_tests.yml

Lines changed: 24 additions & 8 deletions
Original file line numberDiff line numberDiff line change
@@ -37,11 +37,19 @@ on:
3737
default: ""
3838
linux_nightly_6_1_enabled:
3939
type: boolean
40-
description: "Boolean to enable the Linux nightly 6.1 Swift version matrix job. Defaults to true."
40+
description: "⚠️ Deprecated, use linux_nightly_next_enabled."
4141
default: true
4242
linux_nightly_6_1_arguments_override:
4343
type: string
44-
description: "The arguments passed to swift test in the Linux nightly 6.1 Swift version matrix job."
44+
description: "⚠️ Deprecated, use linux_nightly_next_arguments_override."
45+
default: ""
46+
linux_nightly_next_enabled:
47+
type: boolean
48+
description: "Boolean to enable the Linux matrix job using the nightly build for the next Swift version. Defaults to true."
49+
default: true
50+
linux_nightly_next_arguments_override:
51+
type: string
52+
description: "The arguments passed to swift test in the Linux matrix job using the nightly build for the next Swift version."
4553
default: ""
4654
linux_nightly_main_enabled:
4755
type: boolean
@@ -70,11 +78,19 @@ on:
7078
default: ""
7179
windows_nightly_6_1_enabled:
7280
type: boolean
73-
description: "Boolean to enable the Windows nightly 6.1 Swift version matrix job. Defaults to false."
81+
description: "⚠️ Deprecated, use windows_nightly_next_enabled."
7482
default: false
7583
windows_nightly_6_1_arguments_override:
7684
type: string
77-
description: "The arguments passed to swift test in the Windows nightly 6.1 Swift version matrix job."
85+
description: "⚠️ Deprecated, use windows_nightly_next_arguments_override."
86+
default: ""
87+
windows_nightly_next_enabled:
88+
type: boolean
89+
description: "Boolean to enable the Windows matrix job using the nightly build for the next Swift version. Defaults to true."
90+
default: true
91+
windows_nightly_next_arguments_override:
92+
type: string
93+
description: "The arguments passed to swift test in the Windows matrix job using the nightly build for the next Swift version."
7894
default: ""
7995
windows_nightly_main_enabled:
8096
type: boolean
@@ -106,15 +122,15 @@ jobs:
106122
MATRIX_LINUX_5_10_COMMAND_ARGUMENTS: ${{ inputs.linux_5_10_arguments_override }}
107123
MATRIX_LINUX_6_0_ENABLED: ${{ inputs.linux_6_0_enabled }}
108124
MATRIX_LINUX_6_0_COMMAND_ARGUMENTS: ${{ inputs.linux_6_0_arguments_override }}
109-
MATRIX_LINUX_NIGHTLY_6_1_ENABLED: ${{ inputs.linux_nightly_6_1_enabled }}
110-
MATRIX_LINUX_NIGHTLY_6_1_COMMAND_ARGUMENTS: ${{ inputs.linux_nightly_6_1_arguments_override }}
125+
MATRIX_LINUX_NIGHTLY_NEXT_ENABLED: ${{ inputs.linux_nightly_6_1_enabled && inputs.linux_nightly_next_enabled }}
126+
MATRIX_LINUX_NIGHTLY_NEXT_COMMAND_ARGUMENTS: ${{ inputs.linux_nightly_6_1_arguments_override }} ${{ inputs.linux_nightly_next_arguments_override }}
111127
MATRIX_LINUX_NIGHTLY_MAIN_ENABLED: ${{ inputs.linux_nightly_main_enabled }}
112128
MATRIX_LINUX_NIGHTLY_MAIN_COMMAND_ARGUMENTS: ${{ inputs.linux_nightly_main_arguments_override }}
113129
MATRIX_WINDOWS_COMMAND: "swift test"
114130
MATRIX_WINDOWS_6_0_ENABLED: ${{ inputs.windows_6_0_enabled }}
115131
MATRIX_WINDOWS_6_0_COMMAND_ARGUMENTS: ${{ inputs.windows_6_0_arguments_override }}
116-
MATRIX_WINDOWS_NIGHTLY_6_1_ENABLED: ${{ inputs.windows_nightly_6_1_enabled }}
117-
MATRIX_WINDOWS_NIGHTLY_6_1_COMMAND_ARGUMENTS: ${{ inputs.windows_nightly_6_1_arguments_override }}
132+
MATRIX_WINDOWS_NIGHTLY_NEXT_ENABLED: ${{ inputs.windows_nightly_6_1_enabled && inputs.windows_nightly_next_enabled }}
133+
MATRIX_WINDOWS_NIGHTLY_NEXT_COMMAND_ARGUMENTS: ${{ inputs.windows_nightly_6_1_arguments_override }} ${{ inputs.windows_nightly_next_arguments_override }}
118134
MATRIX_WINDOWS_NIGHTLY_MAIN_ENABLED: ${{ inputs.windows_nightly_main_enabled }}
119135
MATRIX_WINDOWS_NIGHTLY_MAIN_COMMAND_ARGUMENTS: ${{ inputs.windows_nightly_main_arguments_override }}
120136

0 commit comments

Comments
 (0)