Перечислить всех членов группы, включая подгруппы / проекты, если Gitlab?

#gitlab-api

#gitlab-api

Вопрос:

Возможно ли, чтобы при одном вызове API в gitlab все пользователи группы и все, включая подгруппы / проекты этой группы?

Я могу получить список всех пользователей такой группы:

 curl -H "PRIVATE-TOKEN: xxxx" -k "https://gitlab.xxxx/api/v4/groups/319/members?per_page=100amp;page=1"
 

Но было бы неприятно делать это рекурсивно для подгрупп / проектов в скрипте.

Предоставляет ли gitlab опции для рекурсивного выполнения?

Ответ №1:

GitLab предлагает возможность получить унаследованные члены с помощью:

 GET /groups/:id/members/all
GET /projects/:id/members/all
 

Это приведет к получению всех членов и разрешений через группы-предки, но не дочерние группы. Это имеет смысл, поскольку, допустим, вы извлекаете всех пользователей из группы, включая тех, которые находятся только в одном проекте… Как вы узнаете, к какому проекту они принадлежат?

В любом случае, существует проблема двухлетней давности, когда они обсуждали реализацию того, что вам требуется, в одном вызове API, но, похоже, это не реализовано прямо сейчас.