icingaweb2-module-director/.gitlab-ci.yml

126 lines
4.0 KiB
YAML

stages:
- Coding Standards
- Unit-Tests with DB
PSR2 CS Test:
stage: Coding Standards
tags:
- xenial
script:
- phpcs --report-width=auto --report-full --report-gitblame --report-summary -p --standard=PSR2 --extensions=php --encoding=utf-8 -w -s library/Director/ library/vendor/ipl/ application/ *.php test
CentOS 7/MySQL:
stage: Unit-Tests with DB
tags:
- centos7
- director
variables:
DIRECTOR_TESTDB: "director_test_${CI_BUILD_ID}_${CI_RUNNER_ID}"
DIRECTOR_TESTDB_RES: "Director MySQL TestDB"
before_script:
- mysql -u root -e "CREATE DATABASE $DIRECTOR_TESTDB"
after_script:
- mysql -u root -e "DROP DATABASE $DIRECTOR_TESTDB"
script:
- phpunit --verbose
CentOS 7/PostgreSQL:
stage: Unit-Tests with DB
tags:
- centos7
- director
variables:
DIRECTOR_TESTDB: "director_test_${CI_BUILD_ID}_${CI_RUNNER_ID}"
DIRECTOR_TESTDB_RES: "Director PostgreSQL TestDB"
DIRECTOR_TESTDB_USER: "director_${CI_BUILD_ID}_${CI_RUNNER_ID}"
before_script:
- psql postgres -q -c "CREATE DATABASE $DIRECTOR_TESTDB WITH ENCODING 'UTF8';"
- psql $DIRECTOR_TESTDB -q -c "CREATE USER $DIRECTOR_TESTDB_USER WITH PASSWORD 'testing'; GRANT ALL PRIVILEGES ON DATABASE $DIRECTOR_TESTDB TO $DIRECTOR_TESTDB_USER; CREATE EXTENSION pgcrypto;"
after_script:
- psql postgres -c "DROP DATABASE $DIRECTOR_TESTDB"
- psql postgres -c "DROP USER $DIRECTOR_TESTDB_USER"
script:
- phpunit --verbose
#CentOS 6/MySQL:
# stage: Unit-Tests with DB
# tags:
# - centos6
# - director
# variables:
# DIRECTOR_TESTDB: "director_test_${CI_BUILD_ID}_${CI_RUNNER_ID}"
# DIRECTOR_TESTDB_RES: "Director MySQL TestDB"
# before_script:
# - mysql -u root -e "CREATE DATABASE $DIRECTOR_TESTDB"
# after_script:
# - mysql -u root -e "DROP DATABASE $DIRECTOR_TESTDB"
# script:
# - phpunit
Jessie/MySQL:
stage: Unit-Tests with DB
tags:
- jessie
- director
variables:
DIRECTOR_TESTDB: "director_test_${CI_BUILD_ID}_${CI_RUNNER_ID}"
DIRECTOR_TESTDB_RES: "Director MySQL TestDB"
before_script:
- mysql -u root -e "CREATE DATABASE $DIRECTOR_TESTDB"
after_script:
- mysql -u root -e "DROP DATABASE $DIRECTOR_TESTDB"
script:
- phpunit --verbose
Jessie/PostgreSQL:
stage: Unit-Tests with DB
tags:
- jessie
- director
variables:
DIRECTOR_TESTDB: "director_test_${CI_BUILD_ID}_${CI_RUNNER_ID}"
DIRECTOR_TESTDB_RES: "Director PostgreSQL TestDB"
DIRECTOR_TESTDB_USER: "director_${CI_BUILD_ID}_${CI_RUNNER_ID}"
before_script:
- psql postgres -q -c "CREATE DATABASE $DIRECTOR_TESTDB WITH ENCODING 'UTF8';"
- psql $DIRECTOR_TESTDB -q -c "CREATE USER $DIRECTOR_TESTDB_USER WITH PASSWORD 'testing'; GRANT ALL PRIVILEGES ON DATABASE $DIRECTOR_TESTDB TO $DIRECTOR_TESTDB_USER; CREATE EXTENSION pgcrypto;"
after_script:
- psql postgres -c "DROP DATABASE $DIRECTOR_TESTDB"
- psql postgres -c "DROP USER $DIRECTOR_TESTDB_USER"
script:
- phpunit --verbose
Xenial/MySQL:
stage: Unit-Tests with DB
tags:
- xenial
- director
variables:
DIRECTOR_TESTDB: "director_test_${CI_BUILD_ID}_${CI_RUNNER_ID}"
DIRECTOR_TESTDB_RES: "Director MySQL TestDB"
before_script:
- mysql -u root -e "CREATE DATABASE $DIRECTOR_TESTDB"
after_script:
- mysql -u root -e "DROP DATABASE $DIRECTOR_TESTDB"
script:
- phpunit --verbose
Xenial/PostgreSQL:
stage: Unit-Tests with DB
tags:
- ubuntu
- director
variables:
DIRECTOR_TESTDB: "director_test_${CI_BUILD_ID}_${CI_RUNNER_ID}"
DIRECTOR_TESTDB_RES: "Director PostgreSQL TestDB"
DIRECTOR_TESTDB_USER: "director_${CI_BUILD_ID}_${CI_RUNNER_ID}"
before_script:
- psql postgres -q -c "CREATE DATABASE $DIRECTOR_TESTDB WITH ENCODING 'UTF8';"
- psql $DIRECTOR_TESTDB -q -c "CREATE USER $DIRECTOR_TESTDB_USER WITH PASSWORD 'testing'; GRANT ALL PRIVILEGES ON DATABASE $DIRECTOR_TESTDB TO $DIRECTOR_TESTDB_USER; CREATE EXTENSION pgcrypto;"
after_script:
- psql postgres -c "DROP DATABASE $DIRECTOR_TESTDB"
- psql postgres -c "DROP USER $DIRECTOR_TESTDB_USER"
script:
- phpunit --verbose