Start testing global nav in review app pipelines
Description
Occasionally, when we run the script to remove old redirect files, we run into a catch-22 situation:
- The
test_global_nav_links
test runs ingitlab-docs
, but only runs before the redirect files are deleted (that MR must be merged first). - THEN we delete the redirect files, in the second MR.
This can cause a broken master in gitlab-docs
, if the global nav is pointing to one of the redirect files that is being deleted. Example: !3230 (merged) (fix to broken master)
A solution could be to run test_global_nav_links
in review app pipelines, and then as part of the monthly process, we make sure to always run a review app in MRs deleting redirect files. If the global nav is still pointing to one of the redirect files that we're deleting, the review app pipeline will fail.
POC:
-
gitlab
MR: gitlab!102953 (closed) -
gitlab-docs
MR: !3242 (diffs) - Review app deploy job: https://gitlab.com/gitlab-org/gitlab/-/jobs/3273154994 (failed)
- Review app pipeline in
gitlab-docs
: https://gitlab.com/gitlab-org/gitlab-docs/-/pipelines/685321356 (failed)
The only issue currently is that the review deployment is allowed to fail, so the visibility of this failure isn't great. But as an MVC, we can just document that you need to verify the status of the review app before merging the redirect deletion MRs.