summaryrefslogtreecommitdiff
path: root/docs/gl_objects/users.rst
diff options
context:
space:
mode:
authorGauvain Pocentek <gauvain@pocentek.net>2017-11-01 11:26:56 +0100
committerGauvain Pocentek <gauvain@pocentek.net>2017-11-01 11:26:56 +0100
commitd0c4118020e11c3132a46fc50d3caecf9a41e7d2 (patch)
tree097f42f0c5362ce6a9efa3f98bb0c3eb101bbbb6 /docs/gl_objects/users.rst
parentaba713a0bdbcdb5f898c5e7dcf276811bde6e99b (diff)
downloadgitlab-d0c4118020e11c3132a46fc50d3caecf9a41e7d2.tar.gz
Add support for GPG keys
Closes #355
Diffstat (limited to 'docs/gl_objects/users.rst')
-rw-r--r--docs/gl_objects/users.rst218
1 files changed, 132 insertions, 86 deletions
diff --git a/docs/gl_objects/users.rst b/docs/gl_objects/users.rst
index 8df93b0..d5b2976 100644
--- a/docs/gl_objects/users.rst
+++ b/docs/gl_objects/users.rst
@@ -1,14 +1,32 @@
-#####
+######################
+Users and current user
+######################
+
+The Gitlab API exposes user-related method that can be manipulated by admins
+only.
+
+The currently logged-in user is also exposed.
+
Users
-#####
+=====
+
+References
+----------
+
+* v4 API:
+
+ + :class:`gitlab.v4.objects.User`
+ + :class:`gitlab.v4.objects.UserManager`
+ + :attr:`gitlab.Gitlab.users`
-Use :class:`~gitlab.objects.User` objects to manipulate repository branches.
+* v3 API:
-To create :class:`~gitlab.objects.User` objects use the
-:attr:`gitlab.Gitlab.users` manager.
+ + :class:`gitlab.v3.objects.User`
+ + :class:`gitlab.v3.objects.UserManager`
+ + :attr:`gitlab.Gitlab.users`
Examples
-========
+--------
Get the list of users:
@@ -52,14 +70,97 @@ Block/Unblock a user:
:start-after: # block
:end-before: # end block
+Current User
+============
+
+* v4 API:
+
+ + :class:`gitlab.v4.objects.CurrentUser`
+ + :class:`gitlab.v4.objects.CurrentUserManager`
+ + :attr:`gitlab.Gitlab.user`
+
+* v3 API:
+
+ + :class:`gitlab.v3.objects.CurrentUser`
+ + :class:`gitlab.v3.objects.CurrentUserManager`
+ + :attr:`gitlab.Gitlab.user`
+
+Examples
+--------
+
+Get the current user:
+
+.. literalinclude:: users.py
+ :start-after: # currentuser get
+ :end-before: # end currentuser get
+
+GPG keys
+========
+
+You can manipulate GPG keys for the current user and for the other users if you
+are admin.
+
+* v4 API:
+
+ + :class:`gitlab.v4.objects.CurrentUserGPGKey`
+ + :class:`gitlab.v4.objects.CurrentUserGPGKeyManager`
+ + :attr:`gitlab.v4.objects.CurrentUser.gpgkeys`
+ + :class:`gitlab.v4.objects.UserGPGKey`
+ + :class:`gitlab.v4.objects.UserGPGKeyManager`
+ + :attr:`gitlab.v4.objects.User.gpgkeys`
+
+Exemples
+--------
+
+List GPG keys for a user:
+
+.. literalinclude:: users.py
+ :start-after: # gpgkey list
+ :end-before: # end gpgkey list
+
+Get an GPG gpgkey for a user:
+
+.. literalinclude:: users.py
+ :start-after: # gpgkey get
+ :end-before: # end gpgkey get
+
+Create an GPG gpgkey for a user:
+
+.. literalinclude:: users.py
+ :start-after: # gpgkey create
+ :end-before: # end gpgkey create
+
+Delete an GPG gpgkey for a user:
+
+.. literalinclude:: users.py
+ :start-after: # gpgkey delete
+ :end-before: # end gpgkey delete
+
SSH keys
========
-Use the :class:`~gitlab.objects.UserKey` objects to manage user keys.
+You can manipulate SSH keys for the current user and for the other users if you
+are admin.
+
+* v4 API:
+
+ + :class:`gitlab.v4.objects.CurrentUserKey`
+ + :class:`gitlab.v4.objects.CurrentUserKeyManager`
+ + :attr:`gitlab.v4.objects.CurrentUser.keys`
+ + :class:`gitlab.v4.objects.UserKey`
+ + :class:`gitlab.v4.objects.UserKeyManager`
+ + :attr:`gitlab.v4.objects.User.keys`
-To create :class:`~gitlab.objects.UserKey` objects use the
-:attr:`User.keys <gitlab.objects.User.keys>` or :attr:`gitlab.Gitlab.user_keys`
-managers.
+* v3 API:
+
+ + :class:`gitlab.v3.objects.CurrentUserKey`
+ + :class:`gitlab.v3.objects.CurrentUserKeyManager`
+ + :attr:`gitlab.v3.objects.CurrentUser.keys`
+ + :attr:`gitlab.Gitlab.user.keys`
+ + :class:`gitlab.v3.objects.UserKey`
+ + :class:`gitlab.v3.objects.UserKeyManager`
+ + :attr:`gitlab.v3.objects.User.keys`
+ + :attr:`gitlab.Gitlab.user_keys`
Exemples
--------
@@ -91,10 +192,28 @@ Delete an SSH key for a user:
Emails
======
-Use the :class:`~gitlab.objects.UserEmail` objects to manage user emails.
+You can manipulate emails for the current user and for the other users if you
+are admin.
+
+* v4 API:
+
+ + :class:`gitlab.v4.objects.CurrentUserEmail`
+ + :class:`gitlab.v4.objects.CurrentUserEmailManager`
+ + :attr:`gitlab.v4.objects.CurrentUser.emails`
+ + :class:`gitlab.v4.objects.UserEmail`
+ + :class:`gitlab.v4.objects.UserEmailManager`
+ + :attr:`gitlab.v4.objects.User.emails`
-To create :class:`~gitlab.objects.UserEmail` objects use the :attr:`User.emails
-<gitlab.objects.User.emails>` or :attr:`gitlab.Gitlab.user_emails` managers.
+* v3 API:
+
+ + :class:`gitlab.v3.objects.CurrentUserEmail`
+ + :class:`gitlab.v3.objects.CurrentUserEmailManager`
+ + :attr:`gitlab.v3.objects.CurrentUser.emails`
+ + :attr:`gitlab.Gitlab.user.emails`
+ + :class:`gitlab.v3.objects.UserEmail`
+ + :class:`gitlab.v3.objects.UserEmailManager`
+ + :attr:`gitlab.v3.objects.User.emails`
+ + :attr:`gitlab.Gitlab.user_emails`
Exemples
--------
@@ -122,76 +241,3 @@ Delete an email for a user:
.. literalinclude:: users.py
:start-after: # email delete
:end-before: # end email delete
-
-Current User
-============
-
-Use the :class:`~gitlab.objects.CurrentUser` object to get information about
-the currently logged-in user.
-
-Use the :class:`~gitlab.objects.CurrentUserKey` objects to manage user keys.
-
-To create :class:`~gitlab.objects.CurrentUserKey` objects use the
-:attr:`gitlab.objects.CurrentUser.keys <CurrentUser.keys>` manager.
-
-Use the :class:`~gitlab.objects.CurrentUserEmail` objects to manage user emails.
-
-To create :class:`~gitlab.objects.CurrentUserEmail` objects use the
-:attr:`gitlab.objects.CurrentUser.emails <CurrentUser.emails>` manager.
-
-Examples
---------
-
-Get the current user:
-
-.. literalinclude:: users.py
- :start-after: # currentuser get
- :end-before: # end currentuser get
-
-List the current user SSH keys:
-
-.. literalinclude:: users.py
- :start-after: # currentuser key list
- :end-before: # end currentuser key list
-
-Get a key for the current user:
-
-.. literalinclude:: users.py
- :start-after: # currentuser key get
- :end-before: # end currentuser key get
-
-Create a key for the current user:
-
-.. literalinclude:: users.py
- :start-after: # currentuser key create
- :end-before: # end currentuser key create
-
-Delete a key for the current user:
-
-.. literalinclude:: users.py
- :start-after: # currentuser key delete
- :end-before: # end currentuser key delete
-
-List the current user emails:
-
-.. literalinclude:: users.py
- :start-after: # currentuser email list
- :end-before: # end currentuser email list
-
-Get an email for the current user:
-
-.. literalinclude:: users.py
- :start-after: # currentuser email get
- :end-before: # end currentuser email get
-
-Create an email for the current user:
-
-.. literalinclude:: users.py
- :start-after: # currentuser email create
- :end-before: # end currentuser email create
-
-Delete an email for the current user:
-
-.. literalinclude:: users.py
- :start-after: # currentuser email delete
- :end-before: # end currentuser email delete