From 06f550179dca35660aab863e199bb8a3f75f3de2 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?S=CC=8Cimon=20S=CC=8Cesta=CC=81k?= Date: Thu, 13 Nov 2025 12:55:34 +0100 Subject: [PATCH 1/6] Remove unused secret_properties inputs from iOS workflows --- .github/workflows/ios-selfhosted-nightly-build.yml | 4 ---- .github/workflows/ios-selfhosted-on-demand-build.yml | 4 ---- .github/workflows/ios-selfhosted-release.yml | 4 ---- 3 files changed, 12 deletions(-) diff --git a/.github/workflows/ios-selfhosted-nightly-build.yml b/.github/workflows/ios-selfhosted-nightly-build.yml index a66c32c..16b5644 100644 --- a/.github/workflows/ios-selfhosted-nightly-build.yml +++ b/.github/workflows/ios-selfhosted-nightly-build.yml @@ -23,10 +23,6 @@ on: description: 'Path to the .xcconfig file. Selected secret properties will be appended to the end of this file.' type: string required: false - secret_properties: - description: 'Secrets in the format KEY = VALUE (one per line).' - type: string - required: false required_keys: description: 'Comma-separated list of required keys.' type: string diff --git a/.github/workflows/ios-selfhosted-on-demand-build.yml b/.github/workflows/ios-selfhosted-on-demand-build.yml index 8d16855..aae09ec 100644 --- a/.github/workflows/ios-selfhosted-on-demand-build.yml +++ b/.github/workflows/ios-selfhosted-on-demand-build.yml @@ -23,10 +23,6 @@ on: description: 'Path to the .xcconfig file. Selected secret properties will be appended to the end of this file.' type: string required: false - secret_properties: - description: 'Secrets in the format KEY = VALUE (one per line).' - type: string - required: false required_keys: description: 'Comma-separated list of required keys.' type: string diff --git a/.github/workflows/ios-selfhosted-release.yml b/.github/workflows/ios-selfhosted-release.yml index c0b462b..0dd6370 100644 --- a/.github/workflows/ios-selfhosted-release.yml +++ b/.github/workflows/ios-selfhosted-release.yml @@ -23,10 +23,6 @@ on: description: 'Path to the .xcconfig file. Selected secret properties will be appended to the end of this file.' type: string required: false - secret_properties: - description: 'Secrets in the format KEY = VALUE (one per line).' - type: string - required: false required_keys: description: 'Comma-separated list of required keys.' type: string From 99301677274c3a9941cb4a639acd57d593832553 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?S=CC=8Cimon=20S=CC=8Cesta=CC=81k?= Date: Thu, 13 Nov 2025 12:58:17 +0100 Subject: [PATCH 2/6] Expose checkout depth for changelog reusable workflows --- .github/workflows/ios-selfhosted-nightly-build.yml | 6 ++++++ .github/workflows/ios-selfhosted-on-demand-build.yml | 6 ++++++ 2 files changed, 12 insertions(+) diff --git a/.github/workflows/ios-selfhosted-nightly-build.yml b/.github/workflows/ios-selfhosted-nightly-build.yml index 16b5644..ed98d94 100644 --- a/.github/workflows/ios-selfhosted-nightly-build.yml +++ b/.github/workflows/ios-selfhosted-nightly-build.yml @@ -19,6 +19,11 @@ on: description: 'Job timeout in minutes' type: number default: 30 + checkout_depth: + description: 'The depth of the git history to fetch for changelog generation.' + type: number + required: false + default: 100 xcconfig_path: description: 'Path to the .xcconfig file. Selected secret properties will be appended to the end of this file.' type: string @@ -60,6 +65,7 @@ jobs: id: detect_changes uses: futuredapp/.github/.github/actions/universal-detect-changes-and-generate-changelog@main with: + checkout_depth: ${{ inputs.checkout_depth }} fallback_lookback: ${{ inputs.changelog_fallback_lookback }} - name: Checkout diff --git a/.github/workflows/ios-selfhosted-on-demand-build.yml b/.github/workflows/ios-selfhosted-on-demand-build.yml index aae09ec..df4b8ce 100644 --- a/.github/workflows/ios-selfhosted-on-demand-build.yml +++ b/.github/workflows/ios-selfhosted-on-demand-build.yml @@ -19,6 +19,11 @@ on: description: 'Job timeout in minutes' type: number default: 30 + checkout_depth: + description: 'The depth of the git history to fetch for changelog generation.' + type: number + required: false + default: 100 xcconfig_path: description: 'Path to the .xcconfig file. Selected secret properties will be appended to the end of this file.' type: string @@ -65,6 +70,7 @@ jobs: id: detect_changes uses: futuredapp/.github/.github/actions/universal-detect-changes-and-generate-changelog@main with: + checkout_depth: ${{ inputs.checkout_depth }} fallback_lookback: ${{ inputs.changelog_fallback_lookback }} - name: Checkout From 15f5743ced7240f76a1d00c5cc1ac2ee21ece74b Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?S=CC=8Cimon=20S=CC=8Cesta=CC=81k?= Date: Thu, 13 Nov 2025 13:08:13 +0100 Subject: [PATCH 3/6] Group iOS workflow inputs by usage --- .../ios-selfhosted-nightly-build.yml | 22 +++++++------- .../ios-selfhosted-on-demand-build.yml | 30 +++++++++---------- .github/workflows/ios-selfhosted-release.yml | 16 +++++----- 3 files changed, 34 insertions(+), 34 deletions(-) diff --git a/.github/workflows/ios-selfhosted-nightly-build.yml b/.github/workflows/ios-selfhosted-nightly-build.yml index ed98d94..dde1113 100644 --- a/.github/workflows/ios-selfhosted-nightly-build.yml +++ b/.github/workflows/ios-selfhosted-nightly-build.yml @@ -3,14 +3,6 @@ name: iOS Self-hosted Nightly Build on: workflow_call: inputs: - use_git_lfs: - description: 'Whether to download Git-LFS files.' - type: boolean - default: false - custom_values: - description: 'Custom string that can contains values specified in your workflow file. Those values will be placed into environment variable. Example: "CUSTOM-1: 1; CUSTOM-2: 2"' - type: string - required: false runner_label: description: 'The custom label for the self-hosted runner to use for the build job.' type: string @@ -24,6 +16,15 @@ on: type: number required: false default: 100 + changelog_fallback_lookback: + description: 'The amount of time to look back for merge commits when no previous build commit is found. Default is 24 hours.' + type: string + required: false + default: '24 hours' + use_git_lfs: + description: 'Whether to download Git-LFS files.' + type: boolean + default: false xcconfig_path: description: 'Path to the .xcconfig file. Selected secret properties will be appended to the end of this file.' type: string @@ -32,11 +33,10 @@ on: description: 'Comma-separated list of required keys.' type: string required: false - changelog_fallback_lookback: - description: 'The amount of time to look back for merge commits when no previous build commit is found. Default is 24 hours.' + custom_values: + description: 'Custom string that can contains values specified in your workflow file. Those values will be placed into environment variable. Example: "CUSTOM-1: 1; CUSTOM-2: 2"' type: string required: false - default: '24 hours' secrets: MATCH_PASSWORD: diff --git a/.github/workflows/ios-selfhosted-on-demand-build.yml b/.github/workflows/ios-selfhosted-on-demand-build.yml index df4b8ce..8bf66d6 100644 --- a/.github/workflows/ios-selfhosted-on-demand-build.yml +++ b/.github/workflows/ios-selfhosted-on-demand-build.yml @@ -3,14 +3,6 @@ name: iOS Self-hosted On-Demand Build on: workflow_call: inputs: - use_git_lfs: - description: 'Whether to download Git-LFS files.' - type: boolean - default: false - custom_values: - description: 'Custom string that can contains values specified in your workflow file. Those values will be placed into environment variable. Example: "CUSTOM-1: 1; CUSTOM-2: 2"' - type: string - required: false runner_label: description: 'The custom label for the self-hosted runner to use for the build job.' type: string @@ -19,11 +11,24 @@ on: description: 'Job timeout in minutes' type: number default: 30 + changelog: + description: 'Will be used as TestFlight changelog' + type: string + required: false checkout_depth: description: 'The depth of the git history to fetch for changelog generation.' type: number required: false default: 100 + changelog_fallback_lookback: + description: 'The amount of time to look back for merge commits when no previous build commit is found. Default is 24 hours.' + type: string + required: false + default: '24 hours' + use_git_lfs: + description: 'Whether to download Git-LFS files.' + type: boolean + default: false xcconfig_path: description: 'Path to the .xcconfig file. Selected secret properties will be appended to the end of this file.' type: string @@ -32,15 +37,10 @@ on: description: 'Comma-separated list of required keys.' type: string required: false - changelog: - description: 'Will be used as TestFlight changelog' - type: string - required: false - changelog_fallback_lookback: - description: 'The amount of time to look back for merge commits when no previous build commit is found. Default is 24 hours.' + custom_values: + description: 'Custom string that can contains values specified in your workflow file. Those values will be placed into environment variable. Example: "CUSTOM-1: 1; CUSTOM-2: 2"' type: string required: false - default: '24 hours' secrets: MATCH_PASSWORD: diff --git a/.github/workflows/ios-selfhosted-release.yml b/.github/workflows/ios-selfhosted-release.yml index 0dd6370..68797f5 100644 --- a/.github/workflows/ios-selfhosted-release.yml +++ b/.github/workflows/ios-selfhosted-release.yml @@ -3,14 +3,6 @@ name: iOS Self-hosted Release on: workflow_call: inputs: - use_git_lfs: - description: 'Whether to download Git-LFS files.' - type: boolean - default: false - custom_values: - description: 'Custom string that can contains values specified in your workflow file. Those values will be placed into environment variable. Example: "CUSTOM-1: 1; CUSTOM-2: 2"' - type: string - required: false runner_label: description: 'The custom label for the self-hosted runner to use for the build job.' type: string @@ -19,6 +11,10 @@ on: description: 'Job timeout in minutes' type: number default: 30 + use_git_lfs: + description: 'Whether to download Git-LFS files.' + type: boolean + default: false xcconfig_path: description: 'Path to the .xcconfig file. Selected secret properties will be appended to the end of this file.' type: string @@ -27,6 +23,10 @@ on: description: 'Comma-separated list of required keys.' type: string required: false + custom_values: + description: 'Custom string that can contains values specified in your workflow file. Those values will be placed into environment variable. Example: "CUSTOM-1: 1; CUSTOM-2: 2"' + type: string + required: false secrets: MATCH_PASSWORD: From f1a2994425eed1e45edf90a2cca31da75e8cf4e4 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?S=CC=8Cimon=20S=CC=8Cesta=CC=81k?= Date: Thu, 13 Nov 2025 13:10:58 +0100 Subject: [PATCH 4/6] Annotate workflow inputs with group comments --- .github/workflows/ios-selfhosted-nightly-build.yml | 5 +++++ .github/workflows/ios-selfhosted-on-demand-build.yml | 5 +++++ .github/workflows/ios-selfhosted-release.yml | 4 ++++ 3 files changed, 14 insertions(+) diff --git a/.github/workflows/ios-selfhosted-nightly-build.yml b/.github/workflows/ios-selfhosted-nightly-build.yml index dde1113..87ad108 100644 --- a/.github/workflows/ios-selfhosted-nightly-build.yml +++ b/.github/workflows/ios-selfhosted-nightly-build.yml @@ -3,6 +3,7 @@ name: iOS Self-hosted Nightly Build on: workflow_call: inputs: + # General runner_label: description: 'The custom label for the self-hosted runner to use for the build job.' type: string @@ -11,6 +12,7 @@ on: description: 'Job timeout in minutes' type: number default: 30 + # Changelog checkout_depth: description: 'The depth of the git history to fetch for changelog generation.' type: number @@ -21,10 +23,12 @@ on: type: string required: false default: '24 hours' + # Git LFS use_git_lfs: description: 'Whether to download Git-LFS files.' type: boolean default: false + # Export secrets xcconfig_path: description: 'Path to the .xcconfig file. Selected secret properties will be appended to the end of this file.' type: string @@ -33,6 +37,7 @@ on: description: 'Comma-separated list of required keys.' type: string required: false + # Custom values custom_values: description: 'Custom string that can contains values specified in your workflow file. Those values will be placed into environment variable. Example: "CUSTOM-1: 1; CUSTOM-2: 2"' type: string diff --git a/.github/workflows/ios-selfhosted-on-demand-build.yml b/.github/workflows/ios-selfhosted-on-demand-build.yml index 8bf66d6..8a43eb4 100644 --- a/.github/workflows/ios-selfhosted-on-demand-build.yml +++ b/.github/workflows/ios-selfhosted-on-demand-build.yml @@ -3,6 +3,7 @@ name: iOS Self-hosted On-Demand Build on: workflow_call: inputs: + # General runner_label: description: 'The custom label for the self-hosted runner to use for the build job.' type: string @@ -11,6 +12,7 @@ on: description: 'Job timeout in minutes' type: number default: 30 + # Changelog changelog: description: 'Will be used as TestFlight changelog' type: string @@ -25,10 +27,12 @@ on: type: string required: false default: '24 hours' + # Git LFS use_git_lfs: description: 'Whether to download Git-LFS files.' type: boolean default: false + # Export secrets xcconfig_path: description: 'Path to the .xcconfig file. Selected secret properties will be appended to the end of this file.' type: string @@ -37,6 +41,7 @@ on: description: 'Comma-separated list of required keys.' type: string required: false + # Custom values custom_values: description: 'Custom string that can contains values specified in your workflow file. Those values will be placed into environment variable. Example: "CUSTOM-1: 1; CUSTOM-2: 2"' type: string diff --git a/.github/workflows/ios-selfhosted-release.yml b/.github/workflows/ios-selfhosted-release.yml index 68797f5..1439d21 100644 --- a/.github/workflows/ios-selfhosted-release.yml +++ b/.github/workflows/ios-selfhosted-release.yml @@ -3,6 +3,7 @@ name: iOS Self-hosted Release on: workflow_call: inputs: + # General runner_label: description: 'The custom label for the self-hosted runner to use for the build job.' type: string @@ -11,10 +12,12 @@ on: description: 'Job timeout in minutes' type: number default: 30 + # Git LFS use_git_lfs: description: 'Whether to download Git-LFS files.' type: boolean default: false + # Export secrets xcconfig_path: description: 'Path to the .xcconfig file. Selected secret properties will be appended to the end of this file.' type: string @@ -23,6 +26,7 @@ on: description: 'Comma-separated list of required keys.' type: string required: false + # Custom values custom_values: description: 'Custom string that can contains values specified in your workflow file. Those values will be placed into environment variable. Example: "CUSTOM-1: 1; CUSTOM-2: 2"' type: string From 2bc986e4d1517e0d0af5a02db604eb9396b8dfec Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?S=CC=8Cimon=20S=CC=8Cesta=CC=81k?= Date: Thu, 13 Nov 2025 13:19:06 +0100 Subject: [PATCH 5/6] Fix on-demand workflow checkout condition --- .github/workflows/ios-selfhosted-on-demand-build.yml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/.github/workflows/ios-selfhosted-on-demand-build.yml b/.github/workflows/ios-selfhosted-on-demand-build.yml index 8a43eb4..1c54498 100644 --- a/.github/workflows/ios-selfhosted-on-demand-build.yml +++ b/.github/workflows/ios-selfhosted-on-demand-build.yml @@ -79,7 +79,7 @@ jobs: fallback_lookback: ${{ inputs.changelog_fallback_lookback }} - name: Checkout - if: ${{ inputs.use_git_lfs == 'true' || inputs.changelog != '' }} + if: ${{ inputs.use_git_lfs || inputs.changelog != '' }} uses: actions/checkout@v4 with: lfs: ${{ inputs.use_git_lfs }} From 8f0b3d167a72f620e650a609b0ed410e3ee45f5c Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?S=CC=8Cimon=20S=CC=8Cesta=CC=81k?= Date: Thu, 13 Nov 2025 13:19:57 +0100 Subject: [PATCH 6/6] Use boolean LFS input in nightly workflow --- .github/workflows/ios-selfhosted-nightly-build.yml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/.github/workflows/ios-selfhosted-nightly-build.yml b/.github/workflows/ios-selfhosted-nightly-build.yml index 87ad108..b9a8b44 100644 --- a/.github/workflows/ios-selfhosted-nightly-build.yml +++ b/.github/workflows/ios-selfhosted-nightly-build.yml @@ -74,7 +74,7 @@ jobs: fallback_lookback: ${{ inputs.changelog_fallback_lookback }} - name: Checkout - if: ${{ steps.detect_changes.outputs.skip_build == 'false' && inputs.use_git_lfs == 'true' }} + if: ${{ steps.detect_changes.outputs.skip_build == 'false' && inputs.use_git_lfs }} uses: actions/checkout@v4 with: lfs: ${{ inputs.use_git_lfs }}