Validate the NOT NULL constraint on project_id in push_rules for self-managed

Everyone can contribute. Help move this issue forward while earning points, leveling up and collecting rewards.

Summary

Validate the NOT NULL constraint (check_1d23f0a102) on push_rules.project_id for self-managed instances. The GitLab.com validation was done in #607950 (closed) (Task 7). This is the self-managed equivalent, gated to run only on self-managed (return if Gitlab.com_except_jh?), modeled on ValidateRedirectRoutesShardingKeyOnSelfManaged (db/post_migrate/20251210131249).

Parent tracking issue: #499156 (deferred Task 3).

Background

  • Constraint added NOT VALID: #605242 (closed) (MR !245553 (merged)).
  • .com validation: #607950 (closed) (Task 7).
  • Requires NULL project_id rows removed on self-managed first — depends on the self-managed BBM finalize #607954 (deferred Task 2).
  • Must run after required stop 19.5.
Edited by 🤖 GitLab Bot 🤖