zip.yml 24 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262263264265266267268269270271272273274275276277278279280281282283284285286287288289290291292293294295296297298299300301302303304305306307308309310311312313314315316317318319320321322323324325326327328329330331332333334335336337338339340341342343344345346347348349350351352353354355356357358359360361362363364365366367368369370371372373374375376377378379380381382383384385386387388389390391392393394395396397398399400401402403404405406407408409410411412413414415416417418419420421422423424425426427428429430431432433434435436437438439440441442443444445446447448449450451452453454455456457458459460461462463464465466467468469470471472473474475476477478479480481482483484485486487488489490491492493494495496497498499500
  1. name: zip
  2. on:
  3. pull_request:
  4. paths:
  5. - 'ZipBuilder/**'
  6. - '.github/workflows/zip.yml'
  7. # Don't run based on any markdown only changes.
  8. - '!ZipBuilder/*.md'
  9. schedule:
  10. # Run every day at midnight(PST) - cron uses UTC times
  11. - cron: '0 8 * * *'
  12. jobs:
  13. build:
  14. # Don't run on private repo unless it is a PR.
  15. if: github.repository != 'FirebasePrivate/firebase-ios-sdk' || github.event_name == 'pull_request'
  16. runs-on: macOS-latest
  17. steps:
  18. - uses: actions/checkout@v2
  19. - name: Build
  20. run: |
  21. cd ZipBuilder
  22. swift build -v
  23. package:
  24. # Don't run on private repo.
  25. if: github.event_name == 'schedule' && github.repository != 'FirebasePrivate/firebase-ios-sdk'
  26. needs: build
  27. runs-on: macOS-latest
  28. steps:
  29. - uses: actions/checkout@v2
  30. - name: Setup Bundler
  31. run: ./scripts/setup_bundler.sh
  32. - name: ZipBuildingTest
  33. run: |
  34. mkdir -p zip_output_dir
  35. sh -x scripts/build_zip.sh zip_output_dir
  36. - uses: actions/upload-artifact@v1
  37. with:
  38. name: Firebase-actions-dir
  39. # Zip the entire output directory since the builder adds subdirectories we don't know the
  40. # name of.
  41. path: zip_output_dir
  42. quickstart_framework_abtesting:
  43. # Don't run on private repo.
  44. if: github.event_name == 'schedule' && github.repository != 'FirebasePrivate/firebase-ios-sdk'
  45. needs: package
  46. env:
  47. plist_secret: ${{ secrets.GHASecretsGPGPassphrase1 }}
  48. signin_secret: ${{ secrets.GHASecretsGPGPassphrase1 }}
  49. FRAMEWORK_DIR: "Firebase-actions-dir"
  50. SDK: "ABTesting"
  51. runs-on: macOS-latest
  52. steps:
  53. - uses: actions/checkout@v2
  54. - name: Get framework dir
  55. uses: actions/download-artifact@v1
  56. with:
  57. name: Firebase-actions-dir
  58. - name: Move frameworks
  59. run: |
  60. mkdir -p "${HOME}"/ios_frameworks/
  61. find "${GITHUB_WORKSPACE}/${FRAMEWORK_DIR}" -name "*.zip" -maxdepth 3 -exec unzip -d "${HOME}"/ios_frameworks/ {} +
  62. - name: Setup quickstart
  63. run: SAMPLE="$SDK" TARGET="${SDK}Example" scripts/setup_quickstart_framework.sh \
  64. "${HOME}"/ios_frameworks/Firebase/FirebaseRemoteConfig/* \
  65. "${HOME}"/ios_frameworks/Firebase/FirebaseMessaging/FirebaseInstanceID.xcframework \
  66. "${HOME}"/ios_frameworks/Firebase/FirebaseAnalytics/FirebaseCore.xcframework \
  67. "${HOME}"/ios_frameworks/Firebase/FirebaseAnalytics/PromisesObjC.xcframework \
  68. "${HOME}"/ios_frameworks/Firebase/FirebaseAnalytics/FirebaseInstallations.xcframework \
  69. "${HOME}"/ios_frameworks/Firebase/FirebaseAnalytics/GoogleUtilities.xcframework
  70. - name: Install Secret GoogleService-Info.plist
  71. run: scripts/decrypt_gha_secret.sh scripts/gha-encrypted/qs-abtesting.plist.gpg \
  72. quickstart-ios/abtesting/GoogleService-Info.plist "$plist_secret"
  73. - name: Install Secret FIREGSignInInfo.h
  74. run: scripts/decrypt_gha_secret.sh scripts/gha-encrypted/FIREGSignInInfo.h.gpg \
  75. quickstart-ios/TestUtils/FIREGSignInInfo.h "$signin_secret"
  76. - name: Test Quickstart
  77. run: ([ -z $plist_secret ] || scripts/third_party/travis/retry.sh scripts/test_quickstart_framework.sh "${SDK}")
  78. - name: Remove data before upload
  79. if: ${{ failure() }}
  80. run: scripts/remove_data.sh abtesting
  81. - uses: actions/upload-artifact@v2
  82. if: ${{ failure() }}
  83. with:
  84. name: quickstart_artifacts_abtesting
  85. path: quickstart-ios/
  86. quickstart_framework_auth:
  87. # Don't run on private repo.
  88. if: github.event_name == 'schedule' && github.repository != 'FirebasePrivate/firebase-ios-sdk'
  89. needs: package
  90. env:
  91. plist_secret: ${{ secrets.GHASecretsGPGPassphrase1 }}
  92. signin_secret: ${{ secrets.GHASecretsGPGPassphrase1 }}
  93. FRAMEWORK_DIR: "Firebase-actions-dir"
  94. SDK: "Authentication"
  95. runs-on: macOS-latest
  96. steps:
  97. - uses: actions/checkout@v2
  98. - name: Get framework dir
  99. uses: actions/download-artifact@v1
  100. with:
  101. name: Firebase-actions-dir
  102. - name: Move frameworks
  103. run: |
  104. mkdir -p "${HOME}"/ios_frameworks/
  105. find "${GITHUB_WORKSPACE}/${FRAMEWORK_DIR}" -name "*.zip" -maxdepth 3 -exec unzip -d "${HOME}"/ios_frameworks/ {} +
  106. - name: Setup Swift Quickstart
  107. run: SAMPLE="$SDK" TARGET="${SDK}Example" NON_FIREBASE_SDKS="FBSDKLoginKit FBSDKCoreKit" scripts/setup_quickstart_framework.sh \
  108. "${HOME}"/ios_frameworks/Firebase/NonFirebaseSDKs/* \
  109. "${HOME}"/ios_frameworks/Firebase/FirebaseDynamicLinks/* \
  110. "${HOME}"/ios_frameworks/Firebase/GoogleSignIn/* \
  111. "${HOME}"/ios_frameworks/Firebase/FirebaseAuth/* \
  112. "${HOME}"/ios_frameworks/Firebase/FirebaseAnalytics/*
  113. - name: Install Secret GoogleService-Info.plist
  114. run: scripts/decrypt_gha_secret.sh scripts/gha-encrypted/qs-auth.plist.gpg \
  115. quickstart-ios/authentication/GoogleService-Info.plist "$plist_secret"
  116. - name: Install Secret FIREGSignInInfo.h
  117. run: scripts/decrypt_gha_secret.sh scripts/gha-encrypted/FIREGSignInInfo.h.gpg \
  118. quickstart-ios/TestUtils/FIREGSignInInfo.h "$signin_secret"
  119. - name: Test Swift Quickstart
  120. run: ([ -z $plist_secret ] || scripts/third_party/travis/retry.sh scripts/test_quickstart_framework.sh "${SDK}")
  121. - name: Remove data before upload
  122. if: ${{ failure() }}
  123. run: scripts/remove_data.sh authentiation
  124. - uses: actions/upload-artifact@v2
  125. if: ${{ failure() }}
  126. with:
  127. name: quickstart_artifacts_auth
  128. path: quickstart-ios/
  129. quickstart_framework_config:
  130. # Don't run on private repo.
  131. if: github.event_name == 'schedule' && github.repository != 'FirebasePrivate/firebase-ios-sdk'
  132. needs: package
  133. env:
  134. plist_secret: ${{ secrets.GHASecretsGPGPassphrase1 }}
  135. signin_secret: ${{ secrets.GHASecretsGPGPassphrase1 }}
  136. FRAMEWORK_DIR: "Firebase-actions-dir"
  137. SDK: "Config"
  138. runs-on: macOS-latest
  139. steps:
  140. - uses: actions/checkout@v2
  141. - name: Get framework dir
  142. uses: actions/download-artifact@v1
  143. with:
  144. name: Firebase-actions-dir
  145. - name: Move frameworks
  146. run: |
  147. mkdir -p "${HOME}"/ios_frameworks/
  148. find "${GITHUB_WORKSPACE}/${FRAMEWORK_DIR}" -name "*.zip" -maxdepth 3 -exec unzip -d "${HOME}"/ios_frameworks/ {} +
  149. - name: Setup Swift Quickstart
  150. run: SAMPLE="$SDK" TARGET="${SDK}Example" scripts/setup_quickstart_framework.sh \
  151. "${HOME}"/ios_frameworks/Firebase/FirebaseRemoteConfig/* \
  152. "${HOME}"/ios_frameworks/Firebase/FirebaseAnalytics/*
  153. - name: Install Secret GoogleService-Info.plist
  154. run: scripts/decrypt_gha_secret.sh scripts/gha-encrypted/qs-config.plist.gpg \
  155. quickstart-ios/config/GoogleService-Info.plist "$plist_secret"
  156. - name: Install Secret FIREGSignInInfo.h
  157. run: scripts/decrypt_gha_secret.sh scripts/gha-encrypted/FIREGSignInInfo.h.gpg \
  158. quickstart-ios/TestUtils/FIREGSignInInfo.h "$signin_secret"
  159. - name: Test Swift Quickstart
  160. run: ([ -z $plist_secret ] || scripts/third_party/travis/retry.sh scripts/test_quickstart_framework.sh "${SDK}")
  161. - name: Remove data before upload
  162. if: ${{ failure() }}
  163. run: scripts/remove_data.sh config
  164. - uses: actions/upload-artifact@v2
  165. if: ${{ failure() }}
  166. with:
  167. name: quickstart_artifacts_config
  168. path: quickstart-ios/
  169. quickstart_framework_crashlytics:
  170. # Don't run on private repo.
  171. if: github.event_name == 'schedule' && github.repository != 'FirebasePrivate/firebase-ios-sdk'
  172. needs: package
  173. env:
  174. plist_secret: ${{ secrets.GHASecretsGPGPassphrase1 }}
  175. signin_secret: ${{ secrets.GHASecretsGPGPassphrase1 }}
  176. FRAMEWORK_DIR: "Firebase-actions-dir"
  177. SDK: "Crashlytics"
  178. runs-on: macOS-latest
  179. steps:
  180. - uses: actions/checkout@v2
  181. - name: Get framework dir
  182. uses: actions/download-artifact@v1
  183. with:
  184. name: Firebase-actions-dir
  185. - name: Move frameworks
  186. run: |
  187. mkdir -p "${HOME}"/ios_frameworks/
  188. find "${GITHUB_WORKSPACE}/${FRAMEWORK_DIR}" -name "*.zip" -maxdepth 3 -exec unzip -d "${HOME}"/ios_frameworks/ {} +
  189. - name: Setup quickstart
  190. run: |
  191. SAMPLE="$SDK" TARGET="${SDK}Example" scripts/setup_quickstart_framework.sh \
  192. "${HOME}"/ios_frameworks/Firebase/FirebaseCrashlytics/* \
  193. "${HOME}"/ios_frameworks/Firebase/FirebaseAnalytics/*
  194. cp quickstart-ios/crashlytics/Firebase/run quickstart-ios/crashlytics
  195. cp quickstart-ios/crashlytics/Firebase/upload-symbols quickstart-ios/crashlytics
  196. chmod +x quickstart-ios/crashlytics/run
  197. chmod +x quickstart-ios/crashlytics/upload-symbols
  198. - name: Setup swift quickstart
  199. run: SAMPLE="$SDK" TARGET="${SDK}ExampleSwift" scripts/setup_quickstart_framework.sh
  200. - name: Install Secret GoogleService-Info.plist
  201. run: scripts/decrypt_gha_secret.sh scripts/gha-encrypted/qs-crashlytics.plist.gpg \
  202. quickstart-ios/crashlytics/GoogleService-Info.plist "$plist_secret"
  203. - name: Install Secret FIREGSignInInfo.h
  204. run: scripts/decrypt_gha_secret.sh scripts/gha-encrypted/FIREGSignInInfo.h.gpg \
  205. quickstart-ios/TestUtils/FIREGSignInInfo.h "$signin_secret"
  206. - name: Test Quickstart
  207. run: ([ -z $plist_secret ] || scripts/third_party/travis/retry.sh scripts/test_quickstart_framework.sh "${SDK}")
  208. - name: Test Swift Quickstart
  209. run: ([ -z $plist_secret ] || scripts/third_party/travis/retry.sh scripts/test_quickstart_framework.sh "${SDK}" swift)
  210. - name: Remove data before upload
  211. if: ${{ failure() }}
  212. run: scripts/remove_data.sh crashlytics
  213. - uses: actions/upload-artifact@v2
  214. if: ${{ failure() }}
  215. with:
  216. name: quickstart_artifacts_crashlytics
  217. path: quickstart-ios/
  218. quickstart_framework_database:
  219. # Don't run on private repo.
  220. if: github.event_name == 'schedule' && github.repository != 'FirebasePrivate/firebase-ios-sdk'
  221. needs: package
  222. env:
  223. plist_secret: ${{ secrets.GHASecretsGPGPassphrase1 }}
  224. signin_secret: ${{ secrets.GHASecretsGPGPassphrase1 }}
  225. FRAMEWORK_DIR: "Firebase-actions-dir"
  226. SDK: "Database"
  227. runs-on: macOS-latest
  228. steps:
  229. - uses: actions/checkout@v2
  230. - name: Get framework dir
  231. uses: actions/download-artifact@v1
  232. with:
  233. name: Firebase-actions-dir
  234. - name: Move frameworks
  235. run: |
  236. mkdir -p "${HOME}"/ios_frameworks/
  237. find "${GITHUB_WORKSPACE}/${FRAMEWORK_DIR}" -name "*.zip" -maxdepth 3 -exec unzip -d "${HOME}"/ios_frameworks/ {} +
  238. - name: Setup quickstart
  239. run: SAMPLE="$SDK" TARGET="${SDK}Example" NON_FIREBASE_SDKS="FirebaseUI/Database" scripts/setup_quickstart_framework.sh \
  240. "${HOME}"/ios_frameworks/Firebase/FirebaseDatabase/* \
  241. "${HOME}"/ios_frameworks/Firebase/FirebaseStorage/* \
  242. "${HOME}"/ios_frameworks/Firebase/FirebaseFirestore/* \
  243. "${HOME}"/ios_frameworks/Firebase/FirebaseAuth/* \
  244. "${HOME}"/ios_frameworks/Firebase/NonFirebaseSDKs/* \
  245. "${HOME}"/ios_frameworks/Firebase/FirebaseAnalytics/*
  246. - name: Install Secret GoogleService-Info.plist
  247. run: scripts/decrypt_gha_secret.sh scripts/gha-encrypted/qs-database.plist.gpg \
  248. quickstart-ios/database/GoogleService-Info.plist "$plist_secret"
  249. - name: Install Secret FIREGSignInInfo.h
  250. run: scripts/decrypt_gha_secret.sh scripts/gha-encrypted/FIREGSignInInfo.h.gpg \
  251. quickstart-ios/TestUtils/FIREGSignInInfo.h "$signin_secret"
  252. - name: Test Quickstart
  253. run: ([ -z $plist_secret ] || scripts/third_party/travis/retry.sh scripts/test_quickstart_framework.sh "${SDK}")
  254. - name: Remove data before upload
  255. if: ${{ failure() }}
  256. run: scripts/remove_data.sh database
  257. - uses: actions/upload-artifact@v2
  258. if: ${{ failure() }}
  259. with:
  260. name: quickstart_artifacts database
  261. path: quickstart-ios/
  262. quickstart_framework_dynamiclinks:
  263. # Don't run on private repo.
  264. if: github.event_name == 'schedule' && github.repository != 'FirebasePrivate/firebase-ios-sdk'
  265. needs: package
  266. env:
  267. plist_secret: ${{ secrets.GHASecretsGPGPassphrase1 }}
  268. signin_secret: ${{ secrets.GHASecretsGPGPassphrase1 }}
  269. FRAMEWORK_DIR: "Firebase-actions-dir"
  270. SDK: "DynamicLinks"
  271. runs-on: macOS-latest
  272. steps:
  273. - uses: actions/checkout@v2
  274. - name: Get framework dir
  275. uses: actions/download-artifact@v1
  276. with:
  277. name: Firebase-actions-dir
  278. - name: Move frameworks
  279. run: |
  280. mkdir -p "${HOME}"/ios_frameworks/
  281. find "${GITHUB_WORKSPACE}/${FRAMEWORK_DIR}" -name "*.zip" -maxdepth 3 -exec unzip -d "${HOME}"/ios_frameworks/ {} +
  282. - name: Setup Objc Quickstart
  283. run: SAMPLE="$SDK" TARGET="${SDK}Example" scripts/setup_quickstart_framework.sh \
  284. "${HOME}"/ios_frameworks/Firebase/FirebaseDynamicLinks/* \
  285. "${HOME}"/ios_frameworks/Firebase/FirebaseAnalytics/*
  286. - name: Setup Swift Quickstart
  287. run: SAMPLE="$SDK" TARGET="${SDK}ExampleSwift" scripts/setup_quickstart_framework.sh
  288. - name: Update Environment Variable For DynamicLinks
  289. run: |
  290. sed -i '' 's#DYNAMIC_LINK_DOMAIN#https://qpf6m.app.goo.gl#' quickstart-ios/dynamiclinks/DynamicLinksExample/DynamicLinksExample.entitlements
  291. sed -i '' 's#YOUR_DOMAIN_URI_PREFIX";#https://qpf6m.app.goo.gl";#' quickstart-ios/dynamiclinks/DynamicLinksExample/ViewController.m
  292. sed -i '' 's#YOUR_DOMAIN_URI_PREFIX";#https://qpf6m.app.goo.gl";#' quickstart-ios/dynamiclinks/DynamicLinksExampleSwift/ViewController.swift
  293. - name: Install Secret GoogleService-Info.plist
  294. run: scripts/decrypt_gha_secret.sh scripts/gha-encrypted/qs-dynamiclinks.plist.gpg \
  295. quickstart-ios/dynamiclinks/GoogleService-Info.plist "$plist_secret"
  296. - name: Install Secret FIREGSignInInfo.h
  297. run: scripts/decrypt_gha_secret.sh scripts/gha-encrypted/FIREGSignInInfo.h.gpg \
  298. quickstart-ios/TestUtils/FIREGSignInInfo.h "$signin_secret"
  299. - name: Test Objc Quickstart
  300. run: ([ -z $plist_secret ] || scripts/third_party/travis/retry.sh scripts/test_quickstart_framework.sh "${SDK}")
  301. - name: Test Swift Quickstart
  302. run: ([ -z $plist_secret ] || scripts/third_party/travis/retry.sh scripts/test_quickstart_framework.sh "${SDK}" swift)
  303. - name: Remove data before upload
  304. if: ${{ failure() }}
  305. run: scripts/remove_data.sh dynamiclinks
  306. - uses: actions/upload-artifact@v2
  307. if: ${{ failure() }}
  308. with:
  309. name: quickstart_artifacts_dynamiclinks
  310. path: quickstart-ios/
  311. quickstart_framework_firestore:
  312. # Don't run on private repo.
  313. if: github.event_name == 'schedule' && github.repository != 'FirebasePrivate/firebase-ios-sdk'
  314. needs: package
  315. env:
  316. plist_secret: ${{ secrets.GHASecretsGPGPassphrase1 }}
  317. signin_secret: ${{ secrets.GHASecretsGPGPassphrase1 }}
  318. FRAMEWORK_DIR: "Firebase-actions-dir"
  319. SDK: "Firestore"
  320. runs-on: macOS-latest
  321. steps:
  322. - uses: actions/checkout@v2
  323. - name: Get framework dir
  324. uses: actions/download-artifact@v1
  325. with:
  326. name: Firebase-actions-dir
  327. - name: Move frameworks
  328. run: |
  329. mkdir -p "${HOME}"/ios_frameworks/
  330. find "${GITHUB_WORKSPACE}/${FRAMEWORK_DIR}" -name "*.zip" -maxdepth 3 -exec unzip -d "${HOME}"/ios_frameworks/ {} +
  331. - name: Setup quickstart
  332. run: SAMPLE="$SDK" TARGET="${SDK}Example" NON_FIREBASE_SDKS="SDWebImage FirebaseUI/Auth FirebaseUI/Email FirebaseFirestoreSwift" scripts/setup_quickstart_framework.sh \
  333. "${HOME}"/ios_frameworks/Firebase/NonFirebaseSDKs/* \
  334. "${HOME}"/ios_frameworks/Firebase/FirebaseFirestore/* \
  335. "${HOME}"/ios_frameworks/Firebase/FirebaseAuth/* \
  336. "${HOME}"/ios_frameworks/Firebase/FirebaseAnalytics/*
  337. - name: Install Secret GoogleService-Info.plist
  338. run: scripts/decrypt_gha_secret.sh scripts/gha-encrypted/qs-firestore.plist.gpg \
  339. quickstart-ios/firestore/GoogleService-Info.plist "$plist_secret"
  340. - name: Install Secret FIREGSignInInfo.h
  341. run: scripts/decrypt_gha_secret.sh scripts/gha-encrypted/FIREGSignInInfo.h.gpg \
  342. quickstart-ios/TestUtils/FIREGSignInInfo.h "$signin_secret"
  343. - name: Test Quickstart
  344. run: ([ -z $plist_secret ] || scripts/third_party/travis/retry.sh scripts/test_quickstart_framework.sh "${SDK}")
  345. - name: Remove data before upload
  346. if: ${{ failure() }}
  347. run: scripts/remove_data.sh firestore
  348. - uses: actions/upload-artifact@v2
  349. if: ${{ failure() }}
  350. with:
  351. name: quickstart_artifacts_firestore
  352. path: quickstart-ios/
  353. quickstart_framework_inappmessaging:
  354. # Don't run on private repo.
  355. if: github.event_name == 'schedule' && github.repository != 'FirebasePrivate/firebase-ios-sdk'
  356. needs: package
  357. env:
  358. plist_secret: ${{ secrets.GHASecretsGPGPassphrase1 }}
  359. signin_secret: ${{ secrets.GHASecretsGPGPassphrase1 }}
  360. FRAMEWORK_DIR: "Firebase-actions-dir"
  361. SDK: "InAppMessaging"
  362. runs-on: macOS-latest
  363. steps:
  364. - uses: actions/checkout@v2
  365. - name: Get framework dir
  366. uses: actions/download-artifact@v1
  367. with:
  368. name: Firebase-actions-dir
  369. - name: Move frameworks
  370. run: |
  371. mkdir -p "${HOME}"/ios_frameworks/
  372. find "${GITHUB_WORKSPACE}/${FRAMEWORK_DIR}" -name "*.zip" -maxdepth 3 -exec unzip -d "${HOME}"/ios_frameworks/ {} +
  373. - name: Setup quickstart
  374. run: SAMPLE="$SDK" TARGET="${SDK}Example" scripts/setup_quickstart_framework.sh \
  375. "${HOME}"/ios_frameworks/Firebase/FirebaseDynamicLinks/* \
  376. "${HOME}"/ios_frameworks/Firebase/FirebaseInAppMessaging/* \
  377. "${HOME}"/ios_frameworks/Firebase/FirebaseAnalytics/*
  378. - name: Setup swift quickstart
  379. run: SAMPLE="$SDK" TARGET="${SDK}ExampleSwift" scripts/setup_quickstart_framework.sh
  380. - name: Install Secret GoogleService-Info.plist
  381. run: scripts/decrypt_gha_secret.sh scripts/gha-encrypted/qs-inappmessaging.plist.gpg \
  382. quickstart-ios/inappmessaging/GoogleService-Info.plist "$plist_secret"
  383. - name: Install Secret FIREGSignInInfo.h
  384. run: scripts/decrypt_gha_secret.sh scripts/gha-encrypted/FIREGSignInInfo.h.gpg \
  385. quickstart-ios/TestUtils/FIREGSignInInfo.h "$signin_secret"
  386. - name: Test Quickstart
  387. run: ([ -z $plist_secret ] || scripts/third_party/travis/retry.sh scripts/test_quickstart_framework.sh "${SDK}")
  388. - name: Test Swift Quickstart
  389. run: ([ -z $plist_secret ] || scripts/third_party/travis/retry.sh scripts/test_quickstart_framework.sh "${SDK}" swift)
  390. - name: Remove data before upload
  391. if: ${{ failure() }}
  392. run: scripts/remove_data.sh inappmessaging
  393. - uses: actions/upload-artifact@v2
  394. if: ${{ failure() }}
  395. with:
  396. name: quickstart_artifacts_ihappmessaging
  397. path: quickstart-ios/
  398. quickstart_framework_messaging:
  399. # Don't run on private repo.
  400. if: github.event_name == 'schedule' && github.repository != 'FirebasePrivate/firebase-ios-sdk'
  401. needs: package
  402. env:
  403. plist_secret: ${{ secrets.GHASecretsGPGPassphrase1 }}
  404. signin_secret: ${{ secrets.GHASecretsGPGPassphrase1 }}
  405. FRAMEWORK_DIR: "Firebase-actions-dir"
  406. SDK: "Messaging"
  407. runs-on: macOS-latest
  408. steps:
  409. - uses: actions/checkout@v2
  410. - name: Get framework dir
  411. uses: actions/download-artifact@v1
  412. with:
  413. name: Firebase-actions-dir
  414. - name: Move frameworks
  415. run: |
  416. mkdir -p "${HOME}"/ios_frameworks/
  417. find "${GITHUB_WORKSPACE}/${FRAMEWORK_DIR}" -name "*.zip" -maxdepth 3 -exec unzip -d "${HOME}"/ios_frameworks/ {} +
  418. - name: Setup quickstart
  419. run: SAMPLE="$SDK" TARGET="${SDK}Example" scripts/setup_quickstart_framework.sh \
  420. "${HOME}"/ios_frameworks/Firebase/FirebaseMessaging/* \
  421. "${HOME}"/ios_frameworks/Firebase/FirebaseAnalytics/*
  422. - name: Setup swift quickstart
  423. run: SAMPLE="$SDK" TARGET="${SDK}ExampleSwift" scripts/setup_quickstart_framework.sh
  424. - name: Install Secret GoogleService-Info.plist
  425. run: scripts/decrypt_gha_secret.sh scripts/gha-encrypted/qs-messaging.plist.gpg \
  426. quickstart-ios/messaging/GoogleService-Info.plist "$plist_secret"
  427. - name: Install Secret FIREGSignInInfo.h
  428. run: scripts/decrypt_gha_secret.sh scripts/gha-encrypted/FIREGSignInInfo.h.gpg \
  429. quickstart-ios/TestUtils/FIREGSignInInfo.h "$signin_secret"
  430. - name: Test Quickstart
  431. run: ([ -z $plist_secret ] || scripts/third_party/travis/retry.sh scripts/test_quickstart_framework.sh "${SDK}")
  432. - name: Test Swift Quickstart
  433. run: ([ -z $plist_secret ] || scripts/third_party/travis/retry.sh scripts/test_quickstart_framework.sh "${SDK}" swift)
  434. - name: Remove data before upload
  435. if: ${{ failure() }}
  436. run: scripts/remove_data.sh messaging
  437. - uses: actions/upload-artifact@v2
  438. if: ${{ failure() }}
  439. with:
  440. name: quickstart_artifacts_messaging
  441. path: quickstart-ios/
  442. quickstart_framework_storage:
  443. # Don't run on private repo.
  444. if: github.event_name == 'schedule' && github.repository != 'FirebasePrivate/firebase-ios-sdk'
  445. needs: package
  446. env:
  447. plist_secret: ${{ secrets.GHASecretsGPGPassphrase1 }}
  448. signin_secret: ${{ secrets.GHASecretsGPGPassphrase1 }}
  449. FRAMEWORK_DIR: "Firebase-actions-dir"
  450. SDK: "Storage"
  451. runs-on: macOS-latest
  452. steps:
  453. - uses: actions/checkout@v2
  454. - name: Get framework dir
  455. uses: actions/download-artifact@v1
  456. with:
  457. name: Firebase-actions-dir
  458. - name: Move frameworks
  459. run: |
  460. mkdir -p "${HOME}"/ios_frameworks/
  461. find "${GITHUB_WORKSPACE}/${FRAMEWORK_DIR}" -name "*.zip" -maxdepth 3 -exec unzip -d "${HOME}"/ios_frameworks/ {} +
  462. - name: Setup quickstart
  463. run: SAMPLE="$SDK" TARGET="${SDK}Example" scripts/setup_quickstart_framework.sh \
  464. "${HOME}"/ios_frameworks/Firebase/FirebaseStorage/* \
  465. "${HOME}"/ios_frameworks/Firebase/FirebaseAuth/* \
  466. "${HOME}"/ios_frameworks/Firebase/FirebaseAnalytics/*
  467. - name: Setup swift quickstart
  468. run: SAMPLE="$SDK" TARGET="${SDK}ExampleSwift" NON_FIREBASE_SDKS="FirebaseStorageSwift" scripts/setup_quickstart_framework.sh \
  469. "${HOME}"/ios_frameworks/Firebase/NonFirebaseSDKs/*
  470. - name: Install Secret GoogleService-Info.plist
  471. run: scripts/decrypt_gha_secret.sh scripts/gha-encrypted/qs-storage.plist.gpg \
  472. quickstart-ios/storage/GoogleService-Info.plist "$plist_secret"
  473. - name: Install Secret FIREGSignInInfo.h
  474. run: scripts/decrypt_gha_secret.sh scripts/gha-encrypted/FIREGSignInInfo.h.gpg \
  475. quickstart-ios/TestUtils/FIREGSignInInfo.h "$signin_secret"
  476. - name: Test Quickstart
  477. run: ([ -z $plist_secret ] || scripts/third_party/travis/retry.sh scripts/test_quickstart_framework.sh "${SDK}")
  478. - name: Test Swift Quickstart
  479. run: ([ -z $plist_secret ] || scripts/third_party/travis/retry.sh scripts/test_quickstart_framework.sh "${SDK}" swift)
  480. - name: Remove data before upload
  481. if: ${{ failure() }}
  482. run: scripts/remove_data.sh storage
  483. - uses: actions/upload-artifact@v2
  484. if: ${{ failure() }}
  485. with:
  486. name: quickstart_artifacts_storage
  487. path: quickstart-ios/