Create Basic Dependency Health Dashboard (MVC)

Issue Description: Create Basic Dependency Health Dashboard (MVC)

Summary

Create a minimal viable dashboard to track the health of GitLab's 6 most critical dependencies, providing basic visibility into version status.

Proposed Solution

Implement dashboards/general/dependency-health.dashboard.jsonnet tracking these major dependencies:

Backend (Ruby):

  • Ruby (~3.x)
  • Rails (~7.2.3)
  • PostgreSQL (~1.6.1 via pg gem)

Frontend (JavaScript):

  • Vue.js (2.7.16)
  • Vue Apollo (^3.0.7)
  • Node.js (>=12.22.1)

MVC Approach

Data Source

Any one of the following:

  • Manual updates via static configuration or simple JSON file
  • File-based metrics that can be updated through automation later
  • Prometheus static metrics for basic version tracking

Dashboard Features

  • Current version vs. latest stable version vs. oldest compliant version (based on policy)
  • Days since last update
  • Link to policy for updates

Implementation

  • Single .jsonnet file following project conventions
  • Basic panels showing version lag and update recommendations
  • Manual data entry initially (can be automated in future iterations)

Acceptance Criteria

  • Dashboard shows 6 major dependency versions
    • Red = out of policy
    • Amber = approaching end of policy window
    • Green = Within policy
  • Follows project structure (dashboards/general/)
  • Uses existing Grafana infrastructure
  • Provides actionable insights for immediate attention items

Future Enhancements

  • Automated data collection from package managers
  • Alerting for critical updates
Edited by John Hope