.drone.yml 26 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262263264265266267268269270271272273274275276277278279280281282283284285286287288289290291292293294295296297298299300301302303304305306307308309310311312313314315316317318319320321322323324325326327328329330331332333334335336337338339340341342343344345346347348349350351352353354355356357358359360361362363364365366367368369370371372373374375376377378379380381382383384385386387388389390391392393394395396397398399400401402403404405406407408409410411412413414415416417418419420421422423424425426427428429430431432433434435436437438439440441442443444445446447448449450451452453454455456457458459460461462463464465466467468469470471472473474475476477478479480481482483484485486487488489490491492493494495496497498499500501502503504505506507508509510511512513514515516517518519520521522523524525526527528529530531532533534535536537538539540541542543544545546547548549550551552553554555556557558559560561562563564565566567568569570571572573574575576577578579580581582583584585586587588589590591592593594595596597598599600601602603604605606607608609610611612613614615616617618619620621622623624625626627628629630631632633634635636637638639640641642643644645646647648649650651652653654655656657658659660661662663664665666667668669670671672673674675676677678679680681682
  1. pipeline:
  2. clone:
  3. image: plugins/git
  4. depth: 1
  5. jsunit:
  6. image: nextcloudci/jsunit:jsunit-5
  7. commands:
  8. - ./autotest-js.sh
  9. - curl -o codecov.sh https://codecov.io/bash
  10. - 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"
  11. - 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"
  12. when:
  13. matrix:
  14. TESTS: jsunit
  15. checkers:
  16. image: nextcloudci/php7.0:php7.0-7
  17. commands:
  18. - bash ./build/autoloaderchecker.sh
  19. - bash ./build/mergejschecker.sh
  20. - php ./build/signed-off-checker.php
  21. - php ./build/translation-checker.php
  22. - php ./build/htaccess-checker.php
  23. - ./occ app:check-code admin_audit
  24. - ./occ app:check-code comments
  25. - ./occ app:check-code federation
  26. - ./occ app:check-code sharebymail
  27. - ./occ app:check-code systemtags
  28. - ./occ app:check-code theming
  29. - ./occ app:check-code workflowengine
  30. when:
  31. matrix:
  32. TESTS: checkers
  33. syntax-php5.6:
  34. image: nextcloudci/php5.6:php5.6-7
  35. commands:
  36. - composer install
  37. - ./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 .
  38. when:
  39. matrix:
  40. TESTS: syntax-php5.6
  41. syntax-php7.0:
  42. image: nextcloudci/php7.0:php7.0-7
  43. commands:
  44. - composer install
  45. - ./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 .
  46. when:
  47. matrix:
  48. TESTS: syntax-php7.0
  49. syntax-php7.1:
  50. image: nextcloudci/php7.1:php7.1-11
  51. commands:
  52. - composer install
  53. - ./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 .
  54. when:
  55. matrix:
  56. TESTS: syntax-php7.1
  57. litmus-v1:
  58. image: nextcloudci/litmus-php7.0:litmus-php7.0-4
  59. commands:
  60. - bash tests/travis/install.sh sqlite
  61. - bash apps/dav/tests/travis/litmus-v1/script.sh
  62. when:
  63. matrix:
  64. TESTS: litmus-v1
  65. litmus-v2:
  66. image: nextcloudci/litmus-php7.0:litmus-php7.0-4
  67. commands:
  68. - bash tests/travis/install.sh sqlite
  69. - bash apps/dav/tests/travis/litmus-v2/script.sh
  70. when:
  71. matrix:
  72. TESTS: litmus-v2
  73. caldavtester-new-endpoint:
  74. image: nextcloudci/litmus-php7.0:litmus-php7.0-4
  75. commands:
  76. - bash tests/travis/install.sh sqlite
  77. - bash apps/dav/tests/travis/caldav/install.sh
  78. - bash apps/dav/tests/travis/caldav/script-new-endpoint.sh
  79. when:
  80. matrix:
  81. TESTS: caldavtester-new-endpoint
  82. caldavtester-old-endpoint:
  83. image: nextcloudci/litmus-php7.0:litmus-php7.0-4
  84. commands:
  85. - bash tests/travis/install.sh sqlite
  86. - bash apps/dav/tests/travis/caldav/install.sh
  87. - bash apps/dav/tests/travis/caldav/script-old-endpoint.sh
  88. when:
  89. matrix:
  90. TESTS: caldavtester-old-endpoint
  91. carddavtester-new-endpoint:
  92. image: nextcloudci/litmus-php7.0:litmus-php7.0-4
  93. commands:
  94. - bash tests/travis/install.sh sqlite
  95. - bash apps/dav/tests/travis/carddav/install.sh
  96. - bash apps/dav/tests/travis/carddav/script-new-endpoint.sh
  97. when:
  98. matrix:
  99. TESTS: carddavtester-new-endpoint
  100. carddavtester-old-endpoint:
  101. image: nextcloudci/litmus-php7.0:litmus-php7.0-4
  102. commands:
  103. - bash tests/travis/install.sh sqlite
  104. - bash apps/dav/tests/travis/carddav/install.sh
  105. - bash apps/dav/tests/travis/carddav/script-old-endpoint.sh
  106. when:
  107. matrix:
  108. TESTS: carddavtester-old-endpoint
  109. sqlite-php7.0-samba-native:
  110. image: nextcloudci/samba-native-php7.0:samba-native-php7.0-1
  111. commands:
  112. - smbd -D -FS &
  113. - ./autotest-external.sh sqlite smb-linux
  114. - wget https://codecov.io/bash -O codecov.sh
  115. - 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"
  116. - 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"
  117. - 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"
  118. - 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"
  119. when:
  120. matrix:
  121. TESTS: sqlite-php7.0-samba-native
  122. sqlite-php7.0-samba-non-native:
  123. image: nextcloudci/samba-non-native-php7.0:samba-non-native-php7.0-2
  124. commands:
  125. - smbd -D -FS &
  126. - ./autotest-external.sh sqlite smb-linux
  127. - wget https://codecov.io/bash -O codecov.sh
  128. - 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"
  129. - 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"
  130. - 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"
  131. - 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"
  132. when:
  133. matrix:
  134. TESTS: sqlite-php7.0-samba-non-native
  135. sqlite-php7.0-webdav-apache:
  136. image: nextcloudci/webdav-apache-php7.0
  137. commands:
  138. - apache2
  139. - ./autotest-external.sh sqlite webdav-apachedrone
  140. - wget https://codecov.io/bash -O codecov.sh
  141. - 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"
  142. - 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"
  143. - 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"
  144. - 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"
  145. when:
  146. matrix:
  147. TESTS: sqlite-php7.0-webdav-apache
  148. nodb-php5.6:
  149. image: nextcloudci/php5.6:php5.6-7
  150. commands:
  151. - NOCOVERAGE=true TEST_SELECTION=NODB ./autotest.sh sqlite
  152. when:
  153. matrix:
  154. DB: NODB
  155. PHP: 5.6
  156. nodb-php7.0:
  157. image: nextcloudci/php7.0:php7.0-7
  158. commands:
  159. - NOCOVERAGE=true TEST_SELECTION=NODB ./autotest.sh sqlite
  160. when:
  161. matrix:
  162. DB: NODB
  163. PHP: "7.0"
  164. nodb-php7.1:
  165. image: nextcloudci/php7.1:php7.1-11
  166. commands:
  167. - NOCOVERAGE=true TEST_SELECTION=NODB ./autotest.sh sqlite
  168. when:
  169. matrix:
  170. DB: NODB
  171. PHP: 7.1
  172. sqlite-php5.6:
  173. image: nextcloudci/php5.6:php5.6-7
  174. commands:
  175. - NOCOVERAGE=true TEST_SELECTION=DB ./autotest.sh sqlite
  176. when:
  177. matrix:
  178. DB: sqlite
  179. PHP: 5.6
  180. sqlite-php7.0:
  181. image: nextcloudci/php7.0:php7.0-7
  182. commands:
  183. - NOCOVERAGE=true TEST_SELECTION=DB ./autotest.sh sqlite
  184. when:
  185. matrix:
  186. DB: sqlite
  187. PHP: "7.0"
  188. sqlite-php7.1:
  189. image: nextcloudci/php7.1:php7.1-11
  190. commands:
  191. - NOCOVERAGE=true TEST_SELECTION=DB ./autotest.sh sqlite
  192. when:
  193. matrix:
  194. DB: sqlite
  195. PHP: 7.1
  196. mysql-php5.6:
  197. image: nextcloudci/php5.6:php5.6-7
  198. commands:
  199. - NOCOVERAGE=true TEST_SELECTION=DB ./autotest.sh mysql
  200. when:
  201. matrix:
  202. DB: mysql
  203. PHP: 5.6
  204. postgres-php5.6:
  205. image: nextcloudci/php5.6:php5.6-7
  206. commands:
  207. - sleep 10 # gives the database enough time to initialize
  208. - NOCOVERAGE=true TEST_SELECTION=DB ./autotest.sh pgsql
  209. when:
  210. matrix:
  211. DB: postgres
  212. PHP: 5.6
  213. mysqlmb4-php5.6:
  214. image: nextcloudci/php5.6:php5.6-7
  215. commands:
  216. - NOCOVERAGE=true TEST_SELECTION=DB ./autotest.sh mysqlmb4
  217. when:
  218. matrix:
  219. DB: mysqlmb4
  220. PHP: 5.6
  221. integration-capabilities_features:
  222. image: nextcloudci/integration-php7.0:integration-php7.0-3
  223. commands:
  224. - ./occ maintenance:install --admin-pass=admin
  225. - cd build/integration
  226. - ./run.sh capabilities_features/capabilities.feature
  227. when:
  228. matrix:
  229. TESTS: integration-capabilities_features
  230. integration-federation_features:
  231. image: nextcloudci/integration-php7.0:integration-php7.0-3
  232. commands:
  233. - ./occ maintenance:install --admin-pass=admin
  234. - cd build/integration
  235. - ./run.sh federation_features/federated.feature
  236. when:
  237. matrix:
  238. TESTS: integration-federation_features
  239. integration-auth:
  240. image: nextcloudci/integration-php7.0:integration-php7.0-3
  241. commands:
  242. - ./occ maintenance:install --admin-pass=admin
  243. - cd build/integration
  244. - ./run.sh features/auth.feature
  245. when:
  246. matrix:
  247. TESTS: integration-auth
  248. integration-maintenance-mode:
  249. image: nextcloudci/integration-php7.0:integration-php7.0-3
  250. commands:
  251. - ./occ maintenance:install --admin-pass=admin
  252. - cd build/integration
  253. - ./run.sh features/maintenance-mode.feature
  254. when:
  255. matrix:
  256. TESTS: integration-maintenance-mode
  257. integration-ratelimiting:
  258. image: nextcloudci/integration-php7.0:integration-php7.0-3
  259. commands:
  260. - ./occ maintenance:install --admin-pass=admin
  261. - ./occ config:system:set --type string --value "\\OC\\Memcache\\Redis" memcache.local
  262. - ./occ config:system:set --type string --value "\\OC\\Memcache\\Redis" memcache.distributed
  263. - ./occ app:enable testing
  264. - cd build/integration
  265. - ./run.sh features/ratelimiting.feature
  266. when:
  267. matrix:
  268. TESTS: integration-ratelimiting
  269. integration-carddav:
  270. image: nextcloudci/integration-php7.0:integration-php7.0-3
  271. commands:
  272. - ./occ maintenance:install --admin-pass=admin
  273. - cd build/integration
  274. - ./run.sh features/carddav.feature
  275. when:
  276. matrix:
  277. TESTS: integration-carddav
  278. integration-dav-v2:
  279. image: nextcloudci/integration-php7.0:integration-php7.0-3
  280. commands:
  281. - ./occ maintenance:install --admin-pass=admin
  282. - cd build/integration
  283. - ./run.sh features/dav-v2.feature
  284. when:
  285. matrix:
  286. TESTS: integration-dav-v2
  287. integration-ocs-v1:
  288. image: nextcloudci/integration-php7.0:integration-php7.0-3
  289. commands:
  290. - ./occ maintenance:install --admin-pass=admin
  291. - cd build/integration
  292. - ./run.sh features/ocs-v1.feature
  293. when:
  294. matrix:
  295. TESTS: integration-ocs-v1
  296. integration-sharing-v1:
  297. image: nextcloudci/integration-php7.0:integration-php7.0-3
  298. commands:
  299. - ./occ maintenance:install --admin-pass=admin
  300. - cd build/integration
  301. - ./run.sh features/sharing-v1.feature
  302. when:
  303. matrix:
  304. TESTS: integration-sharing-v1
  305. integration-sharing-v1-part2:
  306. image: nextcloudci/integration-php7.0:integration-php7.0-3
  307. commands:
  308. - ./occ maintenance:install --admin-pass=admin
  309. - cd build/integration
  310. - ./run.sh features/sharing-v1-part2.feature
  311. when:
  312. matrix:
  313. TESTS: integration-sharing-v1-part2
  314. integration-sharing-v1-part3:
  315. image: nextcloudci/integration-php7.0:integration-php7.0-3
  316. commands:
  317. - ./occ maintenance:install --admin-pass=admin
  318. - cd build/integration
  319. - ./run.sh features/sharing-v1-part3.feature
  320. when:
  321. matrix:
  322. TESTS: integration-sharing-v1-part3
  323. integration-checksums-v1:
  324. image: nextcloudci/integration-php7.0:integration-php7.0-3
  325. commands:
  326. - ./occ maintenance:install --admin-pass=admin
  327. - cd build/integration
  328. - ./run.sh features/checksums.feature
  329. when:
  330. matrix:
  331. TESTS: integration-checksums
  332. integration-external-storage:
  333. image: nextcloudci/integration-php7.0:integration-php7.0-3
  334. commands:
  335. - ./occ maintenance:install --admin-pass=admin
  336. - cd build/integration
  337. - ./run.sh features/external-storage.feature
  338. when:
  339. matrix:
  340. TESTS: integration-external-storage
  341. integration-provisioning-v1:
  342. image: nextcloudci/integration-php7.0:integration-php7.0-3
  343. commands:
  344. - ./occ maintenance:install --admin-pass=admin
  345. - cd build/integration
  346. - ./run.sh features/provisioning-v1.feature
  347. when:
  348. matrix:
  349. TESTS: integration-provisioning-v1
  350. integration-tags:
  351. image: nextcloudci/integration-php7.0:integration-php7.0-3
  352. commands:
  353. - ./occ maintenance:install --admin-pass=admin
  354. - cd build/integration
  355. - ./run.sh features/tags.feature
  356. when:
  357. matrix:
  358. TESTS: integration-tags
  359. integration-caldav:
  360. image: nextcloudci/integration-php7.0:integration-php7.0-3
  361. commands:
  362. - ./occ maintenance:install --admin-pass=admin
  363. - cd build/integration
  364. - ./run.sh features/caldav.feature
  365. when:
  366. matrix:
  367. TESTS: integration-caldav
  368. integration-comments:
  369. image: nextcloudci/integration-php7.0:integration-php7.0-3
  370. commands:
  371. - ./occ maintenance:install --admin-pass=admin
  372. - cd build/integration
  373. - ./run.sh features/comments.feature
  374. when:
  375. matrix:
  376. TESTS: integration-comments
  377. integration-favorites:
  378. image: nextcloudci/integration-php7.0:integration-php7.0-3
  379. commands:
  380. - ./occ maintenance:install --admin-pass=admin
  381. - cd build/integration
  382. - ./run.sh features/favorites.feature
  383. when:
  384. matrix:
  385. TESTS: integration-favorites
  386. integration-provisioning-v2:
  387. image: nextcloudci/integration-php7.0:integration-php7.0-3
  388. commands:
  389. - ./occ maintenance:install --admin-pass=admin
  390. - cd build/integration
  391. - ./run.sh features/provisioning-v2.feature
  392. when:
  393. matrix:
  394. TESTS: integration-provisioning-v2
  395. integration-webdav-related:
  396. image: nextcloudci/integration-php7.0:integration-php7.0-3
  397. commands:
  398. - ./occ maintenance:install --admin-pass=admin
  399. - cd build/integration
  400. - ./run.sh features/webdav-related.feature
  401. when:
  402. matrix:
  403. TESTS: integration-webdav-related
  404. integration-sharees-features:
  405. image: nextcloudci/integration-php7.0:integration-php7.0-3
  406. commands:
  407. - ./occ maintenance:install --admin-pass=admin
  408. - cd build/integration
  409. - ./run.sh sharees_features/sharees.feature
  410. when:
  411. matrix:
  412. TESTS: integration-sharees-features
  413. integration-sharees-v2-features:
  414. image: nextcloudci/integration-php7.0:integration-php7.0-3
  415. commands:
  416. - ./occ maintenance:install --admin-pass=admin
  417. - cd build/integration
  418. - ./run.sh sharees_features/sharees_provisioningapiv2.feature
  419. when:
  420. matrix:
  421. TESTS: integration-sharees-v2-features
  422. integration-setup-features:
  423. image: nextcloudci/integration-php7.0:integration-php7.0-3
  424. commands:
  425. - cd build/integration
  426. - ./run.sh setup_features/setup.feature
  427. when:
  428. matrix:
  429. TESTS: integration-setup-features
  430. integration-filesdrop-features:
  431. image: nextcloudci/integration-php7.0:integration-php7.0-3
  432. commands:
  433. - ./occ maintenance:install --admin-pass=admin
  434. - cd build/integration
  435. - ./run.sh filesdrop_features/filesdrop.feature
  436. when:
  437. matrix:
  438. TESTS: integration-filesdrop-features
  439. integration-transfer-ownership-features:
  440. image: nextcloudci/integration-php7.0:integration-php7.0-3
  441. commands:
  442. - ./occ maintenance:install --admin-pass=admin
  443. - cd build/integration
  444. - ./run.sh features/transfer-ownership.feature
  445. when:
  446. matrix:
  447. TESTS: integration-transfer-ownership-features
  448. integration-ldap-features:
  449. image: nextcloudci/integration-php7.0:integration-php7.0-3
  450. commands:
  451. - ./occ maintenance:install --admin-pass=admin
  452. - ./occ app:enable user_ldap
  453. - cd build/integration
  454. - ./run.sh ldap_features/ldap-ocs.feature
  455. when:
  456. matrix:
  457. TESTS: integration-ldap-features
  458. integration-trashbin:
  459. image: nextcloudci/integration-php7.0:integration-php7.0-3
  460. commands:
  461. - ./occ maintenance:install --admin-pass=admin
  462. - cd build/integration
  463. - ./run.sh features/trashbin.feature
  464. when:
  465. matrix:
  466. TESTS: integration-trashbin
  467. acceptance-access-levels:
  468. image: nextcloudci/php7.0:php7.0-7
  469. commands:
  470. - tests/acceptance/run-local.sh --timeout-multiplier 10 allow-git-repository-modifications features/access-levels.feature
  471. when:
  472. matrix:
  473. TESTS-ACCEPTANCE: access-levels
  474. acceptance-app-files:
  475. image: nextcloudci/php7.0:php7.0-7
  476. commands:
  477. - tests/acceptance/run-local.sh --timeout-multiplier 10 allow-git-repository-modifications features/app-files.feature
  478. when:
  479. matrix:
  480. TESTS-ACCEPTANCE: app-files
  481. acceptance-login:
  482. image: nextcloudci/php7.0:php7.0-7
  483. commands:
  484. - tests/acceptance/run-local.sh --timeout-multiplier 10 allow-git-repository-modifications features/login.feature
  485. when:
  486. matrix:
  487. TESTS-ACCEPTANCE: login
  488. nodb-codecov:
  489. image: nextcloudci/php7.0:php7.0-7
  490. commands:
  491. - TEST_SELECTION=NODB ./autotest.sh sqlite
  492. - wget https://codecov.io/bash -O codecov.sh
  493. - 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"
  494. - 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"
  495. when:
  496. matrix:
  497. TESTS: nodb-codecov
  498. db-codecov:
  499. image: nextcloudci/php7.0:php7.0-7
  500. commands:
  501. - TEST_SELECTION=QUICKDB ./autotest.sh sqlite
  502. - wget https://codecov.io/bash -O codecov.sh
  503. - 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"
  504. - 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"
  505. when:
  506. matrix:
  507. TESTS: db-codecov
  508. object-store:
  509. image: nextcloudci/php7.0:php7.0-7
  510. commands:
  511. - TEST_SELECTION=PRIMARY-${OBJECT_STORE} ./autotest.sh sqlite
  512. - wget https://codecov.io/bash -O codecov.sh
  513. - 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"
  514. - 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"
  515. when:
  516. matrix:
  517. TESTS: object-store
  518. memcache-memcached:
  519. image: nextcloudci/php7.0-memcached:php7.0-memcached-6
  520. commands:
  521. - service memcached restart
  522. - ./autotest.sh sqlite tests/lib/Memcache/MemcachedTest.php
  523. - wget https://codecov.io/bash -O codecov.sh
  524. - 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"
  525. - 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"
  526. when:
  527. matrix:
  528. TEST: memcache-memcached
  529. memcache-redis-cluster:
  530. image: nextcloudci/php7.0:php7.0-7
  531. commands:
  532. - ./autotest.sh sqlite tests/lib/Memcache/RedisTest.php
  533. - wget https://codecov.io/bash -O codecov.sh
  534. - 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"
  535. - 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"
  536. when:
  537. matrix:
  538. TEST: memcache-redis-cluster
  539. matrix:
  540. include:
  541. - TESTS: checkers
  542. - TESTS: nodb-codecov
  543. ENABLE_REDIS: true
  544. - TESTS: db-codecov
  545. ENABLE_REDIS: true
  546. - TESTS: integration-capabilities_features
  547. - TESTS: integration-federation_features
  548. - TESTS: integration-maintenance-mode
  549. - TESTS: integration-ratelimiting
  550. ENABLE_REDIS: true
  551. - TESTS: integration-auth
  552. - TESTS: integration-carddav
  553. - TESTS: integration-dav-v2
  554. - TESTS: integration-ocs-v1
  555. - TESTS: integration-sharing-v1
  556. - TESTS: integration-sharing-v1-part2
  557. - TESTS: integration-sharing-v1-part3
  558. - TESTS: integration-checksums
  559. - TESTS: integration-external-storage
  560. - TESTS: integration-provisioning-v1
  561. - TESTS: integration-tags
  562. - TESTS: integration-caldav
  563. - TESTS: integration-comments
  564. - TESTS: integration-favorites
  565. - TESTS: integration-provisioning-v2
  566. - TESTS: integration-webdav-related
  567. - TESTS: integration-sharees-features
  568. - TESTS: integration-sharees-v2-features
  569. - TESTS: integration-setup-features
  570. - TESTS: integration-filesdrop-features
  571. - TESTS: integration-transfer-ownership-features
  572. - TESTS: integration-ldap-features
  573. - TESTS: integration-trashbin
  574. - TESTS: acceptance
  575. TESTS-ACCEPTANCE: access-levels
  576. - TESTS: acceptance
  577. TESTS-ACCEPTANCE: app-files
  578. - TESTS: acceptance
  579. TESTS-ACCEPTANCE: login
  580. - TESTS: jsunit
  581. - TESTS: syntax-php5.6
  582. - TESTS: syntax-php7.0
  583. - TESTS: syntax-php7.1
  584. - TESTS: litmus-v1
  585. - TESTS: litmus-v2
  586. - TESTS: caldavtester-old-endpoint
  587. - TESTS: caldavtester-new-endpoint
  588. - TESTS: carddavtester-new-endpoint
  589. - TESTS: carddavtester-old-endpoint
  590. - TESTS: object-store
  591. OBJECT_STORE: s3
  592. - TESTS: sqlite-php7.0-samba-native
  593. - TESTS: sqlite-php7.0-samba-non-native
  594. - TEST: memcache-memcached
  595. - TEST: memcache-redis-cluster
  596. ENABLE_REDIS_CLUSTER: true
  597. - TESTS: sqlite-php7.0-webdav-apache
  598. ENABLE_REDIS: true
  599. - DB: NODB
  600. PHP: 5.6
  601. ENABLE_REDIS: true
  602. - DB: NODB
  603. PHP: 7.0
  604. ENABLE_REDIS: true
  605. - DB: NODB
  606. PHP: 7.1
  607. ENABLE_REDIS: true
  608. - DB: sqlite
  609. PHP: 5.6
  610. ENABLE_REDIS: true
  611. - DB: sqlite
  612. PHP: 7.0
  613. ENABLE_REDIS: true
  614. - DB: sqlite
  615. PHP: 7.1
  616. ENABLE_REDIS: true
  617. - DB: mysql
  618. PHP: 5.6
  619. ENABLE_REDIS: true
  620. - DB: postgres
  621. PHP: 5.6
  622. ENABLE_REDIS: true
  623. - DB: mysqlmb4
  624. PHP: 5.6
  625. ENABLE_REDIS: true
  626. services:
  627. cache:
  628. image: redis
  629. when:
  630. matrix:
  631. ENABLE_REDIS: true
  632. cache-cluster:
  633. image: grokzen/redis-cluster
  634. when:
  635. matrix:
  636. ENABLE_REDIS_CLUSTER: true
  637. postgres:
  638. image: postgres
  639. environment:
  640. - POSTGRES_USER=oc_autotest
  641. - POSTGRES_PASSWORD=oc_autotest
  642. when:
  643. matrix:
  644. DB: postgres
  645. mysql:
  646. image: mysql
  647. environment:
  648. - MYSQL_ROOT_PASSWORD=owncloud
  649. - MYSQL_USER=oc_autotest
  650. - MYSQL_PASSWORD=owncloud
  651. - MYSQL_DATABASE=oc_autotest
  652. when:
  653. matrix:
  654. DB: mysql
  655. mysqlmb4:
  656. image: mysql
  657. environment:
  658. - MYSQL_ROOT_PASSWORD=owncloud
  659. - MYSQL_USER=oc_autotest
  660. - MYSQL_PASSWORD=owncloud
  661. - MYSQL_DATABASE=oc_autotest
  662. command: [ "--innodb_large_prefix=true", "--innodb_file_format=barracuda", "--innodb_file_per_table=true" ]
  663. when:
  664. matrix:
  665. DB: mysqlmb4
  666. fake-s3:
  667. image: lphoward/fake-s3
  668. when:
  669. matrix:
  670. OBJECT_STORE: s3
  671. selenium:
  672. image: selenium/standalone-firefox:2.53.1-beryllium
  673. environment:
  674. # Reduce default log level for Selenium server (INFO) as it is too
  675. # verbose.
  676. - JAVA_OPTS=-Dselenium.LOGGER.level=WARNING
  677. when:
  678. matrix:
  679. TESTS: acceptance
  680. branches: [ master, stable* ]