You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.

circle.yml 6.0KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222
  1. version: 2
  2. jobs:
  3. darwin:
  4. macos:
  5. xcode: "9.0"
  6. steps:
  7. - checkout
  8. - run:
  9. name: Replace NPM Version
  10. command: npm install -g npm@3
  11. - run:
  12. name: Install Dependencies
  13. command: yarn
  14. - run:
  15. name: Run Linting
  16. command: yarn test
  17. #- run:
  18. # name: Run Tests
  19. # command: yarn test-electron-coverage
  20. #- run:
  21. # name: Publish Coverage
  22. # command: yarn _coverage_publish
  23. - run:
  24. name: Import Keys
  25. command: ./sig/import.sh
  26. - run:
  27. name: Make Artifacts
  28. command: yarn make:darwin
  29. - run:
  30. name: Move Artifacts
  31. command: |
  32. mkdir -p dist/installers/darwin
  33. mv "dist/Google Play Music Desktop Player-darwin-x64/Google Play Music Desktop Player.zip" "dist/installers/darwin/Google Play Music Desktop Player.zip"
  34. - save_cache:
  35. key: darwin-artifact-{{ .Branch }}-{{ .Revision }}
  36. paths:
  37. - "dist/installers"
  38. - store_artifacts:
  39. path: dist/installers
  40. - store_test_results:
  41. path: test_reports
  42. linux_test:
  43. docker:
  44. - image: gpmdp/build-64
  45. steps:
  46. - checkout
  47. - run:
  48. name: Install Dependencies
  49. command: yarn
  50. - run:
  51. name: Run Linting
  52. command: yarn test
  53. - run:
  54. name: Start xvfb
  55. command: |
  56. echo "Starting Xvfb"
  57. Xvfb :99 -ac &
  58. sleep 2
  59. - run:
  60. name: Run Tests
  61. command: DISPLAY=:99 yarn test-electron
  62. - run:
  63. name: Move Test Report
  64. command: |
  65. mkdir -p test_reports
  66. mv xunit.xml test_reports/xunit.xml
  67. - save_cache:
  68. key: linux-modules-{{ .Branch }}-{{ .Revision }}
  69. paths:
  70. - "node_modules"
  71. - store_test_results:
  72. path: test_reports
  73. linux_pack_32:
  74. docker:
  75. - image: gpmdp/build-32
  76. steps:
  77. - checkout
  78. - restore_cache:
  79. key: linux-modules-{{ .Branch }}-{{ .Revision }}
  80. - run:
  81. name: Package
  82. command: yarn package:linux:32
  83. - save_cache:
  84. key: linux-packaged-32-{{ .Branch }}-{{ .Revision }}
  85. paths:
  86. - "dist"
  87. linux_pack_64:
  88. docker:
  89. - image: gpmdp/build-64
  90. steps:
  91. - checkout
  92. - restore_cache:
  93. key: linux-modules-{{ .Branch }}-{{ .Revision }}
  94. - run:
  95. name: Package
  96. command: yarn package:linux:64
  97. - save_cache:
  98. key: linux-packaged-64-{{ .Branch }}-{{ .Revision }}
  99. paths:
  100. - "dist"
  101. linux_deb_32:
  102. docker:
  103. - image: gpmdp/build-32
  104. steps:
  105. - checkout
  106. - restore_cache:
  107. key: linux-modules-{{ .Branch }}-{{ .Revision }}
  108. - restore_cache:
  109. key: linux-packaged-32-{{ .Branch }}-{{ .Revision }}
  110. - run:
  111. name: Make
  112. command: GPMDP_SKIP_PACKAGE=true yarn make:deb:32
  113. - save_cache:
  114. key: linux-artifact-deb-32-{{ .Branch }}-{{ .Revision }}
  115. paths:
  116. - "dist/installers"
  117. linux_rpm_32:
  118. docker:
  119. - image: gpmdp/build-32
  120. steps:
  121. - checkout
  122. - restore_cache:
  123. key: linux-modules-{{ .Branch }}-{{ .Revision }}
  124. - restore_cache:
  125. key: linux-packaged-32-{{ .Branch }}-{{ .Revision }}
  126. - run:
  127. name: Make
  128. command: GPMDP_SKIP_PACKAGE=true yarn make:rpm:32
  129. - save_cache:
  130. key: linux-artifact-rpm-32-{{ .Branch }}-{{ .Revision }}
  131. paths:
  132. - "dist/installers"
  133. linux_deb_64:
  134. docker:
  135. - image: gpmdp/build-64
  136. steps:
  137. - checkout
  138. - restore_cache:
  139. key: linux-modules-{{ .Branch }}-{{ .Revision }}
  140. - restore_cache:
  141. key: linux-packaged-64-{{ .Branch }}-{{ .Revision }}
  142. - run:
  143. name: Make
  144. command: GPMDP_SKIP_PACKAGE=true yarn make:deb:64
  145. - save_cache:
  146. key: linux-artifact-deb-64-{{ .Branch }}-{{ .Revision }}
  147. paths:
  148. - "dist/installers"
  149. linux_rpm_64:
  150. docker:
  151. - image: gpmdp/build-64
  152. steps:
  153. - checkout
  154. - restore_cache:
  155. key: linux-modules-{{ .Branch }}-{{ .Revision }}
  156. - restore_cache:
  157. key: linux-packaged-64-{{ .Branch }}-{{ .Revision }}
  158. - run:
  159. name: Make
  160. command: GPMDP_SKIP_PACKAGE=true yarn make:rpm:64
  161. - save_cache:
  162. key: linux-artifact-rpm-64-{{ .Branch }}-{{ .Revision }}
  163. paths:
  164. - "dist/installers"
  165. artifact_gather:
  166. docker:
  167. - image: gpmdp/build-64
  168. steps:
  169. - restore_cache:
  170. key: linux-artifact-deb-32-{{ .Branch }}-{{ .Revision }}
  171. - restore_cache:
  172. key: linux-artifact-rpm-32-{{ .Branch }}-{{ .Revision }}
  173. - restore_cache:
  174. key: linux-artifact-deb-64-{{ .Branch }}-{{ .Revision }}
  175. - restore_cache:
  176. key: linux-artifact-rpm-64-{{ .Branch }}-{{ .Revision }}
  177. - run:
  178. name: Perm Hax
  179. command: |
  180. sudo mkdir -p /Users/distiller/project
  181. sudo chmod -R 777 /Users/distiller/project
  182. - restore_cache:
  183. key: darwin-artifact-{{ .Branch }}-{{ .Revision }}
  184. - run:
  185. name: Move
  186. command: mv /Users/distiller/project/dist/installers/darwin dist/installers/darwin
  187. - store_artifacts:
  188. path: dist
  189. workflows:
  190. version: 2
  191. build:
  192. jobs:
  193. - darwin
  194. - linux_test
  195. - linux_pack_32:
  196. requires:
  197. - linux_test
  198. - linux_pack_64:
  199. requires:
  200. - linux_test
  201. - linux_deb_32:
  202. requires:
  203. - linux_pack_32
  204. - linux_rpm_32:
  205. requires:
  206. - linux_pack_32
  207. - linux_deb_64:
  208. requires:
  209. - linux_pack_64
  210. - linux_rpm_64:
  211. requires:
  212. - linux_pack_64
  213. - artifact_gather:
  214. requires:
  215. - linux_deb_32
  216. - linux_rpm_32
  217. - linux_deb_64
  218. - linux_rpm_64
  219. - darwin