summaryrefslogtreecommitdiff
path: root/gitlab/mixins.py
diff options
context:
space:
mode:
authorGauvain Pocentek <gauvain@pocentek.net>2018-05-29 19:32:26 +0200
committerGauvain Pocentek <gauvain@pocentek.net>2018-05-29 19:32:26 +0200
commit9412a5ddb1217368e0ac19fc06a4ff32711b931f (patch)
treebe513e71cef4ebdab12014a312a73a6091819924 /gitlab/mixins.py
parent01a41efd271dd08d4b5744473fb71a67d9f5dea5 (diff)
downloadgitlab-9412a5ddb1217368e0ac19fc06a4ff32711b931f.tar.gz
Add support for group badges
Also consolidate project/group badges tests, and add some docs Fixes #469
Diffstat (limited to 'gitlab/mixins.py')
-rw-r--r--gitlab/mixins.py24
1 files changed, 24 insertions, 0 deletions
diff --git a/gitlab/mixins.py b/gitlab/mixins.py
index 7119aef..05e31c0 100644
--- a/gitlab/mixins.py
+++ b/gitlab/mixins.py
@@ -571,3 +571,27 @@ class ParticipantsMixin(object):
path = '%s/%s/participants' % (self.manager.path, self.get_id())
return self.manager.gitlab.http_get(path, **kwargs)
+
+
+class BadgeRenderMixin(object):
+ @cli.register_custom_action(('GroupBadgeManager', 'ProjectBadgeManager'),
+ ('link_url', 'image_url'))
+ @exc.on_http_error(exc.GitlabRenderError)
+ def render(self, link_url, image_url, **kwargs):
+ """Preview link_url and image_url after interpolation.
+
+ Args:
+ link_url (str): URL of the badge link
+ image_url (str): URL of the badge image
+ **kwargs: Extra options to send to the server (e.g. sudo)
+
+ Raises:
+ GitlabAuthenticationError: If authentication is not correct
+ GitlabRenderError: If the rendering failed
+
+ Returns:
+ dict: The rendering properties
+ """
+ path = '%s/render' % self.path
+ data = {'link_url': link_url, 'image_url': image_url}
+ return self.gitlab.http_get(path, data, **kwargs)