summaryrefslogtreecommitdiff
path: root/docs
diff options
context:
space:
mode:
authorGauvain Pocentek <gauvain@pocentek.net>2016-08-27 23:01:29 +0200
committerGauvain Pocentek <gauvain@pocentek.net>2016-08-27 23:01:29 +0200
commit40db4cdd24cf31fd6a192b229c132fe28e682eb8 (patch)
treecf2b523bdfbf0524b538f39faa7244a77a90fc54 /docs
parent8257400fd78e0fdc26fdcb207dbc6e923332e209 (diff)
downloadgitlab-40db4cdd24cf31fd6a192b229c132fe28e682eb8.tar.gz
Add support for access requests
Diffstat (limited to 'docs')
-rw-r--r--docs/api-objects.rst1
-rw-r--r--docs/gl_objects/access_requests.py38
-rw-r--r--docs/gl_objects/access_requests.rst45
3 files changed, 84 insertions, 0 deletions
diff --git a/docs/api-objects.rst b/docs/api-objects.rst
index 4050a51..82171d0 100644
--- a/docs/api-objects.rst
+++ b/docs/api-objects.rst
@@ -5,6 +5,7 @@ API objects manipulation
.. toctree::
:maxdepth: 1
+ gl_objects/access_requests
gl_objects/branches
gl_objects/builds
gl_objects/commits
diff --git a/docs/gl_objects/access_requests.py b/docs/gl_objects/access_requests.py
new file mode 100644
index 0000000..2a8c557
--- /dev/null
+++ b/docs/gl_objects/access_requests.py
@@ -0,0 +1,38 @@
+# list
+p_ars = gl.project_accessrequests.list(project_id=1)
+g_ars = gl.group_accessrequests.list(group_id=1)
+# or
+p_ars = project.accessrequests.list()
+g_ars = group.accessrequests.list()
+# end list
+
+# get
+p_ar = gl.project_accessrequests.get(user_id, project_id=1)
+g_ar = gl.group_accessrequests.get(user_id, group_id=1)
+# or
+p_ar = project.accessrequests.get(user_id)
+g_ar = group.accessrequests.get(user_id)
+# end get
+
+# create
+p_ar = gl.project_accessrequests.create({}, project_id=1)
+g_ar = gl.group_accessrequests.create({}, group_id=1)
+# or
+p_ar = project.accessrequests.create({})
+g_ar = group.accessrequests.create({})
+# end create
+
+# approve
+ar.approve() # defaults to DEVELOPER level
+ar.approve(access_level=gitlab.MASTER_ACCESS) # explicitly set access level
+# approve
+
+# delete
+gl.project_accessrequests.delete(user_id, project_id=1)
+gl.group_accessrequests.delete(user_id, group_id=1)
+# or
+project.accessrequests.delete(user_id)
+group.accessrequests.delete(user_id)
+# or
+ar.delete()
+# end delete
diff --git a/docs/gl_objects/access_requests.rst b/docs/gl_objects/access_requests.rst
new file mode 100644
index 0000000..a9e6d9b
--- /dev/null
+++ b/docs/gl_objects/access_requests.rst
@@ -0,0 +1,45 @@
+###############
+Access requests
+###############
+
+Use :class:`~gitlab.objects.ProjectAccessRequest` and
+:class:`~gitlab.objects.GroupAccessRequest` objects to manipulate access
+requests for projects and groups. The
+:attr:`gitlab.Gitlab.project_accessrequests`,
+:attr:`gitlab.Gitlab.group_accessrequests`, :attr:`Project.accessrequests
+<gitlab.objects.Project.accessrequests>` and :attr:`Group.accessrequests
+<gitlab.objects.Group.accessrequests>` manager objects provide helper
+functions.
+
+Examples
+--------
+
+List access requests from projects and groups:
+
+.. literalinclude:: access_requests.py
+ :start-after: # list
+ :end-before: # end list
+
+Get a single request:
+
+.. literalinclude:: access_requests.py
+ :start-after: # get
+ :end-before: # end get
+
+Create an access request:
+
+.. literalinclude:: access_requests.py
+ :start-after: # create
+ :end-before: # end create
+
+Approve an access request:
+
+.. literalinclude:: access_requests.py
+ :start-after: # approve
+ :end-before: # end approve
+
+Deny (delete) an access request:
+
+.. literalinclude:: access_requests.py
+ :start-after: # delete
+ :end-before: # end delete