@@ -17,221 +17,151 @@ concurrency:
1717 cancel-in-progress : true
1818
1919jobs :
20- pod-lib-lint :
21- # Don't run on private repo unless it is a PR.
22- if : (github.repository == 'Firebase/firebase-ios-sdk' && github.event_name == 'schedule') || github.event_name == 'pull_request'
23-
24- strategy :
25- matrix :
26- include :
27- - os : macos-14
28- xcode : Xcode_16.2
29- target : ios
30- - os : macos-15
31- xcode : Xcode_16.2
32- target : ios
33- - os : macos-15
34- xcode : Xcode_16.2
35- target : tvos
36- - os : macos-15
37- xcode : Xcode_16.2
38- target : macos
39- - os : macos-15
40- xcode : Xcode_16.2
41- target : watchos
42- runs-on : ${{ matrix.os }}
43- steps :
44- - uses : actions/checkout@v4
45- - uses : ruby/setup-ruby@354a1ad156761f5ee2b7b13fa8e09943a5e8d252 # v1
46- - name : Setup Bundler
47- run : scripts/setup_bundler.sh
48- - name : Xcode
49- run : sudo xcode-select -s /Applications/${{ matrix.xcode }}.app/Contents/Developer
50- - uses : nick-fields/retry@ce71cc2ab81d554ebbe88c79ab5975992d79ba08 # v3
51- with :
52- timeout_minutes : 120
53- max_attempts : 3
54- retry_on : error
55- retry_wait_seconds : 120
56- command : scripts/pod_lib_lint.rb FirebaseABTesting.podspec --platforms=${{ matrix.target }}
57-
58- spm-package-resolved :
59- env :
60- FIREBASECI_USE_LATEST_GOOGLEAPPMEASUREMENT : 1
61- runs-on : macos-15
62- outputs :
63- cache_key : ${{ steps.generate_cache_key.outputs.cache_key }}
64- steps :
65- - uses : actions/checkout@v4
66- - name : Xcode
67- run : sudo xcode-select -s /Applications/Xcode_16.2.app/Contents/Developer
68- - name : Generate Swift Package.resolved
69- id : swift_package_resolve
70- run : |
71- swift package resolve
72- - name : Generate cache key
73- id : generate_cache_key
74- run : |
75- cache_key="${{ runner.os }}-spm-${{ hashFiles('**/Package.resolved') }}"
76- echo "cache_key=${cache_key}" >> "$GITHUB_OUTPUT"
77- - uses : actions/cache/save@v4
78- id : cache
79- with :
80- path : .build
81- key : ${{ steps.generate_cache_key.outputs.cache_key }}
20+ # pod-lib-lint:
21+ # # Don't run on private repo unless it is a PR.
22+ # if: (github.repository == 'Firebase/firebase-ios-sdk' && github.event_name == 'schedule') || github.event_name == 'pull_request'
23+ #
24+ # strategy:
25+ # matrix:
26+ # include:
27+ # - os: macos-14
28+ # xcode: Xcode_16.2
29+ # target: ios
30+ # - os: macos-15
31+ # xcode: Xcode_16.2
32+ # target: ios
33+ # - os: macos-15
34+ # xcode: Xcode_16.2
35+ # target: tvos
36+ # - os: macos-15
37+ # xcode: Xcode_16.2
38+ # target: macos
39+ # - os: macos-15
40+ # xcode: Xcode_16.2
41+ # target: watchos
42+ # runs-on: ${{ matrix.os }}
43+ # steps:
44+ # - uses: actions/checkout@v4
45+ # - uses: ruby/setup-ruby@354a1ad156761f5ee2b7b13fa8e09943a5e8d252 # v1
46+ # - name: Setup Bundler
47+ # run: scripts/setup_bundler.sh
48+ # - name: Xcode
49+ # run: sudo xcode-select -s /Applications/${{ matrix.xcode }}.app/Contents/Developer
50+ # - uses: nick-fields/retry@ce71cc2ab81d554ebbe88c79ab5975992d79ba08 # v3
51+ # with:
52+ # timeout_minutes: 120
53+ # max_attempts: 3
54+ # retry_on: error
55+ # retry_wait_seconds: 120
56+ # command: scripts/pod_lib_lint.rb FirebaseABTesting.podspec --platforms=${{ matrix.target }}
8257
8358 spm :
84- # Don't run on private repo unless it is a PR.
85- if : (github.repository == 'Firebase/firebase-ios-sdk' && github.event_name == 'schedule') || github.event_name == 'pull_request'
86- needs : [spm-package-resolved]
87- strategy :
88- matrix :
89- include :
90- - os : macos-14
91- xcode : Xcode_16.2
92- target : iOS
93- - os : macos-15
94- xcode : Xcode_16.2
95- target : iOS
96- - os : macos-15
97- xcode : Xcode_16.2
98- target : tvOS
99- - os : macos-15
100- xcode : Xcode_16.2
101- target : macOS
102- - os : macos-15
103- xcode : Xcode_16.2
104- target : watchOS
105- - os : macos-15
106- xcode : Xcode_16.2
107- target : catalyst
108- - os : macos-15
109- xcode : Xcode_16.2
110- target : visionOS
111- runs-on : ${{ matrix.os }}
112- steps :
113- - uses : actions/checkout@v4
114- - uses : actions/cache/restore@v4
115- with :
116- path : .build
117- key : ${{needs.spm-package-resolved.outputs.cache_key}}
118- - name : Xcode
119- run : sudo xcode-select -s /Applications/${{ matrix.xcode }}.app/Contents/Developer
120- - name : Install visionOS, if needed.
121- if : matrix.target == 'visionOS'
122- run : xcodebuild -downloadPlatform visionOS
123- - name : Initialize xcodebuild
124- run : scripts/setup_spm_tests.sh
125- - uses : nick-fields/retry@ce71cc2ab81d554ebbe88c79ab5975992d79ba08 # v3
126- with :
127- timeout_minutes : 120
128- max_attempts : 3
129- retry_on : error
130- retry_wait_seconds : 120
131- command : scripts/build.sh ABTestingUnit ${{ matrix.target }} spm
132-
133- catalyst :
134- # Don't run on private repo unless it is a PR.
135- if : (github.repository == 'Firebase/firebase-ios-sdk' && github.event_name == 'schedule') || github.event_name == 'pull_request'
136-
137- runs-on : macos-15
138- steps :
139- - uses : actions/checkout@v4
140- - uses : mikehardy/buildcache-action@c87cea0ccd718971d6cc39e672c4f26815b6c126
141- with :
142- cache_key : catalyst${{ matrix.os }}
143- - uses : ruby/setup-ruby@354a1ad156761f5ee2b7b13fa8e09943a5e8d252 # v1
144- - name : Setup Bundler
145- run : scripts/setup_bundler.sh
146- - name : Xcode
147- run : sudo xcode-select -s /Applications/Xcode_16.2.app/Contents/Developer
148- - uses : nick-fields/retry@ce71cc2ab81d554ebbe88c79ab5975992d79ba08 # v3
149- with :
150- timeout_minutes : 120
151- max_attempts : 3
152- retry_on : error
153- retry_wait_seconds : 120
154- command : scripts/test_catalyst.sh FirebaseABTesting test FirebaseABTesting-Unit-unit
155-
156- quickstart :
157- # Don't run on private repo unless it is a PR.
158- if : (github.repository == 'Firebase/firebase-ios-sdk' && github.event_name == 'schedule') || github.event_name == 'pull_request'
159-
160- env :
161- plist_secret : ${{ secrets.GHASecretsGPGPassphrase1 }}
162- signin_secret : ${{ secrets.GHASecretsGPGPassphrase1 }}
163- runs-on : macos-15
164- steps :
165- - uses : actions/checkout@v4
166- - uses : ruby/setup-ruby@354a1ad156761f5ee2b7b13fa8e09943a5e8d252 # v1
167- - name : Xcode
168- run : sudo xcode-select -s /Applications/Xcode_16.2.app/Contents/Developer
169- - name : Setup quickstart
170- env :
171- LEGACY : true
172- run : scripts/setup_quickstart.sh abtesting
173- - name : Install Secret GoogleService-Info.plist
174- run : scripts/decrypt_gha_secret.sh scripts/gha-encrypted/qs-abtesting.plist.gpg \
175- quickstart-ios/abtesting/GoogleService-Info.plist "$plist_secret"
176- - name : Test swift quickstart
177- env :
178- LEGACY : true
179- run : ([ -z $plist_secret ] || scripts/third_party/travis/retry.sh scripts/test_quickstart.sh ABTesting true)
180-
181- quickstart-ftl-cron-only :
182- # Don't run on private repo.
183- if : github.repository == 'Firebase/firebase-ios-sdk' && github.event_name == 'schedule'
184-
185- env :
186- plist_secret : ${{ secrets.GHASecretsGPGPassphrase1 }}
187- signin_secret : ${{ secrets.GHASecretsGPGPassphrase1 }}
188- runs-on : macos-15
189- steps :
190- - uses : actions/checkout@v4
191- - uses : ruby/setup-ruby@354a1ad156761f5ee2b7b13fa8e09943a5e8d252 # v1
192- - uses : actions/setup-python@v5
193- with :
194- python-version : ' 3.11'
195- - name : Setup quickstart
196- env :
197- LEGACY : true
198- run : scripts/setup_quickstart.sh abtesting
199- - name : Install Secret GoogleService-Info.plist
200- run : scripts/decrypt_gha_secret.sh scripts/gha-encrypted/qs-abtesting.plist.gpg \
201- quickstart-ios/abtesting/GoogleService-Info.plist "$plist_secret"
202- - name : Xcode
203- run : sudo xcode-select -s /Applications/Xcode_16.2.app/Contents/Developer
204- - name : Build swift quickstart
205- env :
206- LEGACY : true
207- run : ([ -z $plist_secret ] || scripts/third_party/travis/retry.sh scripts/test_quickstart_ftl.sh ABTesting)
208- - id : ftl_test
209- uses :
FirebaseExtended/github-actions/[email protected] 210- with :
211- credentials_json : ${{ secrets.FIREBASE_SERVICE_ACCOUNT_CREDENTIALS }}
212- testapp_dir : quickstart-ios/build-for-testing
213- test_type : " xctest"
214-
215- abtesting-cron-only :
216- # Don't run on private repo.
217- if : github.event_name == 'schedule' && github.repository == 'Firebase/firebase-ios-sdk'
59+ uses : ./.github/workflows/common.yml
60+ with :
61+ target : ABTestingUnit
21862
219- runs-on : macos-15
220- strategy :
221- matrix :
222- target : [ios, tvos, macos]
223- flags : [
224- ' --use-static-frameworks'
225- ]
226- needs : pod-lib-lint
227- steps :
228- - uses : actions/checkout@v4
229- - uses : ruby/setup-ruby@354a1ad156761f5ee2b7b13fa8e09943a5e8d252 # v1
230- - name : Setup Bundler
231- run : scripts/setup_bundler.sh
232- - name : Xcode
233- run : sudo xcode-select -s /Applications/Xcode_16.2.app/Contents/Developer
234- - name : PodLibLint ABTesting Cron
235- run : |
236- scripts/third_party/travis/retry.sh scripts/pod_lib_lint.rb \
237- FirebaseABTesting.podspec --platforms=${{ matrix.target }} ${{ matrix.flags }}
63+ # catalyst:
64+ # # Don't run on private repo unless it is a PR.
65+ # if: (github.repository == 'Firebase/firebase-ios-sdk' && github.event_name == 'schedule') || github.event_name == 'pull_request'
66+ #
67+ # runs-on: macos-15
68+ # steps:
69+ # - uses: actions/checkout@v4
70+ # - uses: mikehardy/buildcache-action@c87cea0ccd718971d6cc39e672c4f26815b6c126
71+ # with:
72+ # cache_key: catalyst${{ matrix.os }}
73+ # - uses: ruby/setup-ruby@354a1ad156761f5ee2b7b13fa8e09943a5e8d252 # v1
74+ # - name: Setup Bundler
75+ # run: scripts/setup_bundler.sh
76+ # - name: Xcode
77+ # run: sudo xcode-select -s /Applications/Xcode_16.2.app/Contents/Developer
78+ # - uses: nick-fields/retry@ce71cc2ab81d554ebbe88c79ab5975992d79ba08 # v3
79+ # with:
80+ # timeout_minutes: 120
81+ # max_attempts: 3
82+ # retry_on: error
83+ # retry_wait_seconds: 120
84+ # command: scripts/test_catalyst.sh FirebaseABTesting test FirebaseABTesting-Unit-unit
85+ #
86+ # quickstart:
87+ # # Don't run on private repo unless it is a PR.
88+ # if: (github.repository == 'Firebase/firebase-ios-sdk' && github.event_name == 'schedule') || github.event_name == 'pull_request'
89+ #
90+ # env:
91+ # plist_secret: ${{ secrets.GHASecretsGPGPassphrase1 }}
92+ # signin_secret: ${{ secrets.GHASecretsGPGPassphrase1 }}
93+ # runs-on: macos-15
94+ # steps:
95+ # - uses: actions/checkout@v4
96+ # - uses: ruby/setup-ruby@354a1ad156761f5ee2b7b13fa8e09943a5e8d252 # v1
97+ # - name: Xcode
98+ # run: sudo xcode-select -s /Applications/Xcode_16.2.app/Contents/Developer
99+ # - name: Setup quickstart
100+ # env:
101+ # LEGACY: true
102+ # run: scripts/setup_quickstart.sh abtesting
103+ # - name: Install Secret GoogleService-Info.plist
104+ # run: scripts/decrypt_gha_secret.sh scripts/gha-encrypted/qs-abtesting.plist.gpg \
105+ # quickstart-ios/abtesting/GoogleService-Info.plist "$plist_secret"
106+ # - name: Test swift quickstart
107+ # env:
108+ # LEGACY: true
109+ # run: ([ -z $plist_secret ] || scripts/third_party/travis/retry.sh scripts/test_quickstart.sh ABTesting true)
110+ #
111+ # quickstart-ftl-cron-only:
112+ # # Don't run on private repo.
113+ # if: github.repository == 'Firebase/firebase-ios-sdk' && github.event_name == 'schedule'
114+ #
115+ # env:
116+ # plist_secret: ${{ secrets.GHASecretsGPGPassphrase1 }}
117+ # signin_secret: ${{ secrets.GHASecretsGPGPassphrase1 }}
118+ # runs-on: macos-15
119+ # steps:
120+ # - uses: actions/checkout@v4
121+ # - uses: ruby/setup-ruby@354a1ad156761f5ee2b7b13fa8e09943a5e8d252 # v1
122+ # - uses: actions/setup-python@v5
123+ # with:
124+ # python-version: '3.11'
125+ # - name: Setup quickstart
126+ # env:
127+ # LEGACY: true
128+ # run: scripts/setup_quickstart.sh abtesting
129+ # - name: Install Secret GoogleService-Info.plist
130+ # run: scripts/decrypt_gha_secret.sh scripts/gha-encrypted/qs-abtesting.plist.gpg \
131+ # quickstart-ios/abtesting/GoogleService-Info.plist "$plist_secret"
132+ # - name: Xcode
133+ # run: sudo xcode-select -s /Applications/Xcode_16.2.app/Contents/Developer
134+ # - name: Build swift quickstart
135+ # env:
136+ # LEGACY: true
137+ # run: ([ -z $plist_secret ] || scripts/third_party/travis/retry.sh scripts/test_quickstart_ftl.sh ABTesting)
138+ # - id: ftl_test
139+ # uses: FirebaseExtended/github-actions/[email protected] 140+ # with:
141+ # credentials_json: ${{ secrets.FIREBASE_SERVICE_ACCOUNT_CREDENTIALS }}
142+ # testapp_dir: quickstart-ios/build-for-testing
143+ # test_type: "xctest"
144+ #
145+ # abtesting-cron-only:
146+ # # Don't run on private repo.
147+ # if: github.event_name == 'schedule' && github.repository == 'Firebase/firebase-ios-sdk'
148+ #
149+ # runs-on: macos-15
150+ # strategy:
151+ # matrix:
152+ # target: [ios, tvos, macos]
153+ # flags: [
154+ # '--use-static-frameworks'
155+ # ]
156+ # needs: pod-lib-lint
157+ # steps:
158+ # - uses: actions/checkout@v4
159+ # - uses: ruby/setup-ruby@354a1ad156761f5ee2b7b13fa8e09943a5e8d252 # v1
160+ # - name: Setup Bundler
161+ # run: scripts/setup_bundler.sh
162+ # - name: Xcode
163+ # run: sudo xcode-select -s /Applications/Xcode_16.2.app/Contents/Developer
164+ # - name: PodLibLint ABTesting Cron
165+ # run: |
166+ # scripts/third_party/travis/retry.sh scripts/pod_lib_lint.rb \
167+ # FirebaseABTesting.podspec --platforms=${{ matrix.target }} ${{ matrix.flags }}
0 commit comments