diff --git a/.github/workflows/ios-testapp-release.yml b/.github/workflows/ios-testapp-release.yml index 2022b67c1..099ae2df5 100644 --- a/.github/workflows/ios-testapp-release.yml +++ b/.github/workflows/ios-testapp-release.yml @@ -6,6 +6,8 @@ jobs: runs-on: macos-latest steps: - uses: actions/checkout@v6 + with: + submodules: recursive - name: Setup certificate run: | @@ -16,7 +18,7 @@ jobs: sed -i '' 's/xcode_profile/:MapLibre.mobileprovision/' platform/ios/app-swift/BUILD.bazel - name: Build - run: bazel build //platform/ios/app-swift:MapLibreApp -c opt --ios_multi_cpus=arm64 --//:renderer=metal --action_env=SENTRY_DSN=${{ vars.SENTRY_DSN_IOS }} + run: bazel build //platform/ios/app-swift:MapLibreApp -c opt --ios_multi_cpus=arm64 --//:renderer=metal --action_env=SENTRY_DSN=${{ vars.SENTRY_DSN_IOS }} --embed_label=maplibre_app_1.0_build_"$(date +%s)" - name: 'Upload app to TestFlight' uses: apple-actions/upload-testflight-build@v4 diff --git a/platform/ios/app-swift/BUILD.bazel b/platform/ios/app-swift/BUILD.bazel index 36cb9db88..9fb1f320d 100644 --- a/platform/ios/app-swift/BUILD.bazel +++ b/platform/ios/app-swift/BUILD.bazel @@ -1,6 +1,7 @@ load("@darwin_config//:config.bzl", "BUNDLE_ID_PREFIX") load("@rules_apple//apple:ios.bzl", "ios_application") load("@rules_apple//apple:resources.bzl", "apple_resource_group") +load("@rules_apple//apple:versioning.bzl", "apple_bundle_version") load("@rules_swift//swift:swift.bzl", "swift_library") load("//platform/ios/bazel:macros.bzl", "env_info_plist") load("//platform/ios/bazel:provisioning.bzl", "configure_device_profiles") @@ -39,6 +40,19 @@ swift_library( ], ) +# --embed_label=maplibre_app_1.0_build_$(date +%s) +apple_bundle_version( + name = "maplibre_app_version", + build_label_pattern = "maplibre_app_{version}_build_{build}", + build_version = "{version}.{build}", + capture_groups = { + "version": "\\d+\\.\\d+", + "build": "\\d+", + }, + fallback_build_label = "maplibre_app_99.99_build_99", + short_version_string = "{version}", +) + ios_application( name = "MapLibreApp", app_icons = glob(["app_icons_ios.xcassets/**"]), @@ -53,6 +67,7 @@ ios_application( resources = [ "@pois_nps_mbtiles//file", ], + version = ":maplibre_app_version", visibility = ["@rules_xcodeproj//xcodeproj:generated"], deps = [":Sources"], )