release.yml 23 KB

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