Group permissions not applied to new subgroups or projects
### Summary When a group `A` is shared with another group `P`(eople), new projects and/or subgroups below `A` will not inherit the permissions automatically. A workaround is, to change the rights of `P` temporarily (e.g. grant only "Guest" rights and change back to "developer" later). Then new objects are accessible to `P`. ### Steps to reproduce 1. become admin (probably not necessary) 2. create a `/test-toplevel` group 3. go to "Members" -> "Invite Group" and add another group as "Guest" (here: `_groups/embedded`) <details> <summary>Screenshot</summary> ![members](/uploads/92ce8b6c7c50b2071689779d00bdf47b/members.png) </details> 4. create a subgroup "test" and/or a project "test-project" <details> <summary>Screenshot</summary> ![view-admin](/uploads/ecbb998d73f63876510a8bdecc8a7d7e/view-admin.png) </details> 5. become some normal user who is member of the `_groups/embedded` 6. visit `/test-toplevel` ### Example Project ### What is the current *bug* behavior? The "test" subgroup and the "test-project" project are not accessible. Neither directly, nor are they visible in the group tree view. <details> <summary>Screenshot (empty group tree view)</summary> ![view-user](/uploads/7315b1e0fb70e9bc776e696f853dfa23/view-user.png) </details> After changing permissions (from step 3) to "Developer" and then back to "Guest", objects are accessible. <details> <summary>Screenshots</summary> 1. ![perm-reporter](/uploads/d2764a323fc598ef46897207f444eb98/perm-reporter.png) 2. ![perm-guest](/uploads/0820a520a6c1c9e771e95642f223e5ad/perm-guest.png) 3. ![view-user-after](/uploads/4a51c1e371c863d15fe4e1ecc58d0c27/view-user-after.png) </details> ### What is the expected *correct* behavior? Subgroups + Projects should be visible without changing permissions temporarily. ### Relevant logs and/or screenshots ### Output of checks #### Results of GitLab environment info <details> <summary>Expand for output related to GitLab environment info</summary> <pre> System information System: Current User: git Using RVM: no Ruby Version: 2.6.5p114 Gem Version: 2.7.10 Bundler Version:1.17.3 Rake Version: 12.3.3 Redis Version: 5.0.7 Git Version: 2.24.1 Sidekiq Version:5.2.7 Go Version: unknown GitLab information Version: 12.9.2 Revision: ac5568eb5d8 Directory: /opt/gitlab/embedded/service/gitlab-rails DB Adapter: PostgreSQL DB Version: 9.6.10 URL: https://gitlab.intern.sigma-chemnitz.de HTTP Clone URL: https://gitlab.intern.sigma-chemnitz.de/some-group/some-project.git SSH Clone URL: git@gitlab.intern.sigma-chemnitz.de:some-group/some-project.git Using LDAP: no Using Omniauth: yes Omniauth Providers: GitLab Shell Version: 12.0.0 Repository storage paths: - default: /srv/git-data/repositories GitLab Shell path: /opt/gitlab/embedded/service/gitlab-shell Git: /opt/gitlab/embedded/bin/git </pre> </details> #### Results of GitLab application Check <details> <summary>Expand for output related to the GitLab application check</summary> <pre> everything green except Init.d configured correctly? ... skipped MailRoom running? ... skipped Init script exists? ... skipped (omnibus-gitlab has no init script) Init script up-to-date? ... skipped (omnibus-gitlab has no init script) </pre> </details> ### Possible fixes
issue