Configure workspace inheritance in the Web UI, in the API and in the CLI

User story

As a workspace owner, I can modify the workspace inheritance list either through the Web UI, through the API or with the CLI.

In the Web UI, I can create an ordered list of workspaces among:

  • the workspaces from the current scope that I have access to
  • all the public workspaces from other scopes
  • the workspaces that are already in the inheritance list (in case they have been added by someone else that had broader access than me)

Error handling

  • The API refuse to add private workspace from other scopes in the inheritance list
  • The API fails for non-existing workspaces

Implementation plan

Open questions

  • Should the API work with workspace IDs or with fully qualified names of workspaces (e.g. debian/developers) or accept both interchangeably?

Notes

This issue description can be modified to integrate feedback from comments and from associated merge requests.

Edited by Enrico Zini