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.

.drone.yml 32KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262263264265266267268269270271272273274275276277278279280281282283284285286287288289290291292293294295296297298299300301302303304305306307308309310311312313314315316317318319320321322323324325326327328329330331332333334335336337338339340341342343344345346347348349350351352353354355356357358359360361362363364365366367368369370371372373374375376377378379380381382383384385386387388389390391392393394395396397398399400401402403404405406407408409410411412413414415416417418419420421422423424425426427428429430431432433434435436437438439440441442443444445446447448449450451452453454455456457458459460461462463464465466467468469470471472473474475476477478479480481482483484485486487488489490491492493494495496497498499500501502503504505506507508509510511512513514515516517518519520521522523524525526527528529530531532533534535536537538539540541542543544545546547548549550551552553554555556557558559560561562563564565566567568569570571572573574575576577578579580581582583584585586587588589590591592593594595596597598599600601602603604605606607608609610611612613614615616617618619620621622623624625626627628629630631632633634635636637638639640641642643644645646647648649650651652653654655656657658659660661662663664665666667668669670671672673674675676677678679680681682683684685686687688689690691692693694695696697698699700701702703704705706707708709710711712713714715716717718719720721722723724725726727728729730731732733734735736737738739740741742743744745746747748749750751752753754755756757758759760761762763764765766767768769770771772773774775776777778779780781782783784785786787788789790791792793794795796797798799800801802803804805806807808809810811812813814815816817818819820821822823824825826827828829830831832833834835836837838839840841842843844845846847848849850851852853854855856857858859860861862863864865866867868869870871872873874875876877878879880881882883884885886887888889890891892893894
  1. clone:
  2. git:
  3. image: plugins/git
  4. depth: 1
  5. pipeline:
  6. jsunit:
  7. image: nextcloudci/jsunit:jsunit-5
  8. commands:
  9. - ./autotest-js.sh
  10. - curl -o codecov.sh https://codecov.io/bash
  11. - sh -c "if [ '$DRONE_BUILD_EVENT' = 'pull_request' ]; then bash codecov.sh -B $DRONE_BRANCH -C $DRONE_COMMIT -P $DRONE_PULL_REQUEST -t 117641e2-a9e8-4b7b-984b-ae872d9b05f5; fi"
  12. - sh -c "if [ '$DRONE_BUILD_EVENT' != 'pull_request' ]; then bash codecov.sh -B $DRONE_BRANCH -C $DRONE_COMMIT -t 117641e2-a9e8-4b7b-984b-ae872d9b05f5; fi"
  13. when:
  14. matrix:
  15. TESTS: jsunit
  16. checkers:
  17. image: nextcloudci/php7.0:php7.0-19
  18. commands:
  19. - ./autotest-checkers.sh
  20. secrets: [ github_token ]
  21. when:
  22. matrix:
  23. TESTS: checkers
  24. syntax-php7.0:
  25. image: nextcloudci/php7.0:php7.0-19
  26. commands:
  27. - composer install
  28. - ./lib/composer/bin/parallel-lint --exclude lib/composer/jakub-onderka/ --exclude 3rdparty/symfony/polyfill-php70/Resources/stubs/ --exclude 3rdparty/patchwork/utf8/src/Patchwork/Utf8/Bootup/ --exclude 3rdparty/paragonie/random_compat/lib/ --exclude lib/composer/composer/autoload_static.php --exclude 3rdparty/composer/autoload_static.php .
  29. when:
  30. matrix:
  31. TESTS: syntax-php7.0
  32. syntax-php7.1:
  33. image: nextcloudci/php7.1:php7.1-16
  34. commands:
  35. - composer install
  36. - ./lib/composer/bin/parallel-lint --exclude lib/composer/jakub-onderka/ --exclude 3rdparty/symfony/polyfill-php70/Resources/stubs/ --exclude 3rdparty/patchwork/utf8/src/Patchwork/Utf8/Bootup/ --exclude 3rdparty/paragonie/random_compat/lib/ --exclude lib/composer/composer/autoload_static.php --exclude 3rdparty/composer/autoload_static.php .
  37. when:
  38. matrix:
  39. TESTS: syntax-php7.1
  40. phan:
  41. image: nextcloudci/php7.2:php7.2-11
  42. commands:
  43. - composer install
  44. - composer require --dev "phan/phan:0.11.1"
  45. - ./lib/composer/phan/phan/phan -k build/.phan/config.php
  46. - php ./build/.phan/plugin-checker.php
  47. when:
  48. matrix:
  49. TESTS: phan
  50. litmus-v1:
  51. image: nextcloudci/litmus-php7.0:litmus-php7.0-6
  52. commands:
  53. - bash tests/travis/install.sh sqlite
  54. - bash apps/dav/tests/travis/litmus-v1/script.sh
  55. when:
  56. matrix:
  57. TESTS: litmus-v1
  58. litmus-v2:
  59. image: nextcloudci/litmus-php7.0:litmus-php7.0-6
  60. commands:
  61. - bash tests/travis/install.sh sqlite
  62. - bash apps/dav/tests/travis/litmus-v2/script.sh
  63. when:
  64. matrix:
  65. TESTS: litmus-v2
  66. caldavtester-new-endpoint:
  67. image: nextcloudci/litmus-php7.0:litmus-php7.0-6
  68. commands:
  69. - bash tests/travis/install.sh sqlite
  70. - bash apps/dav/tests/travis/caldav/install.sh
  71. - bash apps/dav/tests/travis/caldav/script-new-endpoint.sh
  72. when:
  73. matrix:
  74. TESTS: caldavtester-new-endpoint
  75. caldavtester-old-endpoint:
  76. image: nextcloudci/litmus-php7.0:litmus-php7.0-6
  77. commands:
  78. - bash tests/travis/install.sh sqlite
  79. - bash apps/dav/tests/travis/caldav/install.sh
  80. - bash apps/dav/tests/travis/caldav/script-old-endpoint.sh
  81. when:
  82. matrix:
  83. TESTS: caldavtester-old-endpoint
  84. carddavtester-new-endpoint:
  85. image: nextcloudci/litmus-php7.0:litmus-php7.0-6
  86. commands:
  87. - bash tests/travis/install.sh sqlite
  88. - bash apps/dav/tests/travis/carddav/install.sh
  89. - bash apps/dav/tests/travis/carddav/script-new-endpoint.sh
  90. when:
  91. matrix:
  92. TESTS: carddavtester-new-endpoint
  93. carddavtester-old-endpoint:
  94. image: nextcloudci/litmus-php7.0:litmus-php7.0-6
  95. commands:
  96. - bash tests/travis/install.sh sqlite
  97. - bash apps/dav/tests/travis/carddav/install.sh
  98. - bash apps/dav/tests/travis/carddav/script-old-endpoint.sh
  99. when:
  100. matrix:
  101. TESTS: carddavtester-old-endpoint
  102. sqlite-php7.0-samba-native:
  103. image: nextcloudci/samba-native-php7.0:samba-native-php7.0-3
  104. commands:
  105. - smbd -D -FS &
  106. - ./autotest-external.sh sqlite smb-linux
  107. - wget https://codecov.io/bash -O codecov.sh
  108. - sh -c "if [ '$DRONE_BUILD_EVENT' = 'pull_request' ]; then bash codecov.sh -B $DRONE_BRANCH -C $DRONE_COMMIT -P $DRONE_PULL_REQUEST -t 117641e2-a9e8-4b7b-984b-ae872d9b05f5 -f tests/autotest-external-clover-sqlite.xml; fi"
  109. - sh -c "if [ '$DRONE_BUILD_EVENT' != 'pull_request' ]; then bash codecov.sh -B $DRONE_BRANCH -C $DRONE_COMMIT -t 117641e2-a9e8-4b7b-984b-ae872d9b05f5 -f tests/autotest-external-clover-sqlite.xml; fi"
  110. - sh -c "if [ '$DRONE_BUILD_EVENT' = 'pull_request' ]; then bash codecov.sh -B $DRONE_BRANCH -C $DRONE_COMMIT -P $DRONE_PULL_REQUEST -t 117641e2-a9e8-4b7b-984b-ae872d9b05f5 -f tests/autotest-external-clover-sqlite-smb-linux.xml; fi"
  111. - sh -c "if [ '$DRONE_BUILD_EVENT' != 'pull_request' ]; then bash codecov.sh -B $DRONE_BRANCH -C $DRONE_COMMIT -t 117641e2-a9e8-4b7b-984b-ae872d9b05f5 -f tests/autotest-external-clover-sqlite-smb-linux.xml; fi"
  112. when:
  113. matrix:
  114. TESTS: sqlite-php7.0-samba-native
  115. sqlite-php7.0-samba-non-native:
  116. image: nextcloudci/samba-non-native-php7.0:samba-non-native-php7.0-4
  117. commands:
  118. - smbd -D -FS &
  119. - ./autotest-external.sh sqlite smb-linux
  120. - wget https://codecov.io/bash -O codecov.sh
  121. - sh -c "if [ '$DRONE_BUILD_EVENT' = 'pull_request' ]; then bash codecov.sh -B $DRONE_BRANCH -C $DRONE_COMMIT -P $DRONE_PULL_REQUEST -t 117641e2-a9e8-4b7b-984b-ae872d9b05f5 -f tests/autotest-external-clover-sqlite.xml; fi"
  122. - sh -c "if [ '$DRONE_BUILD_EVENT' != 'pull_request' ]; then bash codecov.sh -B $DRONE_BRANCH -C $DRONE_COMMIT -t 117641e2-a9e8-4b7b-984b-ae872d9b05f5 -f tests/autotest-external-clover-sqlite.xml; fi"
  123. - sh -c "if [ '$DRONE_BUILD_EVENT' = 'pull_request' ]; then bash codecov.sh -B $DRONE_BRANCH -C $DRONE_COMMIT -P $DRONE_PULL_REQUEST -t 117641e2-a9e8-4b7b-984b-ae872d9b05f5 -f tests/autotest-external-clover-sqlite-smb-linux.xml; fi"
  124. - sh -c "if [ '$DRONE_BUILD_EVENT' != 'pull_request' ]; then bash codecov.sh -B $DRONE_BRANCH -C $DRONE_COMMIT -t 117641e2-a9e8-4b7b-984b-ae872d9b05f5 -f tests/autotest-external-clover-sqlite-smb-linux.xml; fi"
  125. when:
  126. matrix:
  127. TESTS: sqlite-php7.0-samba-non-native
  128. sqlite-php7.0-webdav-apache:
  129. image: nextcloudci/webdav-apache-php7.0
  130. commands:
  131. - apache2
  132. - ./autotest-external.sh sqlite webdav-apachedrone
  133. - wget https://codecov.io/bash -O codecov.sh
  134. - sh -c "if [ '$DRONE_BUILD_EVENT' = 'pull_request' ]; then bash codecov.sh -B $DRONE_BRANCH -C $DRONE_COMMIT -P $DRONE_PULL_REQUEST -t 117641e2-a9e8-4b7b-984b-ae872d9b05f5 -f tests/autotest-external-clover-sqlite.xml; fi"
  135. - sh -c "if [ '$DRONE_BUILD_EVENT' != 'pull_request' ]; then bash codecov.sh -B $DRONE_BRANCH -C $DRONE_COMMIT -t 117641e2-a9e8-4b7b-984b-ae872d9b05f5 -f tests/autotest-external-clover-sqlite.xml; fi"
  136. - sh -c "if [ '$DRONE_BUILD_EVENT' = 'pull_request' ]; then bash codecov.sh -B $DRONE_BRANCH -C $DRONE_COMMIT -P $DRONE_PULL_REQUEST -t 117641e2-a9e8-4b7b-984b-ae872d9b05f5 -f tests/autotest-external-clover-sqlite-webdav-apachedrone.xml; fi"
  137. - sh -c "if [ '$DRONE_BUILD_EVENT' != 'pull_request' ]; then bash codecov.sh -B $DRONE_BRANCH -C $DRONE_COMMIT -t 117641e2-a9e8-4b7b-984b-ae872d9b05f5 -f tests/autotest-external-clover-sqlite-webdav-apachedrone.xml; fi"
  138. when:
  139. matrix:
  140. TESTS: sqlite-php7.0-webdav-apache
  141. nodb-php7.0:
  142. image: nextcloudci/php7.0:php7.0-19
  143. commands:
  144. - NOCOVERAGE=true TEST_SELECTION=NODB ./autotest.sh sqlite
  145. when:
  146. matrix:
  147. DB: NODB
  148. PHP: "7.0"
  149. nodb-php7.1:
  150. image: nextcloudci/php7.1:php7.1-16
  151. commands:
  152. - NOCOVERAGE=true TEST_SELECTION=NODB ./autotest.sh sqlite
  153. when:
  154. matrix:
  155. DB: NODB
  156. PHP: 7.1
  157. nodb-php7.2:
  158. image: nextcloudci/php7.2:php7.2-11
  159. commands:
  160. - NOCOVERAGE=true TEST_SELECTION=NODB ./autotest.sh sqlite
  161. when:
  162. matrix:
  163. DB: NODB
  164. PHP: 7.2
  165. sqlite-php7.0:
  166. image: nextcloudci/php7.0:php7.0-19
  167. commands:
  168. - NOCOVERAGE=true TEST_SELECTION=DB ./autotest.sh sqlite
  169. when:
  170. matrix:
  171. DB: sqlite
  172. PHP: "7.0"
  173. sqlite-php7.1:
  174. image: nextcloudci/php7.1:php7.1-16
  175. commands:
  176. - NOCOVERAGE=true TEST_SELECTION=DB ./autotest.sh sqlite
  177. when:
  178. matrix:
  179. DB: sqlite
  180. PHP: 7.1
  181. sqlite-php7.2:
  182. image: nextcloudci/php7.2:php7.2-11
  183. commands:
  184. - NOCOVERAGE=true TEST_SELECTION=DB ./autotest.sh sqlite
  185. when:
  186. matrix:
  187. DB: sqlite
  188. PHP: 7.2
  189. mysql-php7.0:
  190. image: nextcloudci/php7.0:php7.0-19
  191. commands:
  192. - NOCOVERAGE=true TEST_SELECTION=DB ./autotest.sh mysql
  193. when:
  194. matrix:
  195. DB: mysql
  196. PHP: "7.0"
  197. mysql-php7.1:
  198. image: nextcloudci/php7.1:php7.1-16
  199. commands:
  200. - NOCOVERAGE=true TEST_SELECTION=DB ./autotest.sh mysql
  201. when:
  202. matrix:
  203. DB: mysql
  204. PHP: 7.1
  205. mysql-php7.2:
  206. image: nextcloudci/php7.2:php7.2-11
  207. commands:
  208. - NOCOVERAGE=true TEST_SELECTION=DB ./autotest.sh mysql
  209. when:
  210. matrix:
  211. DB: mysql
  212. PHP: 7.2
  213. mysql5.6-php7.0:
  214. image: nextcloudci/php7.0:php7.0-19
  215. commands:
  216. - NOCOVERAGE=true TEST_SELECTION=DB ./autotest.sh mysql
  217. when:
  218. matrix:
  219. DB: mysql5.6
  220. PHP: "7.0"
  221. mysql5.6-php7.1:
  222. image: nextcloudci/php7.1:php7.1-16
  223. commands:
  224. - NOCOVERAGE=true TEST_SELECTION=DB ./autotest.sh mysql
  225. when:
  226. matrix:
  227. DB: mysql5.6
  228. PHP: 7.1
  229. mysql5.5-php7.0:
  230. image: nextcloudci/php7.0:php7.0-19
  231. commands:
  232. - NOCOVERAGE=true TEST_SELECTION=DB ./autotest.sh mysql
  233. when:
  234. matrix:
  235. DB: mysql5.5
  236. PHP: "7.0"
  237. mysql5.5-php7.1:
  238. image: nextcloudci/php7.1:php7.1-16
  239. commands:
  240. - NOCOVERAGE=true TEST_SELECTION=DB ./autotest.sh mysql
  241. when:
  242. matrix:
  243. DB: mysql5.5
  244. PHP: 7.1
  245. postgres-php7.0:
  246. image: nextcloudci/php7.0:php7.0-19
  247. commands:
  248. - sleep 10 # gives the database enough time to initialize
  249. - NOCOVERAGE=true TEST_SELECTION=DB ./autotest.sh pgsql
  250. when:
  251. matrix:
  252. DB: postgres
  253. PHP: "7.0"
  254. postgres-php7.1:
  255. image: nextcloudci/php7.1:php7.1-16
  256. commands:
  257. - sleep 10 # gives the database enough time to initialize
  258. - NOCOVERAGE=true TEST_SELECTION=DB ./autotest.sh pgsql
  259. when:
  260. matrix:
  261. DB: postgres
  262. PHP: 7.1
  263. mysqlmb4-php7.0:
  264. image: nextcloudci/php7.0:php7.0-19
  265. commands:
  266. - NOCOVERAGE=true TEST_SELECTION=DB ./autotest.sh mysqlmb4
  267. when:
  268. matrix:
  269. DB: mysqlmb4
  270. PHP: "7.0"
  271. mysqlmb4-php7.1:
  272. image: nextcloudci/php7.1:php7.1-16
  273. commands:
  274. - NOCOVERAGE=true TEST_SELECTION=DB ./autotest.sh mysqlmb4
  275. when:
  276. matrix:
  277. DB: mysqlmb4
  278. PHP: 7.1
  279. mysqlmb4-php7.2:
  280. image: nextcloudci/php7.2:php7.2-11
  281. commands:
  282. - NOCOVERAGE=true TEST_SELECTION=DB ./autotest.sh mysqlmb4
  283. when:
  284. matrix:
  285. DB: mysqlmb4
  286. PHP: 7.2
  287. integration-capabilities_features:
  288. image: nextcloudci/integration-php7.0:integration-php7.0-6
  289. commands:
  290. - ./occ maintenance:install --admin-pass=admin --data-dir=/dev/shm/nc_int
  291. - cd build/integration
  292. - ./run.sh capabilities_features/capabilities.feature
  293. when:
  294. matrix:
  295. TESTS: integration-capabilities_features
  296. integration-federation_features:
  297. image: nextcloudci/integration-php7.0:integration-php7.0-6
  298. commands:
  299. - ./occ maintenance:install --admin-pass=admin
  300. - cd build/integration
  301. - ./run.sh federation_features/federated.feature
  302. when:
  303. matrix:
  304. TESTS: integration-federation_features
  305. integration-auth:
  306. image: nextcloudci/integration-php7.0:integration-php7.0-6
  307. commands:
  308. - ./occ maintenance:install --admin-pass=admin --data-dir=/dev/shm/nc_int
  309. - cd build/integration
  310. - ./run.sh features/auth.feature
  311. when:
  312. matrix:
  313. TESTS: integration-auth
  314. integration-maintenance-mode:
  315. image: nextcloudci/integration-php7.0:integration-php7.0-6
  316. commands:
  317. - ./occ maintenance:install --admin-pass=admin --data-dir=/dev/shm/nc_int
  318. - cd build/integration
  319. - ./run.sh features/maintenance-mode.feature
  320. when:
  321. matrix:
  322. TESTS: integration-maintenance-mode
  323. integration-ratelimiting:
  324. image: nextcloudci/integration-php7.0:integration-php7.0-6
  325. commands:
  326. - ./occ maintenance:install --admin-pass=admin --data-dir=/dev/shm/nc_int
  327. - ./occ config:system:set redis host --value=cache
  328. - ./occ config:system:set redis port --value=6379 --type=integer
  329. - ./occ config:system:set redis timeout --value=0 --type=integer
  330. - ./occ config:system:set --type string --value "\\OC\\Memcache\\Redis" memcache.local
  331. - ./occ config:system:set --type string --value "\\OC\\Memcache\\Redis" memcache.distributed
  332. - ./occ app:enable testing
  333. - cd build/integration
  334. - ./run.sh features/ratelimiting.feature
  335. when:
  336. matrix:
  337. TESTS: integration-ratelimiting
  338. integration-carddav:
  339. image: nextcloudci/integration-php7.0:integration-php7.0-6
  340. commands:
  341. - ./occ maintenance:install --admin-pass=admin --data-dir=/dev/shm/nc_int
  342. - cd build/integration
  343. - ./run.sh features/carddav.feature
  344. when:
  345. matrix:
  346. TESTS: integration-carddav
  347. integration-dav-v2:
  348. image: nextcloudci/integration-php7.0:integration-php7.0-6
  349. commands:
  350. - ./occ maintenance:install --admin-pass=admin --data-dir=/dev/shm/nc_int
  351. - cd build/integration
  352. - ./run.sh features/dav-v2.feature
  353. when:
  354. matrix:
  355. TESTS: integration-dav-v2
  356. integration-ocs-v1:
  357. image: nextcloudci/integration-php7.0:integration-php7.0-6
  358. commands:
  359. - ./occ maintenance:install --admin-pass=admin --data-dir=/dev/shm/nc_int
  360. - cd build/integration
  361. - ./run.sh features/ocs-v1.feature
  362. when:
  363. matrix:
  364. TESTS: integration-ocs-v1
  365. integration-sharing-v1:
  366. image: nextcloudci/integration-php7.0:integration-php7.0-6
  367. commands:
  368. - ./occ maintenance:install --admin-pass=admin --data-dir=/dev/shm/nc_int
  369. - cd build/integration
  370. - ./run.sh features/sharing-v1.feature
  371. when:
  372. matrix:
  373. TESTS: integration-sharing-v1
  374. integration-sharing-v1-part2:
  375. image: nextcloudci/integration-php7.0:integration-php7.0-6
  376. commands:
  377. - ./occ maintenance:install --admin-pass=admin --data-dir=/dev/shm/nc_int
  378. - cd build/integration
  379. - ./run.sh features/sharing-v1-part2.feature
  380. when:
  381. matrix:
  382. TESTS: integration-sharing-v1-part2
  383. integration-sharing-v1-part3:
  384. image: nextcloudci/integration-php7.0:integration-php7.0-6
  385. commands:
  386. - ./occ maintenance:install --admin-pass=admin --data-dir=/dev/shm/nc_int
  387. - cd build/integration
  388. - ./run.sh features/sharing-v1-part3.feature
  389. when:
  390. matrix:
  391. TESTS: integration-sharing-v1-part3
  392. integration-checksums-v1:
  393. image: nextcloudci/integration-php7.0:integration-php7.0-6
  394. commands:
  395. - ./occ maintenance:install --admin-pass=admin --data-dir=/dev/shm/nc_int
  396. - cd build/integration
  397. - ./run.sh features/checksums.feature
  398. when:
  399. matrix:
  400. TESTS: integration-checksums
  401. integration-external-storage:
  402. image: nextcloudci/integration-php7.0:integration-php7.0-6
  403. commands:
  404. - ./occ maintenance:install --admin-pass=admin --data-dir=/dev/shm/nc_int
  405. - cd build/integration
  406. - ./run.sh features/external-storage.feature
  407. when:
  408. matrix:
  409. TESTS: integration-external-storage
  410. integration-provisioning-v1:
  411. image: nextcloudci/integration-php7.0:integration-php7.0-6
  412. commands:
  413. - ./occ maintenance:install --admin-pass=admin --data-dir=/dev/shm/nc_int
  414. - cd build/integration
  415. - ./run.sh features/provisioning-v1.feature
  416. when:
  417. matrix:
  418. TESTS: integration-provisioning-v1
  419. integration-tags:
  420. image: nextcloudci/integration-php7.0:integration-php7.0-6
  421. commands:
  422. - ./occ maintenance:install --admin-pass=admin --data-dir=/dev/shm/nc_int
  423. - cd build/integration
  424. - ./run.sh features/tags.feature
  425. when:
  426. matrix:
  427. TESTS: integration-tags
  428. integration-caldav:
  429. image: nextcloudci/integration-php7.0:integration-php7.0-6
  430. commands:
  431. - ./occ maintenance:install --admin-pass=admin --data-dir=/dev/shm/nc_int
  432. - cd build/integration
  433. - ./run.sh features/caldav.feature
  434. when:
  435. matrix:
  436. TESTS: integration-caldav
  437. integration-comments:
  438. image: nextcloudci/integration-php7.0:integration-php7.0-6
  439. commands:
  440. - ./occ maintenance:install --admin-pass=admin --data-dir=/dev/shm/nc_int
  441. - cd build/integration
  442. - ./run.sh features/comments.feature
  443. when:
  444. matrix:
  445. TESTS: integration-comments
  446. integration-favorites:
  447. image: nextcloudci/integration-php7.0:integration-php7.0-6
  448. commands:
  449. - ./occ maintenance:install --admin-pass=admin --data-dir=/dev/shm/nc_int
  450. - cd build/integration
  451. - ./run.sh features/favorites.feature
  452. when:
  453. matrix:
  454. TESTS: integration-favorites
  455. integration-provisioning-v2:
  456. image: nextcloudci/integration-php7.0:integration-php7.0-6
  457. commands:
  458. - ./occ maintenance:install --admin-pass=admin --data-dir=/dev/shm/nc_int
  459. - cd build/integration
  460. - ./run.sh features/provisioning-v2.feature
  461. when:
  462. matrix:
  463. TESTS: integration-provisioning-v2
  464. integration-webdav-related:
  465. image: nextcloudci/integration-php7.0:integration-php7.0-6
  466. commands:
  467. - ./occ maintenance:install --admin-pass=admin --data-dir=/dev/shm/nc_int
  468. - cd build/integration
  469. - ./run.sh features/webdav-related.feature
  470. when:
  471. matrix:
  472. TESTS: integration-webdav-related
  473. integration-sharees-features:
  474. image: nextcloudci/integration-php7.0:integration-php7.0-6
  475. commands:
  476. - ./occ maintenance:install --admin-pass=admin --data-dir=/dev/shm/nc_int
  477. - cd build/integration
  478. - ./run.sh sharees_features/sharees.feature
  479. when:
  480. matrix:
  481. TESTS: integration-sharees-features
  482. integration-sharees-v2-features:
  483. image: nextcloudci/integration-php7.0:integration-php7.0-6
  484. commands:
  485. - ./occ maintenance:install --admin-pass=admin --data-dir=/dev/shm/nc_int
  486. - cd build/integration
  487. - ./run.sh sharees_features/sharees_provisioningapiv2.feature
  488. when:
  489. matrix:
  490. TESTS: integration-sharees-v2-features
  491. integration-setup-features:
  492. image: nextcloudci/integration-php7.0:integration-php7.0-6
  493. commands:
  494. - cd build/integration
  495. - ./run.sh setup_features/setup.feature
  496. when:
  497. matrix:
  498. TESTS: integration-setup-features
  499. integration-filesdrop-features:
  500. image: nextcloudci/integration-php7.0:integration-php7.0-6
  501. commands:
  502. - ./occ maintenance:install --admin-pass=admin --data-dir=/dev/shm/nc_int
  503. - cd build/integration
  504. - ./run.sh filesdrop_features/filesdrop.feature
  505. when:
  506. matrix:
  507. TESTS: integration-filesdrop-features
  508. integration-transfer-ownership-features:
  509. image: nextcloudci/integration-php7.0:integration-php7.0-6
  510. commands:
  511. - ./occ maintenance:install --admin-pass=admin --data-dir=/dev/shm/nc_int
  512. - cd build/integration
  513. - ./run.sh features/transfer-ownership.feature
  514. when:
  515. matrix:
  516. TESTS: integration-transfer-ownership-features
  517. integration-ldap-features:
  518. image: nextcloudci/integration-php7.0:integration-php7.0-6
  519. commands:
  520. - ./occ maintenance:install --admin-pass=admin --data-dir=/dev/shm/nc_int
  521. - ./occ app:enable user_ldap
  522. - cd build/integration
  523. - ./run.sh ldap_features/ldap-ocs.feature
  524. when:
  525. matrix:
  526. TESTS: integration-ldap-features
  527. integration-trashbin:
  528. image: nextcloudci/integration-php7.0:integration-php7.0-6
  529. commands:
  530. - ./occ maintenance:install --admin-pass=admin --data-dir=/dev/shm/nc_int
  531. - cd build/integration
  532. - ./run.sh features/trashbin.feature
  533. when:
  534. matrix:
  535. TESTS: integration-trashbin
  536. integration-remote-api:
  537. image: nextcloudci/integration-php7.0:integration-php7.0-6
  538. commands:
  539. - ./occ maintenance:install --admin-pass=admin --data-dir=/dev/shm/nc_int
  540. - cd build/integration
  541. - ./run.sh remoteapi_features/remote.feature
  542. when:
  543. matrix:
  544. TESTS: integration-remote-api
  545. integration-download:
  546. image: nextcloudci/integration-php7.0:integration-php7.0-6
  547. commands:
  548. - ./occ maintenance:install --admin-pass=admin --data-dir=/dev/shm/nc_int
  549. - cd build/integration
  550. - ./run.sh --tags ~@large features/download.feature
  551. when:
  552. matrix:
  553. TESTS: integration-download
  554. acceptance-access-levels:
  555. image: nextcloudci/acceptance-php7.1:acceptance-php7.1-2
  556. commands:
  557. - tests/acceptance/run-local.sh --timeout-multiplier 10 --nextcloud-server-domain acceptance-access-levels --selenium-server selenium:4444 allow-git-repository-modifications features/access-levels.feature
  558. when:
  559. matrix:
  560. TESTS-ACCEPTANCE: access-levels
  561. acceptance-app-comments:
  562. image: nextcloudci/acceptance-php7.1:acceptance-php7.1-2
  563. commands:
  564. - tests/acceptance/run-local.sh --timeout-multiplier 10 --nextcloud-server-domain acceptance-app-comments --selenium-server selenium:4444 allow-git-repository-modifications features/app-comments.feature
  565. when:
  566. matrix:
  567. TESTS-ACCEPTANCE: app-comments
  568. acceptance-app-files:
  569. image: nextcloudci/acceptance-php7.1:acceptance-php7.1-2
  570. commands:
  571. - tests/acceptance/run-local.sh --timeout-multiplier 10 --nextcloud-server-domain acceptance-app-files --selenium-server selenium:4444 allow-git-repository-modifications features/app-files.feature
  572. when:
  573. matrix:
  574. TESTS-ACCEPTANCE: app-files
  575. acceptance-app-theming:
  576. image: nextcloudci/acceptance-php7.1:acceptance-php7.1-2
  577. commands:
  578. - tests/acceptance/run-local.sh --timeout-multiplier 10 --nextcloud-server-domain acceptance-app-theming --selenium-server selenium:4444 allow-git-repository-modifications features/app-theming.feature
  579. when:
  580. matrix:
  581. TESTS-ACCEPTANCE: app-theming
  582. acceptance-header:
  583. image: nextcloudci/acceptance-php7.1:acceptance-php7.1-2
  584. commands:
  585. - tests/acceptance/run-local.sh --timeout-multiplier 10 --nextcloud-server-domain acceptance-header --selenium-server selenium:4444 allow-git-repository-modifications features/header.feature
  586. when:
  587. matrix:
  588. TESTS-ACCEPTANCE: header
  589. acceptance-login:
  590. image: nextcloudci/acceptance-php7.1:acceptance-php7.1-2
  591. commands:
  592. - tests/acceptance/run-local.sh --timeout-multiplier 10 --nextcloud-server-domain acceptance-login --selenium-server selenium:4444 allow-git-repository-modifications features/login.feature
  593. when:
  594. matrix:
  595. TESTS-ACCEPTANCE: login
  596. nodb-codecov:
  597. image: nextcloudci/php7.0:php7.0-19
  598. commands:
  599. - phpenmod xdebug
  600. - TEST_SELECTION=NODB ./autotest.sh sqlite
  601. - wget https://codecov.io/bash -O codecov.sh
  602. - sh -c "if [ '$DRONE_BUILD_EVENT' = 'pull_request' ]; then bash codecov.sh -B $DRONE_BRANCH -C $DRONE_COMMIT -P $DRONE_PULL_REQUEST -t 117641e2-a9e8-4b7b-984b-ae872d9b05f5 -f tests/autotest-clover-sqlite.xml; fi"
  603. - sh -c "if [ '$DRONE_BUILD_EVENT' != 'pull_request' ]; then bash codecov.sh -B $DRONE_BRANCH -C $DRONE_COMMIT -t 117641e2-a9e8-4b7b-984b-ae872d9b05f5 -f tests/autotest-clover-sqlite.xml; fi"
  604. when:
  605. matrix:
  606. TESTS: nodb-codecov
  607. db-codecov:
  608. image: nextcloudci/php7.0:php7.0-19
  609. commands:
  610. - phpenmod xdebug
  611. - TEST_SELECTION=QUICKDB ./autotest.sh sqlite
  612. - wget https://codecov.io/bash -O codecov.sh
  613. - sh -c "if [ '$DRONE_BUILD_EVENT' = 'pull_request' ]; then bash codecov.sh -B $DRONE_BRANCH -C $DRONE_COMMIT -P $DRONE_PULL_REQUEST -t 117641e2-a9e8-4b7b-984b-ae872d9b05f5 -f tests/autotest-clover-sqlite.xml; fi"
  614. - sh -c "if [ '$DRONE_BUILD_EVENT' != 'pull_request' ]; then bash codecov.sh -B $DRONE_BRANCH -C $DRONE_COMMIT -t 117641e2-a9e8-4b7b-984b-ae872d9b05f5 -f tests/autotest-clover-sqlite.xml; fi"
  615. when:
  616. matrix:
  617. TESTS: db-codecov
  618. object-store:
  619. image: nextcloudci/php7.0:php7.0-19
  620. commands:
  621. - phpenmod xdebug
  622. - ./tests/drone-wait-objectstore.sh
  623. - TEST_SELECTION=PRIMARY-${OBJECT_STORE} ./autotest.sh sqlite
  624. - wget https://codecov.io/bash -O codecov.sh
  625. - sh -c "if [ '$DRONE_BUILD_EVENT' = 'pull_request' ]; then bash codecov.sh -B $DRONE_BRANCH -C $DRONE_COMMIT -P $DRONE_PULL_REQUEST -t 117641e2-a9e8-4b7b-984b-ae872d9b05f5 -f tests/autotest-clover-sqlite.xml; fi"
  626. - sh -c "if [ '$DRONE_BUILD_EVENT' != 'pull_request' ]; then bash codecov.sh -B $DRONE_BRANCH -C $DRONE_COMMIT -t 117641e2-a9e8-4b7b-984b-ae872d9b05f5 -f tests/autotest-clover-sqlite.xml; fi"
  627. when:
  628. matrix:
  629. TESTS: object-store
  630. memcache-memcached:
  631. image: nextcloudci/php7.0-memcached:php7.0-memcached-9
  632. commands:
  633. - phpenmod xdebug
  634. - service memcached restart
  635. - ./autotest.sh sqlite tests/lib/Memcache/MemcachedTest.php
  636. - wget https://codecov.io/bash -O codecov.sh
  637. - sh -c "if [ '$DRONE_BUILD_EVENT' = 'pull_request' ]; then bash codecov.sh -B $DRONE_BRANCH -C $DRONE_COMMIT -P $DRONE_PULL_REQUEST -t 117641e2-a9e8-4b7b-984b-ae872d9b05f5 -f tests/autotest-clover-sqlite.xml; fi"
  638. - sh -c "if [ '$DRONE_BUILD_EVENT' != 'pull_request' ]; then bash codecov.sh -B $DRONE_BRANCH -C $DRONE_COMMIT -t 117641e2-a9e8-4b7b-984b-ae872d9b05f5 -f tests/autotest-clover-sqlite.xml; fi"
  639. when:
  640. matrix:
  641. TEST: memcache-memcached
  642. memcache-redis-cluster:
  643. image: nextcloudci/php7.0:php7.0-19
  644. commands:
  645. - phpenmod xdebug
  646. - sleep 20
  647. - ./autotest.sh sqlite tests/lib/Memcache/RedisTest.php
  648. - wget https://codecov.io/bash -O codecov.sh
  649. - sh -c "if [ '$DRONE_BUILD_EVENT' = 'pull_request' ]; then bash codecov.sh -B $DRONE_BRANCH -C $DRONE_COMMIT -P $DRONE_PULL_REQUEST -t 117641e2-a9e8-4b7b-984b-ae872d9b05f5 -f tests/autotest-clover-sqlite.xml; fi"
  650. - sh -c "if [ '$DRONE_BUILD_EVENT' != 'pull_request' ]; then bash codecov.sh -B $DRONE_BRANCH -C $DRONE_COMMIT -t 117641e2-a9e8-4b7b-984b-ae872d9b05f5 -f tests/autotest-clover-sqlite.xml; fi"
  651. when:
  652. matrix:
  653. TEST: memcache-redis-cluster
  654. matrix:
  655. include:
  656. - TESTS: checkers
  657. - TESTS: nodb-codecov
  658. ENABLE_REDIS: true
  659. - TESTS: db-codecov
  660. ENABLE_REDIS: true
  661. - DB: NODB
  662. PHP: 7.0
  663. ENABLE_REDIS: true
  664. - DB: NODB
  665. PHP: 7.1
  666. ENABLE_REDIS: true
  667. - DB: NODB
  668. PHP: 7.2
  669. ENABLE_REDIS: false
  670. - DB: sqlite
  671. PHP: 7.0
  672. ENABLE_REDIS: true
  673. - DB: sqlite
  674. PHP: 7.1
  675. ENABLE_REDIS: true
  676. - DB: sqlite
  677. PHP: 7.2
  678. ENABLE_REDIS: false
  679. - DB: mysql
  680. PHP: 7.0
  681. ENABLE_REDIS: true
  682. - DB: mysql
  683. PHP: 7.1
  684. ENABLE_REDIS: true
  685. - DB: mysql
  686. PHP: 7.2
  687. ENABLE_REDIS: false
  688. - DB: mysql5.6
  689. PHP: 7.0
  690. ENABLE_REDIS: true
  691. - DB: mysql5.6
  692. PHP: 7.1
  693. ENABLE_REDIS: true
  694. - DB: mysql5.5
  695. PHP: 7.0
  696. ENABLE_REDIS: true
  697. - DB: mysql5.5
  698. PHP: 7.1
  699. ENABLE_REDIS: true
  700. - DB: postgres
  701. PHP: 7.0
  702. POSTGRES: 9
  703. ENABLE_REDIS: true
  704. - DB: postgres
  705. PHP: 7.1
  706. POSTGRES: 9
  707. ENABLE_REDIS: true
  708. - DB: postgres
  709. PHP: 7.1
  710. POSTGRES: 10
  711. ENABLE_REDIS: true
  712. - DB: mysqlmb4
  713. PHP: 7.0
  714. ENABLE_REDIS: true
  715. - DB: mysqlmb4
  716. PHP: 7.1
  717. ENABLE_REDIS: true
  718. - DB: mysqlmb4
  719. PHP: 7.2
  720. ENABLE_REDIS: false
  721. - TESTS: integration-capabilities_features
  722. - TESTS: integration-federation_features
  723. - TESTS: integration-maintenance-mode
  724. - TESTS: integration-ratelimiting
  725. ENABLE_REDIS: true
  726. - TESTS: integration-auth
  727. - TESTS: integration-carddav
  728. - TESTS: integration-dav-v2
  729. - TESTS: integration-ocs-v1
  730. - TESTS: integration-sharing-v1
  731. - TESTS: integration-sharing-v1-part2
  732. - TESTS: integration-sharing-v1-part3
  733. - TESTS: integration-checksums
  734. - TESTS: integration-external-storage
  735. - TESTS: integration-provisioning-v1
  736. - TESTS: integration-tags
  737. - TESTS: integration-caldav
  738. - TESTS: integration-comments
  739. - TESTS: integration-favorites
  740. - TESTS: integration-provisioning-v2
  741. - TESTS: integration-webdav-related
  742. - TESTS: integration-sharees-features
  743. - TESTS: integration-sharees-v2-features
  744. - TESTS: integration-setup-features
  745. - TESTS: integration-filesdrop-features
  746. - TESTS: integration-transfer-ownership-features
  747. - TESTS: integration-ldap-features
  748. - TESTS: integration-trashbin
  749. - TESTS: integration-remote-api
  750. - TESTS: integration-download
  751. - TESTS: acceptance
  752. TESTS-ACCEPTANCE: access-levels
  753. - TESTS: acceptance
  754. TESTS-ACCEPTANCE: app-comments
  755. - TESTS: acceptance
  756. TESTS-ACCEPTANCE: app-files
  757. - TESTS: acceptance
  758. TESTS-ACCEPTANCE: app-theming
  759. - TESTS: acceptance
  760. TESTS-ACCEPTANCE: header
  761. - TESTS: acceptance
  762. TESTS-ACCEPTANCE: login
  763. - TESTS: jsunit
  764. - TESTS: syntax-php7.0
  765. - TESTS: syntax-php7.1
  766. - TESTS: phan
  767. - TESTS: litmus-v1
  768. - TESTS: litmus-v2
  769. - TESTS: caldavtester-old-endpoint
  770. - TESTS: caldavtester-new-endpoint
  771. - TESTS: carddavtester-new-endpoint
  772. - TESTS: carddavtester-old-endpoint
  773. - TESTS: object-store
  774. OBJECT_STORE: s3
  775. # - TESTS: object-store
  776. # OBJECT_STORE: swift
  777. # SWIFT-AUTH: v2.0
  778. # - TESTS: object-store
  779. # OBJECT_STORE: swift
  780. # SWIFT-AUTH: v3
  781. - TESTS: sqlite-php7.0-samba-native
  782. - TESTS: sqlite-php7.0-samba-non-native
  783. - TEST: memcache-memcached
  784. - TEST: memcache-redis-cluster
  785. ENABLE_REDIS_CLUSTER: true
  786. - TESTS: sqlite-php7.0-webdav-apache
  787. ENABLE_REDIS: true
  788. services:
  789. cache:
  790. image: redis
  791. when:
  792. matrix:
  793. ENABLE_REDIS: true
  794. cache-cluster:
  795. image: morrisjobke/redis-cluster
  796. when:
  797. matrix:
  798. ENABLE_REDIS_CLUSTER: true
  799. postgres-9:
  800. image: postgres:9
  801. environment:
  802. - POSTGRES_USER=oc_autotest
  803. - POSTGRES_PASSWORD=owncloud
  804. tmpfs:
  805. - /var/lib/postgresql/data
  806. when:
  807. matrix:
  808. DB: postgres
  809. POSTGRES: 9
  810. postgres-10:
  811. image: postgres:10
  812. environment:
  813. - POSTGRES_USER=oc_autotest
  814. - POSTGRES_PASSWORD=owncloud
  815. tmpfs:
  816. - /var/lib/postgresql/data
  817. when:
  818. matrix:
  819. DB: postgres
  820. POSTGRES: 10
  821. mysql:
  822. image: mysql:5.7
  823. environment:
  824. - MYSQL_ROOT_PASSWORD=owncloud
  825. - MYSQL_USER=oc_autotest
  826. - MYSQL_PASSWORD=owncloud
  827. - MYSQL_DATABASE=oc_autotest
  828. tmpfs:
  829. - /var/lib/mysql
  830. when:
  831. matrix:
  832. DB: mysql
  833. mysql:
  834. image: mysql:5.6
  835. environment:
  836. - MYSQL_ROOT_PASSWORD=owncloud
  837. - MYSQL_USER=oc_autotest
  838. - MYSQL_PASSWORD=owncloud
  839. - MYSQL_DATABASE=oc_autotest
  840. tmpfs:
  841. - /var/lib/mysql
  842. when:
  843. matrix:
  844. DB: mysql5.6
  845. mysql:
  846. image: mysql:5.5
  847. environment:
  848. - MYSQL_ROOT_PASSWORD=owncloud
  849. - MYSQL_USER=oc_autotest
  850. - MYSQL_PASSWORD=owncloud
  851. - MYSQL_DATABASE=oc_autotest
  852. tmpfs:
  853. - /var/lib/mysql
  854. when:
  855. matrix:
  856. DB: mysql5.5
  857. mysqlmb4:
  858. image: mysql
  859. environment:
  860. - MYSQL_ROOT_PASSWORD=owncloud
  861. - MYSQL_USER=oc_autotest
  862. - MYSQL_PASSWORD=owncloud
  863. - MYSQL_DATABASE=oc_autotest
  864. command: [ "--innodb_large_prefix=true", "--innodb_file_format=barracuda", "--innodb_file_per_table=true" ]
  865. tmpfs:
  866. - /var/lib/mysql
  867. when:
  868. matrix:
  869. DB: mysqlmb4
  870. fake-s3:
  871. image: lphoward/fake-s3
  872. when:
  873. matrix:
  874. OBJECT_STORE: s3
  875. dockswift:
  876. image: icewind1991/dockswift:nextcloud-ci
  877. environment:
  878. - IPADDRESS=dockswift
  879. when:
  880. matrix:
  881. OBJECT_STORE: swift
  882. selenium:
  883. image: selenium/standalone-firefox:2.53.1-beryllium
  884. environment:
  885. # Reduce default log level for Selenium server (INFO) as it is too
  886. # verbose.
  887. - JAVA_OPTS=-Dselenium.LOGGER.level=WARNING
  888. when:
  889. matrix:
  890. TESTS: acceptance
  891. branches: [ master, stable* ]