Chore: breaks build if certain FrontEnd limits are exceeded (#16301)

Build: breaks build if certain FrontEnd limits are exceeded
pull/16312/head
Hugo Häggmark 6 years ago committed by GitHub
parent 74ae756d02
commit 8368576249
No known key found for this signature in database
GPG Key ID: 4AEE18F83AFDEB23
  1. 32
      scripts/ci-frontend-metrics.sh
  2. 3
      scripts/circle-test-frontend.sh

@ -2,18 +2,36 @@
echo -e "Collecting code stats (typescript errors & more)"
ERROR_COUNT_LIMIT=6927
DIRECTIVES_LIMIT=173
CONTROLLERS_LIMIT=136
ERROR_COUNT="$(./node_modules/.bin/tsc --project tsconfig.json --noEmit --noImplicitAny true | grep -oP 'Found \K(\d+)')"
DIRECTIVES="$(grep -r -o directive public/app/**/* | wc -l)"
CONTROLLERS="$(grep -r -oP 'class .*Ctrl' public/app/**/* | wc -l)"
echo -e "Typescript errors: $ERROR_COUNT"
echo -e "Directives: $DIRECTIVES"
echo -e "Controllers: $CONTROLLERS"
if [ $ERROR_COUNT -gt $ERROR_COUNT_LIMIT ]; then
echo -e "Typescript errors $ERROR_COUNT exceeded $ERROR_COUNT_LIMIT so failing build"
exit -1
fi
./scripts/ci-metrics-publisher.sh \
grafana.ci-code.noImplicitAny=$ERROR_COUNT \
grafana.ci-code.directives=$DIRECTIVES \
grafana.ci-code.controllers=$CONTROLLERS \
if [ $DIRECTIVES -gt $DIRECTIVES_LIMIT ]; then
echo -e "Directive count $ERROR_COUNT exceeded $DIRECTIVES_LIMIT so failing build"
exit -1
fi
if [ $CONTROLLERS -gt $CONTROLLERS_LIMIT ]; then
echo -e "Controllers count $CONTROLLERS exceeded $CONTROLLERS_LIMIT so failing build"
exit -1
fi
echo -e "Typescript errors: $ERROR_COUNT"
echo -e "Directives: $DIRECTIVES"
echo -e "Controllers: $CONTROLLERS"
if [ "${CIRCLE_BRANCH}" == "master" ]; then
./scripts/ci-metrics-publisher.sh \
grafana.ci-code.noImplicitAny=$ERROR_COUNT \
grafana.ci-code.directives=$DIRECTIVES \
grafana.ci-code.controllers=$CONTROLLERS
fi

@ -19,8 +19,9 @@ exit_if_fail npm run test
end=$(date +%s)
seconds=$((end - start))
exit_if_fail ./scripts/ci-frontend-metrics.sh
if [ "${CIRCLE_BRANCH}" == "master" ]; then
exit_if_fail ./scripts/ci-frontend-metrics.sh
exit_if_fail ./scripts/ci-metrics-publisher.sh grafana.ci-performance.frontend-tests=$seconds
fi

Loading…
Cancel
Save