mirror of
https://github.com/firebase/firebase-ios-sdk
synced 2026-11-09 22:36:01 +05:45
More CI updates for Xcode 16 minimum (#14655)
Co-authored-by: Nick Cooke <nickcooke@google.com>
This commit is contained in:
1 parent
164c278d0a
commit
0b6091c6ca
16 files changed
+54
-79
No files matched your search
@@ -24,12 +24,12 @@ jobs:
|
||||
strategy:
|
||||
matrix:
|
||||
target: [ios, tvos, macos]
|
||||
os: [macos-14, macos-13]
|
||||
os: [macos-14, macos-15]
|
||||
include:
|
||||
- os: macos-14
|
||||
xcode: Xcode_15.3
|
||||
- os: macos-13
|
||||
xcode: Xcode_15.2
|
||||
xcode: Xcode_16.2
|
||||
- os: macos-15
|
||||
xcode: Xcode_16.3
|
||||
runs-on: ${{ matrix.os }}
|
||||
|
||||
steps:
|
||||
|
||||
@@ -23,12 +23,10 @@ jobs:
|
||||
strategy:
|
||||
matrix:
|
||||
include:
|
||||
- os: macos-13
|
||||
xcode: Xcode_15.2
|
||||
- os: macos-14
|
||||
xcode: Xcode_15.4
|
||||
- os: macos-15
|
||||
xcode: Xcode_16.2
|
||||
- os: macos-16
|
||||
xcode: Xcode_16.3
|
||||
runs-on: ${{ matrix.os }}
|
||||
steps:
|
||||
- uses: actions/checkout@v4
|
||||
@@ -72,12 +70,10 @@ jobs:
|
||||
strategy:
|
||||
matrix:
|
||||
include:
|
||||
- os: macos-13
|
||||
xcode: Xcode_15.2
|
||||
- os: macos-14
|
||||
xcode: Xcode_15.4
|
||||
- os: macos-15
|
||||
xcode: Xcode_16.2
|
||||
- os: macos-15
|
||||
xcode: Xcode_16.3
|
||||
runs-on: ${{ matrix.os }}
|
||||
steps:
|
||||
- uses: actions/checkout@v4
|
||||
@@ -113,7 +109,7 @@ jobs:
|
||||
appdistribution-cron-only:
|
||||
if: github.event_name == 'schedule' && github.repository == 'Firebase/firebase-ios-sdk'
|
||||
|
||||
runs-on: macos-14
|
||||
runs-on: macos-15
|
||||
strategy:
|
||||
matrix:
|
||||
target: [ios]
|
||||
|
||||
@@ -20,7 +20,7 @@ jobs:
|
||||
# Don't run on private repo.
|
||||
if: (github.repository == 'Firebase/firebase-ios-sdk' && github.event_name == 'schedule')
|
||||
|
||||
runs-on: macos-14
|
||||
runs-on: macos-15
|
||||
strategy:
|
||||
matrix:
|
||||
# These need to be on a single line or else the formatting won't validate.
|
||||
@@ -42,7 +42,7 @@ jobs:
|
||||
# Don't run on private repo.
|
||||
if: (github.repository == 'Firebase/firebase-ios-sdk' && github.event_name == 'schedule')
|
||||
|
||||
runs-on: macos-14
|
||||
runs-on: macos-15
|
||||
strategy:
|
||||
matrix:
|
||||
target: [ios, tvos, macos]
|
||||
|
||||
+12
-44
@@ -30,8 +30,8 @@ jobs:
|
||||
matrix:
|
||||
podspec: [FirebaseAuthInterop.podspec, FirebaseAuth.podspec]
|
||||
target: [ios, tvos, macos --skip-tests, watchos]
|
||||
os: [macos-14]
|
||||
xcode: [Xcode_15.2]
|
||||
os: [macos-15]
|
||||
xcode: [Xcode_16.3]
|
||||
runs-on: ${{ matrix.os }}
|
||||
steps:
|
||||
- uses: actions/checkout@v4
|
||||
@@ -50,39 +50,10 @@ jobs:
|
||||
retry_wait_seconds: 120
|
||||
command: scripts/pod_lib_lint.rb ${{ matrix.podspec }} --platforms=${{ matrix.target }} ${{ matrix.tests }}
|
||||
|
||||
# TODO: Fix warnings on Xcode 16 and move into matrix above.
|
||||
pod-lib-lint-xc16:
|
||||
# Don't run on private repo unless it is a PR.
|
||||
if: (github.repository == 'Firebase/firebase-ios-sdk' && github.event_name == 'schedule') || github.event_name == 'pull_request'
|
||||
|
||||
strategy:
|
||||
matrix:
|
||||
podspec: [FirebaseAuthInterop.podspec, FirebaseAuth.podspec]
|
||||
target: [ios, tvos, macos --skip-tests --allow-warnings, watchos]
|
||||
os: [macos-15]
|
||||
xcode: [Xcode_16.2]
|
||||
runs-on: ${{ matrix.os }}
|
||||
steps:
|
||||
- uses: actions/checkout@v4
|
||||
- uses: ruby/setup-ruby@354a1ad156761f5ee2b7b13fa8e09943a5e8d252 # v1
|
||||
- name: Setup Bundler
|
||||
run: scripts/setup_bundler.sh
|
||||
- name: Configure test keychain
|
||||
run: scripts/configure_test_keychain.sh
|
||||
- name: Xcode
|
||||
run: sudo xcode-select -s /Applications/${{ matrix.xcode }}.app/Contents/Developer
|
||||
- uses: nick-fields/retry@ce71cc2ab81d554ebbe88c79ab5975992d79ba08 # v3
|
||||
with:
|
||||
timeout_minutes: 120
|
||||
max_attempts: 3
|
||||
retry_on: error
|
||||
retry_wait_seconds: 120
|
||||
command: scripts/pod_lib_lint.rb ${{ matrix.podspec }} --platforms=${{ matrix.target }} ${{ matrix.tests }} --allow-warnings
|
||||
|
||||
spm-package-resolved:
|
||||
env:
|
||||
FIREBASECI_USE_LATEST_GOOGLEAPPMEASUREMENT: 1
|
||||
runs-on: macos-14
|
||||
runs-on: macos-15
|
||||
outputs:
|
||||
cache_key: ${{ steps.generate_cache_key.outputs.cache_key }}
|
||||
steps:
|
||||
@@ -109,29 +80,26 @@ jobs:
|
||||
strategy:
|
||||
matrix:
|
||||
include:
|
||||
- os: macos-13
|
||||
xcode: Xcode_15.2
|
||||
target: iOS spm
|
||||
- os: macos-14
|
||||
xcode: Xcode_15.4
|
||||
target: iOS spm
|
||||
- os: macos-15
|
||||
xcode: Xcode_16.2
|
||||
target: iOS spm
|
||||
- os: macos-15
|
||||
xcode: Xcode_16.2
|
||||
xcode: Xcode_16.3
|
||||
target: iOS spm
|
||||
- os: macos-15
|
||||
xcode: Xcode_16.3
|
||||
target: tvOS spm
|
||||
- os: macos-15
|
||||
xcode: Xcode_16.2
|
||||
xcode: Xcode_16.3
|
||||
target: macOS spmbuildonly
|
||||
- os: macos-15
|
||||
xcode: Xcode_16.2
|
||||
xcode: Xcode_16.3
|
||||
target: watchOS spm
|
||||
- os: macos-15
|
||||
xcode: Xcode_16.2
|
||||
xcode: Xcode_16.3
|
||||
target: catalyst spm
|
||||
- os: macos-15
|
||||
xcode: Xcode_16.2
|
||||
xcode: Xcode_16.3
|
||||
target: visionOS spm
|
||||
runs-on: ${{ matrix.os }}
|
||||
steps:
|
||||
@@ -272,7 +240,7 @@ jobs:
|
||||
# Don't run on private repo.
|
||||
if: github.event_name == 'schedule' && github.repository == 'Firebase/firebase-ios-sdk'
|
||||
|
||||
runs-on: macos-14
|
||||
runs-on: macos-15
|
||||
strategy:
|
||||
matrix:
|
||||
# The macos and tvos tests can hang, and watchOS doesn't have tests.
|
||||
|
||||
@@ -27,6 +27,7 @@ jobs:
|
||||
client-app-spm:
|
||||
if: (github.repository == 'Firebase/firebase-ios-sdk' && github.event_name == 'schedule') || github.event_name == 'pull_request'
|
||||
strategy:
|
||||
# TODO: Add Xcode matrix when Xcode 16 is ubiquitous on CI runners.
|
||||
matrix:
|
||||
#TODO(ncooke3): Add multi-platform support: tvOS, macOS, catalyst
|
||||
platform: [iOS]
|
||||
@@ -49,6 +50,7 @@ jobs:
|
||||
FIREBASECI_USE_LATEST_GOOGLEAPPMEASUREMENT: 1
|
||||
FIREBASE_SOURCE_FIRESTORE: 1
|
||||
strategy:
|
||||
# TODO: Add Xcode matrix when Xcode 16 is ubiquitous on CI runners.
|
||||
matrix:
|
||||
#TODO(ncooke3): Add multi-platform support: tvOS, macOS, catalyst
|
||||
platform: [iOS]
|
||||
@@ -69,6 +71,7 @@ jobs:
|
||||
# Don't run on private repo unless it is a PR.
|
||||
if: (github.repository == 'Firebase/firebase-ios-sdk' && github.event_name == 'schedule') || github.event_name == 'pull_request'
|
||||
strategy:
|
||||
# TODO: Add Xcode matrix when Xcode 16 is ubiquitous on CI runners.
|
||||
matrix:
|
||||
scheme: [ClientApp-CocoaPods]
|
||||
os: [macos-14, macos-15]
|
||||
|
||||
@@ -18,10 +18,9 @@ concurrency:
|
||||
jobs:
|
||||
tests:
|
||||
# Don't run on private repo unless it is a PR.
|
||||
if: (github.repository == 'Firebase/firebase-ios-sdk' && github.event_name == 'schedule') || github.event_name == 'pull_request'
|
||||
|| github.event_name == 'workflow_dispatch'
|
||||
if: (github.repository == 'Firebase/firebase-ios-sdk' && github.event_name == 'schedule') || github.event_name == 'pull_request' || github.event_name == 'workflow_dispatch'
|
||||
|
||||
runs-on: macos-14
|
||||
runs-on: macos-15
|
||||
steps:
|
||||
- uses: actions/checkout@v4
|
||||
- uses: mikehardy/buildcache-action@c87cea0ccd718971d6cc39e672c4f26815b6c126
|
||||
|
||||
@@ -49,7 +49,7 @@ jobs:
|
||||
xcodebuild:
|
||||
# Don't run on private repo unless it is a PR.
|
||||
if: (github.repository == 'Firebase/firebase-ios-sdk' && github.event_name == 'schedule') || github.event_name == 'pull_request'
|
||||
runs-on: macos-14
|
||||
runs-on: macos-15
|
||||
|
||||
strategy:
|
||||
matrix:
|
||||
@@ -77,7 +77,7 @@ jobs:
|
||||
if: (github.repository == 'Firebase/firebase-ios-sdk' && github.event_name == 'schedule') || github.event_name == 'pull_request'
|
||||
env:
|
||||
plist_secret: ${{ secrets.GHASecretsGPGPassphrase1 }}
|
||||
runs-on: macos-14
|
||||
runs-on: macos-15
|
||||
steps:
|
||||
- uses: actions/checkout@v4
|
||||
- uses: mikehardy/buildcache-action@c87cea0ccd718971d6cc39e672c4f26815b6c126
|
||||
|
||||
@@ -28,6 +28,9 @@ jobs:
|
||||
xcode: Xcode_16.2
|
||||
- os: macos-15
|
||||
xcode: Xcode_16.2
|
||||
# TODO: Add Xcode matrix when Xcode 16 is ubiquitous on CI runners.
|
||||
# - os: macos-15
|
||||
# xcode: Xcode_16.3
|
||||
runs-on: ${{ matrix.build-env.os }}
|
||||
steps:
|
||||
- uses: actions/checkout@v4
|
||||
@@ -42,7 +45,7 @@ jobs:
|
||||
spm-package-resolved:
|
||||
env:
|
||||
FIREBASECI_USE_LATEST_GOOGLEAPPMEASUREMENT: 1
|
||||
runs-on: macos-14
|
||||
runs-on: macos-15
|
||||
outputs:
|
||||
cache_key: ${{ steps.generate_cache_key.outputs.cache_key }}
|
||||
steps:
|
||||
@@ -70,6 +73,7 @@ jobs:
|
||||
needs: [spm-package-resolved]
|
||||
strategy:
|
||||
matrix:
|
||||
# TODO: Add Xcode matrix when Xcode 16 is ubiquitous on CI runners.
|
||||
include:
|
||||
- os: macos-14
|
||||
xcode: Xcode_16.2
|
||||
@@ -77,6 +81,9 @@ jobs:
|
||||
- os: macos-15
|
||||
xcode: Xcode_16.2
|
||||
target: iOS
|
||||
- os: macos-15
|
||||
xcode: Xcode_16.2
|
||||
target: iOS
|
||||
- os: macos-15
|
||||
xcode: Xcode_16.2
|
||||
target: tvOS
|
||||
|
||||
@@ -26,6 +26,9 @@ jobs:
|
||||
xcode: Xcode_16.2
|
||||
- os: macos-15
|
||||
xcode: Xcode_16.2
|
||||
# TODO: Enable when Xcode 16 is ubiquitous on CI runners.
|
||||
# - os: macos-15
|
||||
# xcode: Xcode_16.3
|
||||
runs-on: ${{ matrix.build-env.os }}
|
||||
steps:
|
||||
- uses: actions/checkout@v4
|
||||
@@ -40,7 +43,7 @@ jobs:
|
||||
core-internal-cron-only:
|
||||
# Don't run on private repo.
|
||||
if: github.event_name == 'schedule' && github.repository == 'Firebase/firebase-ios-sdk'
|
||||
runs-on: macos-14
|
||||
runs-on: macos-15
|
||||
strategy:
|
||||
matrix:
|
||||
target: [ios, tvos, macos]
|
||||
|
||||
@@ -17,8 +17,7 @@ import FirebaseInstallations
|
||||
import Foundation
|
||||
import UIKit
|
||||
|
||||
// Avoids exposing internal APIs to Swift users
|
||||
@_implementationOnly import FirebaseCoreInternal
|
||||
internal import FirebaseCoreInternal
|
||||
|
||||
enum Strings {
|
||||
static let errorDomain = "com.firebase.appdistribution.api"
|
||||
|
||||
@@ -15,7 +15,7 @@
|
||||
|
||||
import Foundation
|
||||
|
||||
@_implementationOnly import FirebaseCoreExtension
|
||||
internal import FirebaseCoreExtension
|
||||
|
||||
///
|
||||
/// Logger is responsible for printing console logs
|
||||
|
||||
@@ -19,10 +19,10 @@ import FirebaseAuthInterop
|
||||
import FirebaseCore
|
||||
import FirebaseCoreExtension
|
||||
#if COCOAPODS
|
||||
@_implementationOnly import GoogleUtilities
|
||||
internal import GoogleUtilities
|
||||
#else
|
||||
@_implementationOnly import GoogleUtilities_AppDelegateSwizzler
|
||||
@_implementationOnly import GoogleUtilities_Environment
|
||||
internal import GoogleUtilities_AppDelegateSwizzler
|
||||
internal import GoogleUtilities_Environment
|
||||
#endif
|
||||
|
||||
#if os(iOS) || os(tvOS) || targetEnvironment(macCatalyst)
|
||||
|
||||
@@ -14,9 +14,9 @@
|
||||
|
||||
import Foundation
|
||||
#if COCOAPODS
|
||||
@_implementationOnly import GoogleUtilities
|
||||
internal import GoogleUtilities
|
||||
#else
|
||||
@_implementationOnly import GoogleUtilities_Environment
|
||||
internal import GoogleUtilities_Environment
|
||||
#endif
|
||||
|
||||
#if os(iOS)
|
||||
|
||||
@@ -17,9 +17,9 @@
|
||||
import UIKit
|
||||
|
||||
#if COCOAPODS
|
||||
@_implementationOnly import GoogleUtilities
|
||||
internal import GoogleUtilities
|
||||
#else
|
||||
@_implementationOnly import GoogleUtilities_Environment
|
||||
internal import GoogleUtilities_Environment
|
||||
#endif // COCOAPODS
|
||||
|
||||
// Protocol to help with unit tests.
|
||||
|
||||
@@ -17,9 +17,9 @@
|
||||
import Foundation
|
||||
import UIKit
|
||||
#if COCOAPODS
|
||||
@_implementationOnly import GoogleUtilities
|
||||
internal import GoogleUtilities
|
||||
#else
|
||||
@_implementationOnly import GoogleUtilities_Environment
|
||||
internal import GoogleUtilities_Environment
|
||||
#endif
|
||||
|
||||
/// Class responsible for providing a default AuthUIDelegate.
|
||||
|
||||
@@ -27,7 +27,7 @@ function runXcodebuild() {
|
||||
-workspace 'CocoapodsIntegrationTest.xcworkspace'
|
||||
-scheme 'CocoapodsIntegrationTest'
|
||||
-sdk 'iphonesimulator'
|
||||
-destination 'platform=iOS Simulator,name=iPhone 15'
|
||||
-destination 'platform=iOS Simulator,name=iPhone 16'
|
||||
CODE_SIGNING_REQUIRED=NO
|
||||
clean
|
||||
build
|
||||
|
||||
Reference in new issue
Block a user