Skip to content

Commit

Permalink
Deploy every 90 days new alpha and beta build to prevent TestFlight b…
Browse files Browse the repository at this point in the history
…uilds from expiring
  • Loading branch information
nilsreichardt committed Mar 2, 2025
1 parent 6d1d2a5 commit f6f1145
Show file tree
Hide file tree
Showing 2 changed files with 20 additions and 2 deletions.
4 changes: 4 additions & 0 deletions .github/workflows/alpha.yml
Original file line number Diff line number Diff line change
Expand Up @@ -16,6 +16,10 @@ concurrency:
group: app-release

on:
schedule:
# TestFlight builds expire after 90 days. To ensure we have regular builds,
# we run this workflow every 90 days.
- cron: "0 0 1 */3 *"
push:
branches:
- main
Expand Down
18 changes: 16 additions & 2 deletions .github/workflows/beta.yml
Original file line number Diff line number Diff line change
Expand Up @@ -16,6 +16,10 @@ concurrency:
group: app-release

on:
schedule:
# TestFlight builds expire after 90 days. To ensure we have regular builds,
# we run this workflow every 90 days.
- cron: "0 0 1 */3 *"
workflow_dispatch:
inputs:
ios-changelog:
Expand Down Expand Up @@ -62,7 +66,9 @@ jobs:
deploy-ios:
# We skip the deployment if no changelog is provided because we assume that
# nothing has changed in the iOS app and therefore no new version is needed.
if: github.event.inputs.ios-changelog != ''
#
# For scheduled builds, a changelog is not required.
if: github.event.inputs.ios-changelog != '' || github.event_name == 'schedule'
runs-on: macos-15
timeout-minutes: 120
steps:
Expand Down Expand Up @@ -101,6 +107,9 @@ jobs:
# When passing the changelog from GitHub Actions to the CLI, the line
# breaks are escaped. We need to replace them with actual line breaks.
CHANGELOG="${{ github.event.inputs.ios-changelog }}"
if [ -z "$CHANGELOG" ]; then
CHANGELOG="Scheduled build"
fi
CHANGELOG_WITH_NEW_LINES=$(echo -e "$CHANGELOG" | sed 's/\\n/\\n/g')
sz deploy app ios \
Expand Down Expand Up @@ -223,7 +232,9 @@ jobs:
deploy-macos:
# We skip the deployment if no changelog is provided because we assume that
# nothing has changed in the macOS app and therefore no new version is needed.
if: github.event.inputs.macos-changelog != ''
#
# For scheduled builds, a changelog is not required.
if: github.event.inputs.macos-changelog != '' || github.event_name == 'schedule'
runs-on: macos-15
timeout-minutes: 60
steps:
Expand Down Expand Up @@ -268,6 +279,9 @@ jobs:
# When passing the changelog from GitHub Actions to the CLI, the line
# breaks are escaped. We need to replace them with actual line breaks.
CHANGELOG="${{ github.event.inputs.macos-changelog }}"
if [ -z "$CHANGELOG" ]; then
CHANGELOG="Scheduled build"
fi
CHANGELOG_WITH_NEW_LINES=$(echo -e "$CHANGELOG" | sed 's/\\n/\\n/g')
sz deploy app macos \
Expand Down

0 comments on commit f6f1145

Please sign in to comment.