zip.yml 24 KB

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