Migrate PgBouncer services to Ruby
What does this merge request do and why?
Migrate PgBouncer services to Ruby.
This MR removes PgBouncer from the Procfile and adds Ruby-based service classes with comprehensive test coverage. This allows for better management and configuration of PgBouncer services.
Relates to https://gitlab.com/gitlab-org/gitlab-development-kit/-/issues/904
How to set up and validate locally
- Ensure you have
consulandpgbouncerinstalled, a described in the GDK HowTo - Follow the instructions on howto set up replication
- Validate that the configuration work
- Visit
https://gdk.test:300(depending on your network config) and log in, indicating that the monolith works just fine. - Run
gdk statusand notice that thepgbouncerservices are named as expected. - Try out
gdk tail pgbouncer{1,2,2-1,2-2}to validate that the service are exact drop-in replacements for what was defined in the Procfile
Impacted categories
-
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.
Merge request checklist
-
This MR references an issue describing the change. -
This change is backward compatible. If not, include steps to communicate to users. -
Tests added for new functionality. If not, raise an issue to follow-up. -
Observability added/updated (logging, metrics, tracing). -
Documentation added/updated. -
Announcement added for notable changes. -
gdk doctortest added.
Edited by Manuel Schönlaub