2020 storage :
2121 # Don't run on private repo unless it is a PR.
2222 if : (github.repository == 'Firebase/firebase-ios-sdk' && github.event_name == 'schedule') || github.event_name == 'pull_request'
23+ strategy :
24+ matrix :
25+ include :
26+ # Only one os to avoid contention in the integration tests.
27+ # - os: macos-12
28+ # xcode: Xcode_14.2
29+ - os : macos-13
30+ xcode : xcode_15.0.1
2331 env :
2432 plist_secret : ${{ secrets.GHASecretsGPGPassphrase1 }}
25- runs-on : macos-12
33+ runs-on : ${{ matrix.os }}
2634 steps :
2735 - uses : actions/checkout@v3
2836 - uses : mikehardy/buildcache-action@c87cea0ccd718971d6cc39e672c4f26815b6c126
@@ -43,35 +51,56 @@ jobs:
4351 run : |
4452 scripts/decrypt_gha_secret.sh scripts/gha-encrypted/Storage/Credentials.swift.gpg \
4553 FirebaseStorage/Tests/Integration/Credentials.swift "$plist_secret"
54+ - name : Xcode
55+ run : sudo xcode-select -s /Applications/${{ matrix.xcode }}.app/Contents/Developer
4656 - name : BuildAndTest # can be replaced with pod lib lint with CocoaPods 1.10
4757 run : ([ -z $plist_secret ] || scripts/third_party/travis/retry.sh scripts/build.sh Storage all)
4858
4959 spm :
5060 # Don't run on private repo unless it is a PR.
5161 if : (github.repository == 'Firebase/firebase-ios-sdk' && github.event_name == 'schedule') || github.event_name == 'pull_request'
52- runs-on : macos-12
62+ strategy :
63+ matrix :
64+ include :
65+ - os : macos-12
66+ xcode : Xcode_14.2
67+ - os : macos-13
68+ xcode : xcode_15.0.1
69+ runs-on : ${{ matrix.os }}
5370 steps :
5471 - uses : actions/checkout@v3
5572 - uses : mikehardy/buildcache-action@c87cea0ccd718971d6cc39e672c4f26815b6c126
5673 with :
5774 cache_key : ${{ matrix.os }}
75+ - name : Xcode
76+ run : sudo xcode-select -s /Applications/${{ matrix.xcode }}.app/Contents/Developer
5877 - name : Initialize xcodebuild
5978 run : scripts/setup_spm_tests.sh
6079 - name : Swift Unit Tests
6180 run : scripts/third_party/travis/retry.sh ./scripts/build.sh FirebaseStorageUnit iOS spm
6281
6382 spm-cron :
6483 # Don't run on private repo.
65- if : github.event_name == 'schedule' && github.repository == 'Firebase/firebase-ios-sdk'
66- runs-on : macos-12
84+ # if: github.event_name == 'schedule' && github.repository == 'Firebase/firebase-ios-sdk'
6785 strategy :
6886 matrix :
6987 target : [tvOS, macOS, catalyst, watchOS]
88+ os : [macos-12, macos-13]
89+ include :
90+ - os : macos-12
91+ xcode : Xcode_14.2
92+ - os : macos-13
93+ xcode : xcode_15.0.1
94+ runs-on : ${{ matrix.os }}
7095 steps :
7196 - uses : actions/checkout@v3
7297 - uses : mikehardy/buildcache-action@c87cea0ccd718971d6cc39e672c4f26815b6c126
7398 with :
7499 cache_key : ${{ matrix.os }}
100+ - name : Xcodes
101+ run : ls -l /Applications/Xcode*
102+ - name : Xcode
103+ run : sudo xcode-select -s /Applications/${{ matrix.xcode }}.app/Contents/Developer
75104 - name : Initialize xcodebuild
76105 run : scripts/setup_spm_tests.sh
77106 - name : Unit Tests
@@ -80,11 +109,18 @@ jobs:
80109 quickstart :
81110 # Don't run on private repo unless it is a PR.
82111 if : (github.repository == 'Firebase/firebase-ios-sdk' && github.event_name == 'schedule') || github.event_name == 'pull_request'
112+ strategy :
113+ matrix :
114+ include :
115+ - os : macos-12
116+ xcode : Xcode_14.2
117+ - os : macos-13
118+ xcode : xcode_15.0.1
83119 env :
84120 plist_secret : ${{ secrets.GHASecretsGPGPassphrase1 }}
85121 signin_secret : ${{ secrets.GHASecretsGPGPassphrase1 }}
86122 LEGACY : true
87- runs-on : macos-12
123+ runs-on : ${{ matrix.os }}
88124 steps :
89125 - uses : actions/checkout@v3
90126 - uses : ruby/setup-ruby@v1
93129 - name : Install Secret GoogleService-Info.plist
94130 run : scripts/decrypt_gha_secret.sh scripts/gha-encrypted/qs-storage.plist.gpg \
95131 quickstart-ios/storage/GoogleService-Info.plist "$plist_secret"
132+ - name : Xcode
133+ run : sudo xcode-select -s /Applications/${{ matrix.xcode }}.app/Contents/Developer
96134 - name : Test objc quickstart
97135 run : ([ -z $plist_secret ] || scripts/third_party/travis/retry.sh scripts/test_quickstart.sh Storage true)
98136 - name : Test swift quickstart
@@ -128,31 +166,49 @@ jobs:
128166 pod-lib-lint :
129167 # Don't run on private repo unless it is a PR.
130168 if : (github.repository == 'Firebase/firebase-ios-sdk' && github.event_name == 'schedule') || github.event_name == 'pull_request'
131- runs-on : macos-12
132169 strategy :
133170 matrix :
134171 target : [ios, tvos, macos, watchos]
172+ os : [macos-12, macos-13]
173+ include :
174+ - os : macos-12
175+ xcode : Xcode_14.2
176+ - os : macos-13
177+ xcode : xcode_15.0.1
178+ runs-on : ${{ matrix.os }}
135179 steps :
136180 - uses : actions/checkout@v3
137181 - uses : ruby/setup-ruby@v1
138182 - name : Setup Bundler
139183 run : scripts/setup_bundler.sh
184+ - name : Xcodes
185+ run : ls -l /Applications/Xcode*
186+ - name : Xcode
187+ run : sudo xcode-select -s /Applications/${{ matrix.xcode }}.app/Contents/Developer
140188 - name : Build and test
141189 run : |
142190 scripts/third_party/travis/retry.sh scripts/pod_lib_lint.rb FirebaseStorage.podspec --test-specs=unit --platforms=${{ matrix.target }}
143191
144192 storage-cron-only :
145193 # Don't run on private repo.
146- if : github.event_name == 'schedule' && github.repository == 'Firebase/firebase-ios-sdk'
147- runs-on : macos-12
194+ # if: github.event_name == 'schedule' && github.repository == 'Firebase/firebase-ios-sdk'
148195 strategy :
149196 matrix :
150197 target : [ios, tvos, macos, watchos]
198+ os : [macos-12, macos-13]
199+ include :
200+ - os : macos-12
201+ xcode : Xcode_14.2
202+ - os : macos-13
203+ xcode : xcode_15.0.1
204+ runs-on : ${{ matrix.os }}
151205 needs : pod-lib-lint
152206 steps :
153207 - uses : actions/checkout@v3
154208 - uses : ruby/setup-ruby@v1
155209 - name : Setup Bundler
156210 run : scripts/setup_bundler.sh
211+ - name : Xcode
212+ run : sudo xcode-select -s /Applications/${{ matrix.xcode }}.app/Contents/Developer
157213 - name : PodLibLint Storage Cron
158214 run : scripts/third_party/travis/retry.sh scripts/pod_lib_lint.rb FirebaseStorage.podspec --platforms=${{ matrix.target }} --use-static-frameworks --skip-tests
0 commit comments