Cannot change visibility settings of a private project (that's been forked), made with a private group, after making the group public
Summary
We have trouble changing the visibility of a private project made within a private group, after changing the visibility of the group to public. We think it might be related to the bug described here (fork visibility): https://gitlab.com/gitlab-org/gitlab-ce/issues/40088
I forked a private project (made with a private group) to my own personal namespace. Obviously the visibility level had to be as strict or stricter than the original project, so the fork was also private. The same rules for visibility are logically inherited in all projects of the group owning the projects. However, after changing the group's visibility to public, I still can't change the visibility of the project. I thought it was connected to the private fork, so I disconnected it from my personal namespace. The visibility of the forked project (now not longer a fork) can be altered, but the main project still have the same issue.
Steps to reproduce
-
Create a private group
-
Create a private project in the private group
-
Not possible to change visibility of the project, but the dropdown combobox works (alternatives grayed out).
-
Create a fork of the project into a personal namespace
-
Not possible to change visibility of either of the project references, no dropdown on the combobox.
-
Change the visibility to public on the group
-
Not possible to change visibility of either of the project references, no dropdown on the combobox.
-
Unfork the project from the personal namespace
-
Possible to change visibility of forked project, dropdown combobox works.
-
Not possible to change visibility of original project, no dropdown on the combobox.
Example Project
A test project, created with the scheme described above, can be found here: https://gitlab.com/testing-private-group/testing-private-project
What is the current bug behavior?
When creating a fork of a private project (from a private group), the visibility settings gets disabled for both the original project and the fork. After unlinking the fork, the original project still has disabled visibility settings, while the forked version gets opened. Until doing the private fork, everything works intuitively!
What is the expected correct behavior?
When changing the visibility level of the group owning the project, the visibility of its projects should be adjustable as well.