mirror of
https://gitlab.com/soapbox-pub/mkstack.git
synced 2025-08-26 20:49:22 +00:00
47 lines
988 B
YAML
47 lines
988 B
YAML
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
|