Expand data seeding configuration for multi-version upgrades testing
Summary
Expand data seeding configuration for multi-version upgrades testing to catch migration errors.
Depending on gitlab-org/gitlab!137582 (merged) expand bulk_data.rb
and verify that migration errors can be caught.
Details
-
Validate that data selected approach work - create DB dump for known problematic upgrade path and verify that there is a migration error -
Expand data shape to be used for Seeding to catch migrations - Explore if there is a way to seed environment with all possible fixtures - gitlab-org/gitlab!144631 (merged)
- Revisit
random_traits_for
for stability - context: gitlab-org/gitlab!137582 (comment 1740918046) - Enforce fixtures for new tables #1919 (comment 1627260665)
- Discuss with Database team which tables are only used on GitLab.com or self-managed, identify strategies to seed such data as well
- Consider using
db/fixtures/development
-MASS_INSERT=1 rails db:seed_fu
-#2354 (comment 1801955021)
-
Enable engineers to more easily run this upgrade test locally, without the use of CI. -
Use Docker Compose(?)- Developers can run upgrade testing using https://gitlab.com/gitlab-org/quality/pg-dump-generator#migration-upgrade-testing
-
-
Using postgres.ai
snapshot for multi-version migration testing - decision: not proceeding with this option
Context
This work part of the Migration testing for multi-version upgrades wi... (&19 - closed), with the goal of adding CI job which would emulate multi-version upgrades in GitLab to catch migration errors at lower level without building an environment.
Edited by Nailia Iskhakova