image: node:latest stages: - Preparation - Build - Test Install Dependencies: stage: Preparation cache: key: $CI_COMMIT_REF_SLUG-$CI_PROJECT_DIR paths: - node_modules/ script: - npm ci only: changes: - package-lock.json Build: stage: Build cache: key: $CI_COMMIT_REF_SLUG-$CI_PROJECT_DIR paths: - node_modules/ policy: pull script: - npm run build Lint: stage: Test cache: key: $CI_COMMIT_REF_SLUG-$CI_PROJECT_DIR paths: - node_modules/ policy: pull script: - npm run lint # Test: # stage: Test # cache: # key: $CI_COMMIT_REF_SLUG-$CI_PROJECT_DIR # paths: # - node_modules/ # policy: pull # script: # - npm test