.drone.yml 32 KB

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