2014-11-13 3 views
2

Я пишу клиента REST для просмотра информации о проекте, доступной с нескольких серверов gitlab одновременно в одном объединенном месте. Я понимаю REST и могу получить детали проекта, которые мне нужны, кроме одного: теги.Как я могу получить список тегов проекта Gitlab через API?

Я не говорю о тегах репозитория git, тех, с кем я могу справиться. Я имею в виду теги, которые заданы в разделе «Настройки проекта». Это теги, которые из того, что я могу сказать, предназначены для того, чтобы быть формой описания проекта, а не ссылкой на конкретный хеш-код.

ответ

1

Я отправил запрос слияния обратно к людям Gitlab, если он принят, любой вызов REST, который включает класс Project, будет включать поле «tag_list» со всеми ярлыками проекта.

запрос слияния доступен здесь: https://gitlab.com/gitlab-org/gitlab-ce/merge_requests/329

EDIT: Это было объединено в Gitlab версий 7.10.0, так что теперь вы можете просто запустить GET по проекту и tag_list будет включено в ответ JSON.

0

Невозможно: ПРИНИМАЙТЕ ЗАПРОС ЗАПРОСА по адресу: http://feedback.gitlab.com/forums/176466-general/suggestions/6325819-project-labels-via-api, поэтому не стесняйтесь его реализовать, если вам это нужно.

Должно быть просто: вернуть project.tag_list (см: https://github.com/mbleigh/acts-as-taggable-on) как список JSON из https://github.com/gitlabhq/gitlabhq/blob/41518a467dcef61deca24ad2f6205c6fd5706e1b/lib/api/projects.rb#L60

Всегда проверяйте запрос трекер первым для функций;) Правда, в этом случае вы, возможно, сделали ему не найдены из-за label vs tag смятение ключевого слова, я думаю, что он был переименован в какой-то момент, поэтому всегда ищите оба.

1

Попробуйте это:

http://www.example.com.br/api/v3/projects/#{str}/repository/tags?private_token=yourtoken" 

Обратите внимание, что в #{str} переменной, если вы используете группу/структуру хранилища, вы должны заменить тире %2F, например, вы должны установить:

http://www.example.com.br/api/v3/projects/group%2Frepository/repository/tags?private_token=yourtoken" 

Ответ на ваш запрос будет корпус. Таким образом, вы можете отключить log response.body для получения тегов.

Смежные вопросы