diff --git a/scripts/lint.sh b/scripts/lint.sh index 837f7cc..44ad343 100755 --- a/scripts/lint.sh +++ b/scripts/lint.sh @@ -4,10 +4,11 @@ set -euo pipefail REPO_DIR="$(cd "$(dirname "${BASH_SOURCE[0]}")/.." && pwd)" cd "${REPO_DIR}" export PATH="$(go env GOPATH)/bin:${PATH}" +STATICCHECK_VERSION="${ANANKE_STATICCHECK_VERSION:-2025.1.1}" -if ! command -v staticcheck >/dev/null 2>&1; then - echo "[lint] installing staticcheck" - go install honnef.co/go/tools/cmd/staticcheck@latest +if ! command -v staticcheck >/dev/null 2>&1 || ! staticcheck -version 2>/dev/null | grep -q "${STATICCHECK_VERSION}"; then + echo "[lint] installing staticcheck ${STATICCHECK_VERSION}" + go install "honnef.co/go/tools/cmd/staticcheck@${STATICCHECK_VERSION}" fi echo "[lint] go vet" diff --git a/scripts/publish_quality_metrics_test.py b/scripts/publish_quality_metrics_test.py index 2f2f88e..27e5e2b 100755 --- a/scripts/publish_quality_metrics_test.py +++ b/scripts/publish_quality_metrics_test.py @@ -91,6 +91,9 @@ class PublishQualityMetricsTest(unittest.TestCase): self.assertIn('platform_quality_gate_runs_total{suite="ananke",status="ok"} 7', body) self.assertIn('platform_quality_gate_runs_total{suite="ananke",status="failed"} 2', body) self.assertIn('ananke_quality_gate_publish_info{suite="ananke",trigger="host"} 1', body) + self.assertIn('ananke_quality_gate_coverage_percent{suite="ananke"}', body) + self.assertIn('platform_quality_gate_workspace_line_coverage_percent{suite="ananke"}', body) + self.assertIn('platform_quality_gate_source_lines_over_500_total{suite="ananke"}', body) def test_publish_falls_back_to_local_counters_when_metrics_read_fails(self) -> None: _GatewayHandler.fail_metrics_read = True @@ -115,6 +118,8 @@ class PublishQualityMetricsTest(unittest.TestCase): _, body = _GatewayHandler.posts[0] self.assertIn('platform_quality_gate_runs_total{suite="ananke",status="ok"} 11', body) self.assertIn('platform_quality_gate_runs_total{suite="ananke",status="failed"} 3', body) + self.assertIn('platform_quality_gate_workspace_line_coverage_percent{suite="ananke"}', body) + self.assertIn('platform_quality_gate_source_lines_over_500_total{suite="ananke"}', body) if __name__ == "__main__":