Archived projects should not be transferable
Summary
I am trying to move some archived projects from one group to another as part of a tidy up - the projects have been replaced and we'd like the old ones in a new place and to change the access rights. The UI goes all the way through allowing me until it puts up the dialog to retype the project name and I hit confirm. At that point I get "500 Whoops, something went wrong on our end."
It seems that I have to unarchive the project, move it and then re-archive.
Steps to reproduce
I have project "ides-grpc-docker" in group "idesv2". I want to move that to group "oldengine". I am "maintainer" in the first group and "owner" in the second. I also have admin rights for the server. The project has been archived.
Actions:
- In project select "Settings>General". Select "Expand" on Advanced.
- In "Transfer project", "Select a new namespace", select "oldengine" and then "Transfer project"
- Under confirmation required, retype the project name ides-grpc-docker (as requested) and select "Confirm".
What is the current bug behavior?
Error page "500 Whoops, something went wrong on our end."
What is the expected correct behavior?
Archived projects should not be transferable. We should indicate in the UI that this is the case and enhance the documentation to state this.
Relevant logs and/or screenshots
Results of GitLab environment info
Expand for output related to GitLab environment info
(For installations with omnibus-gitlab package run and paste the output of:
`sudo gitlab-rake gitlab:env:info`)
[centos@ip-172-30-2-235 ~]$ sudo gitlab-rake gitlab:check SANITIZE=true
Checking GitLab subtasks ...
Checking GitLab Shell ...
GitLab Shell: ... GitLab Shell version >= 14.7.4 ? ... OK (14.7.4)
Running /opt/gitlab/embedded/service/gitlab-shell/bin/check
Internal API available: OK
Redis available via internal API: OK
gitlab-shell self-check successful
Checking GitLab Shell ... Finished
Checking Gitaly ...
Gitaly: ... default ... OK
Checking Gitaly ... Finished
Checking Sidekiq ...
Sidekiq: ... Running? ... yes
Number of Sidekiq processes (cluster/worker) ... 1/1
Checking Sidekiq ... Finished
Checking Incoming Email ...
Incoming Email: ... Reply by email is disabled in config/gitlab.yml
Checking Incoming Email ... Finished
Checking LDAP ...
LDAP: ... Server: ldapmain
LDAP authentication... Success
LDAP users with access to your GitLab server (only showing the first 100 results)
User output sanitized. Found 100 users of 100 limit.
Checking LDAP ... Finished
Checking GitLab App ...
Database config exists? ... yes
All migrations up? ... yes
Database contains orphaned GroupMembers? ... no
GitLab config exists? ... yes
GitLab config up to date? ... yes
Log directory writable? ... yes
Tmp directory writable? ... yes
Uploads directory exists? ... yes
Uploads directory has correct permissions? ... yes
Uploads directory tmp has correct permissions? ... yes
Systemd unit files or init script exist? ... skipped (omnibus-gitlab has neither init script nor systemd units)
Systemd unit files or init script up-to-date? ... skipped (omnibus-gitlab has neither init script nor systemd units)
Projects have namespace: ...
12/3 ... yes
12/4 ... yes
12/5 ... yes
12/6 ... yes
12/7 ... yes
12/8 ... yes
12/9 ... yes
9/11 ... yes
9/12 ... yes
9/13 ... yes
9/14 ... yes
9/15 ... yes
9/16 ... yes
10/17 ... yes
10/18 ... yes
10/19 ... yes
10/20 ... yes
11/22 ... yes
12/23 ... yes
17/24 ... yes
12/25 ... yes
12/26 ... yes
12/27 ... yes
12/28 ... yes
12/29 ... yes
9/31 ... yes
18/35 ... yes
9/36 ... yes
17/37 ... yes
9/38 ... yes
9/39 ... yes
9/40 ... yes
9/41 ... yes
9/43 ... yes
9/45 ... yes
9/47 ... yes
550/49 ... yes
10/50 ... yes
9/51 ... yes
10/53 ... yes
9/54 ... yes
9/56 ... yes
9/57 ... yes
18/62 ... yes
12/64 ... yes
9/65 ... yes
35/67 ... yes
12/68 ... yes
21/71 ... yes
21/72 ... yes
21/73 ... yes
9/74 ... yes
9/76 ... yes
42/77 ... yes
42/78 ... yes
9/79 ... yes
9/80 ... yes
9/81 ... yes
9/85 ... yes
50/87 ... yes
9/88 ... yes
51/91 ... yes
51/92 ... yes
51/93 ... yes
51/94 ... yes
51/95 ... yes
51/97 ... yes
51/98 ... yes
53/100 ... yes
53/101 ... yes
53/102 ... yes
33/103 ... yes
33/104 ... yes
33/105 ... yes
9/106 ... yes
33/108 ... yes
33/109 ... yes
9/112 ... yes
21/113 ... yes
51/114 ... yes
9/116 ... yes
12/117 ... yes
9/118 ... yes
12/119 ... yes
9/120 ... yes
51/121 ... yes
39/122 ... yes
33/124 ... yes
51/125 ... yes
9/126 ... yes
9/127 ... yes
9/128 ... yes
33/129 ... yes
36/130 ... yes
9/132 ... yes
33/133 ... yes
9/134 ... yes
33/135 ... yes
35/138 ... yes
10/140 ... yes
10/141 ... yes
9/143 ... yes
33/145 ... yes
33/146 ... yes
33/147 ... yes
33/148 ... yes
12/149 ... yes
12/150 ... yes
21/151 ... yes
9/155 ... yes
21/156 ... yes
12/157 ... yes
9/158 ... yes
33/159 ... yes
9/160 ... yes
33/162 ... yes
36/163 ... yes
9/164 ... yes
36/166 ... yes
51/168 ... yes
21/169 ... yes
9/170 ... yes
9/171 ... yes
12/173 ... yes
51/175 ... yes
12/176 ... yes
33/177 ... yes
41/178 ... yes
51/179 ... yes
9/180 ... yes
12/181 ... yes
12/182 ... yes
9/183 ... yes
9/184 ... yes
9/186 ... yes
51/187 ... yes
33/188 ... yes
51/190 ... yes
51/192 ... yes
10/193 ... yes
51/194 ... yes
80/195 ... yes
80/196 ... yes
80/197 ... yes
80/198 ... yes
80/199 ... yes
9/200 ... yes
76/201 ... yes
76/202 ... yes
69/203 ... yes
84/204 ... yes
33/205 ... yes
84/208 ... yes
76/212 ... yes
76/214 ... yes
12/215 ... yes
91/216 ... yes
9/221 ... yes
93/225 ... yes
93/226 ... yes
78/227 ... yes
51/228 ... yes
33/229 ... yes
9/230 ... yes
9/232 ... yes
80/233 ... yes
36/234 ... yes
36/235 ... yes
29/237 ... yes
33/238 ... yes
33/239 ... yes
78/240 ... yes
9/241 ... yes
12/242 ... yes
60/243 ... yes
51/244 ... yes
66/245 ... yes
12/246 ... yes
60/247 ... yes
66/248 ... yes
51/250 ... yes
9/251 ... yes
33/252 ... yes
9/253 ... yes
84/254 ... yes
51/255 ... yes
33/256 ... yes
9/257 ... yes
61/258 ... yes
33/259 ... yes
98/261 ... yes
98/262 ... yes
98/263 ... yes
33/264 ... yes
12/265 ... yes
39/266 ... yes
9/267 ... yes
12/268 ... yes
12/269 ... yes
36/270 ... yes
51/272 ... yes
98/273 ... yes
51/274 ... yes
9/275 ... yes
9/276 ... yes
12/277 ... yes
9/278 ... yes
33/279 ... yes
9/280 ... yes
51/281 ... yes
9/284 ... yes
41/285 ... yes
9/286 ... yes
10/288 ... yes
103/290 ... yes
33/291 ... yes
76/292 ... yes
55/293 ... yes
9/294 ... yes
9/295 ... yes
9/296 ... yes
9/297 ... yes
76/298 ... yes
9/299 ... yes
33/300 ... yes
36/301 ... yes
33/302 ... yes
66/305 ... yes
66/306 ... yes
33/307 ... yes
41/308 ... yes
66/309 ... yes
9/310 ... yes
39/312 ... yes
33/313 ... yes
33/314 ... yes
135/315 ... yes
135/316 ... yes
33/317 ... yes
9/318 ... yes
9/319 ... yes
134/320 ... yes
41/321 ... yes
9/323 ... yes
9/324 ... yes
9/326 ... yes
41/327 ... yes
33/328 ... yes
9/329 ... yes
9/330 ... yes
147/331 ... yes
33/332 ... yes
41/333 ... yes
66/334 ... yes
144/335 ... yes
144/336 ... yes
33/337 ... yes
9/338 ... yes
33/339 ... yes
144/340 ... yes
38/341 ... yes
144/342 ... yes
144/343 ... yes
66/344 ... yes
144/345 ... yes
144/346 ... yes
144/347 ... yes
144/348 ... yes
144/350 ... yes
154/351 ... yes
76/352 ... yes
144/353 ... yes
9/354 ... yes
144/355 ... yes
33/356 ... yes
144/357 ... yes
144/358 ... yes
33/359 ... yes
144/360 ... yes
144/361 ... yes
144/362 ... yes
144/363 ... yes
9/364 ... yes
144/365 ... yes
154/366 ... yes
154/367 ... yes
51/369 ... yes
9/370 ... yes
33/371 ... yes
33/372 ... yes
33/373 ... yes
33/374 ... yes
144/375 ... yes
33/376 ... yes
9/377 ... yes
9/378 ... yes
76/379 ... yes
33/380 ... yes
9/382 ... yes
9/383 ... yes
9/384 ... yes
9/387 ... yes
66/388 ... yes
9/389 ... yes
9/390 ... yes
33/391 ... yes
9/392 ... yes
9/393 ... yes
9/394 ... yes
9/395 ... yes
51/396 ... yes
159/397 ... yes
76/398 ... yes
9/399 ... yes
154/400 ... yes
76/401 ... yes
154/402 ... yes
154/403 ... yes
154/404 ... yes
154/405 ... yes
51/406 ... yes
51/407 ... yes
51/408 ... yes
164/413 ... yes
164/414 ... yes
164/415 ... yes
502/416 ... yes
502/417 ... yes
502/418 ... yes
502/419 ... yes
502/420 ... yes
502/421 ... yes
502/422 ... yes
502/423 ... yes
502/424 ... yes
502/425 ... yes
502/426 ... yes
502/427 ... yes
502/428 ... yes
502/429 ... yes
502/431 ... yes
502/432 ... yes
502/433 ... yes
502/434 ... yes
502/435 ... yes
502/436 ... yes
502/437 ... yes
502/438 ... yes
502/439 ... yes
502/440 ... yes
502/441 ... yes
502/442 ... yes
502/443 ... yes
502/444 ... yes
33/445 ... yes
33/446 ... yes
33/447 ... yes
502/448 ... yes
502/449 ... yes
502/450 ... yes
502/451 ... yes
502/452 ... yes
502/453 ... yes
502/455 ... yes
502/456 ... yes
Redis version >= 5.0.0? ... yes
Ruby version >= 2.7.2 ? ... yes (2.7.5)
Git user has default SSH configuration? ... yes
Active users: ... 105
Is authorized keys file accessible? ... yes
GitLab configured to store new projects in hashed storage? ... yes
All projects are in hashed storage? ... yes
Checking GitLab App ... Finished
Checking GitLab subtasks ... Finished
(For installations from source run and paste the output of:
`sudo -u git -H bundle exec rake gitlab:env:info RAILS_ENV=production`)
Results of GitLab application Check
Expand for output related to the GitLab application check
(For installations with omnibus-gitlab package run and paste the output of:
sudo gitlab-rake gitlab:check SANITIZE=true)[centos@ip-172-30-2-235 ~]$ sudo gitlab-rake gitlab:check SANITIZE=true Checking GitLab subtasks ...
Checking GitLab Shell ...
GitLab Shell: ... GitLab Shell version >= 14.7.4 ? ... OK (14.7.4) Running /opt/gitlab/embedded/service/gitlab-shell/bin/check Internal API available: OK Redis available via internal API: OK gitlab-shell self-check successful
Checking GitLab Shell ... Finished
Checking Gitaly ...
Gitaly: ... default ... OK
Checking Gitaly ... Finished
Checking Sidekiq ...
Sidekiq: ... Running? ... yes Number of Sidekiq processes (cluster/worker) ... 1/1
Checking Sidekiq ... Finished
Checking Incoming Email ...
Incoming Email: ... Reply by email is disabled in config/gitlab.yml
Checking Incoming Email ... Finished
Checking LDAP ...
LDAP: ... Server: ldapmain LDAP authentication... Success LDAP users with access to your GitLab server (only showing the first 100 results) User output sanitized. Found 100 users of 100 limit.
Checking LDAP ... Finished
Checking GitLab App ...
Database config exists? ... yes All migrations up? ... yes Database contains orphaned GroupMembers? ... no GitLab config exists? ... yes GitLab config up to date? ... yes Log directory writable? ... yes Tmp directory writable? ... yes Uploads directory exists? ... yes Uploads directory has correct permissions? ... yes Uploads directory tmp has correct permissions? ... yes Systemd unit files or init script exist? ... skipped (omnibus-gitlab has neither init script nor systemd units) Systemd unit files or init script up-to-date? ... skipped (omnibus-gitlab has neither init script nor systemd units) Projects have namespace: ... 12/3 ... yes 12/4 ... yes 12/5 ... yes 12/6 ... yes 12/7 ... yes 12/8 ... yes 12/9 ... yes 9/11 ... yes 9/12 ... yes 9/13 ... yes 9/14 ... yes 9/15 ... yes 9/16 ... yes 10/17 ... yes 10/18 ... yes 10/19 ... yes 10/20 ... yes 11/22 ... yes 12/23 ... yes 17/24 ... yes 12/25 ... yes 12/26 ... yes 12/27 ... yes 12/28 ... yes 12/29 ... yes 9/31 ... yes 18/35 ... yes 9/36 ... yes 17/37 ... yes 9/38 ... yes 9/39 ... yes 9/40 ... yes 9/41 ... yes 9/43 ... yes 9/45 ... yes 9/47 ... yes 550/49 ... yes 10/50 ... yes 9/51 ... yes 10/53 ... yes 9/54 ... yes 9/56 ... yes 9/57 ... yes 18/62 ... yes 12/64 ... yes 9/65 ... yes 35/67 ... yes 12/68 ... yes 21/71 ... yes 21/72 ... yes 21/73 ... yes 9/74 ... yes 9/76 ... yes 42/77 ... yes 42/78 ... yes 9/79 ... yes 9/80 ... yes 9/81 ... yes 9/85 ... yes 50/87 ... yes 9/88 ... yes 51/91 ... yes 51/92 ... yes 51/93 ... yes 51/94 ... yes 51/95 ... yes 51/97 ... yes 51/98 ... yes 53/100 ... yes 53/101 ... yes 53/102 ... yes 33/103 ... yes 33/104 ... yes 33/105 ... yes 9/106 ... yes 33/108 ... yes 33/109 ... yes 9/112 ... yes 21/113 ... yes 51/114 ... yes 9/116 ... yes 12/117 ... yes 9/118 ... yes 12/119 ... yes 9/120 ... yes 51/121 ... yes 39/122 ... yes 33/124 ... yes 51/125 ... yes 9/126 ... yes 9/127 ... yes 9/128 ... yes 33/129 ... yes 36/130 ... yes 9/132 ... yes 33/133 ... yes 9/134 ... yes 33/135 ... yes 35/138 ... yes 10/140 ... yes 10/141 ... yes 9/143 ... yes 33/145 ... yes 33/146 ... yes 33/147 ... yes 33/148 ... yes 12/149 ... yes 12/150 ... yes 21/151 ... yes 9/155 ... yes 21/156 ... yes 12/157 ... yes 9/158 ... yes 33/159 ... yes 9/160 ... yes 33/162 ... yes 36/163 ... yes 9/164 ... yes 36/166 ... yes 51/168 ... yes 21/169 ... yes 9/170 ... yes 9/171 ... yes 12/173 ... yes 51/175 ... yes 12/176 ... yes 33/177 ... yes 41/178 ... yes 51/179 ... yes 9/180 ... yes 12/181 ... yes 12/182 ... yes 9/183 ... yes 9/184 ... yes 9/186 ... yes 51/187 ... yes 33/188 ... yes 51/190 ... yes 51/192 ... yes 10/193 ... yes 51/194 ... yes 80/195 ... yes 80/196 ... yes 80/197 ... yes 80/198 ... yes 80/199 ... yes 9/200 ... yes 76/201 ... yes 76/202 ... yes 69/203 ... yes 84/204 ... yes 33/205 ... yes 84/208 ... yes 76/212 ... yes 76/214 ... yes 12/215 ... yes 91/216 ... yes 9/221 ... yes 93/225 ... yes 93/226 ... yes 78/227 ... yes 51/228 ... yes 33/229 ... yes 9/230 ... yes 9/232 ... yes 80/233 ... yes 36/234 ... yes 36/235 ... yes 29/237 ... yes 33/238 ... yes 33/239 ... yes 78/240 ... yes 9/241 ... yes 12/242 ... yes 60/243 ... yes 51/244 ... yes 66/245 ... yes 12/246 ... yes 60/247 ... yes 66/248 ... yes 51/250 ... yes 9/251 ... yes 33/252 ... yes 9/253 ... yes 84/254 ... yes 51/255 ... yes 33/256 ... yes 9/257 ... yes 61/258 ... yes 33/259 ... yes 98/261 ... yes 98/262 ... yes 98/263 ... yes 33/264 ... yes 12/265 ... yes 39/266 ... yes 9/267 ... yes 12/268 ... yes 12/269 ... yes 36/270 ... yes 51/272 ... yes 98/273 ... yes 51/274 ... yes 9/275 ... yes 9/276 ... yes 12/277 ... yes 9/278 ... yes 33/279 ... yes 9/280 ... yes 51/281 ... yes 9/284 ... yes 41/285 ... yes 9/286 ... yes 10/288 ... yes 103/290 ... yes 33/291 ... yes 76/292 ... yes 55/293 ... yes 9/294 ... yes 9/295 ... yes 9/296 ... yes 9/297 ... yes 76/298 ... yes 9/299 ... yes 33/300 ... yes 36/301 ... yes 33/302 ... yes 66/305 ... yes 66/306 ... yes 33/307 ... yes 41/308 ... yes 66/309 ... yes 9/310 ... yes 39/312 ... yes 33/313 ... yes 33/314 ... yes 135/315 ... yes 135/316 ... yes 33/317 ... yes 9/318 ... yes 9/319 ... yes 134/320 ... yes 41/321 ... yes 9/323 ... yes 9/324 ... yes 9/326 ... yes 41/327 ... yes 33/328 ... yes 9/329 ... yes 9/330 ... yes 147/331 ... yes 33/332 ... yes 41/333 ... yes 66/334 ... yes 144/335 ... yes 144/336 ... yes 33/337 ... yes 9/338 ... yes 33/339 ... yes 144/340 ... yes 38/341 ... yes 144/342 ... yes 144/343 ... yes 66/344 ... yes 144/345 ... yes 144/346 ... yes 144/347 ... yes 144/348 ... yes 144/350 ... yes 154/351 ... yes 76/352 ... yes 144/353 ... yes 9/354 ... yes 144/355 ... yes 33/356 ... yes 144/357 ... yes 144/358 ... yes 33/359 ... yes 144/360 ... yes 144/361 ... yes 144/362 ... yes 144/363 ... yes 9/364 ... yes 144/365 ... yes 154/366 ... yes 154/367 ... yes 51/369 ... yes 9/370 ... yes 33/371 ... yes 33/372 ... yes 33/373 ... yes 33/374 ... yes 144/375 ... yes 33/376 ... yes 9/377 ... yes 9/378 ... yes 76/379 ... yes 33/380 ... yes 9/382 ... yes 9/383 ... yes 9/384 ... yes 9/387 ... yes 66/388 ... yes 9/389 ... yes 9/390 ... yes 33/391 ... yes 9/392 ... yes 9/393 ... yes 9/394 ... yes 9/395 ... yes 51/396 ... yes 159/397 ... yes 76/398 ... yes 9/399 ... yes 154/400 ... yes 76/401 ... yes 154/402 ... yes 154/403 ... yes 154/404 ... yes 154/405 ... yes 51/406 ... yes 51/407 ... yes 51/408 ... yes 164/413 ... yes 164/414 ... yes 164/415 ... yes 502/416 ... yes 502/417 ... yes 502/418 ... yes 502/419 ... yes 502/420 ... yes 502/421 ... yes 502/422 ... yes 502/423 ... yes 502/424 ... yes 502/425 ... yes 502/426 ... yes 502/427 ... yes 502/428 ... yes 502/429 ... yes 502/431 ... yes 502/432 ... yes 502/433 ... yes 502/434 ... yes 502/435 ... yes 502/436 ... yes 502/437 ... yes 502/438 ... yes 502/439 ... yes 502/440 ... yes 502/441 ... yes 502/442 ... yes 502/443 ... yes 502/444 ... yes 33/445 ... yes 33/446 ... yes 33/447 ... yes 502/448 ... yes 502/449 ... yes 502/450 ... yes 502/451 ... yes 502/452 ... yes 502/453 ... yes 502/455 ... yes 502/456 ... yes Redis version >= 5.0.0? ... yes Ruby version >= 2.7.2 ? ... yes (2.7.5) Git user has default SSH configuration? ... yes Active users: ... 105 Is authorized keys file accessible? ... yes GitLab configured to store new projects in hashed storage? ... yes All projects are in hashed storage? ... yes
Checking GitLab App ... Finished
Checking GitLab subtasks ... Finished
(For installations from source run and paste the output of:
sudo -u git -H bundle exec rake gitlab:check RAILS_ENV=production SANITIZE=true)(we will only investigate if the tests are passing)
Possible fixes
Archived projects should not be transferable. In order to transfer an archived project, unarchive it first. Ensure this is documented.
Workaround
- Unarchive the project
- Transfer the project
- Archive the project again
UX improvements (needs design input)
Ensure that:
- The transfer option is disabled for archived projects and the user understands why
OR
- Transfer cannot be executed and the user understands why
and update the documentation to state that archived projects need to be unarchived in order to be transferred. The same is going to be the case for archived groups in the future.