mirror of
https://github.com/Aviortheking/DeltaCMS.git
synced 2025-04-22 19:02:12 +00:00
72 lines
1.9 KiB
YAML
72 lines
1.9 KiB
YAML
# This file is a template, and might need editing before it works on your project.
|
|
# Select image from https://hub.docker.com/_/php/
|
|
image: php:latest
|
|
|
|
# Select what we should cache between builds
|
|
cache:
|
|
paths:
|
|
- vendor/
|
|
|
|
stages:
|
|
- Build
|
|
- Test
|
|
- Code Quality
|
|
- Package
|
|
|
|
before_script:
|
|
- apt-get update -yqq
|
|
- apt-get install -yqq git zip tar # libicu-dev libvpx-dev libjpeg-dev libpng-dev libxpm-dev zlib1g-dev libfreetype6-dev libxml2-dev libexpat1-dev libbz2-dev libgmp3-dev libldap2-dev unixodbc-dev libsqlite3-dev libaspell-dev libsnmp-dev libpcre3-dev libtidy-dev
|
|
# Install PHP extensions
|
|
- docker-php-ext-install json
|
|
# json is neccesary
|
|
# Install & enable Xdebug for code coverage reports
|
|
- pecl install xdebug
|
|
- docker-php-ext-enable xdebug
|
|
# Install and run Composer
|
|
- curl -sS https://getcomposer.org/installer | php
|
|
|
|
|
|
# Bring in any services we need http://docs.gitlab.com/ee/ci/docker/using_docker_images.html#what-is-a-service
|
|
# See http://docs.gitlab.com/ce/ci/services/README.html for examples.
|
|
services:
|
|
- mysql:5.7
|
|
|
|
# Set any variables we need
|
|
variables:
|
|
# Configure mysql environment variables (https://hub.docker.com/r/_/mysql/)
|
|
MYSQL_DATABASE: adminpanl
|
|
MYSQL_ROOT_PASSWORD: adminpanel
|
|
|
|
# Run our tests
|
|
# If Xdebug was installed you can generate a coverage report and see code coverage metrics.
|
|
build:
|
|
stage: Build
|
|
script:
|
|
- php composer.phar install
|
|
|
|
"PHP Mess Detector":
|
|
stage: Code Quality
|
|
script:
|
|
- php composer.phar run phpmd
|
|
|
|
"PHP Unit":
|
|
stage: Test
|
|
script:
|
|
- php composer.phar run phpunit
|
|
- vendor/bin/codacycoverage clover tmp/code-coverage.xml
|
|
|
|
"PHP CodeSniffer":
|
|
stage: Code Quality
|
|
script: php composer.phar run phpcs
|
|
|
|
"Package":
|
|
stage: Package
|
|
artifacts:
|
|
paths:
|
|
- package.zip
|
|
- package.tar.gz
|
|
script:
|
|
- php composer.phar install --no-dev --optimize-autoloader
|
|
- cat production.txt | zip package.zip -r -@
|
|
- tar -cvzf package.tar.gz -T production.txt
|