release.yml 25 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262263264265266267268269270271272273274275276277278279280281282283284285286287288289290291292293294295296297298299300301302303304305306307308309310311312313314315316317318319320321322323324325326327328329330331332333334335336337338339340341342343344345346347348349350351352353354355356357358359360361362363364365366367368369370371372373374375376377378379380381382383384385386387388389390391392393394395396397398399400401402403404405406407408409410411412413414415416417418419420421422423424425426427428429430431432433434435436437438439440441442443444445446447448449450451452453454455456457458459460461462463464465466467468469470471472473474475476477478479480481482483484485486487488489490491492493494495496497498499500501502503504505506507508509510
  1. name: release
  2. on:
  3. pull_request:
  4. paths:
  5. - 'scripts/release_testing_setup.sh'
  6. workflow_dispatch:
  7. schedule:
  8. # Run every day at 11pm (PST) - cron uses UTC times
  9. - cron: '0 7 * * *'
  10. jobs:
  11. buildup_SpecsTesting_repo:
  12. # Don't run on private repo unless it is a PR.
  13. if: (github.repository == 'Firebase/firebase-ios-sdk' && github.event_name == 'schedule') || github.event_name == 'pull_request' || github.event_name == 'workflow_dispatch'
  14. env:
  15. bot_token_secret: ${{ secrets.GHASecretsGPGPassphrase1 }}
  16. local_repo: specstesting
  17. # The SDK repo will be cloned to this dir and podspecs from
  18. # the latest release branch of this repo will be validated and pushed to
  19. # the testing repo.
  20. local_sdk_repo_dir: /tmp/test/firebase-ios-sdk
  21. runs-on: macOS-latest
  22. steps:
  23. - uses: actions/checkout@v2
  24. - name: Get token
  25. run: |
  26. scripts/decrypt_gha_secret.sh scripts/gha-encrypted/oss-bot-access.txt.gpg \
  27. oss-bot-access.txt "$bot_token_secret"
  28. scripts/decrypt_gha_secret.sh scripts/gha-encrypted/bot-access.txt.gpg \
  29. bot-access.txt "$bot_token_secret"
  30. - name: Update SpecsTesting repo setup
  31. run: |
  32. ossbotaccess=`cat oss-bot-access.txt`
  33. BOT_TOKEN="${ossbotaccess}" scripts/release_testing_setup.sh release_testing
  34. - name: Update SpecsTesting repo
  35. run: |
  36. botaccess=`cat bot-access.txt`
  37. cd scripts/create_spec_repo/
  38. swift build
  39. pod repo add --silent "${local_repo}" https://"$botaccess"@github.com/FirebasePrivate/SpecsTesting.git
  40. BOT_TOKEN="${botaccess}" .build/debug/spec-repo-builder --sdk-repo "${local_sdk_repo_dir}" --local-spec-repo-name "${local_repo}" --pod-sources 'https://${BOT_TOKEN}@github.com/FirebasePrivate/SpecsTesting' "https://github.com/firebase/SpecsStaging.git" "https://cdn.cocoapods.org/" --exclude-pods "FirebaseSegmentation" "FirebaseFirestoreTestingSupport" "FirebaseAuthTestingSupport" "FirebaseCombineSwift" "FirebaseFunctionsTestingSupport"
  41. - name: Clean Artifacts
  42. if: ${{ always() }}
  43. run: |
  44. pod repo remove "${local_repo}"
  45. rm -rf bot-access.txt
  46. abtesting_quickstart:
  47. # Don't run on private repo unless it is a PR.
  48. if: (github.repository == 'Firebase/firebase-ios-sdk' && github.event_name == 'schedule') || github.event_name == 'pull_request' || github.event_name == 'workflow_dispatch'
  49. needs: buildup_SpecsTesting_repo
  50. env:
  51. plist_secret: ${{ secrets.GHASecretsGPGPassphrase1 }}
  52. signin_secret: ${{ secrets.GHASecretsGPGPassphrase1 }}
  53. bot_token_secret: ${{ secrets.GHASecretsGPGPassphrase1 }}
  54. runs-on: macOS-latest
  55. steps:
  56. - uses: actions/checkout@v2
  57. - name: Get token
  58. run: scripts/decrypt_gha_secret.sh scripts/gha-encrypted/bot-access.txt.gpg \
  59. bot-access.txt "$bot_token_secret"
  60. - name: Setup testing repo and quickstart
  61. run: |
  62. botaccess=`cat bot-access.txt`
  63. BOT_TOKEN="${botaccess}" scripts/setup_quickstart.sh abtesting nightly_release_testing
  64. - name: Install Secret GoogleService-Info.plist
  65. run: scripts/decrypt_gha_secret.sh scripts/gha-encrypted/qs-abtesting.plist.gpg \
  66. quickstart-ios/abtesting/GoogleService-Info.plist "$plist_secret"
  67. - name: Install Secret FIREGSignInInfo.h
  68. run: scripts/decrypt_gha_secret.sh scripts/gha-encrypted/FIREGSignInInfo.h.gpg \
  69. quickstart-ios/TestUtils/FIREGSignInInfo.h "$signin_secret"
  70. - name: Test swift quickstart
  71. run: ([ -z $plist_secret ] || scripts/third_party/travis/retry.sh scripts/test_quickstart.sh ABTesting)
  72. - name: Remove data before upload
  73. run: scripts/remove_data.sh config release_testing
  74. - uses: actions/upload-artifact@v2
  75. if: ${{ failure() }}
  76. with:
  77. name: quickstart_artifacts_abtesting
  78. path: quickstart-ios/
  79. auth_quickstart:
  80. # Don't run on private repo unless it is a PR.
  81. if: (github.repository == 'Firebase/firebase-ios-sdk' && github.event_name == 'schedule') || github.event_name == 'pull_request' || github.event_name == 'workflow_dispatch'
  82. needs: buildup_SpecsTesting_repo
  83. env:
  84. plist_secret: ${{ secrets.GHASecretsGPGPassphrase1 }}
  85. signin_secret: ${{ secrets.GHASecretsGPGPassphrase1 }}
  86. bot_token_secret: ${{ secrets.GHASecretsGPGPassphrase1 }}
  87. runs-on: macOS-latest
  88. steps:
  89. - uses: actions/checkout@v2
  90. - name: Get token
  91. run: scripts/decrypt_gha_secret.sh scripts/gha-encrypted/bot-access.txt.gpg \
  92. bot-access.txt "$bot_token_secret"
  93. - name: Setup testing repo and quickstart
  94. run: |
  95. botaccess=`cat bot-access.txt`
  96. BOT_TOKEN="${botaccess}" scripts/setup_quickstart.sh Authentication nightly_release_testing
  97. - name: Install Secret GoogleService-Info.plist
  98. run: scripts/decrypt_gha_secret.sh scripts/gha-encrypted/qs-auth.plist.gpg \
  99. quickstart-ios/authentication/GoogleService-Info.plist "$plist_secret"
  100. - name: Install Secret FIREGSignInInfo.h
  101. run: scripts/decrypt_gha_secret.sh scripts/gha-encrypted/FIREGSignInInfo.h.gpg \
  102. quickstart-ios/TestUtils/FIREGSignInInfo.h "$signin_secret"
  103. - name: Test swift quickstart
  104. run: ([ -z $plist_secret ] || scripts/third_party/travis/retry.sh scripts/test_quickstart.sh Authentication)
  105. - name: Remove data before upload
  106. run: scripts/remove_data.sh authentication release_testing
  107. - uses: actions/upload-artifact@v2
  108. if: ${{ failure() }}
  109. with:
  110. name: quickstart_artifacts_auth
  111. path: quickstart-ios/
  112. crashlytics_quickstart:
  113. # Don't run on private repo unless it is a PR.
  114. if: (github.repository == 'Firebase/firebase-ios-sdk' && github.event_name == 'schedule') || github.event_name == 'pull_request' || github.event_name == 'workflow_dispatch'
  115. needs: buildup_SpecsTesting_repo
  116. env:
  117. plist_secret: ${{ secrets.GHASecretsGPGPassphrase1 }}
  118. signin_secret: ${{ secrets.GHASecretsGPGPassphrase1 }}
  119. bot_token_secret: ${{ secrets.GHASecretsGPGPassphrase1 }}
  120. testing_repo_dir: "/tmp/test/"
  121. testing_repo: "firebase-ios-sdk"
  122. runs-on: macOS-latest
  123. steps:
  124. - uses: actions/checkout@v2
  125. - name: Get token
  126. run: scripts/decrypt_gha_secret.sh scripts/gha-encrypted/bot-access.txt.gpg \
  127. bot-access.txt "$bot_token_secret"
  128. - name: Setup testing repo and quickstart
  129. run: |
  130. botaccess=`cat bot-access.txt`
  131. BOT_TOKEN="${botaccess}" scripts/setup_quickstart.sh Crashlytics nightly_release_testing
  132. - name: Install Secret GoogleService-Info.plist
  133. run: scripts/decrypt_gha_secret.sh scripts/gha-encrypted/qs-crashlytics.plist.gpg \
  134. quickstart-ios/crashlytics/GoogleService-Info.plist "$plist_secret"
  135. - name: Install Secret FIREGSignInInfo.h
  136. run: scripts/decrypt_gha_secret.sh scripts/gha-encrypted/FIREGSignInInfo.h.gpg \
  137. quickstart-ios/TestUtils/FIREGSignInInfo.h "$signin_secret"
  138. - name: Test objc quickstart
  139. run: |
  140. mkdir -p quickstart-ios/crashlytics/Pods/FirebaseCrashlytics
  141. # Set the deployed pod location of run and upload-symbols with the development pod version.
  142. cp Crashlytics/run quickstart-ios/crashlytics/Pods/FirebaseCrashlytics/
  143. cp Crashlytics/upload-symbols quickstart-ios/crashlytics/Pods/FirebaseCrashlytics/
  144. ([ -z $plist_secret ] || scripts/third_party/travis/retry.sh scripts/test_quickstart.sh Crashlytics)
  145. - name: Test swift quickstart
  146. run: ([ -z $plist_secret ] || scripts/third_party/travis/retry.sh scripts/test_quickstart.sh Crashlytics swift)
  147. - name: Remove data before upload
  148. run: scripts/remove_data.sh crashlytics release_testing
  149. - uses: actions/upload-artifact@v2
  150. if: ${{ failure() }}
  151. with:
  152. name: quickstart_artifacts_crashlytics
  153. path: quickstart-ios/
  154. database_quickstart:
  155. # Don't run on private repo unless it is a PR.
  156. if: (github.repository == 'Firebase/firebase-ios-sdk' && github.event_name == 'schedule') || github.event_name == 'pull_request' || github.event_name == 'workflow_dispatch'
  157. needs: buildup_SpecsTesting_repo
  158. env:
  159. plist_secret: ${{ secrets.GHASecretsGPGPassphrase1 }}
  160. signin_secret: ${{ secrets.GHASecretsGPGPassphrase1 }}
  161. bot_token_secret: ${{ secrets.GHASecretsGPGPassphrase1 }}
  162. testing_repo_dir: "/tmp/test/"
  163. testing_repo: "firebase-ios-sdk"
  164. runs-on: macOS-latest
  165. steps:
  166. - uses: actions/checkout@v2
  167. - name: Get token
  168. run: scripts/decrypt_gha_secret.sh scripts/gha-encrypted/bot-access.txt.gpg \
  169. bot-access.txt "$bot_token_secret"
  170. - name: Setup testing repo and quickstart
  171. run: |
  172. botaccess=`cat bot-access.txt`
  173. BOT_TOKEN="${botaccess}" scripts/setup_quickstart.sh database nightly_release_testing
  174. - name: Install Secret GoogleService-Info.plist
  175. run: scripts/decrypt_gha_secret.sh scripts/gha-encrypted/qs-database.plist.gpg \
  176. quickstart-ios/database/GoogleService-Info.plist "$plist_secret"
  177. - name: Install Secret FIREGSignInInfo.h
  178. run: scripts/decrypt_gha_secret.sh scripts/gha-encrypted/FIREGSignInInfo.h.gpg \
  179. quickstart-ios/TestUtils/FIREGSignInInfo.h "$signin_secret"
  180. - name: Test objc quickstart
  181. run: ([ -z $plist_secret ] || scripts/third_party/travis/retry.sh scripts/test_quickstart.sh Database)
  182. - name: Test swift quickstart
  183. run: ([ -z $plist_secret ] || scripts/third_party/travis/retry.sh scripts/test_quickstart.sh Database swift)
  184. - name: Remove data before upload
  185. run: scripts/remove_data.sh database release_testing
  186. - uses: actions/upload-artifact@v2
  187. if: ${{ failure() }}
  188. with:
  189. name: quickstart_artifacts_database
  190. path: quickstart-ios/
  191. dynamiclinks_quickstart:
  192. # Don't run on private repo unless it is a PR.
  193. if: (github.repository == 'Firebase/firebase-ios-sdk' && github.event_name == 'schedule') || github.event_name == 'pull_request' || github.event_name == 'workflow_dispatch'
  194. needs: buildup_SpecsTesting_repo
  195. env:
  196. plist_secret: ${{ secrets.GHASecretsGPGPassphrase1 }}
  197. signin_secret: ${{ secrets.GHASecretsGPGPassphrase1 }}
  198. bot_token_secret: ${{ secrets.GHASecretsGPGPassphrase1 }}
  199. testing_repo_dir: "/tmp/test/"
  200. testing_repo: "firebase-ios-sdk"
  201. runs-on: macOS-latest
  202. steps:
  203. - uses: actions/checkout@v2
  204. - name: Get token
  205. run: scripts/decrypt_gha_secret.sh scripts/gha-encrypted/bot-access.txt.gpg \
  206. bot-access.txt "$bot_token_secret"
  207. - name: Setup testing repo and quickstart
  208. run: |
  209. botaccess=`cat bot-access.txt`
  210. BOT_TOKEN="${botaccess}" scripts/setup_quickstart.sh dynamiclinks nightly_release_testing
  211. - name: Install Secret GoogleService-Info.plist
  212. run: scripts/decrypt_gha_secret.sh scripts/gha-encrypted/qs-dynamiclinks.plist.gpg \
  213. quickstart-ios/dynamiclinks/GoogleService-Info.plist "$plist_secret"
  214. - name: Update Environment Variable For DynamicLinks
  215. run: |
  216. sed -i '' 's#DYNAMIC_LINK_DOMAIN#https://qpf6m.app.goo.gl#' quickstart-ios/dynamiclinks/DynamicLinksExample/DynamicLinksExample.entitlements
  217. sed -i '' 's#YOUR_DOMAIN_URI_PREFIX";#https://qpf6m.app.goo.gl";#' quickstart-ios/dynamiclinks/DynamicLinksExample/ViewController.m
  218. sed -i '' 's#YOUR_DOMAIN_URI_PREFIX";#https://qpf6m.app.goo.gl";#' quickstart-ios/dynamiclinks/DynamicLinksExampleSwift/ViewController.swift
  219. - name: Install Secret FIREGSignInInfo.h
  220. run: scripts/decrypt_gha_secret.sh scripts/gha-encrypted/FIREGSignInInfo.h.gpg \
  221. quickstart-ios/TestUtils/FIREGSignInInfo.h "$signin_secret"
  222. - name: Test objc quickstart
  223. run: ([ -z $plist_secret ] || scripts/third_party/travis/retry.sh scripts/test_quickstart.sh DynamicLinks)
  224. - name: Test swift quickstart
  225. if: ${{ always() }}
  226. run: ([ -z $plist_secret ] || scripts/third_party/travis/retry.sh scripts/test_quickstart.sh DynamicLinks swift)
  227. - name: Remove data before upload
  228. run: scripts/remove_data.sh dynamiclinks release_testing
  229. - uses: actions/upload-artifact@v2
  230. if: ${{ failure() }}
  231. with:
  232. name: quickstart_artifacts_dynamiclinks
  233. path: quickstart-ios/
  234. firestore_quickstart:
  235. # Don't run on private repo unless it is a PR.
  236. if: (github.repository == 'Firebase/firebase-ios-sdk' && github.event_name == 'schedule') || github.event_name == 'pull_request' || github.event_name == 'workflow_dispatch'
  237. needs: buildup_SpecsTesting_repo
  238. env:
  239. plist_secret: ${{ secrets.GHASecretsGPGPassphrase1 }}
  240. signin_secret: ${{ secrets.GHASecretsGPGPassphrase1 }}
  241. bot_token_secret: ${{ secrets.GHASecretsGPGPassphrase1 }}
  242. testing_repo_dir: "/tmp/test/"
  243. testing_repo: "firebase-ios-sdk"
  244. runs-on: macOS-latest
  245. steps:
  246. - uses: actions/checkout@v2
  247. - name: Get token
  248. run: scripts/decrypt_gha_secret.sh scripts/gha-encrypted/bot-access.txt.gpg \
  249. bot-access.txt "$bot_token_secret"
  250. - name: Setup testing repo and quickstart
  251. run: |
  252. botaccess=`cat bot-access.txt`
  253. BOT_TOKEN="${botaccess}" scripts/setup_quickstart.sh firestore nightly_release_testing
  254. - name: Install Secret GoogleService-Info.plist
  255. run: scripts/decrypt_gha_secret.sh scripts/gha-encrypted/qs-firestore.plist.gpg \
  256. quickstart-ios/firestore/GoogleService-Info.plist "$plist_secret"
  257. - name: Install Secret FIREGSignInInfo.h
  258. run: scripts/decrypt_gha_secret.sh scripts/gha-encrypted/FIREGSignInInfo.h.gpg \
  259. quickstart-ios/TestUtils/FIREGSignInInfo.h "$signin_secret"
  260. - name: Test swift quickstart
  261. run: ([ -z $plist_secret ] ||
  262. scripts/third_party/travis/retry.sh scripts/test_quickstart.sh Firestore)
  263. - name: Remove data before upload
  264. run: scripts/remove_data.sh firestore release_testing
  265. - uses: actions/upload-artifact@v2
  266. if: ${{ failure() }}
  267. with:
  268. name: quickstart_artifacts_firestore
  269. path: quickstart-ios/
  270. functions_quickstart:
  271. # Don't run on private repo unless it is a PR.
  272. if: (github.repository == 'Firebase/firebase-ios-sdk' && github.event_name == 'schedule') || github.event_name == 'pull_request' || github.event_name == 'workflow_dispatch'
  273. needs: buildup_SpecsTesting_repo
  274. env:
  275. plist_secret: ${{ secrets.GHASecretsGPGPassphrase1 }}
  276. signin_secret: ${{ secrets.GHASecretsGPGPassphrase1 }}
  277. bot_token_secret: ${{ secrets.GHASecretsGPGPassphrase1 }}
  278. testing_repo_dir: "/tmp/test/"
  279. testing_repo: "firebase-ios-sdk"
  280. runs-on: macOS-latest
  281. steps:
  282. - uses: actions/checkout@v2
  283. - name: Get token
  284. run: scripts/decrypt_gha_secret.sh scripts/gha-encrypted/bot-access.txt.gpg \
  285. bot-access.txt "$bot_token_secret"
  286. - name: Setup testing repo and quickstart
  287. run: |
  288. botaccess=`cat bot-access.txt`
  289. BOT_TOKEN="${botaccess}" scripts/setup_quickstart.sh functions nightly_release_testing
  290. - name: install secret googleservice-info.plist
  291. run: scripts/decrypt_gha_secret.sh scripts/gha-encrypted/qs-functions.plist.gpg \
  292. quickstart-ios/functions/GoogleService-Info.plist "$plist_secret"
  293. - name: Install Secret FIREGSignInInfo.h
  294. run: scripts/decrypt_gha_secret.sh scripts/gha-encrypted/FIREGSignInInfo.h.gpg \
  295. quickstart-ios/TestUtils/FIREGSignInInfo.h "$signin_secret"
  296. - name: Setup custom URL scheme
  297. run: sed -i '' 's/REVERSED_CLIENT_ID/com.googleusercontent.apps.1025801074639-6p6ebi8amuklcjrto20gvpe295smm8u6/' quickstart-ios/functions/FunctionsExample/Info.plist
  298. - name: Test objc quickstart
  299. run: ([ -z $plist_secret ] ||
  300. scripts/third_party/travis/retry.sh scripts/test_quickstart.sh Functions)
  301. - name: Test swift quickstart
  302. run: ([ -z $plist_secret ] ||
  303. scripts/third_party/travis/retry.sh scripts/test_quickstart.sh Functions swift)
  304. - name: Remove data before upload
  305. run: scripts/remove_data.sh functions release_testing
  306. - uses: actions/upload-artifact@v2
  307. if: ${{ failure() }}
  308. with:
  309. name: quickstart_artifacts_functions
  310. path: quickstart-ios/
  311. inappmessaging_quickstart:
  312. # Don't run on private repo unless it is a PR.
  313. if: (github.repository == 'Firebase/firebase-ios-sdk' && github.event_name == 'schedule') || github.event_name == 'pull_request' || github.event_name == 'workflow_dispatch'
  314. needs: buildup_SpecsTesting_repo
  315. env:
  316. plist_secret: ${{ secrets.GHASecretsGPGPassphrase1 }}
  317. signin_secret: ${{ secrets.GHASecretsGPGPassphrase1 }}
  318. bot_token_secret: ${{ secrets.GHASecretsGPGPassphrase1 }}
  319. testing_repo_dir: "/tmp/test/"
  320. testing_repo: "firebase-ios-sdk"
  321. runs-on: macOS-latest
  322. steps:
  323. - uses: actions/checkout@v2
  324. - name: Get token
  325. run: scripts/decrypt_gha_secret.sh scripts/gha-encrypted/bot-access.txt.gpg \
  326. bot-access.txt "$bot_token_secret"
  327. - name: Setup testing repo and quickstart
  328. run: |
  329. botaccess=`cat bot-access.txt`
  330. BOT_TOKEN="${botaccess}" scripts/setup_quickstart.sh inappmessaging nightly_release_testing
  331. - name: install secret googleservice-info.plist
  332. run: scripts/decrypt_gha_secret.sh scripts/gha-encrypted/qs-inappmessaging.plist.gpg \
  333. quickstart-ios/inappmessaging/GoogleService-Info.plist "$plist_secret"
  334. - name: Install Secret FIREGSignInInfo.h
  335. run: scripts/decrypt_gha_secret.sh scripts/gha-encrypted/FIREGSignInInfo.h.gpg \
  336. quickstart-ios/TestUtils/FIREGSignInInfo.h "$signin_secret"
  337. - name: Test objc quickstart
  338. run: ([ -z $plist_secret ] ||
  339. scripts/third_party/travis/retry.sh scripts/test_quickstart.sh InAppMessaging)
  340. - name: Test swift quickstart
  341. run: ([ -z $plist_secret ] ||
  342. scripts/third_party/travis/retry.sh scripts/test_quickstart.sh InAppMessaging swift)
  343. - name: Remove data before upload
  344. run: scripts/remove_data.sh inappmessaging release_testing
  345. - uses: actions/upload-artifact@v2
  346. if: ${{ failure() }}
  347. with:
  348. name: quickstart_artifacts_inappmessaging
  349. path: quickstart-ios/
  350. messaging_quickstart:
  351. # Don't run on private repo unless it is a PR.
  352. if: (github.repository == 'Firebase/firebase-ios-sdk' && github.event_name == 'schedule') || github.event_name == 'pull_request' || github.event_name == 'workflow_dispatch'
  353. needs: buildup_SpecsTesting_repo
  354. env:
  355. plist_secret: ${{ secrets.GHASecretsGPGPassphrase1 }}
  356. signin_secret: ${{ secrets.GHASecretsGPGPassphrase1 }}
  357. bot_token_secret: ${{ secrets.GHASecretsGPGPassphrase1 }}
  358. testing_repo_dir: "/tmp/test/"
  359. testing_repo: "firebase-ios-sdk"
  360. runs-on: macOS-latest
  361. steps:
  362. - uses: actions/checkout@v2
  363. - name: Get token
  364. run: scripts/decrypt_gha_secret.sh scripts/gha-encrypted/bot-access.txt.gpg \
  365. bot-access.txt "$bot_token_secret"
  366. - name: Setup testing repo and quickstart
  367. run: |
  368. botaccess=`cat bot-access.txt`
  369. BOT_TOKEN="${botaccess}" scripts/setup_quickstart.sh messaging nightly_release_testing
  370. - name: Install Secret GoogleService-Info.plist
  371. run: scripts/decrypt_gha_secret.sh scripts/gha-encrypted/qs-messaging.plist.gpg \
  372. quickstart-ios/messaging/GoogleService-Info.plist "$plist_secret"
  373. - name: Install Secret FIREGSignInInfo.h
  374. run: scripts/decrypt_gha_secret.sh scripts/gha-encrypted/FIREGSignInInfo.h.gpg \
  375. quickstart-ios/TestUtils/FIREGSignInInfo.h "$signin_secret"
  376. - name: Test objc quickstart
  377. run: ([ -z $plist_secret ] ||
  378. scripts/third_party/travis/retry.sh scripts/test_quickstart.sh Messaging)
  379. - name: Test swift quickstart
  380. run: ([ -z $plist_secret ] ||
  381. scripts/third_party/travis/retry.sh scripts/test_quickstart.sh Messaging swift)
  382. - name: Remove data before upload
  383. run: scripts/remove_data.sh messaging release_testing
  384. - uses: actions/upload-artifact@v2
  385. if: ${{ failure() }}
  386. with:
  387. name: quickstart_artifacts_messaging
  388. path: quickstart-ios/
  389. remoteconfig_quickstart:
  390. # Don't run on private repo unless it is a PR.
  391. if: (github.repository == 'Firebase/firebase-ios-sdk' && github.event_name == 'schedule') || github.event_name == 'pull_request' || github.event_name == 'workflow_dispatch'
  392. needs: buildup_SpecsTesting_repo
  393. env:
  394. plist_secret: ${{ secrets.GHASecretsGPGPassphrase1 }}
  395. signin_secret: ${{ secrets.GHASecretsGPGPassphrase1 }}
  396. bot_token_secret: ${{ secrets.GHASecretsGPGPassphrase1 }}
  397. runs-on: macOS-latest
  398. steps:
  399. - uses: actions/checkout@v2
  400. - name: Get token
  401. run: scripts/decrypt_gha_secret.sh scripts/gha-encrypted/bot-access.txt.gpg \
  402. bot-access.txt "$bot_token_secret"
  403. - name: Setup testing repo and quickstart
  404. run: |
  405. botaccess=`cat bot-access.txt`
  406. BOT_TOKEN="${botaccess}" scripts/setup_quickstart.sh config nightly_release_testing
  407. - name: Install Secret GoogleService-Info.plist
  408. run: scripts/decrypt_gha_secret.sh scripts/gha-encrypted/qs-config.plist.gpg \
  409. quickstart-ios/config/GoogleService-Info.plist "$plist_secret"
  410. - name: Install Secret FIREGSignInInfo.h
  411. run: scripts/decrypt_gha_secret.sh scripts/gha-encrypted/FIREGSignInInfo.h.gpg \
  412. quickstart-ios/TestUtils/FIREGSignInInfo.h "$signin_secret"
  413. - name: Test Swift Quickstart
  414. run: ([ -z $plist_secret ] || scripts/third_party/travis/retry.sh scripts/test_quickstart.sh Config)
  415. - name: Remove data before upload
  416. run: scripts/remove_data.sh config release_testing
  417. - uses: actions/upload-artifact@v2
  418. if: ${{ failure() }}
  419. with:
  420. name: quickstart_artifacts_config
  421. path: quickstart-ios/
  422. storage_quickstart:
  423. # Don't run on private repo unless it is a PR.
  424. if: (github.repository == 'Firebase/firebase-ios-sdk' && github.event_name == 'schedule') || github.event_name == 'pull_request' || github.event_name == 'workflow_dispatch'
  425. needs: buildup_SpecsTesting_repo
  426. env:
  427. plist_secret: ${{ secrets.GHASecretsGPGPassphrase1 }}
  428. signin_secret: ${{ secrets.GHASecretsGPGPassphrase1 }}
  429. bot_token_secret: ${{ secrets.GHASecretsGPGPassphrase1 }}
  430. testing_repo_dir: "/tmp/test/"
  431. testing_repo: "firebase-ios-sdk"
  432. runs-on: macOS-latest
  433. steps:
  434. - uses: actions/checkout@v2
  435. - name: Get token
  436. run: scripts/decrypt_gha_secret.sh scripts/gha-encrypted/bot-access.txt.gpg \
  437. bot-access.txt "$bot_token_secret"
  438. - name: Setup testing repo and quickstart
  439. run: |
  440. botaccess=`cat bot-access.txt`
  441. BOT_TOKEN="${botaccess}" scripts/setup_quickstart.sh storage nightly_release_testing
  442. - name: Install Secret GoogleService-Info.plist
  443. run: scripts/decrypt_gha_secret.sh scripts/gha-encrypted/qs-storage.plist.gpg \
  444. quickstart-ios/storage/GoogleService-Info.plist "$plist_secret"
  445. - name: Install Secret FIREGSignInInfo.h
  446. run: scripts/decrypt_gha_secret.sh scripts/gha-encrypted/FIREGSignInInfo.h.gpg \
  447. quickstart-ios/TestUtils/FIREGSignInInfo.h "$signin_secret"
  448. - name: Test objc quickstart
  449. run: ([ -z $plist_secret ] || scripts/third_party/travis/retry.sh scripts/test_quickstart.sh Storage)
  450. - name: Test swift quickstart
  451. run: ([ -z $plist_secret ] || scripts/third_party/travis/retry.sh scripts/test_quickstart.sh Storage swift)
  452. - name: Remove data before upload
  453. run: scripts/remove_data.sh storage release_testing
  454. - uses: actions/upload-artifact@v2
  455. if: ${{ failure() }}
  456. with:
  457. name: quickstart_artifacts_storage
  458. path: quickstart-ios/
  459. performance_quickstart:
  460. # Don't run on private repo unless it is a PR.
  461. if: (github.repository == 'Firebase/firebase-ios-sdk' && github.event_name == 'schedule') || github.event_name == 'pull_request' || github.event_name == 'workflow_dispatch'
  462. needs: buildup_SpecsTesting_repo
  463. env:
  464. plist_secret: ${{ secrets.GHASecretsGPGPassphrase1 }}
  465. signin_secret: ${{ secrets.GHASecretsGPGPassphrase1 }}
  466. bot_token_secret: ${{ secrets.GHASecretsGPGPassphrase1 }}
  467. testing_repo_dir: "/tmp/test/"
  468. testing_repo: "firebase-ios-sdk"
  469. runs-on: macOS-latest
  470. steps:
  471. - uses: actions/checkout@v2
  472. - name: Get token
  473. run: scripts/decrypt_gha_secret.sh scripts/gha-encrypted/bot-access.txt.gpg \
  474. bot-access.txt "$bot_token_secret"
  475. - name: Setup testing repo and quickstart
  476. run: |
  477. botaccess=`cat bot-access.txt`
  478. BOT_TOKEN="${botaccess}" scripts/setup_quickstart.sh Performance nightly_release_testing
  479. - name: Install Secret GoogleService-Info.plist
  480. run: scripts/decrypt_gha_secret.sh scripts/gha-encrypted/qs-performance.plist.gpg \
  481. quickstart-ios/performance/GoogleService-Info.plist "$plist_secret"
  482. - name: Install Secret FIREGSignInInfo.h
  483. run: scripts/decrypt_gha_secret.sh scripts/gha-encrypted/FIREGSignInInfo.h.gpg \
  484. quickstart-ios/TestUtils/FIREGSignInInfo.h "$signin_secret"
  485. - name: Test objc quickstart
  486. run: |
  487. ([ -z $plist_secret ] || scripts/third_party/travis/retry.sh scripts/test_quickstart.sh Performance)
  488. - name: Test swift quickstart
  489. run: ([ -z $plist_secret ] || scripts/third_party/travis/retry.sh scripts/test_quickstart.sh Performance swift)
  490. - name: Remove data before upload
  491. run: scripts/remove_data.sh performance release_testing
  492. - uses: actions/upload-artifact@v2
  493. if: ${{ failure() }}
  494. with:
  495. name: quickstart_artifacts_performance
  496. path: quickstart-ios/