diff --git a/.gitlab-ci.yml b/.gitlab-ci.yml index 9d760e04700a9d27369b9855d21bdae1550a43f9..446b9d345c2016f778c738c844965c1ee221dc43 100644 --- a/.gitlab-ci.yml +++ b/.gitlab-ci.yml @@ -6,29 +6,17 @@ variables: GIT_SSL_NO_VERIFY: "true" stages: - - test-perl - - test-php - - test-manpages + - lint + - codestyle + - manpages - transifex - tarballs -# Generate perlcritic rapport -create_perlcritic_rapport: - stage: test-perl - only: - - branches - - tags - before_script: - - apt-get update -qq - - apt-get install -y -qq libperl-critic-perl - script: - - cp contrib/bin/fusiondirectory-setup contrib/bin/fusiondirectory-setup.pl - - cp contrib/bin/fusiondirectory-insert-schema contrib/bin/fusiondirectory-insert-schema.pl - - perlcritic --quiet --verbose "%f~|~%s~|~%l~|~%c~|~%m~|~%e~|~%p~||~%n" contrib/bin +## Stage lint # Perl lint create_perl_lint_rapport: - stage: test-perl + stage: lint only: - branches - tags @@ -39,26 +27,45 @@ create_perl_lint_rapport: script: - perl -cW contrib/bin/fusiondirectory-setup contrib/bin/fusiondirectory-insert-schema -# generate man pages to test validity -test_manpages: - stage: test-manpages +# PHP lint (jessie) +create_php_lint_rapport_jessie: + image: php:5.6.33-cli-jessie + stage: lint + only: + - branches + - tags + script: + - find . -type f -name '*.php' -o -name '*.inc' -print0 | xargs -0 -n1 php -l + +# PHP lint (stretch) +create_php_lint_rapport_stretch: + image: php:cli-stretch + stage: lint + only: + - branches + - tags + script: + - find . -type f -name '*.php' -o -name '*.inc' -print0 | xargs -0 -n1 php -l + +## Stage codestyle + +# Generate perlcritic rapport +create_perlcritic_rapport: + stage: codestyle only: - branches - tags before_script: - apt-get update -qq - - apt-get install -y -qq perl man-db + - apt-get install -y -qq libperl-critic-perl script: - - pod2man -c "FusionDirectory Documentation" -r "FusionDirectory 1.3" contrib/bin/fusiondirectory-insert-schema contrib/man/fusiondirectory-insert-schema.1 - - pod2man -c "FusionDirectory Documentation" -r "FusionDirectory 1.3" contrib/bin/fusiondirectory-setup contrib/man/fusiondirectory-setup.1 - - pod2man -c "FusionDirectory Documentation" -r "FusionDirectory 1.3" contrib/man/fusiondirectory.conf.pod contrib/man/fusiondirectory.conf.5 - - lexgrog contrib/man/fusiondirectory-insert-schema.1 - - lexgrog contrib/man/fusiondirectory-setup.1 - - lexgrog contrib/man/fusiondirectory.conf.5 + - cp contrib/bin/fusiondirectory-setup contrib/bin/fusiondirectory-setup.pl + - cp contrib/bin/fusiondirectory-insert-schema contrib/bin/fusiondirectory-insert-schema.pl + - perlcritic --quiet --verbose "%f~|~%s~|~%l~|~%c~|~%m~|~%e~|~%p~||~%n" contrib/bin # PHP codesniffer create_php_code_sniffer_rapport: - stage: test-php + stage: codestyle only: - branches - tags @@ -69,17 +76,22 @@ create_php_code_sniffer_rapport: - git clone https://gitlab.fusiondirectory.org/fusiondirectory/dev-tools.git ../dev-tools - find . -type f -name '*.php' -o -name '*.inc' -exec phpcs --standard=../dev-tools/php-codesniffer-rules/FDStandard/ruleset.xml "{}" \; -# PHP lint -create_php_lint_rapport: - stage: test-php +# generate man pages to test validity +test_manpages: + stage: manpages only: - branches - tags before_script: - - apt-get update -qq - - apt-get install -y -qq php-cli + - apt-get update -qq + - apt-get install -y -qq perl man-db script: - - find . -type f -name '*.php' -o -name '*.inc' -print0 | xargs -0 -n1 php -l + - pod2man -c "FusionDirectory Documentation" -r "FusionDirectory 1.3" contrib/bin/fusiondirectory-insert-schema contrib/man/fusiondirectory-insert-schema.1 + - pod2man -c "FusionDirectory Documentation" -r "FusionDirectory 1.3" contrib/bin/fusiondirectory-setup contrib/man/fusiondirectory-setup.1 + - pod2man -c "FusionDirectory Documentation" -r "FusionDirectory 1.3" contrib/man/fusiondirectory.conf.pod contrib/man/fusiondirectory.conf.5 + - lexgrog contrib/man/fusiondirectory-insert-schema.1 + - lexgrog contrib/man/fusiondirectory-setup.1 + - lexgrog contrib/man/fusiondirectory.conf.5 # fusiondirectory-update-locale fusiondirectory-update-locale: