Geo Replicables - Remove RESTful support from UI
What does this MR do and why?
Part 1 of 2 #219417 (closed)
Follow up MR: !132156 (merged)
This change begins to remove in entirety the RESTful support for Geo Replicables (ee/geo_replicables
). Due to the sheer size of the deletion the work has been split into two parts:
- Vue Components (this MR)
- Vuex Store (following MR)
Some Background
When Geo was first implemented we used a RESTful endpoint. As we scaled Geo we made the decision to migrate to a GraphQL endpoint along with the adoption of the Self Service Framework. During the adoption period of the Self Service Framework we opted to support the legacy RESTful implementations. This created a layer of technical debt for the Frontend as we wanted to provide a unified experience in the UI regardless if the data was being served via REST or GraphQL.
However, the time has come that we completely sunset the RESTful implementation in the Frontend now that the RESTful endpoint has been fully removed from our codebase
Changes in this MR
- Removal of all references to
state.useGraphQl
in the.vue
files- This reduced the complexity of quite a few computed properties.
- Replace
GlPagination
withGlKeysetPagination
- We no longer need to support RESTful pagination and can simply use the cursors from GraphQl
- Remove of
ee/app/views/admin/geo/designs/index.html.haml
- This file was a legacy usage for the RESTful implementation
- This file is never used as the controller redirects to a different path
Screenshots or screen recordings
Designs Redirect
All functionality remains
UI remains the same
Before | After |
---|---|
How to set up and validate locally
- Fetch and checkout this branch
- Setup Geo by following the 1-line installation in the Easy Installation section (How to setup Geo)
- Enable Feature Flag
Feature.enable(:geo_registries_update_mutation)
(if you want to test the Resync/Reverify actions) - Access your Secondary GDK UI
- Navigate to the Geo Replication View for Job Artifacts (ex.
http://127.0.0.1:3001/admin/geo/sites/2/replication/job_artifacts
) - Ensure filtering still works
- Ensure buttons still work
- Ensure pagination still works
MR acceptance checklist
This checklist encourages us to confirm any changes have been analyzed to reduce risks in quality, performance, reliability, security, and maintainability.
-
I have evaluated the MR acceptance checklist for this MR.
Related to #219417 (closed)