.drone.yml 40 KB

12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152535455565758596061626364656667686970717273747576777879808182838485868788899091929394959697989910010110210310410510610710810911011111211311411511611711811912012112212312412512612712812913013113213313413513613713813914014114214314414514614714814915015115215315415515615715815916016116216316416516616716816917017117217317417517617717817918018118218318418518618718818919019119219319419519619719819920020120220320420520620720820921021121221321421521621721821922022122222322422522622722822923023123223323423523623723823924024124224324424524624724824925025125225325425525625725825926026126226326426526626726826927027127227327427527627727827928028128228328428528628728828929029129229329429529629729829930030130230330430530630730830931031131231331431531631731831932032132232332432532632732832933033133233333433533633733833934034134234334434534634734834935035135235335435535635735835936036136236336436536636736836937037137237337437537637737837938038138238338438538638738838939039139239339439539639739839940040140240340440540640740840941041141241341441541641741841942042142242342442542642742842943043143243343443543643743843944044144244344444544644744844945045145245345445545645745845946046146246346446546646746846947047147247347447547647747847948048148248348448548648748848949049149249349449549649749849950050150250350450550650750850951051151251351451551651751851952052152252352452552652752852953053153253353453553653753853954054154254354454554654754854955055155255355455555655755855956056156256356456556656756856957057157257357457557657757857958058158258358458558658758858959059159259359459559659759859960060160260360460560660760860961061161261361461561661761861962062162262362462562662762862963063163263363463563663763863964064164264364464564664764864965065165265365465565665765865966066166266366466566666766866967067167267367467567667767867968068168268368468568668768868969069169269369469569669769869970070170270370470570670770870971071171271371471571671771871972072172272372472572672772872973073173273373473573673773873974074174274374474574674774874975075175275375475575675775875976076176276376476576676776876977077177277377477577677777877978078178278378478578678778878979079179279379479579679779879980080180280380480580680780880981081181281381481581681781881982082182282382482582682782882983083183283383483583683783883984084184284384484584684784884985085185285385485585685785885986086186286386486586686786886987087187287387487587687787887988088188288388488588688788888989089189289389489589689789889990090190290390490590690790890991091191291391491591691791891992092192292392492592692792892993093193293393493593693793893994094194294394494594694794894995095195295395495595695795895996096196296396496596696796896997097197297397497597697797897998098198298398498598698798898999099199299399499599699799899910001001100210031004100510061007100810091010101110121013101410151016101710181019102010211022102310241025102610271028102910301031103210331034103510361037103810391040104110421043104410451046104710481049105010511052105310541055105610571058105910601061106210631064106510661067106810691070107110721073107410751076107710781079108010811082108310841085108610871088108910901091109210931094109510961097109810991100110111021103
  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. webpack-build:
  17. image: nextcloudci/node:node-4
  18. commands:
  19. - npm install
  20. - npm run build
  21. - git status
  22. - bash -c "[[ ! \"`git status --porcelain `\" ]] || ( echo 'Uncommited changes in webpack build' && exit 1 )"
  23. when:
  24. matrix:
  25. TESTS: webpack-build
  26. vue-build-settings:
  27. image: nextcloudci/node:node-4
  28. commands:
  29. - cd settings/
  30. - find js/ -type f -iname 'vue-*' -delete
  31. - npm install
  32. - npm run build
  33. - git status
  34. - bash -c "[[ ! \"`git status --porcelain js/`\" ]] || ( echo 'Uncommited changes in vue build' && exit 1 )"
  35. when:
  36. matrix:
  37. TESTS: vue-build-settings
  38. vue-build-updatenotification:
  39. image: node
  40. commands:
  41. - ./build/vue-builds.sh ./apps/updatenotification/js/updatenotification.js
  42. when:
  43. matrix:
  44. TESTS: vue-build-updatenotification
  45. vue-build-accessibility:
  46. image: node
  47. commands:
  48. - ./build/vue-builds.sh ./apps/accessibility/js/accessibility.js
  49. when:
  50. matrix:
  51. TESTS: vue-build-accessibility
  52. vue-build-backupcodes:
  53. image: node
  54. commands:
  55. - ./build/vue-builds.sh ./apps/twofactor_backupcodes/js/settings.js
  56. when:
  57. matrix:
  58. TESTS: vue-build-backupscodes
  59. checkers:
  60. image: nextcloudci/php7.1:php7.1-16
  61. commands:
  62. - ./autotest-checkers.sh
  63. secrets: [ github_token ]
  64. when:
  65. matrix:
  66. TESTS: checkers
  67. handlebars:
  68. image: node
  69. commands:
  70. - npm install handlebars -g
  71. - ./build/compile-handlebars-templates.sh
  72. when:
  73. matrix:
  74. TESTS: handlebars
  75. syntax-php7.1:
  76. image: nextcloudci/php7.1:php7.1-16
  77. commands:
  78. - composer install
  79. - ./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 lib/composer/composer/autoload_static.php --exclude 3rdparty/composer/autoload_static.php .
  80. when:
  81. matrix:
  82. TESTS: syntax-php7.1
  83. syntax-php7.2:
  84. image: nextcloudci/php7.2:php7.2-12
  85. commands:
  86. - composer install
  87. - ./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 lib/composer/composer/autoload_static.php --exclude 3rdparty/composer/autoload_static.php --exclude 3rdparty/doctrine/cache/lib/Doctrine/Common/Cache/RiakCache.php .
  88. when:
  89. matrix:
  90. TESTS: syntax-php7.2
  91. syntax-php7.3:
  92. image: nextcloudci/php7.3:php7.3-1
  93. commands:
  94. - composer install
  95. - ./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 --exclude 3rdparty/doctrine/cache/lib/Doctrine/Common/Cache/RiakCache.php .
  96. when:
  97. matrix:
  98. TESTS: syntax-php7.3
  99. phan:
  100. image: nextcloudci/php7.2:php7.2-12
  101. commands:
  102. - composer install
  103. - composer require --dev "phan/phan:0.11.1"
  104. - ./lib/composer/phan/phan/phan -k build/.phan/config.php
  105. - php ./build/.phan/plugin-checker.php
  106. when:
  107. matrix:
  108. TESTS: phan
  109. litmus-v1:
  110. image: nextcloudci/litmus-php7.1:1
  111. commands:
  112. - bash tests/travis/install.sh sqlite
  113. - bash apps/dav/tests/travis/litmus-v1/script.sh
  114. when:
  115. matrix:
  116. TESTS: litmus-v1
  117. litmus-v2:
  118. image: nextcloudci/litmus-php7.2:1
  119. commands:
  120. - bash tests/travis/install.sh sqlite
  121. - bash apps/dav/tests/travis/litmus-v2/script.sh
  122. when:
  123. matrix:
  124. TESTS: litmus-v2
  125. caldavtester-new-endpoint:
  126. image: nextcloudci/litmus-php7.1:1
  127. commands:
  128. - bash tests/travis/install.sh sqlite
  129. - bash apps/dav/tests/travis/caldav/install.sh
  130. - bash apps/dav/tests/travis/caldav/script-new-endpoint.sh
  131. when:
  132. matrix:
  133. TESTS: caldavtester-new-endpoint
  134. caldavtester-old-endpoint:
  135. image: nextcloudci/litmus-php7.1:1
  136. commands:
  137. - bash tests/travis/install.sh sqlite
  138. - bash apps/dav/tests/travis/caldav/install.sh
  139. - bash apps/dav/tests/travis/caldav/script-old-endpoint.sh
  140. when:
  141. matrix:
  142. TESTS: caldavtester-old-endpoint
  143. carddavtester-new-endpoint:
  144. image: nextcloudci/litmus-php7.1:1
  145. commands:
  146. - bash tests/travis/install.sh sqlite
  147. - bash apps/dav/tests/travis/carddav/install.sh
  148. - bash apps/dav/tests/travis/carddav/script-new-endpoint.sh
  149. when:
  150. matrix:
  151. TESTS: carddavtester-new-endpoint
  152. carddavtester-old-endpoint:
  153. image: nextcloudci/litmus-php7.1:1
  154. commands:
  155. - bash tests/travis/install.sh sqlite
  156. - bash apps/dav/tests/travis/carddav/install.sh
  157. - bash apps/dav/tests/travis/carddav/script-old-endpoint.sh
  158. when:
  159. matrix:
  160. TESTS: carddavtester-old-endpoint
  161. sqlite-php7.0-samba-native:
  162. image: nextcloudci/samba-native-php7.1:1
  163. commands:
  164. - smbd -D -FS &
  165. - ./autotest-external.sh sqlite smb-linux
  166. - wget https://codecov.io/bash -O codecov.sh
  167. - 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"
  168. - 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"
  169. - 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"
  170. - 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"
  171. when:
  172. matrix:
  173. TESTS: sqlite-php7.1-samba-native
  174. sqlite-php7.0-samba-non-native:
  175. image: nextcloudci/samba-non-native-php7.1:1
  176. commands:
  177. - smbd -D -FS &
  178. - ./autotest-external.sh sqlite smb-linux
  179. - wget https://codecov.io/bash -O codecov.sh
  180. - 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"
  181. - 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"
  182. - 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"
  183. - 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"
  184. when:
  185. matrix:
  186. TESTS: sqlite-php7.1-samba-non-native
  187. sqlite-php7.0-webdav-apache:
  188. image: nextcloudci/webdav-apache-php7.1:1
  189. commands:
  190. - apache2
  191. - ./autotest-external.sh sqlite webdav-apachedrone
  192. - wget https://codecov.io/bash -O codecov.sh
  193. - 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"
  194. - 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"
  195. - 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"
  196. - 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"
  197. when:
  198. matrix:
  199. TESTS: sqlite-php7.1-webdav-apache
  200. nodb-php7.1:
  201. image: nextcloudci/php7.1:php7.1-16
  202. commands:
  203. - NOCOVERAGE=true TEST_SELECTION=NODB ./autotest.sh sqlite
  204. when:
  205. matrix:
  206. DB: NODB
  207. PHP: 7.1
  208. nodb-php7.2:
  209. image: nextcloudci/php7.2:php7.2-11
  210. commands:
  211. - NOCOVERAGE=true TEST_SELECTION=NODB ./autotest.sh sqlite
  212. when:
  213. matrix:
  214. DB: NODB
  215. PHP: 7.2
  216. nodb-php7.3:
  217. image: nextcloudci/php7.3:php7.3-1
  218. commands:
  219. - NOCOVERAGE=true TEST_SELECTION=NODB ./autotest.sh sqlite
  220. when:
  221. matrix:
  222. DB: NODB
  223. PHP: 7.3
  224. sqlite-php7.1:
  225. image: nextcloudci/php7.1:php7.1-16
  226. commands:
  227. - NOCOVERAGE=true TEST_SELECTION=DB ./autotest.sh sqlite
  228. when:
  229. matrix:
  230. DB: sqlite
  231. PHP: 7.1
  232. sqlite-php7.2:
  233. image: nextcloudci/php7.2:php7.2-12
  234. commands:
  235. - NOCOVERAGE=true TEST_SELECTION=DB ./autotest.sh sqlite
  236. when:
  237. matrix:
  238. DB: sqlite
  239. PHP: 7.2
  240. sqlite-php7.3:
  241. image: nextcloudci/php7.3:php7.3-1
  242. commands:
  243. - NOCOVERAGE=true TEST_SELECTION=DB ./autotest.sh sqlite
  244. when:
  245. matrix:
  246. DB: sqlite
  247. PHP: 7.3
  248. mysql-php7.1:
  249. image: nextcloudci/php7.1:php7.1-16
  250. commands:
  251. - NOCOVERAGE=true TEST_SELECTION=DB ./autotest.sh mysql
  252. when:
  253. matrix:
  254. DB: mysql
  255. PHP: 7.1
  256. mysql-php7.2:
  257. image: nextcloudci/php7.2:php7.2-12
  258. commands:
  259. - NOCOVERAGE=true TEST_SELECTION=DB ./autotest.sh mysql
  260. when:
  261. matrix:
  262. DB: mysql
  263. PHP: 7.2
  264. mysql-php7.3:
  265. image: nextcloudci/php7.3:php7.3-1
  266. commands:
  267. - NOCOVERAGE=true TEST_SELECTION=DB ./autotest.sh mysql
  268. when:
  269. matrix:
  270. DB: mysql
  271. PHP: 7.3
  272. mysql5.6-php7.1:
  273. image: nextcloudci/php7.1:php7.1-16
  274. commands:
  275. - NOCOVERAGE=true TEST_SELECTION=DB ./autotest.sh mysql
  276. when:
  277. matrix:
  278. DB: mysql5.6
  279. PHP: 7.1
  280. mysql5.5-php7.1:
  281. image: nextcloudci/php7.1:php7.1-16
  282. commands:
  283. - NOCOVERAGE=true TEST_SELECTION=DB ./autotest.sh mysql
  284. when:
  285. matrix:
  286. DB: mysql5.5
  287. PHP: 7.1
  288. postgres-php7.1:
  289. image: nextcloudci/php7.1:php7.1-16
  290. commands:
  291. - sleep 10 # gives the database enough time to initialize
  292. - POSTGRES=${POSTGRES} NOCOVERAGE=true TEST_SELECTION=DB ./autotest.sh pgsql
  293. when:
  294. matrix:
  295. DB: postgres
  296. PHP: 7.1
  297. mysqlmb4-php7.1:
  298. image: nextcloudci/php7.1:php7.1-16
  299. commands:
  300. - NOCOVERAGE=true TEST_SELECTION=DB ./autotest.sh mysqlmb4
  301. when:
  302. matrix:
  303. DB: mysqlmb4
  304. PHP: 7.1
  305. mysqlmb4-php7.2:
  306. image: nextcloudci/php7.2:php7.2-12
  307. commands:
  308. - NOCOVERAGE=true TEST_SELECTION=DB ./autotest.sh mysqlmb4
  309. when:
  310. matrix:
  311. DB: mysqlmb4
  312. PHP: 7.2
  313. mysqlmb4-php7.3:
  314. image: nextcloudci/php7.3:php7.3-1
  315. commands:
  316. - NOCOVERAGE=true TEST_SELECTION=DB ./autotest.sh mysqlmb4
  317. when:
  318. matrix:
  319. DB: mysqlmb4
  320. PHP: 7.3
  321. integration-capabilities_features:
  322. image: nextcloudci/integration-php7.1:1
  323. commands:
  324. - ./occ maintenance:install --admin-pass=admin --data-dir=/dev/shm/nc_int
  325. - cd build/integration
  326. - ./run.sh capabilities_features/capabilities.feature
  327. when:
  328. matrix:
  329. TESTS: integration-capabilities_features
  330. integration-federation_features:
  331. image: nextcloudci/integration-php7.1:1
  332. commands:
  333. - ./occ maintenance:install --admin-pass=admin
  334. - cd build/integration
  335. - ./run.sh federation_features/federated.feature
  336. when:
  337. matrix:
  338. TESTS: integration-federation_features
  339. integration-auth:
  340. image: nextcloudci/integration-php7.1:1
  341. commands:
  342. - ./occ maintenance:install --admin-pass=admin --data-dir=/dev/shm/nc_int
  343. - cd build/integration
  344. - ./run.sh features/auth.feature
  345. when:
  346. matrix:
  347. TESTS: integration-auth
  348. integration-maintenance-mode:
  349. image: nextcloudci/integration-php7.1:1
  350. commands:
  351. - ./occ maintenance:install --admin-pass=admin --data-dir=/dev/shm/nc_int
  352. - cd build/integration
  353. - ./run.sh features/maintenance-mode.feature
  354. when:
  355. matrix:
  356. TESTS: integration-maintenance-mode
  357. integration-ratelimiting:
  358. image: nextcloudci/integration-php7.1:1
  359. commands:
  360. - ./occ maintenance:install --admin-pass=admin --data-dir=/dev/shm/nc_int
  361. - ./occ config:system:set redis host --value=cache
  362. - ./occ config:system:set redis port --value=6379 --type=integer
  363. - ./occ config:system:set redis timeout --value=0 --type=integer
  364. - ./occ config:system:set --type string --value "\\OC\\Memcache\\Redis" memcache.local
  365. - ./occ config:system:set --type string --value "\\OC\\Memcache\\Redis" memcache.distributed
  366. - ./occ app:enable testing
  367. - cd build/integration
  368. - ./run.sh features/ratelimiting.feature
  369. when:
  370. matrix:
  371. TESTS: integration-ratelimiting
  372. integration-carddav:
  373. image: nextcloudci/integration-php7.1:1
  374. commands:
  375. - ./occ maintenance:install --admin-pass=admin --data-dir=/dev/shm/nc_int
  376. - cd build/integration
  377. - ./run.sh features/carddav.feature
  378. when:
  379. matrix:
  380. TESTS: integration-carddav
  381. integration-dav-v2:
  382. image: nextcloudci/integration-php7.1:1
  383. commands:
  384. - ./occ maintenance:install --admin-pass=admin --data-dir=/dev/shm/nc_int
  385. - cd build/integration
  386. - ./run.sh features/dav-v2.feature
  387. when:
  388. matrix:
  389. TESTS: integration-dav-v2
  390. integration-ocs-v1:
  391. image: nextcloudci/integration-php7.1:1
  392. commands:
  393. - ./occ maintenance:install --admin-pass=admin --data-dir=/dev/shm/nc_int
  394. - cd build/integration
  395. - ./run.sh features/ocs-v1.feature
  396. when:
  397. matrix:
  398. TESTS: integration-ocs-v1
  399. integration-sharing-v1:
  400. image: nextcloudci/integration-php7.1:1
  401. commands:
  402. - ./occ maintenance:install --admin-pass=admin --data-dir=/dev/shm/nc_int
  403. - cd build/integration
  404. - ./run.sh features/sharing-v1.feature
  405. when:
  406. matrix:
  407. TESTS: integration-sharing-v1
  408. integration-sharing-v1-part2:
  409. image: nextcloudci/integration-php7.1:1
  410. commands:
  411. - ./occ maintenance:install --admin-pass=admin --data-dir=/dev/shm/nc_int
  412. - cd build/integration
  413. - ./run.sh features/sharing-v1-part2.feature
  414. when:
  415. matrix:
  416. TESTS: integration-sharing-v1-part2
  417. integration-sharing-v1-part3:
  418. image: nextcloudci/integration-php7.1:1
  419. commands:
  420. - ./occ maintenance:install --admin-pass=admin --data-dir=/dev/shm/nc_int
  421. - cd build/integration
  422. - ./run.sh features/sharing-v1-part3.feature
  423. when:
  424. matrix:
  425. TESTS: integration-sharing-v1-part3
  426. integration-checksums-v1:
  427. image: nextcloudci/integration-php7.1:1
  428. commands:
  429. - ./occ maintenance:install --admin-pass=admin --data-dir=/dev/shm/nc_int
  430. - cd build/integration
  431. - ./run.sh features/checksums.feature
  432. when:
  433. matrix:
  434. TESTS: integration-checksums
  435. integration-external-storage:
  436. image: nextcloudci/integration-php7.1:1
  437. commands:
  438. - ./occ maintenance:install --admin-pass=admin --data-dir=/dev/shm/nc_int
  439. - cd build/integration
  440. - ./run.sh features/external-storage.feature
  441. when:
  442. matrix:
  443. TESTS: integration-external-storage
  444. integration-provisioning-v1:
  445. image: nextcloudci/integration-php7.1:1
  446. commands:
  447. - ./occ maintenance:install --admin-pass=admin --data-dir=/dev/shm/nc_int
  448. - cd build/integration
  449. - ./run.sh features/provisioning-v1.feature
  450. when:
  451. matrix:
  452. TESTS: integration-provisioning-v1
  453. integration-tags:
  454. image: nextcloudci/integration-php7.1:1
  455. commands:
  456. - ./occ maintenance:install --admin-pass=admin --data-dir=/dev/shm/nc_int
  457. - cd build/integration
  458. - ./run.sh features/tags.feature
  459. when:
  460. matrix:
  461. TESTS: integration-tags
  462. integration-caldav:
  463. image: nextcloudci/integration-php7.1:1
  464. commands:
  465. - ./occ maintenance:install --admin-pass=admin --data-dir=/dev/shm/nc_int
  466. - cd build/integration
  467. - ./run.sh features/caldav.feature
  468. when:
  469. matrix:
  470. TESTS: integration-caldav
  471. integration-comments:
  472. image: nextcloudci/integration-php7.1:1
  473. commands:
  474. - ./occ maintenance:install --admin-pass=admin --data-dir=/dev/shm/nc_int
  475. - cd build/integration
  476. - ./run.sh features/comments.feature
  477. when:
  478. matrix:
  479. TESTS: integration-comments
  480. integration-comments-search:
  481. image: nextcloudci/integration-php7.1:1
  482. commands:
  483. - ./occ maintenance:install --admin-pass=admin --data-dir=/dev/shm/nc_int
  484. - cd build/integration
  485. - ./run.sh features/comments-search.feature
  486. when:
  487. matrix:
  488. TESTS: integration-comments-search
  489. integration-favorites:
  490. image: nextcloudci/integration-php7.1:1
  491. commands:
  492. - ./occ maintenance:install --admin-pass=admin --data-dir=/dev/shm/nc_int
  493. - cd build/integration
  494. - ./run.sh features/favorites.feature
  495. when:
  496. matrix:
  497. TESTS: integration-favorites
  498. integration-provisioning-v2:
  499. image: nextcloudci/integration-php7.1:1
  500. commands:
  501. - ./occ maintenance:install --admin-pass=admin --data-dir=/dev/shm/nc_int
  502. - cd build/integration
  503. - ./run.sh features/provisioning-v2.feature
  504. when:
  505. matrix:
  506. TESTS: integration-provisioning-v2
  507. integration-webdav-related:
  508. image: nextcloudci/integration-php7.1:1
  509. commands:
  510. - ./occ maintenance:install --admin-pass=admin --data-dir=/dev/shm/nc_int
  511. - cd build/integration
  512. - ./run.sh features/webdav-related.feature
  513. when:
  514. matrix:
  515. TESTS: integration-webdav-related
  516. integration-sharees-features:
  517. image: nextcloudci/integration-php7.1:1
  518. commands:
  519. - ./occ maintenance:install --admin-pass=admin --data-dir=/dev/shm/nc_int
  520. - cd build/integration
  521. - ./run.sh sharees_features/sharees.feature
  522. when:
  523. matrix:
  524. TESTS: integration-sharees-features
  525. integration-sharees-v2-features:
  526. image: nextcloudci/integration-php7.1:1
  527. commands:
  528. - ./occ maintenance:install --admin-pass=admin --data-dir=/dev/shm/nc_int
  529. - cd build/integration
  530. - ./run.sh sharees_features/sharees_provisioningapiv2.feature
  531. when:
  532. matrix:
  533. TESTS: integration-sharees-v2-features
  534. integration-setup-features:
  535. image: nextcloudci/integration-php7.1:1
  536. commands:
  537. - cd build/integration
  538. - ./run.sh setup_features/setup.feature
  539. when:
  540. matrix:
  541. TESTS: integration-setup-features
  542. integration-filesdrop-features:
  543. image: nextcloudci/integration-php7.1:1
  544. commands:
  545. - ./occ maintenance:install --admin-pass=admin --data-dir=/dev/shm/nc_int
  546. - cd build/integration
  547. - ./run.sh filesdrop_features/filesdrop.feature
  548. when:
  549. matrix:
  550. TESTS: integration-filesdrop-features
  551. integration-transfer-ownership-features:
  552. image: nextcloudci/integration-php7.1:1
  553. commands:
  554. - ./occ maintenance:install --admin-pass=admin --data-dir=/dev/shm/nc_int
  555. - cd build/integration
  556. - ./run.sh features/transfer-ownership.feature
  557. when:
  558. matrix:
  559. TESTS: integration-transfer-ownership-features
  560. integration-ldap-features:
  561. image: nextcloudci/integration-php7.1:1
  562. commands:
  563. - ./occ maintenance:install --admin-pass=admin --data-dir=/dev/shm/nc_int
  564. - ./occ app:enable user_ldap
  565. - cd build/integration
  566. - ./run.sh ldap_features/ldap-ocs.feature
  567. when:
  568. matrix:
  569. TESTS: integration-ldap-features
  570. integration-ldap-openldap-features:
  571. image: nextcloudci/integration-php7.1:1
  572. commands:
  573. - ./occ maintenance:install --admin-pass=admin --data-dir=/dev/shm/nc_int
  574. - ./occ config:system:set redis host --value=cache
  575. - ./occ config:system:set redis port --value=6379 --type=integer
  576. - ./occ config:system:set redis timeout --value=0 --type=integer
  577. - ./occ config:system:set --type string --value "\\OC\\Memcache\\Redis" memcache.local
  578. - ./occ config:system:set --type string --value "\\OC\\Memcache\\Redis" memcache.distributed
  579. - ./occ app:enable user_ldap
  580. - cd build/integration
  581. - ./run.sh ldap_features/ldap-openldap.feature
  582. when:
  583. matrix:
  584. TESTS: integration-ldap-openldap-features
  585. integration-ldap-openldap-uid-features:
  586. image: nextcloudci/integration-php7.1:1
  587. commands:
  588. - ./occ maintenance:install --admin-pass=admin --data-dir=/dev/shm/nc_int
  589. - ./occ config:system:set redis host --value=cache
  590. - ./occ config:system:set redis port --value=6379 --type=integer
  591. - ./occ config:system:set redis timeout --value=0 --type=integer
  592. - ./occ config:system:set --type string --value "\\OC\\Memcache\\Redis" memcache.local
  593. - ./occ config:system:set --type string --value "\\OC\\Memcache\\Redis" memcache.distributed
  594. - ./occ app:enable user_ldap
  595. - cd build/integration
  596. - ./run.sh ldap_features/openldap-uid-username.feature
  597. when:
  598. matrix:
  599. TESTS: integration-ldap-openldap-uid-features
  600. integration-ldap-openldap-numerical-id-features:
  601. image: nextcloudci/integration-php7.1:1
  602. commands:
  603. - ./occ maintenance:install --admin-pass=admin --data-dir=/dev/shm/nc_int
  604. - ./occ config:system:set redis host --value=cache
  605. - ./occ config:system:set redis port --value=6379 --type=integer
  606. - ./occ config:system:set redis timeout --value=0 --type=integer
  607. - ./occ config:system:set --type string --value "\\OC\\Memcache\\Redis" memcache.local
  608. - ./occ config:system:set --type string --value "\\OC\\Memcache\\Redis" memcache.distributed
  609. - ./occ app:enable user_ldap
  610. - cd build/integration
  611. - ./run.sh ldap_features/openldap-numerical-id.feature
  612. when:
  613. matrix:
  614. TESTS: integration-ldap-openldap-numerical-id-features
  615. integration-trashbin:
  616. image: nextcloudci/integration-php7.1:1
  617. commands:
  618. - ./occ maintenance:install --admin-pass=admin --data-dir=/dev/shm/nc_int
  619. - cd build/integration
  620. - ./run.sh features/trashbin.feature
  621. when:
  622. matrix:
  623. TESTS: integration-trashbin
  624. integration-remote-api:
  625. image: nextcloudci/integration-php7.1:1
  626. commands:
  627. - ./occ maintenance:install --admin-pass=admin --data-dir=/dev/shm/nc_int
  628. - cd build/integration
  629. - ./run.sh remoteapi_features/remote.feature
  630. when:
  631. matrix:
  632. TESTS: integration-remote-api
  633. integration-download:
  634. image: nextcloudci/integration-php7.1:1
  635. commands:
  636. - ./occ maintenance:install --admin-pass=admin --data-dir=/dev/shm/nc_int
  637. - cd build/integration
  638. - ./run.sh --tags ~@large features/download.feature
  639. when:
  640. matrix:
  641. TESTS: integration-download
  642. acceptance-access-levels:
  643. image: nextcloudci/acceptance-php7.1:acceptance-php7.1-2
  644. commands:
  645. - 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
  646. when:
  647. matrix:
  648. TESTS-ACCEPTANCE: access-levels
  649. acceptance-app-comments:
  650. image: nextcloudci/acceptance-php7.1:acceptance-php7.1-2
  651. commands:
  652. - tests/acceptance/run-local.sh --timeout-multiplier 10 --nextcloud-server-domain acceptance-app-comments --selenium-server selenium:4444 allow-git-repository-modifications features/app-comments.feature
  653. when:
  654. matrix:
  655. TESTS-ACCEPTANCE: app-comments
  656. acceptance-app-files:
  657. image: nextcloudci/acceptance-php7.1:acceptance-php7.1-2
  658. commands:
  659. - 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
  660. when:
  661. matrix:
  662. TESTS-ACCEPTANCE: app-files
  663. acceptance-app-files-sharing:
  664. image: nextcloudci/acceptance-php7.1:acceptance-php7.1-2
  665. commands:
  666. - tests/acceptance/run-local.sh --timeout-multiplier 10 --nextcloud-server-domain acceptance-app-files-sharing --selenium-server selenium:4444 allow-git-repository-modifications features/app-files-sharing.feature
  667. when:
  668. matrix:
  669. TESTS-ACCEPTANCE: app-files-sharing
  670. acceptance-app-files-sharing-link:
  671. image: nextcloudci/acceptance-php7.1:acceptance-php7.1-2
  672. commands:
  673. - tests/acceptance/run-local.sh --timeout-multiplier 10 --nextcloud-server-domain acceptance-app-files-sharing-link --selenium-server selenium:4444 allow-git-repository-modifications features/app-files-sharing-link.feature
  674. when:
  675. matrix:
  676. TESTS-ACCEPTANCE: app-files-sharing-link
  677. acceptance-app-files-tags:
  678. image: nextcloudci/acceptance-php7.1:acceptance-php7.1-2
  679. commands:
  680. - tests/acceptance/run-local.sh --timeout-multiplier 10 --nextcloud-server-domain acceptance-app-files-tags --selenium-server selenium:4444 allow-git-repository-modifications features/app-files-tags.feature
  681. when:
  682. matrix:
  683. TESTS-ACCEPTANCE: app-files-tags
  684. acceptance-app-theming:
  685. image: nextcloudci/acceptance-php7.1:acceptance-php7.1-2
  686. commands:
  687. - 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
  688. when:
  689. matrix:
  690. TESTS-ACCEPTANCE: app-theming
  691. acceptance-header:
  692. image: nextcloudci/acceptance-php7.1:acceptance-php7.1-2
  693. commands:
  694. - tests/acceptance/run-local.sh --timeout-multiplier 10 --nextcloud-server-domain acceptance-header --selenium-server selenium:4444 allow-git-repository-modifications features/header.feature
  695. when:
  696. matrix:
  697. TESTS-ACCEPTANCE: header
  698. acceptance-login:
  699. image: nextcloudci/acceptance-php7.1:acceptance-php7.1-2
  700. commands:
  701. - tests/acceptance/run-local.sh --timeout-multiplier 10 --nextcloud-server-domain acceptance-login --selenium-server selenium:4444 allow-git-repository-modifications features/login.feature
  702. when:
  703. matrix:
  704. TESTS-ACCEPTANCE: login
  705. acceptance-users:
  706. image: nextcloudci/acceptance-php7.1:acceptance-php7.1-2
  707. commands:
  708. - tests/acceptance/run-local.sh --timeout-multiplier 10 --nextcloud-server-domain acceptance-users --selenium-server selenium:4444 allow-git-repository-modifications features/users.feature
  709. when:
  710. matrix:
  711. TESTS-ACCEPTANCE: users
  712. acceptance-apps:
  713. image: nextcloudci/acceptance-php7.1:acceptance-php7.1-2
  714. commands:
  715. - tests/acceptance/run-local.sh --timeout-multiplier 10 --nextcloud-server-domain acceptance-apps --selenium-server selenium:4444 allow-git-repository-modifications features/apps.feature
  716. when:
  717. matrix:
  718. TESTS-ACCEPTANCE: apps
  719. nodb-codecov:
  720. image: nextcloudci/php7.1:php7.1-16
  721. commands:
  722. - phpenmod xdebug
  723. - TEST_SELECTION=NODB ./autotest.sh sqlite
  724. - wget https://codecov.io/bash -O codecov.sh
  725. - 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"
  726. - 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"
  727. when:
  728. matrix:
  729. TESTS: nodb-codecov
  730. db-codecov:
  731. image: nextcloudci/php7.1:php7.1-16
  732. commands:
  733. - phpenmod xdebug
  734. - TEST_SELECTION=QUICKDB ./autotest.sh sqlite
  735. - wget https://codecov.io/bash -O codecov.sh
  736. - 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"
  737. - 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"
  738. when:
  739. matrix:
  740. TESTS: db-codecov
  741. object-store:
  742. image: nextcloudci/php7.1:php7.1-16
  743. commands:
  744. - phpenmod xdebug
  745. - ./tests/drone-wait-objectstore.sh
  746. - TEST_SELECTION=PRIMARY-${OBJECT_STORE} ./autotest.sh sqlite
  747. - wget https://codecov.io/bash -O codecov.sh
  748. - 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"
  749. - 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"
  750. when:
  751. matrix:
  752. TESTS: object-store
  753. memcache-memcached:
  754. image: nextcloudci/php7.1-memcached:1
  755. commands:
  756. - phpenmod xdebug
  757. - service memcached restart
  758. - ./autotest.sh sqlite tests/lib/Memcache/MemcachedTest.php
  759. - wget https://codecov.io/bash -O codecov.sh
  760. - 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"
  761. - 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"
  762. when:
  763. matrix:
  764. TEST: memcache-memcached
  765. memcache-redis-cluster:
  766. image: nextcloudci/php7.1:php7.1-16
  767. commands:
  768. - phpenmod xdebug
  769. - sleep 20
  770. - ./autotest.sh sqlite tests/lib/Memcache/RedisTest.php
  771. - wget https://codecov.io/bash -O codecov.sh
  772. - 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"
  773. - 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"
  774. when:
  775. matrix:
  776. TEST: memcache-redis-cluster
  777. ui-regression:
  778. image: nextcloudci/ui-regression:ui-regression-1
  779. commands:
  780. - cd tests/ui-regression
  781. - npm install
  782. - chown -R pptruser out node_modules
  783. - bash -c "until curl -s http://ui-regression-php-master > /dev/null && curl -s http://ui-regression-php > /dev/null; do sleep 2; done"
  784. - sudo -u pptruser node runTests.js || true
  785. - echo "The result can be found at https://s3.bitgrid.net/nextcloud-ui-regression/nextcloud/server/${DRONE_PULL_REQUEST}/index.html"
  786. shm_size: '1gb'
  787. when:
  788. matrix:
  789. TESTS: ui-regression
  790. publish-s3:
  791. image: plugins/s3
  792. endpoint: https://ci-assets.nextcloud.com
  793. bucket: nextcloud-ui-regression
  794. path_style: true
  795. source: tests/ui-regression/out/**/*
  796. strip_prefix: tests/ui-regression/out/
  797. acl: public-read
  798. target: ${DRONE_REPO_OWNER}/${DRONE_REPO_NAME}/${DRONE_PULL_REQUEST}
  799. secrets: [ aws_access_key_id, aws_secret_access_key ]
  800. when:
  801. matrix:
  802. TESTS: ui-regression
  803. matrix:
  804. include:
  805. - TESTS: checkers
  806. - TESTS: webpack-build
  807. - TESTS: vue-build-settings
  808. - TESTS: vue-build-updatenotification
  809. - TESTS: vue-build-accessibility
  810. - TESTS: vue-build-backupcodes
  811. - TESTS: handlebars
  812. - TESTS: nodb-codecov
  813. ENABLE_REDIS: true
  814. - TESTS: db-codecov
  815. ENABLE_REDIS: true
  816. - DB: NODB
  817. PHP: 7.1
  818. ENABLE_REDIS: true
  819. - DB: NODB
  820. PHP: 7.2
  821. ENABLE_REDIS: false
  822. - DB: NODB
  823. PHP: 7.3
  824. ENABLE_REDIS: false
  825. - DB: sqlite
  826. PHP: 7.1
  827. ENABLE_REDIS: true
  828. - DB: sqlite
  829. PHP: 7.2
  830. ENABLE_REDIS: false
  831. - DB: sqlite
  832. PHP: 7.3
  833. ENABLE_REDIS: false
  834. - DB: mysql
  835. PHP: 7.1
  836. ENABLE_REDIS: true
  837. - DB: mysql
  838. PHP: 7.2
  839. ENABLE_REDIS: false
  840. - DB: mysql
  841. PHP: 7.3
  842. ENABLE_REDIS: false
  843. - DB: mysql5.6
  844. PHP: 7.1
  845. ENABLE_REDIS: true
  846. - DB: mysql5.5
  847. PHP: 7.1
  848. ENABLE_REDIS: true
  849. - DB: postgres
  850. PHP: 7.1
  851. POSTGRES: 9
  852. ENABLE_REDIS: true
  853. - DB: postgres
  854. PHP: 7.1
  855. POSTGRES: 10
  856. ENABLE_REDIS: true
  857. - DB: mysqlmb4
  858. PHP: 7.1
  859. ENABLE_REDIS: true
  860. - DB: mysqlmb4
  861. PHP: 7.2
  862. ENABLE_REDIS: false
  863. - DB: mysqlmb4
  864. PHP: 7.3
  865. ENABLE_REDIS: false
  866. - TESTS: integration-capabilities_features
  867. - TESTS: integration-federation_features
  868. - TESTS: integration-maintenance-mode
  869. - TESTS: integration-ratelimiting
  870. ENABLE_REDIS: true
  871. - TESTS: integration-auth
  872. - TESTS: integration-carddav
  873. - TESTS: integration-dav-v2
  874. - TESTS: integration-ocs-v1
  875. - TESTS: integration-sharing-v1
  876. - TESTS: integration-sharing-v1-part2
  877. - TESTS: integration-sharing-v1-part3
  878. - TESTS: integration-checksums
  879. - TESTS: integration-external-storage
  880. - TESTS: integration-provisioning-v1
  881. - TESTS: integration-tags
  882. - TESTS: integration-caldav
  883. - TESTS: integration-comments
  884. - TESTS: integration-comments-search
  885. - TESTS: integration-favorites
  886. - TESTS: integration-provisioning-v2
  887. - TESTS: integration-webdav-related
  888. - TESTS: integration-sharees-features
  889. - TESTS: integration-sharees-v2-features
  890. - TESTS: integration-setup-features
  891. - TESTS: integration-filesdrop-features
  892. - TESTS: integration-transfer-ownership-features
  893. - TESTS: integration-ldap-features
  894. - TESTS: integration-ldap-openldap-features
  895. ENABLE_OPENLDAP: true
  896. ENABLE_REDIS: true
  897. - TESTS: integration-ldap-openldap-uid-features
  898. ENABLE_OPENLDAP: true
  899. ENABLE_REDIS: true
  900. - TESTS: integration-ldap-openldap-numerical-id-features
  901. ENABLE_OPENLDAP: true
  902. ENABLE_REDIS: true
  903. - TESTS: integration-trashbin
  904. - TESTS: integration-remote-api
  905. - TESTS: integration-download
  906. - TESTS: acceptance
  907. TESTS-ACCEPTANCE: access-levels
  908. - TESTS: acceptance
  909. TESTS-ACCEPTANCE: app-comments
  910. - TESTS: acceptance
  911. TESTS-ACCEPTANCE: app-files
  912. - TESTS: acceptance
  913. TESTS-ACCEPTANCE: app-files-sharing
  914. - TESTS: acceptance
  915. TESTS-ACCEPTANCE: app-files-sharing-link
  916. - TESTS: acceptance
  917. TESTS-ACCEPTANCE: app-files-tags
  918. - TESTS: acceptance
  919. TESTS-ACCEPTANCE: app-theming
  920. - TESTS: acceptance
  921. TESTS-ACCEPTANCE: header
  922. - TESTS: acceptance
  923. TESTS-ACCEPTANCE: login
  924. - TESTS: acceptance
  925. TESTS-ACCEPTANCE: users
  926. - TESTS: acceptance
  927. TESTS-ACCEPTANCE: apps
  928. - TESTS: jsunit
  929. - TESTS: syntax-php7.1
  930. - TESTS: syntax-php7.2
  931. - TESTS: syntax-php7.3
  932. - TESTS: phan
  933. - TESTS: litmus-v1
  934. - TESTS: litmus-v2
  935. - TESTS: caldavtester-old-endpoint
  936. - TESTS: caldavtester-new-endpoint
  937. - TESTS: carddavtester-new-endpoint
  938. - TESTS: carddavtester-old-endpoint
  939. - TESTS: object-store
  940. OBJECT_STORE: s3
  941. - TESTS: object-store
  942. OBJECT_STORE: azure
  943. # - TESTS: object-store
  944. # OBJECT_STORE: swift
  945. # SWIFT-AUTH: v2.0
  946. # - TESTS: object-store
  947. # OBJECT_STORE: swift
  948. # SWIFT-AUTH: v3
  949. - TESTS: sqlite-php7.1-samba-native
  950. - TESTS: sqlite-php7.1-samba-non-native
  951. - TEST: memcache-memcached
  952. - TEST: memcache-redis-cluster
  953. ENABLE_REDIS_CLUSTER: true
  954. - TESTS: sqlite-php7.1-webdav-apache
  955. ENABLE_REDIS: true
  956. - TESTS: ui-regression
  957. services:
  958. cache:
  959. image: redis
  960. when:
  961. matrix:
  962. ENABLE_REDIS: true
  963. ui-regression-php:
  964. image: nextcloudci/server:server-1
  965. commands:
  966. - . /etc/apache2/envvars
  967. - rm -fr /var/www/html
  968. - mkdir /var/www/html && cp -rT . /var/www/html && chown -R www-data:www-data /var/www/html
  969. - rm -fr /var/www/html/config/config.php /var/www/html/data/*
  970. - apache2 -DFOREGROUND
  971. when:
  972. matrix:
  973. TESTS: ui-regression
  974. ui-regression-php-master:
  975. image: nextcloudci/server:server-1
  976. commands:
  977. - . /etc/apache2/envvars
  978. - rm -fr /var/www/html/config/config.php /var/www/html/data/*
  979. - su www-data -c "cd /var/www/html/ && git checkout $DRONE_REPO_BRANCH && git pull && git submodule update"
  980. - apache2 -DFOREGROUND
  981. when:
  982. matrix:
  983. TESTS: ui-regression
  984. cache-cluster:
  985. image: morrisjobke/redis-cluster
  986. when:
  987. matrix:
  988. ENABLE_REDIS_CLUSTER: true
  989. postgres-9:
  990. image: postgres:9
  991. environment:
  992. - POSTGRES_USER=oc_autotest
  993. - POSTGRES_DB=oc_autotest_dummy
  994. - POSTGRES_PASSWORD=owncloud
  995. tmpfs:
  996. - /var/lib/postgresql/data
  997. when:
  998. matrix:
  999. DB: postgres
  1000. POSTGRES: 9
  1001. postgres-10:
  1002. image: postgres:10
  1003. environment:
  1004. - POSTGRES_USER=oc_autotest
  1005. - POSTGRES_DB=oc_autotest_dummy
  1006. - POSTGRES_PASSWORD=owncloud
  1007. tmpfs:
  1008. - /var/lib/postgresql/data
  1009. when:
  1010. matrix:
  1011. DB: postgres
  1012. POSTGRES: 10
  1013. mysql:
  1014. image: mysql:5.7
  1015. environment:
  1016. - MYSQL_ROOT_PASSWORD=owncloud
  1017. - MYSQL_USER=oc_autotest
  1018. - MYSQL_PASSWORD=owncloud
  1019. - MYSQL_DATABASE=oc_autotest
  1020. tmpfs:
  1021. - /var/lib/mysql
  1022. when:
  1023. matrix:
  1024. DB: mysql
  1025. mysql:
  1026. image: mysql:5.6
  1027. environment:
  1028. - MYSQL_ROOT_PASSWORD=owncloud
  1029. - MYSQL_USER=oc_autotest
  1030. - MYSQL_PASSWORD=owncloud
  1031. - MYSQL_DATABASE=oc_autotest
  1032. tmpfs:
  1033. - /var/lib/mysql
  1034. when:
  1035. matrix:
  1036. DB: mysql5.6
  1037. mysql:
  1038. image: mysql:5.5
  1039. environment:
  1040. - MYSQL_ROOT_PASSWORD=owncloud
  1041. - MYSQL_USER=oc_autotest
  1042. - MYSQL_PASSWORD=owncloud
  1043. - MYSQL_DATABASE=oc_autotest
  1044. tmpfs:
  1045. - /var/lib/mysql
  1046. when:
  1047. matrix:
  1048. DB: mysql5.5
  1049. mysqlmb4:
  1050. image: mysql:5.7.22
  1051. environment:
  1052. - MYSQL_ROOT_PASSWORD=owncloud
  1053. - MYSQL_USER=oc_autotest
  1054. - MYSQL_PASSWORD=owncloud
  1055. - MYSQL_DATABASE=oc_autotest
  1056. command: [ "--innodb_large_prefix=true", "--innodb_file_format=barracuda", "--innodb_file_per_table=true" ]
  1057. tmpfs:
  1058. - /var/lib/mysql
  1059. when:
  1060. matrix:
  1061. DB: mysqlmb4
  1062. fake-s3:
  1063. image: lphoward/fake-s3
  1064. when:
  1065. matrix:
  1066. OBJECT_STORE: s3
  1067. azurite:
  1068. image: arafato/azurite
  1069. environment:
  1070. - executable=blob
  1071. when:
  1072. matrix:
  1073. OBJECT_STORE: azure
  1074. dockswift:
  1075. image: icewind1991/dockswift:nextcloud-ci
  1076. environment:
  1077. - IPADDRESS=dockswift
  1078. when:
  1079. matrix:
  1080. OBJECT_STORE: swift
  1081. selenium:
  1082. image: selenium/standalone-firefox:2.53.1-beryllium
  1083. environment:
  1084. # Reduce default log level for Selenium server (INFO) as it is too
  1085. # verbose.
  1086. - JAVA_OPTS=-Dselenium.LOGGER.level=WARNING
  1087. when:
  1088. matrix:
  1089. TESTS: acceptance
  1090. openldap:
  1091. image: nextcloudci/openldap:openldap-6
  1092. environment:
  1093. - SLAPD_DOMAIN=nextcloud.ci
  1094. - SLAPD_ORGANIZATION=Nextcloud
  1095. - SLAPD_PASSWORD=admin
  1096. - SLAPD_ADDITIONAL_MODULES=memberof
  1097. when:
  1098. matrix:
  1099. ENABLE_OPENLDAP: true
  1100. branches: [ master, stable* ]