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 31KB

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