pipeline.yml 5.7 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240
  1. env:
  2. CODECOV_TOKEN: "2dd7eb9b-0eda-45fe-a47c-9b5ac040045f"
  3. steps:
  4. - command:
  5. - "python -m pip install tox"
  6. - "tox -e check_codestyle"
  7. label: "\U0001F9F9 Check Style"
  8. plugins:
  9. - docker#v3.0.1:
  10. image: "python:3.6"
  11. - command:
  12. - "python -m pip install tox"
  13. - "tox -e packaging"
  14. label: "\U0001F9F9 packaging"
  15. plugins:
  16. - docker#v3.0.1:
  17. image: "python:3.6"
  18. - command:
  19. - "python -m pip install tox"
  20. - "tox -e check_isort"
  21. label: "\U0001F9F9 isort"
  22. plugins:
  23. - docker#v3.0.1:
  24. image: "python:3.6"
  25. - command:
  26. - "python -m pip install tox"
  27. - "scripts-dev/check-newsfragment"
  28. label: ":newspaper: Newsfile"
  29. branches: "!master !develop !release-*"
  30. plugins:
  31. - docker#v3.0.1:
  32. image: "python:3.6"
  33. propagate-environment: true
  34. - command:
  35. - "python -m pip install tox"
  36. - "tox -e check-sampleconfig"
  37. label: "\U0001F9F9 check-sample-config"
  38. plugins:
  39. - docker#v3.0.1:
  40. image: "python:3.6"
  41. - wait
  42. - command:
  43. - "apt-get update && apt-get install -y python3.5 python3.5-dev python3-pip libxml2-dev libxslt-dev zlib1g-dev"
  44. - "python3.5 -m pip install tox"
  45. - "tox -e py35-old,codecov"
  46. label: ":python: 3.5 / SQLite / Old Deps"
  47. env:
  48. TRIAL_FLAGS: "-j 2"
  49. plugins:
  50. - docker#v3.0.1:
  51. image: "ubuntu:xenial" # We use xenail to get an old sqlite and python
  52. propagate-environment: true
  53. retry:
  54. automatic:
  55. - exit_status: -1
  56. limit: 2
  57. - exit_status: 2
  58. limit: 2
  59. - command:
  60. - "python -m pip install tox"
  61. - "tox -e py35,codecov"
  62. label: ":python: 3.5 / SQLite"
  63. env:
  64. TRIAL_FLAGS: "-j 2"
  65. plugins:
  66. - docker#v3.0.1:
  67. image: "python:3.5"
  68. propagate-environment: true
  69. retry:
  70. automatic:
  71. - exit_status: -1
  72. limit: 2
  73. - exit_status: 2
  74. limit: 2
  75. - command:
  76. - "python -m pip install tox"
  77. - "tox -e py36,codecov"
  78. label: ":python: 3.6 / SQLite"
  79. env:
  80. TRIAL_FLAGS: "-j 2"
  81. plugins:
  82. - docker#v3.0.1:
  83. image: "python:3.6"
  84. propagate-environment: true
  85. retry:
  86. automatic:
  87. - exit_status: -1
  88. limit: 2
  89. - exit_status: 2
  90. limit: 2
  91. - command:
  92. - "python -m pip install tox"
  93. - "tox -e py37,codecov"
  94. label: ":python: 3.7 / SQLite"
  95. env:
  96. TRIAL_FLAGS: "-j 2"
  97. plugins:
  98. - docker#v3.0.1:
  99. image: "python:3.7"
  100. propagate-environment: true
  101. retry:
  102. automatic:
  103. - exit_status: -1
  104. limit: 2
  105. - exit_status: 2
  106. limit: 2
  107. - label: ":python: 3.5 / :postgres: 9.5"
  108. agents:
  109. queue: "medium"
  110. env:
  111. TRIAL_FLAGS: "-j 8"
  112. command:
  113. - "bash -c 'python -m pip install tox && python -m tox -e py35-postgres,codecov'"
  114. plugins:
  115. - docker-compose#v2.1.0:
  116. run: testenv
  117. config:
  118. - .buildkite/docker-compose.py35.pg95.yaml
  119. retry:
  120. automatic:
  121. - exit_status: -1
  122. limit: 2
  123. - exit_status: 2
  124. limit: 2
  125. - label: ":python: 3.7 / :postgres: 9.5"
  126. agents:
  127. queue: "medium"
  128. env:
  129. TRIAL_FLAGS: "-j 8"
  130. command:
  131. - "bash -c 'python -m pip install tox && python -m tox -e py37-postgres,codecov'"
  132. plugins:
  133. - docker-compose#v2.1.0:
  134. run: testenv
  135. config:
  136. - .buildkite/docker-compose.py37.pg95.yaml
  137. retry:
  138. automatic:
  139. - exit_status: -1
  140. limit: 2
  141. - exit_status: 2
  142. limit: 2
  143. - label: ":python: 3.7 / :postgres: 11"
  144. agents:
  145. queue: "medium"
  146. env:
  147. TRIAL_FLAGS: "-j 8"
  148. command:
  149. - "bash -c 'python -m pip install tox && python -m tox -e py37-postgres,codecov'"
  150. plugins:
  151. - docker-compose#v2.1.0:
  152. run: testenv
  153. config:
  154. - .buildkite/docker-compose.py37.pg11.yaml
  155. retry:
  156. automatic:
  157. - exit_status: -1
  158. limit: 2
  159. - exit_status: 2
  160. limit: 2
  161. - label: "SyTest - :python: 3.5 / SQLite / Monolith"
  162. agents:
  163. queue: "medium"
  164. command:
  165. - "bash .buildkite/merge_base_branch.sh"
  166. - "bash /synapse_sytest.sh"
  167. plugins:
  168. - docker#v3.0.1:
  169. image: "matrixdotorg/sytest-synapse:py35"
  170. propagate-environment: true
  171. always-pull: true
  172. workdir: "/src"
  173. retry:
  174. automatic:
  175. - exit_status: -1
  176. limit: 2
  177. - exit_status: 2
  178. limit: 2
  179. - label: "SyTest - :python: 3.5 / :postgres: 9.6 / Monolith"
  180. agents:
  181. queue: "medium"
  182. env:
  183. POSTGRES: "1"
  184. command:
  185. - "bash .buildkite/merge_base_branch.sh"
  186. - "bash /synapse_sytest.sh"
  187. plugins:
  188. - docker#v3.0.1:
  189. image: "matrixdotorg/sytest-synapse:py35"
  190. propagate-environment: true
  191. always-pull: true
  192. workdir: "/src"
  193. retry:
  194. automatic:
  195. - exit_status: -1
  196. limit: 2
  197. - exit_status: 2
  198. limit: 2
  199. - label: "SyTest - :python: 3.5 / :postgres: 9.6 / Workers"
  200. agents:
  201. queue: "medium"
  202. env:
  203. POSTGRES: "1"
  204. WORKERS: "1"
  205. BLACKLIST: "synapse-blacklist-with-workers"
  206. command:
  207. - "bash .buildkite/merge_base_branch.sh"
  208. - "bash -c 'cat /src/sytest-blacklist /src/.buildkite/worker-blacklist > /src/synapse-blacklist-with-workers'"
  209. - "bash /synapse_sytest.sh"
  210. plugins:
  211. - docker#v3.0.1:
  212. image: "matrixdotorg/sytest-synapse:py35"
  213. propagate-environment: true
  214. always-pull: true
  215. workdir: "/src"
  216. retry:
  217. automatic:
  218. - exit_status: -1
  219. limit: 2
  220. - exit_status: 2
  221. limit: 2