@@ -16,6 +16,10 @@ concurrency:
16
16
group : app-release
17
17
18
18
on :
19
+ schedule :
20
+ # TestFlight builds expire after 90 days. To ensure we have regular builds,
21
+ # we run this workflow every 90 days.
22
+ - cron : " 0 0 1 */3 *"
19
23
workflow_dispatch :
20
24
inputs :
21
25
ios-changelog :
62
66
deploy-ios :
63
67
# We skip the deployment if no changelog is provided because we assume that
64
68
# nothing has changed in the iOS app and therefore no new version is needed.
65
- if : github.event.inputs.ios-changelog != ''
69
+ #
70
+ # For scheduled builds, a changelog is not required.
71
+ if : github.event.inputs.ios-changelog != '' || github.event_name == 'schedule'
66
72
runs-on : macos-15
67
73
timeout-minutes : 120
68
74
steps :
@@ -101,6 +107,9 @@ jobs:
101
107
# When passing the changelog from GitHub Actions to the CLI, the line
102
108
# breaks are escaped. We need to replace them with actual line breaks.
103
109
CHANGELOG="${{ github.event.inputs.ios-changelog }}"
110
+ if [ -z "$CHANGELOG" ]; then
111
+ CHANGELOG="Scheduled build"
112
+ fi
104
113
CHANGELOG_WITH_NEW_LINES=$(echo -e "$CHANGELOG" | sed 's/\\n/\\n/g')
105
114
106
115
sz deploy app ios \
@@ -223,7 +232,9 @@ jobs:
223
232
deploy-macos :
224
233
# We skip the deployment if no changelog is provided because we assume that
225
234
# nothing has changed in the macOS app and therefore no new version is needed.
226
- if : github.event.inputs.macos-changelog != ''
235
+ #
236
+ # For scheduled builds, a changelog is not required.
237
+ if : github.event.inputs.macos-changelog != '' || github.event_name == 'schedule'
227
238
runs-on : macos-15
228
239
timeout-minutes : 60
229
240
steps :
@@ -268,6 +279,9 @@ jobs:
268
279
# When passing the changelog from GitHub Actions to the CLI, the line
269
280
# breaks are escaped. We need to replace them with actual line breaks.
270
281
CHANGELOG="${{ github.event.inputs.macos-changelog }}"
282
+ if [ -z "$CHANGELOG" ]; then
283
+ CHANGELOG="Scheduled build"
284
+ fi
271
285
CHANGELOG_WITH_NEW_LINES=$(echo -e "$CHANGELOG" | sed 's/\\n/\\n/g')
272
286
273
287
sz deploy app macos \
0 commit comments