image: node:22 default: interruptible: true timeout: 1 minute stages: - test - deploy test: stage: test script: - | # Run npm test and capture output and exit code set +e test_output=$(npm run test 2>&1) test_exit_code=$? set -e echo "$test_output" # Check if the output contains exactly 6 linting problems if echo "$test_output" | grep -q "✖ 6 problems (6 errors, 0 warnings)"; then echo "✅ Expected 6 linting errors found - template is correctly configured" exit 0 elif [ $test_exit_code -eq 0 ]; then echo "✅ Tests passed with no linting errors" exit 0 else echo "❌ Unexpected test failure or wrong number of linting errors" exit 1 fi pages: stage: deploy script: - npm run build - rm -rf public - mv dist public artifacts: paths: - public only: variables: - $CI_DEFAULT_BRANCH == $CI_COMMIT_REF_NAME