release.yml 25 KB

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