release.yml 23 KB

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