Skip to content

Commit 257d948

Browse files
authored
Add jobs to build quickstart apps and run tests on FTL (#10519)
1 parent bcd9f76 commit 257d948

File tree

11 files changed

+325
-9
lines changed

11 files changed

+325
-9
lines changed

.github/workflows/abtesting.yml

Lines changed: 29 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -77,7 +77,6 @@ jobs:
7777
runs-on: macos-12
7878
steps:
7979
- uses: actions/checkout@v3
80-
- uses: actions/checkout@v3
8180
- uses: ruby/setup-ruby@v1
8281
- name: Setup quickstart
8382
env:
@@ -91,6 +90,35 @@ jobs:
9190
LEGACY: true
9291
run: ([ -z $plist_secret ] || scripts/third_party/travis/retry.sh scripts/test_quickstart.sh ABTesting true)
9392

93+
quickstart-ftl-cron-only:
94+
# Don't run on private repo.
95+
if: github.repository == 'Firebase/firebase-ios-sdk' && github.event_name == 'schedule'
96+
97+
env:
98+
plist_secret: ${{ secrets.GHASecretsGPGPassphrase1 }}
99+
signin_secret: ${{ secrets.GHASecretsGPGPassphrase1 }}
100+
runs-on: macos-12
101+
steps:
102+
- uses: actions/checkout@v3
103+
- uses: ruby/setup-ruby@v1
104+
- name: Setup quickstart
105+
env:
106+
LEGACY: true
107+
run: scripts/setup_quickstart.sh abtesting
108+
- name: Install Secret GoogleService-Info.plist
109+
run: scripts/decrypt_gha_secret.sh scripts/gha-encrypted/qs-abtesting.plist.gpg \
110+
quickstart-ios/abtesting/GoogleService-Info.plist "$plist_secret"
111+
- name: Build swift quickstart
112+
env:
113+
LEGACY: true
114+
run: ([ -z $plist_secret ] || scripts/third_party/travis/retry.sh scripts/test_quickstart_ftl.sh ABTesting)
115+
- id: ftl_test
116+
uses: FirebaseExtended/github-actions/[email protected]
117+
with:
118+
credentials_json: ${{ secrets.FIREBASE_SERVICE_ACCOUNT_CREDENTIALS }}
119+
testapp_dir: quickstart-ios/build-for-testing
120+
test_type: "xctest"
121+
94122
abtesting-cron-only:
95123
# Don't run on private repo.
96124
if: github.event_name == 'schedule' && github.repository == 'Firebase/firebase-ios-sdk'

.github/workflows/auth.yml

Lines changed: 26 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -133,6 +133,32 @@ jobs:
133133
- name: Test swift quickstart
134134
run: ([ -z $plist_secret ] || scripts/third_party/travis/retry.sh scripts/test_quickstart.sh Authentication false)
135135

136+
# TODO(@sunmou99): currently have issue with this job, will re-enable it once the issue resolved.
137+
# quickstart-ftl-cron-only:
138+
# # Don't run on private repo.
139+
# if: (github.repository == 'Firebase/firebase-ios-sdk' && github.event_name == 'schedule') || github.event_name == 'pull_request'
140+
141+
# env:
142+
# plist_secret: ${{ secrets.GHASecretsGPGPassphrase1 }}
143+
# signin_secret: ${{ secrets.GHASecretsGPGPassphrase1 }}
144+
# runs-on: macos-12
145+
# steps:
146+
# - uses: actions/checkout@v3
147+
# - uses: ruby/setup-ruby@v1
148+
# - name: Setup quickstart
149+
# run: scripts/setup_quickstart.sh authentication
150+
# - name: Install Secret GoogleService-Info.plist
151+
# run: scripts/decrypt_gha_secret.sh scripts/gha-encrypted/qs-auth.plist.gpg \
152+
# quickstart-ios/authentication/GoogleService-Info.plist "$plist_secret"
153+
# - name: Build swift quickstart
154+
# run: ([ -z $plist_secret ] || scripts/third_party/travis/retry.sh scripts/test_quickstart_ftl.sh Authentication)
155+
# - id: ftl_test
156+
# uses: FirebaseExtended/github-actions/[email protected]
157+
# with:
158+
# credentials_json: ${{ secrets.FIREBASE_SERVICE_ACCOUNT_CREDENTIALS }}
159+
# testapp_dir: quickstart-ios/build-for-testing
160+
# test_type: "xctest"
161+
136162
auth-cron-only:
137163
# Don't run on private repo.
138164
if: github.event_name == 'schedule' && github.repository == 'Firebase/firebase-ios-sdk'

.github/workflows/crashlytics.yml

Lines changed: 38 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -80,7 +80,6 @@ jobs:
8080
runs-on: macos-12
8181
steps:
8282
- uses: actions/checkout@v3
83-
- uses: actions/checkout@v3
8483
- uses: ruby/setup-ruby@v1
8584
- name: Setup quickstart
8685
run: scripts/setup_quickstart.sh crashlytics
@@ -103,6 +102,44 @@ jobs:
103102
env:
104103
LEGACY: true
105104

105+
quickstart-ftl-cron-only:
106+
# Don't run on private repo.
107+
if: github.repository == 'Firebase/firebase-ios-sdk' && github.event_name == 'schedule'
108+
109+
env:
110+
plist_secret: ${{ secrets.GHASecretsGPGPassphrase1 }}
111+
signin_secret: ${{ secrets.GHASecretsGPGPassphrase1 }}
112+
runs-on: macos-12
113+
steps:
114+
- uses: actions/checkout@v3
115+
- uses: ruby/setup-ruby@v1
116+
- name: Setup quickstart
117+
run: scripts/setup_quickstart.sh crashlytics
118+
env:
119+
LEGACY: true
120+
- name: Install Secret GoogleService-Info.plist
121+
run: scripts/decrypt_gha_secret.sh scripts/gha-encrypted/qs-crashlytics.plist.gpg \
122+
quickstart-ios/crashlytics/GoogleService-Info.plist "$plist_secret"
123+
- name: Build objc quickstart
124+
run: |
125+
mkdir quickstart-ios/crashlytics/LegacyCrashlyticsQuickstart/Pods/FirebaseCrashlytics
126+
# Set the deployed pod location of run and upload-symbols with the development pod version.
127+
cp Crashlytics/run quickstart-ios/crashlytics/LegacyCrashlyticsQuickstart/Pods/FirebaseCrashlytics/
128+
cp Crashlytics/upload-symbols quickstart-ios/crashlytics/LegacyCrashlyticsQuickstart/Pods/FirebaseCrashlytics/
129+
([ -z $plist_secret ] || scripts/third_party/travis/retry.sh scripts/test_quickstart_ftl.sh Crashlytics)
130+
env:
131+
LEGACY: true
132+
- name: Build swift quickstart
133+
run: ([ -z $plist_secret ] || scripts/third_party/travis/retry.sh scripts/test_quickstart_ftl.sh Crashlytics swift)
134+
env:
135+
LEGACY: true
136+
- id: ftl_test
137+
uses: FirebaseExtended/github-actions/[email protected]
138+
with:
139+
credentials_json: ${{ secrets.FIREBASE_SERVICE_ACCOUNT_CREDENTIALS }}
140+
testapp_dir: quickstart-ios/build-for-testing
141+
test_type: "xctest"
142+
106143
crashlytics-cron-only:
107144
# Don't run on private repo.
108145
if: github.event_name == 'schedule' && github.repository == 'Firebase/firebase-ios-sdk'

.github/workflows/dynamiclinks.yml

Lines changed: 33 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -72,7 +72,6 @@ jobs:
7272
runs-on: macos-12
7373
steps:
7474
- uses: actions/checkout@v3
75-
- uses: actions/checkout@v3
7675
- uses: ruby/setup-ruby@v1
7776
- name: Setup quickstart
7877
run: scripts/setup_quickstart.sh DynamicLinks
@@ -89,3 +88,36 @@ jobs:
8988
- name: Test swift quickstart
9089
if: ${{ always() }}
9190
run: ([ -z $plist_secret ] || scripts/third_party/travis/retry.sh scripts/test_quickstart.sh DynamicLinks true swift)
91+
92+
quickstart-ftl-cron-only:
93+
# Don't run on private repo.
94+
if: github.repository == 'Firebase/firebase-ios-sdk' && github.event_name == 'schedule'
95+
96+
env:
97+
plist_secret: ${{ secrets.GHASecretsGPGPassphrase1 }}
98+
signin_secret: ${{ secrets.GHASecretsGPGPassphrase1 }}
99+
runs-on: macos-12
100+
steps:
101+
- uses: actions/checkout@v3
102+
- uses: ruby/setup-ruby@v1
103+
- name: Setup quickstart
104+
run: scripts/setup_quickstart.sh DynamicLinks
105+
- name: Install Secret GoogleService-Info.plist
106+
run: scripts/decrypt_gha_secret.sh scripts/gha-encrypted/qs-dynamiclinks.plist.gpg \
107+
quickstart-ios/dynamiclinks/GoogleService-Info.plist "$plist_secret"
108+
- name: Update Environment Variable For DynamicLinks
109+
run: |
110+
sed -i '' 's#DYNAMIC_LINK_DOMAIN#https://qpf6m.app.goo.gl#' quickstart-ios/dynamiclinks/DynamicLinksExample/DynamicLinksExample.entitlements
111+
sed -i '' 's#YOUR_DOMAIN_URI_PREFIX";#https://qpf6m.app.goo.gl";#' quickstart-ios/dynamiclinks/DynamicLinksExample/ViewController.m
112+
sed -i '' 's#YOUR_DOMAIN_URI_PREFIX";#https://qpf6m.app.goo.gl";#' quickstart-ios/dynamiclinks/DynamicLinksExampleSwift/ViewController.swift
113+
# - name: Build objc quickstart
114+
# run: ([ -z $plist_secret ] || scripts/third_party/travis/retry.sh scripts/test_quickstart_ftl.sh DynamicLinks)
115+
- name: Build swift quickstart
116+
if: ${{ always() }}
117+
run: ([ -z $plist_secret ] || scripts/third_party/travis/retry.sh scripts/test_quickstart_ftl.sh DynamicLinks swift)
118+
- id: ftl_test
119+
uses: FirebaseExtended/github-actions/[email protected]
120+
with:
121+
credentials_json: ${{ secrets.FIREBASE_SERVICE_ACCOUNT_CREDENTIALS }}
122+
testapp_dir: quickstart-ios/build-for-testing
123+
test_type: "xctest"

.github/workflows/functions.yml

Lines changed: 32 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -94,7 +94,6 @@ jobs:
9494

9595
steps:
9696
- uses: actions/checkout@v3
97-
- uses: actions/checkout@v3
9897
- uses: ruby/setup-ruby@v1
9998
- name: Setup quickstart
10099
run: scripts/setup_quickstart.sh functions
@@ -110,6 +109,38 @@ jobs:
110109
run: ([ -z $plist_secret ] ||
111110
scripts/third_party/travis/retry.sh scripts/test_quickstart.sh Functions true swift)
112111

112+
quickstart-ftl-cron-only:
113+
# Don't run on private repo
114+
if: github.repository == 'Firebase/firebase-ios-sdk' && github.event_name == 'schedule'
115+
env:
116+
plist_secret: ${{ secrets.GHASecretsGPGPassphrase1 }}
117+
signin_secret: ${{ secrets.GHASecretsGPGPassphrase1 }}
118+
LEGACY: true
119+
runs-on: macos-12
120+
121+
steps:
122+
- uses: actions/checkout@v3
123+
- uses: ruby/setup-ruby@v1
124+
- name: Setup quickstart
125+
run: scripts/setup_quickstart.sh functions
126+
- name: install secret googleservice-info.plist
127+
run: scripts/decrypt_gha_secret.sh scripts/gha-encrypted/qs-functions.plist.gpg \
128+
quickstart-ios/functions/GoogleService-Info.plist "$plist_secret"
129+
- name: Setup custom URL scheme
130+
run: sed -i '' 's/REVERSED_CLIENT_ID/com.googleusercontent.apps.1025801074639-6p6ebi8amuklcjrto20gvpe295smm8u6/' quickstart-ios/functions/LegacyFunctionsQuickstart/FunctionsExample/Info.plist
131+
- name: Build objc quickstart
132+
run: ([ -z $plist_secret ] ||
133+
scripts/third_party/travis/retry.sh scripts/test_quickstart_ftl.sh Functions)
134+
- name: Build swift quickstart
135+
run: ([ -z $plist_secret ] ||
136+
scripts/third_party/travis/retry.sh scripts/test_quickstart_ftl.sh Functions swift)
137+
- id: ftl_test
138+
uses: FirebaseExtended/github-actions/[email protected]
139+
with:
140+
credentials_json: ${{ secrets.FIREBASE_SERVICE_ACCOUNT_CREDENTIALS }}
141+
testapp_dir: quickstart-ios/build-for-testing
142+
test_type: "xctest"
143+
113144
functions-cron-only:
114145
# Don't run on private repo.
115146
if: github.event_name == 'schedule' && github.repository == 'Firebase/firebase-ios-sdk'

.github/workflows/installations.yml

Lines changed: 23 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -88,7 +88,6 @@ jobs:
8888
runs-on: macos-12
8989
steps:
9090
- uses: actions/checkout@v3
91-
- uses: actions/checkout@v3
9291
- uses: ruby/setup-ruby@v1
9392
- name: Setup quickstart
9493
run: scripts/setup_quickstart.sh installations
@@ -99,6 +98,29 @@ jobs:
9998
- name: Test swift quickstart
10099
run: scripts/third_party/travis/retry.sh scripts/test_quickstart.sh Installations true swift
101100

101+
quickstart-ftl-cron-only:
102+
# Don't run on private repo.
103+
if: github.repository == 'Firebase/firebase-ios-sdk' && github.event_name == 'schedule'
104+
105+
runs-on: macos-12
106+
steps:
107+
- uses: actions/checkout@v3
108+
- uses: ruby/setup-ruby@v1
109+
- name: Setup quickstart
110+
run: scripts/setup_quickstart.sh installations
111+
- name: Copy mock plist
112+
run: cp quickstart-ios/mock-GoogleService-Info.plist quickstart-ios/installations/GoogleService-Info.plist
113+
- name: Build objc quickstart
114+
run: scripts/third_party/travis/retry.sh scripts/test_quickstart_ftl.sh Installations
115+
- name: Build swift quickstart
116+
run: scripts/third_party/travis/retry.sh scripts/test_quickstart_ftl.sh Installations swift
117+
- id: ftl_test
118+
uses: FirebaseExtended/github-actions/[email protected]
119+
with:
120+
credentials_json: ${{ secrets.FIREBASE_SERVICE_ACCOUNT_CREDENTIALS }}
121+
testapp_dir: quickstart-ios/build-for-testing
122+
test_type: "xctest"
123+
102124
installations-cron-only:
103125
if: github.event_name == 'schedule' && github.repository == 'Firebase/firebase-ios-sdk'
104126

.github/workflows/messaging.yml

Lines changed: 28 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -124,7 +124,6 @@ jobs:
124124
runs-on: macos-12
125125
steps:
126126
- uses: actions/checkout@v3
127-
- uses: actions/checkout@v3
128127
- uses: ruby/setup-ruby@v1
129128
- name: Setup quickstart
130129
run: scripts/setup_quickstart.sh messaging
@@ -138,6 +137,34 @@ jobs:
138137
run: ([ -z $plist_secret ] ||
139138
scripts/third_party/travis/retry.sh scripts/test_quickstart.sh Messaging false swift)
140139

140+
quickstart-ftl-cron-only:
141+
# Don't run on private repo.
142+
if: github.repository == 'Firebase/firebase-ios-sdk' && github.event_name == 'schedule'
143+
env:
144+
plist_secret: ${{ secrets.GHASecretsGPGPassphrase1 }}
145+
signin_secret: ${{ secrets.GHASecretsGPGPassphrase1 }}
146+
runs-on: macos-12
147+
steps:
148+
- uses: actions/checkout@v3
149+
- uses: ruby/setup-ruby@v1
150+
- name: Setup quickstart
151+
run: scripts/setup_quickstart.sh messaging
152+
- name: Install Secret GoogleService-Info.plist
153+
run: scripts/decrypt_gha_secret.sh scripts/gha-encrypted/qs-messaging.plist.gpg \
154+
quickstart-ios/messaging/GoogleService-Info.plist "$plist_secret"
155+
- name: Build objc quickstart
156+
run: ([ -z $plist_secret ] ||
157+
scripts/third_party/travis/retry.sh scripts/test_quickstart_ftl.sh Messaging)
158+
- name: Build swift quickstart
159+
run: ([ -z $plist_secret ] ||
160+
scripts/third_party/travis/retry.sh scripts/test_quickstart_ftl.sh Messaging swift)
161+
- id: ftl_test
162+
uses: FirebaseExtended/github-actions/[email protected]
163+
with:
164+
credentials_json: ${{ secrets.FIREBASE_SERVICE_ACCOUNT_CREDENTIALS }}
165+
testapp_dir: quickstart-ios/build-for-testing
166+
test_type: "xctest"
167+
141168
messaging-cron-only:
142169
# Don't run on private repo.
143170
if: github.event_name == 'schedule' && github.repository == 'Firebase/firebase-ios-sdk'

.github/workflows/performance.yml

Lines changed: 26 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -72,7 +72,6 @@ jobs:
7272
runs-on: macos-12
7373
steps:
7474
- uses: actions/checkout@v3
75-
- uses: actions/checkout@v3
7675
- uses: ruby/setup-ruby@v1
7776
- name: Setup quickstart
7877
run: scripts/setup_quickstart.sh performance
@@ -84,6 +83,32 @@ jobs:
8483
- name: Test objc quickstart
8584
run: ([ -z $plist_secret ] || scripts/third_party/travis/retry.sh scripts/test_quickstart.sh Performance true)
8685

86+
quickstart-ftl-cron-only:
87+
if: github.repository == 'Firebase/firebase-ios-sdk' && github.event_name == 'schedule'
88+
89+
env:
90+
plist_secret: ${{ secrets.GHASecretsGPGPassphrase1 }}
91+
signin_secret: ${{ secrets.GHASecretsGPGPassphrase1 }}
92+
runs-on: macos-12
93+
steps:
94+
- uses: actions/checkout@v3
95+
- uses: ruby/setup-ruby@v1
96+
- name: Setup quickstart
97+
run: scripts/setup_quickstart.sh performance
98+
- name: Install Secret GoogleService-Info.plist
99+
run: scripts/decrypt_gha_secret.sh scripts/gha-encrypted/qs-performance.plist.gpg \
100+
quickstart-ios/performance/GoogleService-Info.plist "$plist_secret"
101+
- name: Build swift quickstart
102+
run: ([ -z $plist_secret ] || scripts/third_party/travis/retry.sh scripts/test_quickstart_ftl.sh Performance swift)
103+
# - name: Build objc quickstart
104+
# run: ([ -z $plist_secret ] || scripts/third_party/travis/retry.sh scripts/test_quickstart_ftl.sh Performance)
105+
- id: ftl_test
106+
uses: FirebaseExtended/github-actions/[email protected]
107+
with:
108+
credentials_json: ${{ secrets.FIREBASE_SERVICE_ACCOUNT_CREDENTIALS }}
109+
testapp_dir: quickstart-ios/build-for-testing
110+
test_type: "xctest"
111+
87112
spm:
88113
# Don't run on private repo unless it is a PR.
89114
if: (github.repository == 'Firebase/firebase-ios-sdk' && github.event_name == 'schedule') || github.event_name == 'pull_request'

.github/workflows/remoteconfig.yml

Lines changed: 25 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -113,7 +113,6 @@ jobs:
113113
runs-on: macos-12
114114
steps:
115115
- uses: actions/checkout@v3
116-
- uses: actions/checkout@v3
117116
- uses: ruby/setup-ruby@v1
118117
- name: Setup quickstart
119118
run: scripts/setup_quickstart.sh config
@@ -123,6 +122,31 @@ jobs:
123122
- name: Test Swift Quickstart
124123
run: ([ -z $plist_secret ] || scripts/third_party/travis/retry.sh scripts/test_quickstart.sh Config true)
125124

125+
# TODO(@sunmou99): currently have issue with this job, will re-enable it once the issue resolved.
126+
# quickstart-ftl-cron-only:
127+
# # Don't run on private repo.
128+
# if: (github.repository == 'Firebase/firebase-ios-sdk' && github.event_name == 'schedule') || github.event_name == 'pull_request'
129+
# env:
130+
# plist_secret: ${{ secrets.GHASecretsGPGPassphrase1 }}
131+
# signin_secret: ${{ secrets.GHASecretsGPGPassphrase1 }}
132+
# runs-on: macos-12
133+
# steps:
134+
# - uses: actions/checkout@v3
135+
# - uses: ruby/setup-ruby@v1
136+
# - name: Setup quickstart
137+
# run: scripts/setup_quickstart.sh config
138+
# - name: Install Secret GoogleService-Info.plist
139+
# run: scripts/decrypt_gha_secret.sh scripts/gha-encrypted/qs-config.plist.gpg \
140+
# quickstart-ios/config/GoogleService-Info.plist "$plist_secret"
141+
# - name: Build Swift Quickstart
142+
# run: ([ -z $plist_secret ] || scripts/third_party/travis/retry.sh scripts/test_quickstart_ftl.sh Config)
143+
# - id: ftl_test
144+
# uses: FirebaseExtended/github-actions/[email protected]
145+
# with:
146+
# credentials_json: ${{ secrets.FIREBASE_SERVICE_ACCOUNT_CREDENTIALS }}
147+
# testapp_dir: quickstart-ios/build-for-testing
148+
# test_type: "xctest"
149+
126150
sample-build-test:
127151
# Don't run on private repo unless it is a PR.
128152
if: (github.repository == 'Firebase/firebase-ios-sdk' && github.event_name == 'schedule') || github.event_name == 'pull_request'

0 commit comments

Comments
 (0)