🔭 Explore: GitLab Detective for Helm-based deployments
Let's use this issue to track introducing support for running
🗺️ Why
In the README for this project, we state:
GitLab Detective is a tool designed to help diagnose and troubleshoot GitLab installations by running a series of automated checks.
Being able to check Helm-based GitLab deployments is an important part of addressing this design goal. Helm-based deployments were intentionally out of scope until now. See #76 for notes on scope.
In customer demos #96, support for Helm-based deployments has been the most frequently and enthusiastically requested feature.
❓ Open Questions
-
Big picture: how would it work (what would the execution flow be)? -
How would the existing checks fare if we needed to adjust them all for use in Helm-based deployments? See types of checks. - The checks that issue SQL queries are the least likely to require significant changes. Sorting through exactly how we'll handle connecting to the database in the current implementation of GitLab Detective is an open question.
-
Should we discourage the types of checks that parse through the logs? If so: how strongly? -
How do we account for "operational concerns" especially when they differ dramatically by deployment type? - Examples include free disk space, CPU or memory saturation.
-
What kinds of customizations will we support and what kinds will be out of scope?
✨ Things to Consider
As a part of introducing support for Helm-based deployments, we will almost certainly wind up adjusting each check. We should take the opportunity to standardize regex (#109).
Introducing support for Helm-based deployments will force us to tackle aspects of scope and GitLab Detective. See Open Questions for a list of the things we know we'll need to tackle and add things as they come up.
Requirements
I expect these to be refined a bit over time since we are exploring this right now.