Fetch parent groups of the authGroups

An authGroup could be included in other groups and should be granted the
same permission as its parents.

The result of this change will be that the core is now able to check the
permission of the parent groups of the authGroups.

Moreover, the parent groups are fetched recursively so that multi
dimensional inclusion could also work as expected.

The plugin needs to be reloaded in order to perceive:
- a newly created group
- a change in group settings such as adding/removing groups in
'Included Groups' or a change in 'Members'

Workflow considered:
- user 'ua' is a member of group 'ga'
- user 'ub' is a member of group 'gb'
- group 'ga' is included in group 'gb'
- group 'gb' is included in group 'gc'
- group 'gc' is given READ permission of project 'p'
- user 'ua' replicates the project 'p' successfully
- user 'ub' replicates the project 'p' successfully

Change-Id: Iaf9bd3502c1846c7b4bf89f5e2c068045647efef
3 files changed
tree: 9d91e4cbbe55ed626f95f9ad28cac8c578305792
  1. .gitignore
  2. .settings/
  3. BUCK
  4. LICENSE
  5. src/