diff --git a/.github/workflows/mobile-release.yml b/.github/workflows/mobile-release.yml index 224f5d70..e65e2c27 100644 --- a/.github/workflows/mobile-release.yml +++ b/.github/workflows/mobile-release.yml @@ -16,6 +16,16 @@ on: required: false default: false type: boolean + build_android: + description: Build Android signed APK/AAB artifacts. + required: false + default: true + type: boolean + build_ios: + description: Build iOS IPA and upload it to TestFlight. + required: false + default: true + type: boolean workflow_call: inputs: version_name: @@ -35,6 +45,16 @@ on: required: false default: false type: boolean + build_android: + description: Build Android signed APK/AAB artifacts. + required: false + default: true + type: boolean + build_ios: + description: Build iOS IPA and upload it to TestFlight. + required: false + default: true + type: boolean concurrency: group: mobile-release-${{ inputs.release_tag != '' && inputs.release_tag || github.run_id }} @@ -65,8 +85,15 @@ jobs: input_version='${{ inputs.version_name }}' input_build='${{ inputs.build_number }}' input_release_tag='${{ inputs.release_tag }}' + build_android='${{ inputs.build_android }}' + build_ios='${{ inputs.build_ios }}' package_version="$(node -p "require('./package.json').version")" + if [[ "$build_android" != "true" && "$build_ios" != "true" ]]; then + echo "Select at least one platform: build_android or build_ios." + exit 1 + fi + version_name="${input_version:-$package_version}" build_number="${input_build:-${{ github.run_number }}}" release_tag="$input_release_tag" @@ -79,6 +106,7 @@ jobs: android-release: name: Android signed release + if: inputs.build_android runs-on: ubuntu-latest needs: resolve-version permissions: @@ -148,6 +176,7 @@ jobs: ios-testflight: name: iOS TestFlight upload + if: inputs.build_ios runs-on: macos-26 needs: resolve-version steps: