Skip to content
Snippets Groups Projects

Geo - Decouple verification from replication feature flags on primary

All threads resolved!

What does this MR do and why?

Adds a verification feature flag for each replicator class, decoupling the verification from replication feature flags. This allows the checksumming feature to be enabled on the Geo primary sites with replication disabled.

MR acceptance checklist

Please evaluate this MR against the MR acceptance checklist. It helps you analyze changes to reduce risks in quality, performance, reliability, security, and maintainability.

Related issues

Related to #469426 (closed)

Edited by Douglas Barbosa Alexandre

Merge request reports

Loading
Loading

Activity

Filter activity
  • Approvals
  • Assignees & reviewers
  • Comments (from bots)
  • Comments (from users)
  • Commits & branches
  • Edits
  • Labels
  • Lock status
  • Mentions
  • Merge request status
  • Tracking
  • 6 Warnings
    :warning: This merge request is quite big (1018 lines changed), please consider splitting it into multiple merge requests.
    :warning: f864a4d7: The commit subject must contain at least 3 words. For more information, take a look at our Commit message guidelines.
    :warning: 4daff8e7: Commits that change 30 or more lines across at least 3 files should describe these changes in the commit body. For more information, take a look at our Commit message guidelines.
    :warning: e5dd7b78: Commits that change 30 or more lines across at least 3 files should describe these changes in the commit body. For more information, take a look at our Commit message guidelines.
    :warning: d6349669: Commits that change 30 or more lines across at least 3 files should describe these changes in the commit body. For more information, take a look at our Commit message guidelines.
    :warning:

    featureaddition and featureenhancement merge requests normally have a documentation change. Consider adding a documentation update or confirming the documentation plan with the Technical Writer counterpart.

    For more information, see:

    17 Messages
    :book: ee/config/feature_flags/ops/geo_ci_secure_file_force_primary_checksumming.yml: Consider filling feature_issue_url:
    :book: ee/config/feature_flags/ops/geo_container_repository_force_primary_checksumming.yml: Consider filling feature_issue_url:
    :book: ee/config/feature_flags/ops/geo_dependency_proxy_blob_force_primary_checksumming.yml: Consider filling feature_issue_url:
    :book: ee/config/feature_flags/ops/geo_dependency_proxy_manifest_force_primary_checksumming.yml: Consider filling feature_issue_url:
    :book: ee/config/feature_flags/ops/geo_design_management_repository_force_primary_checksumming.yml: Consider filling feature_issue_url:
    :book: ee/config/feature_flags/ops/geo_group_wiki_repository_force_primary_checksumming.yml: Consider filling feature_issue_url:
    :book: ee/config/feature_flags/ops/geo_job_artifact_force_primary_checksumming.yml: Consider filling feature_issue_url:
    :book: ee/config/feature_flags/ops/geo_lfs_object_force_primary_checksumming.yml: Consider filling feature_issue_url:
    :book: ee/config/feature_flags/ops/geo_merge_request_diff_force_primary_checksumming.yml: Consider filling feature_issue_url:
    :book: ee/config/feature_flags/ops/geo_package_file_force_primary_checksumming.yml: Consider filling feature_issue_url:
    :book: ee/config/feature_flags/ops/geo_pages_deployment_force_primary_checksumming.yml: Consider filling feature_issue_url:
    :book: ee/config/feature_flags/ops/geo_pipeline_artifact_force_primary_checksumming.yml: Consider filling feature_issue_url:
    :book: ee/config/feature_flags/ops/geo_project_repository_force_primary_checksumming.yml: Consider filling feature_issue_url:
    :book: ee/config/feature_flags/ops/geo_project_wiki_repository_force_primary_checksumming.yml: Consider filling feature_issue_url:
    :book: ee/config/feature_flags/ops/geo_snippet_repository_force_primary_checksumming.yml: Consider filling feature_issue_url:
    :book: ee/config/feature_flags/ops/geo_terraform_state_version_force_primary_checksumming.yml: Consider filling feature_issue_url:
    :book: ee/config/feature_flags/ops/geo_upload_force_primary_checksumming.yml: Consider filling feature_issue_url:

    Reviewer roulette

    Category Reviewer Maintainer
    backend @arpitgogia profile link current availability (UTC+5.5, 5.5 hours ahead of author) @bala.kumar profile link current availability (UTC+5.5, 5.5 hours ahead of author)
    ~"Tooling" Reviewer review is optional for ~"Tooling" @jennli profile link current availability (UTC-7, 7 hours behind author)

    Please refer to documentation page for guidance on how you can benefit from the Reviewer Roulette, or use the GitLab Review Workload Dashboard to find other available reviewers.

    If needed, you can retry the :repeat: danger-review job that generated this comment.

    Generated by :no_entry_sign: Danger

  • added 1 commit

    • f3fc1aec - Add a verification feature flag for each replicator class

    Compare with previous version

  • added 1 commit

    • d8275161 - Verify replicable after create/update

    Compare with previous version

  • added 165 commits

    Compare with previous version

  • Douglas Barbosa Alexandre marked this merge request as ready

    marked this merge request as ready

  • Douglas Barbosa Alexandre changed title from Draft: Add a verification feature flag for each replicator class to Geo - Decouple the verification from replication feature flags in the SSF

    changed title from Draft: Add a verification feature flag for each replicator class to Geo - Decouple the verification from replication feature flags in the SSF

  • added 2 commits

    • bb4a4f99 - Add a verification feature flag for each replicator class
    • 58795a8f - Verify replicable after create/update

    Compare with previous version

  • added 2 commits

    • c24386ae - Add a verification feature flag for each replicator class
    • 20d32de3 - Verify replicable after create/update

    Compare with previous version

  • @mkozono These are the changes we talked about during our call yesterday. Do you mind taking a look?

  • requested review from @mkozono

  • Michael Kozono
  • added 234 commits

    Compare with previous version

  • added 1 commit

    • 2548dddf - Rename enabled? to replication_enabled?

    Compare with previous version

  • added 1 commit

    • 6845730f - Remove Geo::BaseRegistry.replication_enabled? method

    Compare with previous version

  • added 2 commits

    • 2d7da42c - Rename enabled? to replication_enabled?
    • 8124a860 - Remove Geo::BaseRegistry.replication_enabled? method

    Compare with previous version

  • added 1 commit

    • b591798a - Keep verification tied to replication FF on secondaries

    Compare with previous version

  • added 4 commits

    • 2e48afed - Verify replicable after create/update
    • 9905bbbe - Rename enabled? to replication_enabled?
    • 02e19963 - Remove Geo::BaseRegistry.replication_enabled? method
    • 66963c64 - Keep verification tied to replication FF on secondaries

    Compare with previous version

  • added 4 commits

    • 2579b509 - Verify replicable after create/update
    • 1ba7777a - Rename enabled? to replication_enabled?
    • 37b15b68 - Remove Geo::BaseRegistry.replication_enabled? method
    • e5b1bb3f - Keep verification tied to replication FF on secondaries

    Compare with previous version

  • added 5 commits

    • 704b6f45 - Verify replicable after create/update
    • 28180082 - Rename enabled? to replication_enabled?
    • 54d18c42 - Remove Geo::BaseRegistry.replication_enabled? method
    • 330c7e42 - Keep verification tied to replication FF on secondaries
    • 4f6836c9 - Remove unused method

    Compare with previous version

  • Douglas Barbosa Alexandre changed title from Geo - Decouple the verification from replication feature flags in the SSF to Geo - Allow checksumming to be enabled on primary sites with replication disabled

    changed title from Geo - Decouple the verification from replication feature flags in the SSF to Geo - Allow checksumming to be enabled on primary sites with replication disabled

  • Douglas Barbosa Alexandre changed title from Geo - Allow checksumming to be enabled on primary sites with replication disabled to Geo - Decouple verification from replication feature flags on primary

    changed title from Geo - Allow checksumming to be enabled on primary sites with replication disabled to Geo - Decouple verification from replication feature flags on primary

  • Douglas Barbosa Alexandre changed the description

    changed the description

  • added 1 commit

    • eadc4ed5 - fixup! Rename enabled? to replication_enabled?

    Compare with previous version

  • Douglas Barbosa Alexandre marked this merge request as draft from eadc4ed5

    marked this merge request as draft from eadc4ed5

  • Douglas Barbosa Alexandre marked this merge request as ready

    marked this merge request as ready

  • added 297 commits

    • eadc4ed5...7e58dd70 - 290 commits from branch master
    • e2e9ea14 - Add a verification feature flag for each replicator class
    • 86824a69 - Verify replicable after create/update
    • 60b48d96 - Rename enabled? to replication_enabled?
    • 7b34f43a - Remove Geo::BaseRegistry.replication_enabled? method
    • 2a09f84b - Keep verification tied to replication FF on secondaries
    • 7d5cd621 - Remove unused method
    • 64bd4d1c - fixup! Rename enabled? to replication_enabled?

    Compare with previous version

  • Douglas Barbosa Alexandre marked this merge request as draft from 64bd4d1c

    marked this merge request as draft from 64bd4d1c

  • Douglas Barbosa Alexandre marked this merge request as ready

    marked this merge request as ready

  • added 4 commits

    • 2bc76cb5 - Rename enabled? to replication_enabled?
    • 0d46e07c - Remove Geo::BaseRegistry.replication_enabled? method
    • c555b540 - Keep verification tied to replication FF on secondaries
    • 80835c09 - Remove unused method

    Compare with previous version

  • added 2 commits

    • c51cdaff - Keep verification tied to replication FF on secondaries
    • 9ef4a0fe - Remove unused method

    Compare with previous version

  • E2E Test Result Summary

    allure-report-publisher generated test report!

    e2e-test-on-gdk: :white_check_mark: test report for 115459d8

    expand test summary
    +------------------------------------------------------------------+
    |                          suites summary                          |
    +-------------+--------+--------+---------+-------+-------+--------+
    |             | passed | failed | skipped | flaky | total | result |
    +-------------+--------+--------+---------+-------+-------+--------+
    | Create      | 128    | 0      | 12      | 0     | 140   | ✅     |
    | Verify      | 44     | 0      | 3       | 0     | 47    | ✅     |
    | Plan        | 67     | 0      | 2       | 0     | 69    | ✅     |
    | Data Stores | 27     | 0      | 4       | 0     | 31    | ✅     |
    | Package     | 19     | 0      | 12      | 0     | 31    | ✅     |
    | Govern      | 65     | 0      | 0       | 0     | 65    | ✅     |
    | Release     | 5      | 0      | 0       | 0     | 5     | ✅     |
    | Fulfillment | 1      | 0      | 0       | 0     | 1     | ✅     |
    | Monitor     | 8      | 0      | 0       | 0     | 8     | ✅     |
    | Analytics   | 2      | 0      | 0       | 0     | 2     | ✅     |
    | Manage      | 0      | 0      | 1       | 0     | 1     | ➖     |
    +-------------+--------+--------+---------+-------+-------+--------+
    | Total       | 366    | 0      | 34      | 0     | 400   | ✅     |
    +-------------+--------+--------+---------+-------+-------+--------+
    **e2e-package-and-test**: :white_check_mark: test report for 115459d8
    expand test summary
    +-------------------------------------------------------------+
    |                       suites summary                        |
    +--------+--------+--------+---------+-------+-------+--------+
    |        | passed | failed | skipped | flaky | total | result |
    +--------+--------+--------+---------+-------+-------+--------+
    | Plan   | 8      | 0      | 0       | 0     | 8     | ✅     |
    | Create | 8      | 0      | 0       | 0     | 8     | ✅     |
    | Govern | 4      | 0      | 0       | 0     | 4     | ✅     |
    +--------+--------+--------+---------+-------+-------+--------+
    | Total  | 20     | 0      | 0       | 0     | 20    | ✅     |
    +--------+--------+--------+---------+-------+-------+--------+
    **e2e-test-on-cng**: :x: test report for 9dcbe7b3
    expand test summary
    +------------------------------------------------------------------+
    |                          suites summary                          |
    +-------------+--------+--------+---------+-------+-------+--------+
    |             | passed | failed | skipped | flaky | total | result |
    +-------------+--------+--------+---------+-------+-------+--------+
    | Govern      | 78     | 1      | 9       | 1     | 88    | ❌     |
    | Plan        | 83     | 0      | 11      | 0     | 94    | ✅     |
    | Create      | 138    | 0      | 16      | 0     | 154   | ✅     |
    | Verify      | 52     | 0      | 14      | 0     | 66    | ✅     |
    | Release     | 5      | 0      | 1       | 0     | 6     | ✅     |
    | Package     | 23     | 0      | 15      | 0     | 38    | ✅     |
    | Configure   | 0      | 0      | 3       | 0     | 3     | ➖     |
    | Fulfillment | 2      | 0      | 8       | 0     | 10    | ✅     |
    | Data Stores | 30     | 0      | 13      | 0     | 43    | ✅     |
    | Manage      | 2      | 0      | 8       | 0     | 10    | ✅     |
    | Monitor     | 8      | 0      | 12      | 0     | 20    | ✅     |
    | Analytics   | 2      | 0      | 0       | 0     | 2     | ✅     |
    | Secure      | 3      | 0      | 2       | 0     | 5     | ✅     |
    | Ai-powered  | 0      | 0      | 1       | 0     | 1     | ➖     |
    | ModelOps    | 0      | 0      | 1       | 0     | 1     | ➖     |
    | Growth      | 0      | 0      | 2       | 0     | 2     | ➖     |
    +-------------+--------+--------+---------+-------+-------+--------+
    | Total       | 426    | 1      | 116     | 1     | 543   | ❌     |
    +-------------+--------+--------+---------+-------+-------+--------+
  • added 232 commits

    • 9ef4a0fe...ae01b921 - 226 commits from branch master
    • db7f61e8 - Add a verification feature flag for each replicator class
    • 4ce574f7 - Verify replicable after create/update
    • f51f204e - Rename enabled? to replication_enabled?
    • 55905ad9 - Remove Geo::BaseRegistry.replication_enabled? method
    • 2df93213 - Keep verification tied to replication FF on secondaries
    • f8057e40 - Remove unused method

    Compare with previous version

  • added 1 commit

    • 1257e6a5 - fixup! Keep verification tied to replication FF on secondaries

    Compare with previous version

  • Douglas Barbosa Alexandre marked this merge request as draft from 1257e6a5

    marked this merge request as draft from 1257e6a5

  • added 4 commits

    • 71e47506 - Rename enabled? to replication_enabled?
    • ba8fde9a - Remove Geo::BaseRegistry.replication_enabled? method
    • 0f53923e - Keep verification tied to replication FF on secondaries
    • 9262db2f - Remove unused method

    Compare with previous version

  • added 4 commits

    • 95611c12 - Rename enabled? to replication_enabled?
    • af18cd82 - Remove Geo::BaseRegistry.replication_enabled? method
    • 58088f14 - Keep verification tied to replication FF on secondaries
    • c8da7730 - Remove unused method

    Compare with previous version

  • Douglas Barbosa Alexandre marked this merge request as ready

    marked this merge request as ready

  • :tools: Generated by gitlab_quality-test_tooling.


    :snail: Slow tests detected in this merge request. These slow tests might be related to this merge request's changes.

    Click to expand
    Job File Name Duration Expected duration
    #7260610016 ee/spec/features/projects/pipelines/pipeline_spec.rb#L167 Pipeline GET /:project/-/pipelines/:id identity verification requirement when pipeline failed with user_not_verified status prompts the user to verify their account 50.76 s < 50.13 s
    #7268971332 ee/spec/features/projects/pipelines/pipeline_spec.rb#L167 Pipeline GET /:project/-/pipelines/:id identity verification requirement when pipeline failed with user_not_verified status prompts the user to verify their account 50.16 s < 50.13 s
  • A deleted user added rspec:slow test detected label
  • added 1 commit

    Compare with previous version

  • added 1 commit

    • 055c5543 - Fix Geo sites UI when replication feature flags are off

    Compare with previous version

  • added 230 commits

    • 055c5543...fd663769 - 223 commits from branch master
    • 9c6b9b40 - Add a verification feature flag for each replicator class
    • 0a29e750 - Verify replicable after create/update
    • 692270e9 - Rename enabled? to replication_enabled?
    • 1c053c95 - Remove Geo::BaseRegistry.replication_enabled? method
    • 7c634860 - Keep verification tied to replication FF on secondaries
    • 02293f5e - Remove unused methods
    • 94922612 - Fix Geo sites UI when replication feature flags are off

    Compare with previous version

  • added 171 commits

    • 94922612...83b21eef - 164 commits from branch master
    • ab06f0f7 - Add a verification feature flag for each replicator class
    • a5426ccd - Verify replicable after create/update
    • bdaaf503 - Rename enabled? to replication_enabled?
    • c56ebd0b - Remove Geo::BaseRegistry.replication_enabled? method
    • 6b52dbe9 - Keep verification tied to replication FF on secondaries
    • 45c85f52 - Remove unused methods
    • 28f66451 - Fix Geo sites UI when replication feature flags are off

    Compare with previous version

  • Douglas Barbosa Alexandre
  • requested review from @mkozono

  • Michael Kozono
  • Michael Kozono
  • Michael Kozono approved this merge request

    approved this merge request

  • added pipelinetier-2 label and removed pipelinetier-1 label

    • Resolved by Michael Kozono

      Before you set this MR to auto-merge

      This merge request will progress on pipeline tiers until it reaches the last tier: pipelinetier-3. We will trigger a new pipeline for each transition to a higher tier.

      Before you resolve this discussion, please check the following:

      • You are the last maintainer of this merge request
      • The latest pipeline for this merge request is pipelinetier-3 (You can find which tier it is in the pipeline name)
      • This pipeline is recent enough (created in the last 8 hours)

      If all the criteria above apply, please resolve this discussion and the set auto-merge for this merge request.

      See pipeline tiers and merging a merge request for more details.

  • Douglas Barbosa Alexandre requested review from @mkozono and removed approval

    requested review from @mkozono and removed approval

  • added 456 commits

    • 28f66451...154a6436 - 447 commits from branch master
    • 609c53c5 - Add a verification feature flag for each replicator class
    • 7fa6cec5 - Verify replicable after create/update
    • 070ec529 - Rename enabled? to replication_enabled?
    • 07608ddb - Remove Geo::BaseRegistry.replication_enabled? method
    • a440db10 - Keep verification tied to replication FF on secondaries
    • 575adb2d - Remove unused methods
    • cab97e0b - Fix Geo sites UI when replication feature flags are off
    • 8316e79e - Change geo_handle_after_* guard clauses to return nil
    • b76b4b3a - Rename primary checksumming feature flags

    Compare with previous version

  • Ghost User
  • Ghost User
  • Ghost User
  • Ghost User
  • Ghost User
  • Ghost User
  • Ghost User
  • Ghost User
  • Ghost User
  • Ghost User
  • Ghost User
  • Ghost User
  • Ghost User
  • Ghost User
  • Ghost User
  • Ghost User
  • Ghost User
  • added 1 commit

    • d9f90a36 - Rename primary checksumming feature flags

    Compare with previous version

  • added 1 commit

    • 6bf9abd6 - Rename primary checksumming feature flags

    Compare with previous version

  • added 1 commit

    • 33d81d43 - Rename force_primary_checksumming_feature_key

    Compare with previous version

  • mentioned in issue #471684 (closed)

  • mentioned in issue #471685 (closed)

  • Michael Kozono
  • added 1 commit

    Compare with previous version

  • Michael Kozono approved this merge request

    approved this merge request

  • requested review from @aakriti.gupta

  • @dbalexandre As far as testing locally, is this pretty much what we need to do, and what we are looking for?

    1. Set up a new GDK (without Geo)

    2. Add a Premium or higher license

    3. Create a GeoNode manually: GeoNode.create(name: 'first one', url: 'http://127.0.0.1:3000', primary: true)

    4. Add this to gdk.yml and then gdk reconfigure && gdk restart:

      geo:
        enabled: true
        secondary: false
        node_name: 'first one'

    I see checksum progress bars :tada: :

    image

    Edited by Michael Kozono
  • Aakriti Gupta approved this merge request

    approved this merge request

  • Aakriti Gupta removed review request for @aakriti.gupta

    removed review request for @aakriti.gupta

  • added 4 commits

    • 3d004494 - Change geo_handle_after_* guard clauses to return nil
    • d0af4b48 - Rename primary checksumming feature flags
    • 9d9fb53a - Rename force_primary_checksumming_feature_key
    • 2b9add22 - Fix some typos

    Compare with previous version

  • Douglas Barbosa Alexandre reset approvals from @mkozono and @aakriti.gupta by pushing to the branch

    reset approvals from @mkozono and @aakriti.gupta by pushing to the branch

  • requested review from @mkozono

  • requested review from @aakriti.gupta

  • added 1 commit

    • 39b8de13 - fixup! Change geo_handle_after_* guard clauses to return nil

    Compare with previous version

  • Douglas Barbosa Alexandre marked this merge request as draft from 39b8de13

    marked this merge request as draft from 39b8de13

  • added 433 commits

    • 39b8de13...e73f1754 - 422 commits from branch master
    • d6349669 - 1 earlier commit
    • 4fcddeb8 - Verify replicable after create/update
    • 1d504760 - Rename enabled? to replication_enabled?
    • 91495ab5 - Remove Geo::BaseRegistry.replication_enabled? method
    • 33d89d12 - Keep verification tied to replication FF on secondaries
    • 83295170 - Remove unused methods
    • b7e63979 - Fix Geo sites UI when replication feature flags are off
    • eb0e3be9 - Change geo_handle_after_* guard clauses to return nil
    • f42d35c4 - Rename primary checksumming feature flags
    • 32aff847 - Rename force_primary_checksumming_feature_key
    • 929b4a17 - Fix some typos

    Compare with previous version

  • Douglas Barbosa Alexandre marked this merge request as ready

    marked this merge request as ready

  • Michael Kozono approved this merge request

    approved this merge request

  • Michael Kozono removed review request for @aakriti.gupta

    removed review request for @aakriti.gupta

  • added pipelinetier-3 label and removed pipelinetier-2 label

  • Michael Kozono resolved all threads

    resolved all threads

  • Michael Kozono requested review from @rymai

    requested review from @rymai

  • added 4 commits

    • a6a5e32a - Change geo_handle_after_* guard clauses to return nil
    • 75e5558f - Rename primary checksumming feature flags
    • 720f7839 - Rename force_primary_checksumming_feature_key
    • 0102a733 - Fix some typos

    Compare with previous version

  • Douglas Barbosa Alexandre reset approvals from @mkozono by pushing to the branch

    reset approvals from @mkozono by pushing to the branch

  • Michael Kozono approved this merge request

    approved this merge request

  • added 4 commits

    • e5dd7b78 - Change geo_handle_after_* guard clauses to return nil
    • 4daff8e7 - Rename primary checksumming feature flags
    • f864a4d7 - Rename force_primary_checksumming_feature_key
    • 115459d8 - Fix some typos

    Compare with previous version

  • Douglas Barbosa Alexandre reset approvals from @mkozono by pushing to the branch

    reset approvals from @mkozono by pushing to the branch

  • Rémy Coutable approved this merge request

    approved this merge request

  • Rémy Coutable resolved all threads

    resolved all threads

  • Rémy Coutable enabled automatic add to merge train when checks pass

    enabled automatic add to merge train when checks pass

  • Rémy Coutable added this merge request to the merge train at position 3

    added this merge request to the merge train at position 3

  • added workflowstaging label and removed workflowcanary label

  • Michael Kozono mentioned in issue #473540

    mentioned in issue #473540

  • mentioned in merge request !172163 (closed)

  • Please register or sign in to reply
    Loading