stages: - validate - test - deploy before_script: - apk add zip graphicsmagick - php -r "copy('https://getcomposer.org/installer', 'composer-setup.php');" - php composer-setup.php --filename composer --install-dir /bin - php -r "unlink('composer-setup.php');" validate:composer: image: php:8.0-alpine stage: validate script: - composer validate --no-check-publish --strict validate:php:8.1: image: php:8.1-alpine stage: validate script: - find *.php Classes Configuration -name '*.php' -print0 | xargs -0 -n 1 -P 4 php -l validate:php:8.0: image: php:8.0-alpine stage: validate script: - find *.php Classes Configuration -name '*.php' -print0 | xargs -0 -n 1 -P 4 php -l validate:php:7.4: image: php:7.4-alpine stage: validate script: - find *.php Classes Configuration -name '*.php' -print0 | xargs -0 -n 1 -P 4 php -l validate:php:7.3: image: php:7.3-alpine stage: validate script: - find *.php Classes Configuration -name '*.php' -print0 | xargs -0 -n 1 -P 4 php -l validate:php:7.2: image: php:7.2-alpine stage: validate script: - find *.php Classes Configuration -name '*.php' -print0 | xargs -0 -n 1 -P 4 php -l validate:xml: image: php:7.3-alpine stage: validate script: - apk add libxml2-utils wget - composer install --prefer-dist --no-progress - wget https://docs.oasis-open.org/xliff/v1.2/os/xliff-core-1.2-strict.xsd --output-document=.Build/xliff-core-1.2-strict.xsd - xmllint --schema .Build/xliff-core-1.2-strict.xsd --noout $(find Resources -name '*.xlf') validate:cgl: image: php:7.3-alpine stage: validate script: - composer install --prefer-dist --no-progress - ./vendor/bin/ecs check --no-progress-bar --clear-cache validate:phpstan:8.1: image: php:8.1-alpine stage: validate script: - composer install --prefer-dist --no-progress - php -d memory_limit=-1 ./vendor/bin/phpstan --no-progress validate:phpstan:8.0: image: php:8.0-alpine stage: validate script: - composer install --prefer-dist --no-progress - php -d memory_limit=-1 ./vendor/bin/phpstan --no-progress validate:phpstan:7.4:11.5: image: php:7.4-alpine stage: validate script: - composer require --no-ansi --no-interaction --no-progress typo3/cms-core:"^11.5" - php -d memory_limit=-1 ./vendor/bin/phpstan --no-progress validate:phpstan:7.4:10.4: image: php:7.4-alpine stage: validate script: - composer require --no-ansi --no-interaction --no-progress typo3/cms-core:"^10.4" - php -d memory_limit=-1 ./vendor/bin/phpstan --no-progress validate:phpstan:7.3: image: php:7.3-alpine stage: validate script: - composer install --prefer-dist --no-progress - php -d memory_limit=-1 ./vendor/bin/phpstan --no-progress validate:phpstan:7.2: image: php:7.2-alpine stage: validate script: - composer install --prefer-dist --no-progress - php -d memory_limit=-1 ./vendor/bin/phpstan --no-progress test:phpunit:8.1: image: php:8.1-alpine stage: test script: - composer install --prefer-dist --no-progress - php -d memory_limit=-1 ./vendor/bin/phpunit --testdox test:phpunit:8.0: image: php:8.0-alpine stage: test script: - composer install --prefer-dist --no-progress - php -d memory_limit=-1 ./vendor/bin/phpunit --testdox test:phpunit:7.4:11.5: image: php:7.4-alpine stage: test script: - composer require --no-ansi --no-interaction --no-progress typo3/cms-core:"^11.5" - php -d memory_limit=-1 ./vendor/bin/phpunit --testdox test:phpunit:7.4:10.4: image: php:7.4-alpine stage: test script: - composer require --no-ansi --no-interaction --no-progress typo3/cms-core:"^10.4" - php -d memory_limit=-1 ./vendor/bin/phpunit --testdox test:phpunit:7.3: image: php:7.3-alpine stage: test script: - composer install --prefer-dist --no-progress - php -d memory_limit=-1 ./vendor/bin/phpunit --testdox test:phpunit:7.2: image: php:7.2-alpine stage: test script: - composer install --prefer-dist --no-progress - php -d memory_limit=-1 ./vendor/bin/phpunit --testdox deploy:composer:package:tag: before_script: [] image: alpine:3.15.5 stage: deploy script: - apk add curl - 'curl --header "Job-Token: $CI_JOB_TOKEN" --data tag=${CI_COMMIT_TAG} "${CI_API_V4_URL}/projects/$CI_PROJECT_ID/packages/composer"' only: - tags deploy:composer:package:branch: before_script: [] image: alpine:3.15.5 stage: deploy script: - apk add curl - 'curl --header "Job-Token: $CI_JOB_TOKEN" --data branch=${CI_COMMIT_BRANCH} "${CI_API_V4_URL}/projects/$CI_PROJECT_ID/packages/composer"' only: - branches