Error: Visibility level internal has been restricted by your GitLab administrator

GitLab Direct Transfer raising error: Visibility level internal has been restricted by your GitLab administrator

The error occurs because the group in the source instance uses the internal visibility level and this level is disabled on GitLab.com via Admin settings.

Backtrace

lib/bulk_imports/groups/loaders/group_loader.rb:21:in `load'
lib/bulk_imports/pipeline/runner.rb:26:in `block (2 levels) in run'
lib/bulk_imports/pipeline/runner.rb:52:in `run_pipeline_step'
lib/bulk_imports/pipeline/runner.rb:25:in `block in run'
lib/bulk_imports/pipeline/extracted_data.rb:25:in `each'
lib/bulk_imports/pipeline/extracted_data.rb:25:in `each'
lib/bulk_imports/pipeline/runner.rb:18:in `run'
app/workers/bulk_imports/pipeline_worker.rb:52:in `run'
app/workers/bulk_imports/pipeline_worker.rb:24:in `block in perform'
app/services/concerns/exclusive_lease_guard.rb:29:in `try_obtain_lease'
app/workers/bulk_imports/pipeline_worker.rb:20:in `perform'

Kibana

https://log.gprd.gitlab.net/goto/520a4e00-d27f-11ed-a017-0d32180b1390

Screenshot_2023-04-03_at_21.25.11

Screenshot_2023-04-03_at_21.26.14

Proposed solution

Set the visibility level to a lower level if the level used in the source is disabled on the target instance

Note: we already have some logic to use the private level when the internal isn't enabled, but it seems the logic isn't working as expected.

Edited by Rodrigo Tomonari