2.3 KiB
| stage | group | info |
|---|---|---|
| Data Stores | Database | Any user with at least the Maintainer role can merge updates to this content. For details, see https://docs.gitlab.com/ee/development/development_processes.html#development-guidelines-review. |
db:migrate:multi-version-upgrade job
- Introduced in GitLab 16.11.
This job runs on the test stage of a merge request pipeline. It validates that migrations pass
for multi-version upgrade from the latest required upgrade stop
to the author's working branch. It achieves it by running gitlab:db:configure against PostgreSQL
dump created from the latest known GitLab version stop with test data.
The database dump is generated and maintained with PostgreSQL Dump Generator.
To seed database with data, the tool uses Data Seeder with bulk_data.rb
configuration to seed all factories and uses db:seed_fu to seed all db/fixtures.
Latest dump is generated automatically in scheduled pipelines for the latest patch
release of the required stop.
Troubleshooting
Database reconfigure failures
This failure usually happens due to an actual migration error in your working branch. To reproduce the failure locally follow Migration upgrade testing guidance. It outlines the steps how to import the latest PostgreSQL dump in your local GitLab Development Kit or GitLab Docker instance.
For a real-life example, refer to this failed job.
Database import failures
If job is failing on setup stage prior to gitlab:db:configure
due to external dependencies, the job can be disabled by setting
DISABLE_DB_MULTI_VERSION_UPGRADE=true in GitLab project CI variables
to unblock the broken master.
Reach out to Self-Managed Platform team to expedite debugging.