GitLab merge requestshttps://staging.gitlab.com/gitlab-org/gitlab/-/merge_requests2018-09-03T10:18:12Zhttps://staging.gitlab.com/gitlab-org/gitlab/-/merge_requests/3095Fix Geo transfers failure handling when filename too long2018-09-03T10:18:12ZStan HuFix Geo transfers failure handling when filename too longImproves existing log information as well.
Closes #3682Improves existing log information as well.
Closes #368210.1Nick ThomasNick Thomashttps://staging.gitlab.com/gitlab-org/gitlab/-/merge_requests/3093Simplify project page- EE version2020-09-21T12:28:13ZAnnabel GraySimplify project page- EE versionEE version of https://gitlab.com/gitlab-org/gitlab-ce/merge_requests/14669EE version of https://gitlab.com/gitlab-org/gitlab-ce/merge_requests/1466910.1Annabel GrayAnnabel Grayhttps://staging.gitlab.com/gitlab-org/gitlab/-/merge_requests/3092Cleanup old nav stuff- EE version2021-09-17T19:10:21ZAnnabel GrayCleanup old nav stuff- EE versionEE port of https://gitlab.com/gitlab-org/gitlab-ce/merge_requests/14573EE port of https://gitlab.com/gitlab-org/gitlab-ce/merge_requests/1457310.1Filipa Lacerdafilipa@gitlab.comFilipa Lacerdafilipa@gitlab.comhttps://staging.gitlab.com/gitlab-org/gitlab/-/merge_requests/3090Add comma delimiters to make Geo Node status more readable2017-10-07T00:06:32ZStan HuAdd comma delimiters to make Geo Node status more readableBefore:
![image](/uploads/ef6be630229948f5ecc1331404ecf23e/image.png)
After:
![image](/uploads/a85e656cb4fc34afdc133afaf95a6b38/image.png)Before:
![image](/uploads/ef6be630229948f5ecc1331404ecf23e/image.png)
After:
![image](/uploads/a85e656cb4fc34afdc133afaf95a6b38/image.png)10.1username-removed-408677username-removed-408677https://staging.gitlab.com/gitlab-org/gitlab/-/merge_requests/3086WIP:Add ability to enforce that only the author of a commit can push those ch...2020-07-09T15:39:39ZRubén DávilaWIP:Add ability to enforce that only the author of a commit can push those changes back to the repository## What does this MR do?
## Are there points in the code the reviewer needs to double check?
## Why was this MR needed?
## Screenshots (if relevant)
## Does this MR meet the acceptance criteria?
- [ ] [Changelog entry](https://docs....## What does this MR do?
## Are there points in the code the reviewer needs to double check?
## Why was this MR needed?
## Screenshots (if relevant)
## Does this MR meet the acceptance criteria?
- [ ] [Changelog entry](https://docs.gitlab.com/ee/development/changelog.html) added, if necessary
- [ ] [Documentation created/updated](https://docs.gitlab.com/ee/development/doc_styleguide.html)
- [ ] API support added
- [ ] Tests added for this feature/bug
- Review
- [ ] Has been reviewed by UX
- [ ] Has been reviewed by Frontend
- [ ] Has been reviewed by Backend
- [ ] Has been reviewed by Database
- [ ] Conform by the [merge request performance guides](https://docs.gitlab.com/ee/development/merge_request_performance_guidelines.html)
- [ ] Conform by the [style guides](https://gitlab.com/gitlab-org/gitlab-ee/blob/master/CONTRIBUTING.md#style-guides)
- [ ] [Squashed related commits together](https://git-scm.com/book/en/Git-Tools-Rewriting-History#Squashing-Commits)
## What are the relevant issue numbers?
Closes #2445https://staging.gitlab.com/gitlab-org/gitlab/-/merge_requests/3083Port to EE "Create Kubernetes cluster on GKE from k8s service"2020-07-09T16:48:12ZShinya MaedaPort to EE "Create Kubernetes cluster on GKE from k8s service"## What does this MR do?
Port to EE "Create Kubernetes cluster on GKE from k8s service"
## What are the relevant issue numbers?
- https://gitlab.com/gitlab-org/gitlab-ce/merge_requests/14470
- https://gitlab.com/gitlab-org/gitlab-ce/i...## What does this MR do?
Port to EE "Create Kubernetes cluster on GKE from k8s service"
## What are the relevant issue numbers?
- https://gitlab.com/gitlab-org/gitlab-ce/merge_requests/14470
- https://gitlab.com/gitlab-org/gitlab-ce/issues/3595410.1Shinya MaedaShinya Maedahttps://staging.gitlab.com/gitlab-org/gitlab/-/merge_requests/3081Port of 37970-ci-sections-tracking to EE2020-11-06T11:38:59ZAlessio CaiazzaPort of 37970-ci-sections-tracking to EEThis is the porting of https://gitlab.com/gitlab-org/gitlab-ce/merge_requests/14511This is the porting of https://gitlab.com/gitlab-org/gitlab-ce/merge_requests/14511Kamil TrzcińśkiKamil Trzcińśkihttps://staging.gitlab.com/gitlab-org/gitlab/-/merge_requests/3080Add mirror related indexes2020-07-09T15:49:39Zusername-removed-117638Add mirror related indexesThese indexes will be needed because of the two SLAs that were set in https://gitlab.com/gitlab-org/gitlab-ee/issues/3641#note_42534211 which can be seen in more detail here: https://gitlab.com/gitlab-cookbooks/gitlab-prometheus/merge_re...These indexes will be needed because of the two SLAs that were set in https://gitlab.com/gitlab-org/gitlab-ee/issues/3641#note_42534211 which can be seen in more detail here: https://gitlab.com/gitlab-cookbooks/gitlab-prometheus/merge_requests/319 and here: https://gitlab.com/gitlab-cookbooks/gitlab-prometheus/merge_requests/320
Before on staging:
```
QUERY PLAN
---------------------------------------------------------------------------------------------------
Aggregate (cost=87173.87..87173.88 rows=1 width=8)
-> Nested Loop (cost=0.43..87173.86 rows=1 width=0)
-> Seq Scan on project_mirror_data (cost=0.00..1594.16 rows=23895 width=4)
Filter: (next_execution_timestamp <= (now() - '00:10:00'::interval))
-> Index Scan using projects_pkey on projects (cost=0.43..3.57 rows=1 width=4)
Index Cond: (id = project_mirror_data.project_id)
Filter: (mirror AND ((import_status)::text <> ALL ('{scheduled,started}'::text[])))
```
After on staging:
```
QUERY PLAN
---------------------------------------------------------------------------------------------------
Aggregate (cost=7.34..7.35 rows=1 width=8)
-> Nested Loop (cost=0.41..7.34 rows=1 width=0)
-> Index Scan using stark_tmp4 on projects (cost=0.12..3.02 rows=1 width=4)
Filter: ((import_status)::text <> ALL ('{scheduled,started}'::text[]))
-> Index Scan using index_project_mirror_data_on_project_id on project_mirror_data (cost=0.29..4.31 rows=1 width=4)
Index Cond: (project_id = projects.id)
Filter: (next_execution_timestamp <= (now() - '00:10:00'::interval))
```
One of these may also address one of the heavy hitter queries from production:
```
SELECT COUNT(*) FROM "projects" INNER JOIN "project_mirror_data" ON "project_mirror_data"."project_id" = "projects"."id" WHERE "projects"."mirror" = ? AND ("projects"."import_status" NOT IN (?,?)) AND (next_execution_timestamp <= ?);
```
However testing this on staging has proven fruitless as all mirroring is turned off on staging so all the `next_execution_timestamp` fields are set to old values.
```
== 20171006114203 AddIndexToProjectMirrorDataNextExecutionTimestamp: migrating
-- transaction_open?()
-> 0.0000s
-- execute("SET statement_timeout TO 0")
-> 0.0004s
-- add_index(:project_mirror_data, :next_execution_timestamp, {:algorithm=>:concurrently})
-> 0.0438s
== 20171006114203 AddIndexToProjectMirrorDataNextExecutionTimestamp: migrated (0.0445s)
== 20171006121407 AddIndexToProjectMirrorLastUpdateAt: migrating ==============
-- transaction_open?()
-> 0.0000s
-- execute("SET statement_timeout TO 0")
-> 0.0003s
-- add_index(:projects, [:mirror, :mirror_last_update_at], {:where=>"mirror", :algorithm=>:concurrently})
-> 0.0127s
== 20171006121407 AddIndexToProjectMirrorLastUpdateAt: migrated (0.0132s) =====
```
Remove this section and replace it with a description of your MR. Also follow the
checklist below and check off any tasks that are done. If a certain task can not
be done you should explain so in the MR body. You are free to remove any
sections that do not apply to your MR.
When gathering statistics (e.g. the output of `EXPLAIN ANALYZE`) you should make
sure your database has enough data. Having around 10 000 rows in the tables
being queries should provide a reasonable estimate of how a query will behave.
Also make sure that PostgreSQL uses the following settings:
* `random_page_cost`: `1`
* `work_mem`: `16MB`
* `maintenance_work_mem`: at least `64MB`
* `shared_buffers`: at least `256MB`
If you have access to GitLab.com's staging environment you should also run your
measurements there, and include the results in this MR.
## Database Checklist
When adding migrations:
- [x] Updated `db/schema.rb`
- [x] Added a `down` method so the migration can be reverted
- [x] Added the output of the migration(s) to the MR body
- [x] Added the execution time of the migration(s) to the MR body
- [x] Added tests for the migration in `spec/migrations` if necessary (e.g. when
migrating data)
- [x] Made sure the migration won't interfere with a running GitLab cluster,
for example by disabling transactions for long running migrations
When adding or modifying queries to improve performance:
- [x] Included the raw SQL queries of the relevant queries
- [x] Included the output of `EXPLAIN ANALYZE` and execution timings of the
relevant queries
- [x] Added tests for the relevant changes
When adding indexes:
- [x] Described the need for these indexes in the MR body
- [x] Made sure existing indexes can not be reused instead
When adding foreign keys to existing tables:
- [x] Included a migration to remove orphaned rows in the source table
- [x] Removed any instances of `dependent: ...` that may no longer be necessary
When adding tables:
- [x] Ordered columns based on their type sizes in descending order
- [x] Added foreign keys if necessary
- [x] Added indexes if necessary
When removing columns, tables, indexes or other structures:
- [x] Removed these in a post-deployment migration
- [x] Made sure the application no longer uses (or ignores) these structures
## General Checklist
- [x] [Changelog entry](https://docs.gitlab.com/ce/development/changelog.html) added, if necessary
- [x] [Documentation created/updated](https://gitlab.com/gitlab-org/gitlab-ce/blob/master/doc/development/doc_styleguide.md)
- [x] API support added
- [x] Tests added for this feature/bug
- Review
- [ ] Has been reviewed by UX
- [ ] Has been reviewed by Frontend
- [ ] Has been reviewed by Backend
- [x] Has been reviewed by Database
- [x] Conform by the [merge request performance guides](http://docs.gitlab.com/ce/development/merge_request_performance_guidelines.html)
- [x] Conform by the [style guides](https://gitlab.com/gitlab-org/gitlab-ce/blob/master/CONTRIBUTING.md#style-guides)
- [x] [Squashed related commits together](https://git-scm.com/book/en/Git-Tools-Rewriting-History#Squashing-Commits)
10.1Gregory StarkGregory Starkhttps://staging.gitlab.com/gitlab-org/gitlab/-/merge_requests/3078Move group boards routes under '-' and remove "boards" from reserved paths2017-10-06T17:48:45ZValery SizovMove group boards routes under '-' and remove "boards" from reserved paths## What does this MR do?
Move group boards routes under '-' and remove "boards" from reserved paths
## Are there points in the code the reviewer needs to double check?
## Why was this MR needed?
## Screenshots (if relevant)
## Does ...## What does this MR do?
Move group boards routes under '-' and remove "boards" from reserved paths
## Are there points in the code the reviewer needs to double check?
## Why was this MR needed?
## Screenshots (if relevant)
## Does this MR meet the acceptance criteria?
- [ ] [Changelog entry](https://docs.gitlab.com/ee/development/changelog.html) added, if necessary
- [ ] [Documentation created/updated](https://docs.gitlab.com/ee/development/doc_styleguide.html)
- [ ] API support added
- [ ] Tests added for this feature/bug
- Review
- [ ] Has been reviewed by UX
- [ ] Has been reviewed by Frontend
- [ ] Has been reviewed by Backend
- [ ] Has been reviewed by Database
- [ ] Conform by the [merge request performance guides](https://docs.gitlab.com/ee/development/merge_request_performance_guidelines.html)
- [ ] Conform by the [style guides](https://gitlab.com/gitlab-org/gitlab-ee/blob/master/CONTRIBUTING.md#style-guides)
- [ ] [Squashed related commits together](https://git-scm.com/book/en/Git-Tools-Rewriting-History#Squashing-Commits)
## What are the relevant issue numbers?
closes https://gitlab.com/gitlab-org/gitlab-ee/issues/3662#10.0Douwe MaanDouwe Maanhttps://staging.gitlab.com/gitlab-org/gitlab/-/merge_requests/3076WIP: Postgres FDW documentation2017-10-06T07:45:08ZGabriel MazettoWIP: Postgres FDW documentation## What does this MR do?
Added documentation for setting up `postgres_fdw` for the Geo Log Cursor tracking database.## What does this MR do?
Added documentation for setting up `postgres_fdw` for the Geo Log Cursor tracking database.10.2https://staging.gitlab.com/gitlab-org/gitlab/-/merge_requests/3072CE upstream: thursday2017-11-22T00:10:12ZNick ThomasCE upstream: thursday- [x] both modified: app/assets/javascripts/vue_merge_request_widget/components/states/mr_widget_conflicts.js
- [x] both modified: app/assets/stylesheets/framework/selects.scss
- [x] both modified: app/models/concerns/repository_mi...- [x] both modified: app/assets/javascripts/vue_merge_request_widget/components/states/mr_widget_conflicts.js
- [x] both modified: app/assets/stylesheets/framework/selects.scss
- [x] both modified: app/models/concerns/repository_mirroring.rb
- [x] both modified: app/serializers/merge_request_entity.rb
- [x] both modified: app/services/emails/create_service.rb
- [x] both modified: app/services/emails/destroy_service.rb
- [x] both modified: config/initializers/1_settings.rb
- [x] both modified: config/webpack.config.js
- [x] both added: db/migrate/20141126120926_add_merge_request_rebase_enabled_to_projects.rb
- [x] both added: db/migrate/20150827121444_add_fast_forward_option_to_project.rb
- [x] both modified: db/schema.rb
- [x] both modified: doc/ci/variables/README.md
- [x] both added: doc/user/project/merge_requests/fast_forward_merge.md
- [x] both modified: doc/user/project/merge_requests/index.md
- [x] both modified: doc/workflow/README.md
- [x] both added: features/project/ff_merge_requests.feature
- [x] both added: features/steps/project/ff_merge_requests.rb
- [x] both modified: locale/gitlab.pot
- [x] both modified: spec/features/protected_branches_spec.rb
- [x] both modified: spec/fixtures/api/schemas/entities/merge_request.json
- [x] both modified: spec/lib/gitlab/path_regex_spec.rb
- [x] both modified: spec/lib/gitlab/shell_spec.rb
- [x] both modified: spec/serializers/merge_request_entity_spec.rb
- [x] both modified: spec/support/update_invalid_issuable.rb
- [x] both modified: spec/tasks/gitlab/backup_rake_spec.rb
10.1Nick ThomasNick Thomashttps://staging.gitlab.com/gitlab-org/gitlab/-/merge_requests/3070EE port of flash-es6-module2017-10-05T17:02:51ZPhil Hughesme@iamphill.comEE port of flash-es6-moduleEE port of https://gitlab.com/gitlab-org/gitlab-ce/merge_requests/14626EE port of https://gitlab.com/gitlab-org/gitlab-ce/merge_requests/14626https://staging.gitlab.com/gitlab-org/gitlab/-/merge_requests/3066Does not track renamed events for projects backed by hashed storage2020-07-09T15:23:21Zusername-removed-283999douglas@gitlab.comDoes not track renamed events for projects backed by hashed storage## What does this MR do?
Does not track renamed events for projects backed by hashed storage on the primary node.
## Are there points in the code the reviewer needs to double check?
Are _other_ actions taken on the secondary in respon...## What does this MR do?
Does not track renamed events for projects backed by hashed storage on the primary node.
## Are there points in the code the reviewer needs to double check?
Are _other_ actions taken on the secondary in response to this event that are important?
## Why was this MR needed?
Geo secondary receives a repository renamed event, and attempts `gitlab_shell.mv_project(same_path, same_path)` as a result. _Fortunately_, this will fail - the destination already exists, and gitlab-shell checks that - but I wonder if we can skip the move entirely.
## Does this MR meet the acceptance criteria?
- [x] [Changelog entry](https://docs.gitlab.com/ee/development/changelog.html) added, if necessary
- [ ] ~~[Documentation created/updated](https://docs.gitlab.com/ee/development/doc_styleguide.html)~~
- [ ] ~~API support added~~
- [x] Tests added for this feature/bug
- Review
- [ ] Has been reviewed by UX
- [ ] Has been reviewed by Frontend
- [ ] Has been reviewed by Backend
- [ ] Has been reviewed by Database
- [x] Conform by the [merge request performance guides](https://docs.gitlab.com/ee/development/merge_request_performance_guidelines.html)
- [x] Conform by the [style guides](https://gitlab.com/gitlab-org/gitlab-ee/blob/master/CONTRIBUTING.md#style-guides)
- [ ] [Squashed related commits together](https://git-scm.com/book/en/Git-Tools-Rewriting-History#Squashing-Commits)
## What are the relevant issue numbers?
Closes #350810.0username-removed-283999douglas@gitlab.comusername-removed-283999douglas@gitlab.comhttps://staging.gitlab.com/gitlab-org/gitlab/-/merge_requests/3056Update lint-doc.sh2017-10-03T16:50:45Zusername-removed-1616959john.eismeier@gmail.comUpdate lint-doc.sh## What does this MR do?
issue-1
## Are there points in the code the reviewer needs to double check?
## Why was this MR needed?
String compare of two integers. Integer compare is best practice.
## Screenshots (if relevant)
## Does t...## What does this MR do?
issue-1
## Are there points in the code the reviewer needs to double check?
## Why was this MR needed?
String compare of two integers. Integer compare is best practice.
## Screenshots (if relevant)
## Does this MR meet the acceptance criteria?
- [ ] [Changelog entry](https://docs.gitlab.com/ee/development/changelog.html) added, if necessary
- [ ] [Documentation created/updated](https://docs.gitlab.com/ee/development/doc_styleguide.html)
- [ ] API support added
- [ ] Tests added for this feature/bug
- Review
- [ ] Has been reviewed by UX
- [ ] Has been reviewed by Frontend
- [ ] Has been reviewed by Backend
- [ ] Has been reviewed by Database
- [ ] Conform by the [merge request performance guides](https://docs.gitlab.com/ee/development/merge_request_performance_guidelines.html)
- [ ] Conform by the [style guides](https://gitlab.com/gitlab-org/gitlab-ee/blob/master/CONTRIBUTING.md#style-guides)
- [ ] [Squashed related commits together](https://git-scm.com/book/en/Git-Tools-Rewriting-History#Squashing-Commits)
## What are the relevant issue numbers?https://staging.gitlab.com/gitlab-org/gitlab/-/merge_requests/3049WIP: Add troubleshooting for Git v2.11 and up2017-10-06T00:21:26ZCollenWIP: Add troubleshooting for Git v2.11 and up## What does this MR do?
Adds a troubleshooting step for cloning when using Git v2.11 and newer.
Resolves #2457## What does this MR do?
Adds a troubleshooting step for cloning when using Git v2.11 and newer.
Resolves #2457https://staging.gitlab.com/gitlab-org/gitlab/-/merge_requests/3047WIP: Use case-insensitive lookup for Kerberos Spnego identity.2017-10-05T16:49:58ZDrew BlessingWIP: Use case-insensitive lookup for Kerberos Spnego identity.## What does this MR do?
Clients can send the Kerberos username/principal in any case - the
Kerberos server itself does not care. However, GitLab stores
the Kerberos username/principal as extern_uid in a case-sensitive
format. This...## What does this MR do?
Clients can send the Kerberos username/principal in any case - the
Kerberos server itself does not care. However, GitLab stores
the Kerberos username/principal as extern_uid in a case-sensitive
format. This change uses an `iwhere` statement rather than
`find_by` so it doesn't matter how the client send the
username/principal.
## Are there points in the code the reviewer needs to double check?
Should we have specs for this? Where? There isn't a clear place to put specs for this helper class.
## Why was this MR needed?
It was causing inability to authenticate for a customer in https://gitlab.zendesk.com/agent/tickets/82669
## Screenshots (if relevant)
## Does this MR meet the acceptance criteria?
- [x] [Changelog entry](https://docs.gitlab.com/ee/development/changelog.html) added, if necessary
- [x] [Documentation created/updated](https://docs.gitlab.com/ee/development/doc_styleguide.html)
- [x] API support added
- [ ] Tests added for this feature/bug
- Review
- [ ] Has been reviewed by UX
- [ ] Has been reviewed by Frontend
- [ ] Has been reviewed by Backend
- [ ] Has been reviewed by Database
- [x] Conform by the [merge request performance guides](https://docs.gitlab.com/ee/development/merge_request_performance_guidelines.html)
- [x] Conform by the [style guides](https://gitlab.com/gitlab-org/gitlab-ee/blob/master/CONTRIBUTING.md#style-guides)
- [x] [Squashed related commits together](https://git-scm.com/book/en/Git-Tools-Rewriting-History#Squashing-Commits)10.1Drew BlessingDrew Blessinghttps://staging.gitlab.com/gitlab-org/gitlab/-/merge_requests/3044Added possibility to enter past date in /spend command to log time in the past2020-07-09T15:39:39Zusername-removed-238711Added possibility to enter past date in /spend command to log time in the past## What does this MR do?
Provides feature to enter date in /spend command to logging time in the past. In UI there was added date when time was spent like on a screenshot.
Example: '/spend 10m 2017-02-02'.
Acceptable formats of date: ...## What does this MR do?
Provides feature to enter date in /spend command to logging time in the past. In UI there was added date when time was spent like on a screenshot.
Example: '/spend 10m 2017-02-02'.
Acceptable formats of date: long: YYYY-MM-DD, short: YY-M-D or mixes of this.
Acceptable delimiters: '-' '/' '.' and few variants of delimiters mixes but i highly not recommend this
![image](/uploads/772e8939ac9b0f2d2adf80f9f2de354b/image.png)
- [x] [Changelog entry](https://docs.gitlab.com/ee/development/changelog.html) added, if necessary
- [ ] [Documentation created/updated](https://docs.gitlab.com/ee/development/doc_styleguide.html)
- [ ] API support added
- [x] Tests added for this feature/bug
- [ ] Conform by the [merge request performance guides](https://docs.gitlab.com/ee/development/merge_request_performance_guidelines.html)
- [x] Conform by the [style guides](https://gitlab.com/gitlab-org/gitlab-ee/blob/master/CONTRIBUTING.md#style-guides)
- [x] [Squashed related commits together](https://git-scm.com/book/en/Git-Tools-Rewriting-History#Squashing-Commits)
Issue #1312 username-removed-238711username-removed-238711https://staging.gitlab.com/gitlab-org/gitlab/-/merge_requests/3042Clarifying restore instructions.2017-10-03T22:39:43Zusername-removed-1215240Clarifying restore instructions.See the general Documentation guidelines http://docs.gitlab.com/ce/development/doc_styleguide.html
## What does this MR do?
Clarifying restore instructions regarding the behavior when a backup directory is not explicitly set and the re...See the general Documentation guidelines http://docs.gitlab.com/ce/development/doc_styleguide.html
## What does this MR do?
Clarifying restore instructions regarding the behavior when a backup directory is not explicitly set and the requirements for the name of a restore file.
## Moving docs to a new location?
See the guidelines: http://docs.gitlab.com/ce/development/doc_styleguide.html#changing-document-location
- [x] Make sure the old link is not removed and has its contents replaced with a link to the new location.
- [x] Make sure internal links pointing to the document in question are not broken.
- [x] Search and replace any links referring to old docs in GitLab Rails app, specifically under the `app/views/` directory.
- [x] If working on CE, submit an MR to EE with the changes as well.https://staging.gitlab.com/gitlab-org/gitlab/-/merge_requests/3029WIP: Refactor controller calls into services2020-09-08T17:33:01ZJames LopezWIP: Refactor controller calls into servicesFixes https://gitlab.com/gitlab-org/gitlab-ee/issues/3544
- [ ] [Changelog entry](https://docs.gitlab.com/ee/development/changelog.html) added, if necessary
- [ ] [Documentation created/updated](https://docs.gitlab.com/ee/development/do...Fixes https://gitlab.com/gitlab-org/gitlab-ee/issues/3544
- [ ] [Changelog entry](https://docs.gitlab.com/ee/development/changelog.html) added, if necessary
- [ ] [Documentation created/updated](https://docs.gitlab.com/ee/development/doc_styleguide.html)
- [ ] API support added
- [ ] Tests added for this feature/bug
- Review
- [ ] Has been reviewed by UX
- [ ] Has been reviewed by Frontend
- [ ] Has been reviewed by Backend
- [ ] Has been reviewed by Database
- [ ] Conform by the [merge request performance guides](https://docs.gitlab.com/ee/development/merge_request_performance_guidelines.html)
- [ ] Conform by the [style guides](https://gitlab.com/gitlab-org/gitlab-ee/blob/master/CONTRIBUTING.md#style-guides)
- [ ] [Squashed related commits together](https://git-scm.com/book/en/Git-Tools-Rewriting-History#Squashing-Commits)
## What are the relevant issue numbers?James LopezJames Lopezhttps://staging.gitlab.com/gitlab-org/gitlab/-/merge_requests/3012WIP: Manage Geo SSH keys automatically2017-10-05T14:29:43ZNick ThomasWIP: Manage Geo SSH keys automatically## What does this MR do?
## Are there points in the code the reviewer needs to double check?
## Why was this MR needed?
## Screenshots (if relevant)
## Does this MR meet the acceptance criteria?
- [ ] [Changelog entry](https://docs....## What does this MR do?
## Are there points in the code the reviewer needs to double check?
## Why was this MR needed?
## Screenshots (if relevant)
## Does this MR meet the acceptance criteria?
- [ ] [Changelog entry](https://docs.gitlab.com/ee/development/changelog.html) added, if necessary
- [ ] [Documentation created/updated](https://docs.gitlab.com/ee/development/doc_styleguide.html)
- [ ] API support added
- [ ] Tests added for this feature/bug
- Review
- [ ] Has been reviewed by UX
- [ ] Has been reviewed by Frontend
- [ ] Has been reviewed by Backend
- [ ] Has been reviewed by Database
- [ ] Conform by the [merge request performance guides](https://docs.gitlab.com/ee/development/merge_request_performance_guidelines.html)
- [ ] Conform by the [style guides](https://gitlab.com/gitlab-org/gitlab-ee/blob/master/CONTRIBUTING.md#style-guides)
- [ ] [Squashed related commits together](https://git-scm.com/book/en/Git-Tools-Rewriting-History#Squashing-Commits)
## What are the relevant issue numbers?
Closes #125510.2Nick ThomasNick Thomas