This GitLab CI configuration is valid. Learn more
.gitlab-ci.yml 1.35 KiB
stages:
  - without-vendors
  - with-vendors
.without-vendors: &without-vendors
  tags: [ docker ]
  stage: without-vendors
  image: isdevtools.irstea.fr/poleis/php-analysis:7.1
  dependencies: []
phploc:
  <<: *without-vendors
  script: phploc src tests
lint:
  <<: *without-vendors
  script:
    - parallel-lint -j $(nproc) src tests
    - twig-lint lint src
    - yaml-lint src
php-cs-fixer:
  <<: *without-vendors
  script: php-cs-fixer fix --dry-run --verbose
phpcpd:
  <<: *without-vendors
  script: phpcpd --fuzzy src tests
install-vendors:
  <<: *without-vendors
  image: isdevtools.irstea.fr/poleis/php-apache2:stretch-7.1
  variables:
    S6_TARGET: none
    COMPOSER_NO_INTERACTION: "1"
  script:
    - phpenmod iconv
    - composer validate
    - composer install -n --prefer-dist --no-suggest --no-progress --no-scripts --ignore-platform-reqs
  cache:
    key: "$CI_COMMIT_REF_NAME-composer-cache"
    paths:
      - /composer/cache
  artifacts:
    name: vendors
    paths:
      - vendor
    expire_in: "1 day"
.with-vendors: &with-vendors
  <<: *without-vendors
  stage: with-vendors
  dependencies: [ install-vendors ]
phpunit:
  <<: *with-vendors
  script: vendor/bin/phpunit
composer-require-checker:
  <<: *with-vendors
  script: composer-require-checker
phpmd:
  <<: *with-vendors
  script: phpmd src,tests text ./phpmd-ruleset.xml --suffixes=php