Просмотр исходного кода

Merge pull request #15944 from grafana/ci-metrics

Collecting metrics in ci process
Torkel Ödegaard 6 лет назад
Родитель
Сommit
90cacf717c
2 измененных файлов с 29 добавлено и 0 удалено
  1. 23 0
      scripts/circle-metrics.sh
  2. 6 0
      scripts/circle-test-frontend.sh

+ 23 - 0
scripts/circle-metrics.sh

@@ -0,0 +1,23 @@
+#!/bin/bash
+
+echo "Collecting code stats (typescript errors & more)"
+
+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 "Typescript errors: $ERROR_COUNT"
+echo "Directives: $DIRECTIVES"
+echo "Controllers: $CONTROLLERS"
+
+curl \
+   -d "{\"metrics\": {
+        \"ci.code.noImplicitAny\": $ERROR_COUNT,
+        \"ci.code.directives\": $DIRECTIVES,
+        \"ci.code.controllers\": $CONTROLLERS
+      }
+    }" \
+   -H "Content-Type: application/json" \
+   -u ci:$CIRCLE_STATS_PWD \
+   -X POST https://stats.grafana.org/metric-receiver
+

+ 6 - 0
scripts/circle-test-frontend.sh

@@ -12,3 +12,9 @@ function exit_if_fail {
 
 exit_if_fail npm run prettier:check
 exit_if_fail npm run test
+
+# On master also collect some and send some metrics
+branch="$(git rev-parse --abbrev-ref HEAD)"
+if [ "${branch}" == "master" ]; then
+  exit_if_fail ./scripts/circle-metrics.sh
+fi