Make the default insights.yml configurable for self-managed instances
Everyone can contribute. Help move this issue forward while earning points, leveling up and collecting rewards.
Proposal
It is currently possible to define an insights.yml file at either the project or group level. There is also a default insights.yml that is hardcoded in ee/fixtures/insights/default.yml.
This makes it possible for customers on GitLab.com to define a default for their namespace. However, self-managed customers are not able to define a default for their instance.
Proposal:
- Make the default insights.yml a configurable instance setting
- Per @ahegyi "A feature that allows customizing it (add a pointer project where the new custom, global insights yaml is defined) would be a good addition."
Implementation steps:
- Add a new application setting that sets a global pointer project for insights.
- Override the
insights_config_projectmethod to optionally look up the globally set project. - Document the setting (how to set).
Depending on the application setting we use (JSON or column), ensure that we handle the case when the configured project was deleted in the meantime. The application should behave like there is no globally configured project and it shouldn't raise an error.