Define GDK Component
Overview
Need a formal definition of GitLab components - to troubleshoot installation problems, and to understand how to split huge and slow 10Gb Docker images that take hours to build and test.
- Component name
- Component files - isolated to specific dir, list of files is gathered and checked automatically to avoid drift to system level
- Component dependencies and links to related issues
When components and their relationships are defined, it will be possible to swap Makefiles with another build system (#166), which can track changes in a smart way, and rebuild only necessary parts, fetching them from caches if possible.
When components are defined in YAML, it will be possible to generate diagrams and track component coupling.
Impacted categories
The following categories relate to this issue:
-
gdk-reliability - e.g. When a GDK action fails to complete. -
gdk-usability - e.g. Improvements or suggestions around how the GDK functions. -
gdk-performance - e.g. When a GDK action is slow or times out.
Steps to replicate (optional)
Proposal (optional)
Environment (optional)
- Operating system name:
<!-- output of `uname -a` command --> - Architecture:
<!-- output of `arch` command --> - The contents of your
gdk.yml(if any) - Ruby version:
<!-- output of `ruby --version` command --> - GDK version:
<!-- output of `git rev-parse --short HEAD` command -->
Edited by Anatoli Babenia