Skip to content

Commit

Permalink
[Infra] Update multiple workflows to use macOS 15 for Xcode 16 (#14105)
Browse files Browse the repository at this point in the history
  • Loading branch information
andrewheard authored Nov 13, 2024
1 parent c509259 commit 9adc6ed
Show file tree
Hide file tree
Showing 7 changed files with 64 additions and 61 deletions.
25 changes: 14 additions & 11 deletions .github/workflows/crashlytics.yml
Original file line number Diff line number Diff line change
Expand Up @@ -25,20 +25,23 @@ jobs:
strategy:
matrix:
target: [ios, tvos, macos, watchos --skip-tests]
os: [macos-14]
flags: [
'--use-modular-headers --skip-tests',
''
]
xcode: [Xcode_15.2, Xcode_16]
runs-on: ${{ matrix.os }}
build-env:
- os: macos-14
xcode: Xcode_15.2
- os: macos-15
xcode: Xcode_16.1
runs-on: ${{ matrix.build-env.os }}
steps:
- uses: actions/checkout@v4
- uses: ruby/setup-ruby@v1
- name: Setup Bundler
run: scripts/setup_bundler.sh
- name: Xcode
run: sudo xcode-select -s /Applications/${{ matrix.xcode }}.app/Contents/Developer
run: sudo xcode-select -s /Applications/${{ matrix.build-env.xcode }}.app/Contents/Developer
- uses: nick-fields/retry@v3
with:
timeout_minutes: 120
Expand Down Expand Up @@ -85,22 +88,22 @@ jobs:
xcode: Xcode_15.4
target: iOS
- os: macos-15
xcode: Xcode_16
xcode: Xcode_16.1
target: iOS
- os: macos-15
xcode: Xcode_16
xcode: Xcode_16.1
target: tvOS
- os: macos-15
xcode: Xcode_16
xcode: Xcode_16.1
target: macOS
- os: macos-15
xcode: Xcode_16
xcode: Xcode_16.1
target: watchOS
- os: macos-15
xcode: Xcode_16
xcode: Xcode_16.1
target: catalyst
- os: macos-15
xcode: Xcode_16
xcode: Xcode_16.1
target: visionOS
runs-on: ${{ matrix.os }}
steps:
Expand Down Expand Up @@ -149,7 +152,7 @@ jobs:
env:
plist_secret: ${{ secrets.GHASecretsGPGPassphrase1 }}
signin_secret: ${{ secrets.GHASecretsGPGPassphrase1 }}
runs-on: macos-14
runs-on: macos-15
steps:
- uses: actions/checkout@v4
- uses: ruby/setup-ruby@v1
Expand Down
2 changes: 1 addition & 1 deletion .github/workflows/dynamiclinks.yml
Original file line number Diff line number Diff line change
Expand Up @@ -114,7 +114,7 @@ jobs:
env:
plist_secret: ${{ secrets.GHASecretsGPGPassphrase1 }}
signin_secret: ${{ secrets.GHASecretsGPGPassphrase1 }}
runs-on: macos-14
runs-on: macos-15
steps:
- uses: actions/checkout@v4
- uses: ruby/setup-ruby@v1
Expand Down
15 changes: 9 additions & 6 deletions .github/workflows/inappmessaging.yml
Original file line number Diff line number Diff line change
Expand Up @@ -24,14 +24,17 @@ jobs:
strategy:
matrix:
podspec: [FirebaseInAppMessaging.podspec]
os: [macos-14]
xcode: [Xcode_15.2, Xcode_16]
runs-on: ${{ matrix.os }}
build-env:
- os: macos-14
xcode: Xcode_15.2
- os: macos-15
xcode: Xcode_16.1
runs-on: ${{ matrix.build-env.os }}
steps:
- uses: actions/checkout@v4
- uses: ruby/setup-ruby@v1
- name: Xcode
run: sudo xcode-select -s /Applications/${{ matrix.xcode }}.app/Contents/Developer
run: sudo xcode-select -s /Applications/${{ matrix.build-env.xcode }}.app/Contents/Developer
- name: Setup Bundler
run: scripts/setup_bundler.sh
- name: FirebaseInAppMessaging
Expand Down Expand Up @@ -97,7 +100,7 @@ jobs:
- os: macos-14
xcode: Xcode_15.4
- os: macos-15
xcode: Xcode_16
xcode: Xcode_16.1
runs-on: ${{ matrix.os }}
steps:
- uses: actions/checkout@v4
Expand Down Expand Up @@ -139,7 +142,7 @@ jobs:
env:
plist_secret: ${{ secrets.GHASecretsGPGPassphrase1 }}
signin_secret: ${{ secrets.GHASecretsGPGPassphrase1 }}
runs-on: macos-14
runs-on: macos-15

steps:
- uses: actions/checkout@v4
Expand Down
27 changes: 13 additions & 14 deletions .github/workflows/installations.yml
Original file line number Diff line number Diff line change
Expand Up @@ -25,15 +25,14 @@ jobs:
matrix:
# TODO: macos tests are blocked by https://github.com/erikdoe/ocmock/pull/532
target: [ios, tvos, macos --skip-tests, watchos]
os: [macos-14]
include:
build-env:
- os: macos-14
xcode: Xcode_15.3
xcode: Xcode_15.2
test-specs: unit,integration
- os: macos-14
xcode: Xcode_16
- os: macos-15
xcode: Xcode_16.1
test-specs: unit
runs-on: ${{ matrix.os }}
runs-on: ${{ matrix.build-env.os }}
steps:
- uses: actions/checkout@v4
- uses: ruby/setup-ruby@v1
Expand All @@ -50,12 +49,12 @@ jobs:
id: secrets
run: echo "::set-output name=val::$([[ -z $plist_secret ]] && echo "0" || echo "1")"
- name: Xcode
run: sudo xcode-select -s /Applications/${{ matrix.xcode }}.app/Contents/Developer
run: sudo xcode-select -s /Applications/${{ matrix.build-env.xcode }}.app/Contents/Developer
- name: Build and test
run: |
export FIS_INTEGRATION_TESTS_REQUIRED=${{ steps.secrets.outputs.val }}
scripts/third_party/travis/retry.sh scripts/pod_lib_lint.rb FirebaseInstallations.podspec \
--platforms=${{ matrix.target }} --test-specs=${{ matrix.test-specs }}
--platforms=${{ matrix.target }} --test-specs=${{ matrix.build-env.test-specs }}
spm-package-resolved:
env:
Expand Down Expand Up @@ -93,22 +92,22 @@ jobs:
xcode: Xcode_15.4
target: iOS
- os: macos-15
xcode: Xcode_16
xcode: Xcode_16.1
target: iOS
- os: macos-15
xcode: Xcode_16
xcode: Xcode_16.1
target: tvOS
- os: macos-15
xcode: Xcode_16
xcode: Xcode_16.1
target: macOS
- os: macos-15
xcode: Xcode_16
xcode: Xcode_16.1
target: watchOS
- os: macos-15
xcode: Xcode_16
xcode: Xcode_16.1
target: catalyst
- os: macos-15
xcode: Xcode_16
xcode: Xcode_16.1
target: visionOS
runs-on: ${{ matrix.os }}
steps:
Expand Down
27 changes: 13 additions & 14 deletions .github/workflows/remoteconfig.yml
Original file line number Diff line number Diff line change
Expand Up @@ -62,28 +62,27 @@ jobs:
# TODO: macos tests are blocked by https://github.com/erikdoe/ocmock/pull/532
target: [ios, tvos, macos --skip-tests, watchos]
podspec: [FirebaseRemoteConfig.podspec]
os: [macos-14]
include:
build-env:
- os: macos-14
xcode: Xcode_15.3
# TODO(#13078): Fix testing infra to enforce warnings again.
tests: --allow-warnings
# Flaky tests on CI
- os: macos-14
xcode: Xcode_16
- os: macos-15
xcode: Xcode_16.1
tests: --skip-tests
runs-on: ${{ matrix.os }}
runs-on: ${{ matrix.build-env.os }}
steps:
- uses: actions/checkout@v4
- uses: ruby/setup-ruby@v1
- name: Setup Bundler
run: scripts/setup_bundler.sh
- name: Xcode
run: sudo xcode-select -s /Applications/${{ matrix.xcode }}.app/Contents/Developer
run: sudo xcode-select -s /Applications/${{ matrix.build-env.xcode }}.app/Contents/Developer
- name: Build and test
run: |
scripts/third_party/travis/retry.sh scripts/pod_lib_lint.rb ${{ matrix.podspec }} --platforms=${{ matrix.target }} \
${{ matrix.tests }}
${{ matrix.build-env.tests }}
spm-package-resolved:
env:
Expand Down Expand Up @@ -124,27 +123,27 @@ jobs:
target: iOS
test: spm
- os: macos-15
xcode: Xcode_16
xcode: Xcode_16.1
target: iOS
test: spm
- os: macos-15
xcode: Xcode_16
xcode: Xcode_16.1
target: tvOS
test: spm
- os: macos-15
xcode: Xcode_16
xcode: Xcode_16.1
target: macOS
test: spm
- os: macos-15
xcode: Xcode_16
xcode: Xcode_16.1
target: watchOS
test: spmbuildonly
- os: macos-15
xcode: Xcode_16
xcode: Xcode_16.1
target: catalyst
test: spm
- os: macos-15
xcode: Xcode_16
xcode: Xcode_16.1
target: visionOS
test: spm
runs-on: ${{ matrix.os }}
Expand Down Expand Up @@ -184,7 +183,7 @@ jobs:
env:
plist_secret: ${{ secrets.GHASecretsGPGPassphrase1 }}
signin_secret: ${{ secrets.GHASecretsGPGPassphrase1 }}
runs-on: macos-14
runs-on: macos-15
steps:
- uses: actions/checkout@v4
- uses: ruby/setup-ruby@v1
Expand Down
25 changes: 12 additions & 13 deletions .github/workflows/sessions.yml
Original file line number Diff line number Diff line change
Expand Up @@ -24,30 +24,29 @@ jobs:
strategy:
matrix:
target: [ios, tvos, macos, watchos]
os: [macos-14]
include:
build-env:
- os: macos-14
xcode: Xcode_15.3
tests:
# Flaky tests on CI
- os: macos-14
xcode: Xcode_16
- os: macos-15
xcode: Xcode_16.1
tests: --skip-tests
runs-on: ${{ matrix.os }}
runs-on: ${{ matrix.build-env.os }}
steps:
- uses: actions/checkout@v4
- uses: ruby/setup-ruby@v1
- name: Setup Bundler
run: scripts/setup_bundler.sh
- name: Xcode
run: sudo xcode-select -s /Applications/${{ matrix.xcode }}.app/Contents/Developer
run: sudo xcode-select -s /Applications/${{ matrix.build-env.xcode }}.app/Contents/Developer
- uses: nick-fields/retry@v3
with:
timeout_minutes: 120
max_attempts: 3
retry_on: error
retry_wait_seconds: 120
command: scripts/third_party/travis/retry.sh scripts/pod_lib_lint.rb FirebaseSessions.podspec --platforms=${{ matrix.target }} ${{ matrix.tests }}
command: scripts/third_party/travis/retry.sh scripts/pod_lib_lint.rb FirebaseSessions.podspec --platforms=${{ matrix.target }} ${{ matrix.build-env.tests }}

spm-package-resolved:
env:
Expand Down Expand Up @@ -86,22 +85,22 @@ jobs:
xcode: Xcode_15.4
target: iOS
- os: macos-15
xcode: Xcode_16
xcode: Xcode_16.1
target: iOS
- os: macos-15
xcode: Xcode_16
xcode: Xcode_16.1
target: tvOS
- os: macos-15
xcode: Xcode_16
xcode: Xcode_16.1
target: macOS
- os: macos-15
xcode: Xcode_16
xcode: Xcode_16.1
target: watchOS
- os: macos-15
xcode: Xcode_16
xcode: Xcode_16.1
target: catalyst
- os: macos-15
xcode: Xcode_16
xcode: Xcode_16.1
target: visionOS
runs-on: ${{ matrix.os }}
steps:
Expand Down
4 changes: 2 additions & 2 deletions .github/workflows/storage.yml
Original file line number Diff line number Diff line change
Expand Up @@ -139,8 +139,8 @@ jobs:
#- os: macos-13
# xcode: Xcode_14.2 # TODO: the legacy ObjC quickstart doesn't build with Xcode 15.
- swift: swift
os: macos-14
xcode: Xcode_15.3
os: macos-15
xcode: Xcode_16.1
env:
plist_secret: ${{ secrets.GHASecretsGPGPassphrase1 }}
signin_secret: ${{ secrets.GHASecretsGPGPassphrase1 }}
Expand Down

0 comments on commit 9adc6ed

Please sign in to comment.