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

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