29
0
mirror of https://github.com/joomla/joomla-cms.git synced 2024-06-28 08:03:40 +00:00
cms/.drone.yml
2018-12-29 14:12:44 +00:00

128 lines
4.0 KiB
YAML

pipeline:
clone:
image: plugins/git
depth: 1
phpcs:
image: joomlaprojects/docker-phpcs
commands:
- echo $(date)
- /root/.composer/vendor/bin/phpcs --report=full --encoding=utf-8 --extensions=php -p --standard=build/phpcs/Joomla .
- echo $(date)
restore-cache:
image: drillster/drone-volume-cache
restore: true
mount:
- ./node_modules
- ./libraries/vendor
volumes:
- /tmp/cache:/cache
prepare:
image: joomlaprojects/docker-tools:develop
commands:
- composer install --no-progress --no-suggest
# needed for unit testing
- composer update joomla/test-unit --no-progress --no-suggest
# needed for system testing
- composer update joomla/test-system --no-progress --no-suggest
- composer update joomla-projects/selenium-server-standalone --no-progress --no-suggest
- composer update joomla-projects/joomla-browser --no-progress --no-suggest
- npm install --unsafe-perm
rebuild-cache:
image: drillster/drone-volume-cache
rebuild: true
mount:
- ./node_modules
- ./libraries/vendor
volumes:
- /tmp/cache:/cache
php70-unit:
group: unit
image: joomlaprojects/docker-php70:develop
commands:
- ./libraries/vendor/bin/phpunit --configuration ./libraries/vendor/joomla/test-unit/phpunit.xml.dist
php71-unit:
group: unit
image: joomlaprojects/docker-php71:develop
commands:
- ./libraries/vendor/bin/phpunit --configuration ./libraries/vendor/joomla/test-unit/phpunit.xml.dist
php72-unit:
group: unit
image: joomlaprojects/docker-php72:develop
commands:
- ./libraries/vendor/bin/phpunit --configuration ./libraries/vendor/joomla/test-unit/phpunit.xml.dist
javascript-cs:
image: joomlaprojects/docker-systemtests:develop
commands:
- export DISPLAY=:0
- Xvfb -screen 0 1024x768x24 -ac +extension GLX +render -noreset > /dev/null 2>&1 &
- sleep 3
- fluxbox > /dev/null 2>&1 &
- cd /drone/src/github.com/joomla/joomla-cms && npm run lint:js
javascript-tests:
image: joomlaprojects/docker-systemtests:develop
commands:
- export DISPLAY=:0
- Xvfb -screen 0 1024x768x24 -ac +extension GLX +render -noreset > /dev/null 2>&1 &
- sleep 3
- fluxbox > /dev/null 2>&1 &
- npm run test
system-tests:
image: joomlaprojects/docker-systemtests:develop
commands:
- bash libraries/vendor/joomla/test-system/src/drone-run.sh "$(pwd)"
analysis3x:
image: rips/rips-cli
secrets: [rips_username, rips_password]
when:
branch: staging
commands:
- export RIPS_BASE_URI='https://api.rips.joomla.org'
- export RIPS_USERNAME=$RIPS_USERNAME
- export RIPS_PASSWORD=$RIPS_PASSWORD
- if [ $DRONE_REPO_OWNER != 'joomla' ]; then echo "The analysis check only run on the main repos"; exit 0; fi
- rips-cli rips:scan:start -a 1 -t 1 -p $(pwd) -t 1 -T $DRONE_REPO_OWNER-$DRONE_BRANCH || { echo "Please contact the security team at security@joomla.org"; exit 1; }
analysis4x:
image: rips/rips-cli
secrets: [rips_username, rips_password]
when:
branch: 4.0-dev
commands:
- export RIPS_BASE_URI='https://api.rips.joomla.org'
- export RIPS_USERNAME=$RIPS_USERNAME
- export RIPS_PASSWORD=$RIPS_PASSWORD
- if [ $DRONE_REPO_OWNER != 'joomla' ]; then echo "The analysis check only run on the main repos"; exit 0; fi
- rips-cli rips:scan:start -a 3 -t 1 -p $(pwd) -t 1 -T $DRONE_REPO_OWNER-$DRONE_BRANCH || { echo "Please contact the security team at security@joomla.org"; exit 1; }
branches:
exclude: [ l10n_* ]
services:
mysql:
image: mysql:5.7
environment:
MYSQL_USER: joomla_ut
MYSQL_PASSWORD: joomla_ut
MYSQL_ROOT_PASSWORD: joomla_ut
MYSQL_DATABASE: test_joomla
memcached:
image: memcached:alpine
redis:
image: redis:alpine
postgres:
image: postgres