Checkout Config
build:
environment:
php:
pecl_extensions:
- zip
variables:
APP_NAME: cms_pico
NEXTCLOUD: releases/latest
GPGKEY: 28806A878AE423A28372792ED75899B9A724937A
nodes:
analysis:
environment:
php:
version: 7.4
compile_options: '--enable-gd --with-openssl --with-curl --with-pdo-mysql --with-mysqli --with-freetype --enable-mbstring --enable-mbregex --enable-exif --enable-bcmath --with-mhash --with-xmlrpc --with-xsl --enable-opcache --enable-intl --with-pear --with-gettext --enable-fpm --with-zlib-dir --with-zlib --disable-rpath --enable-inline-optimization --with-bz2 --with-zlib --enable-sockets --enable-sysvsem --enable-sysvshm --enable-pcntl'
pecl_extensions:
- xdebug-2.9.8
dependencies:
override:
- curl -L -o ~/nextcloud.tar.bz2 --insecure https://download.nextcloud.com/server/$NEXTCLOUD.tar.bz2
- curl -L -o ~/nextcloud.tar.bz2.asc --insecure https://download.nextcloud.com/server/$NEXTCLOUD.tar.bz2.asc
- export GNUPGHOME="$(mktemp -d)"
- gpg --batch --keyserver keyserver.ubuntu.com --recv-keys $GPGKEY
- gpg --batch --verify ~/nextcloud.tar.bz2.asc ~/nextcloud.tar.bz2
project_setup:
override:
- php --info
- composer --version
- echo Installing $APP_NAME on Nextcloud branch $NEXTCLOUD
- make build-dev version=latest
- cp build/$APP_NAME-latest.tar.gz ~/$APP_NAME.tar.gz
- tar xfjv ~/nextcloud.tar.bz2
- tar xfjv ~/nextcloud.tar.bz2 -C ~
- tar xfzv ~/$APP_NAME.tar.gz -C ~/nextcloud/apps
- cd ~/nextcloud
- php ./occ --version
- php ./occ maintenance:install --database "sqlite" --admin-user "admin" --admin-pass "admin"
- php ./occ app:enable $APP_NAME
tests:
override:
- cd ~/build
- php-scrutinizer-run --enable-security-analysis
- phpcs-run --standard=.phpcs.xml
- js-scrutinizer-run
- cd ~/nextcloud
- php ./occ app:check-code $APP_NAME -c private
- php ./occ app:check-code $APP_NAME -c strong-comparison
- php ./occ app:check-code $APP_NAME -c deprecation
- cd ~/nextcloud/apps/$APP_NAME
- command: php ./vendor/bin/phpunit --configuration ./tests/phpunit.xml --coverage-clover ~/build/tests/clover.xml
idle_timeout: 1200
coverage:
file: tests/clover.xml
format: clover
checks:
php: true
javascript: true
filter:
excluded_paths:
- appdata/plugins/
- appdata/themes/
- build/
- l10n/
- tests/
dependency_paths:
- vendor/
- nextcloud/