os: linux dist: bionic language: php php: - 7.2 - 7.3 - 7.4 env: global: - MOZ_HEADLESS=1 jobs: - CORE_BRANCH=stable16 DB=pgsql - CORE_BRANCH=stable17 DB=mysql - CORE_BRANCH=stable18 DB=pgsql - CORE_BRANCH=stable18 DB=mysql - CORE_BRANCH=stable18 DB=sqlite - CORE_BRANCH=master DB=sqlite jobs: exclude: - php: 7.4 env: CORE_BRANCH=stable16 DB=pgsql # not supported by nc - php: 7.4 env: CORE_BRANCH=stable17 DB=pgsql # not supported by nc - php: 7.4 env: CORE_BRANCH=stable17 DB=mysql # not supported by nc - php: 7.2 env: CORE_BRANCH=master DB=sqlite # not wanted - php: 7.3 env: CORE_BRANCH=master DB=sqlite # not wanted allow_failures: - env: - CORE_BRANCH=master DB=sqlite fast_finish: true before_install: - make - cd ../ - git clone https://github.com/nextcloud/server.git --recursive --depth 1 -b $CORE_BRANCH nextcloud - mv news nextcloud/apps/ before_script: - if [[ "$DB" == 'pgsql' ]]; then psql -c "CREATE ROLE oc_autotest LOGIN PASSWORD 'oc_autotest'" -U postgres; fi - if [[ "$DB" == 'pgsql' ]]; then psql -c "CREATE DATABASE oc_autotest OWNER oc_autotest;" -U postgres; fi - if [[ "$DB" == 'mysql' ]]; then sudo mysql -u root -e 'CREATE DATABASE oc_autotest;'; fi - if [[ "$DB" == 'mysql' ]]; then sudo mysql -u root -e "CREATE USER 'oc_autotest'@'localhost' IDENTIFIED BY 'oc_autotest';"; fi - if [[ "$DB" == 'mysql' ]]; then sudo mysql -u root -e "GRANT ALL ON oc_autotest.* TO 'oc_autotest'@'localhost';"; fi - if [[ "$DB" == 'mysql' ]]; then sudo mysql -u root -e "SET GLOBAL sql_mode = 'STRICT_ALL_TABLES,ONLY_FULL_GROUP_BY';"; fi # fill nextcloud with default configs and enable news - cd nextcloud - mkdir data - ./occ maintenance:install --admin-user="admin" --admin-pass="admin" --database "${DB}" --database-name="oc_autotest" --database-user="oc_autotest" --database-pass="oc_autotest" - ./occ app:enable news - ./occ app:check-code news - ./occ background:cron # enable default cron - php -S localhost:8080 & script: - ./occ news:generate-explore --votes 100 "https://nextcloud.com/blog/feed/" - cd apps/news - make test after_failure: - cat ../../data/nextcloud.log after_success: - bash <(curl -s https://codecov.io/bash) addons: firefox: "latest-beta" postgresql: "10" mariadb: "10.4"