Skip to content

Geo: Feature flag Self-service framework verification

What does this MR do?

For replicables in the Geo self-service framework, by default, this:

  • hides primary checksum progress bars
  • stops the primary from enqueuing checksum jobs for new records

The above is appropriate and should have been the case before, because verification is still under development.

Package file verification gets its own feature flag so we can release it first by itself. Package file verification can be enabled by running in Rails console:

  • Feature.enabled?(:geo_package_file_verification)

Verification of non-package files (MR diffs, Terraform states, Snippet repositories) can be enabled with:

  • Feature.enabled?(:geo_framework_verification)

I need this MR in order to continue development of verification, behind a feature flag.

Part of #13839 (closed)

Feature flag roll-out issues: #277400 (closed) and #271680 (closed)

Screenshots (strongly suggested)

Before

image

Geo status rake task (printed from the tests, which apparently sets up nonsense data, but you can see here that all SSF Replicators are displaying checksum counts):

$ bundle rake geo:status
Name: gdk
URL: http://localhost
-----------------------------------------------------
                        GitLab Version: 13.6.0-pre
                              Geo Role: Secondary
                         Health Status: Healthy
                          Repositories: 5/10 (50%)
                 Verified Repositories: 100/501/10 (5010%)
                                 Wikis: 1/4/10 (40%)
                        Verified Wikis: 99/499/10 (4990%)
                           LFS Objects: 12/123/256 (48%)
                           Attachments: 13/141/329 (42%)
                      CI job artifacts: 3/577/580 (99%)
                Container repositories: 3/200/400 (50%)
                   Design repositories: 3/200/400 (50%)
                   Merge Request Diffs: 0/0 (85%)
                         Package Files: 0/0 (83%)
              Terraform State Versions: 0/0 (54%)
                  Snippet Repositories: 0/0 (801%)
                  Repositories Checked: 1//10 (0%)
           Merge Request Diffs Checked: 0/0 (31%)
                 Package Files Checked: 0/0 (110%)
      Terraform State Versions Checked: 0/0 (0%)
          Snippet Repositories Checked: 0/0 (256%)
                         Sync Settings: Full
              Database replication lag: 0 seconds
       Last event ID seen from primary: 1 (less than a minute ago)
     Last event ID processed by cursor: N/A
                Last status report was: Never

After (with package file verification enabled)

image

Geo status rake task (see that out of 4 Replicator classes, only Package Files Checked: is shown because :geo_package_file_verification FF is enabled):

$ bundle rake geo:status
Name: gdk
URL: http://localhost
-----------------------------------------------------
                        GitLab Version: 13.6.0-pre
                              Geo Role: Secondary
                         Health Status: Healthy
                          Repositories: 5/10 (50%)
                 Verified Repositories: 100/501/10 (5010%)
                                 Wikis: 1/4/10 (40%)
                        Verified Wikis: 99/499/10 (4990%)
                           LFS Objects: 12/123/256 (48%)
                           Attachments: 13/141/329 (42%)
                      CI job artifacts: 3/577/580 (99%)
                Container repositories: 3/200/400 (50%)
                   Design repositories: 3/200/400 (50%)
                   Merge Request Diffs: 0/0 (40%)
                         Package Files: 0/0 (103%)
              Terraform State Versions: 0/0 (438%)
                  Snippet Repositories: 0/0 (57%)
                  Repositories Checked: 1//10 (0%)
                 Package Files Checked: 0/0 (41%)
                         Sync Settings: Full
              Database replication lag: 0 seconds
       Last event ID seen from primary: 1 (less than a minute ago)
     Last event ID processed by cursor: N/A
                Last status report was: Never

Does this MR meet the acceptance criteria?

Conformity

Availability and Testing

Edited by Michael Kozono

Merge request reports

Loading