image: php:7.4-alpine cache: paths: - frontend/node_modules - backend/vendor before_script: - apk add --no-cache nodejs npm php composer php-mbstring php-iconv php-json php-openssl php-pdo php-xml php-tokenizer php-ctype - ( cd backend && composer install ) - ( cd frontend && npm install ) stages: - lint - test BackendLint: stage: lint script: - cd backend && ./vendor/bin/grumphp run allow_failure: true FrontendLint: stage: lint script: - cd frontend && npm run lint allow_failure: true FrontendTest: stage: test script: - cd frontend && npm test