diff options
Diffstat (limited to 'docs')
-rw-r--r-- | docs/api-objects.rst | 1 | ||||
-rw-r--r-- | docs/gl_objects/users.py | 88 | ||||
-rw-r--r-- | docs/gl_objects/users.rst | 128 |
3 files changed, 217 insertions, 0 deletions
diff --git a/docs/api-objects.rst b/docs/api-objects.rst index 7b5d40b..8a15164 100644 --- a/docs/api-objects.rst +++ b/docs/api-objects.rst @@ -5,3 +5,4 @@ API objects manipulation .. toctree:: gl_objects/branches + gl_objects/users diff --git a/docs/gl_objects/users.py b/docs/gl_objects/users.py new file mode 100644 index 0000000..99b986f --- /dev/null +++ b/docs/gl_objects/users.py @@ -0,0 +1,88 @@ +# list +users = gl.users.list() +# end list + +# search +users = gl.users.list(search='oo') +# end search + +# get +# by ID +user = gl.users.get(2) +# by username +user = gl.users.list(username='root') +# end get + +# create +user = gl.users.create({'email': 'john@doe.com', + 'password': 's3cur3s3cr3T', + 'username': 'jdoe', + 'name': 'John Doe'}) +# end create + +# update +user.name = 'Real Name' +user.save() +# end update + +# delete +gl.users.delete(2) +user.delete() +# end delete + +# block +user.block() +user.unblock() +# end block + +# key list +keys = gl.user_keys.list(user_id=1) +# or +keys = user.keys.list() +# end key list + +# key get +key = gl.user_keys.list(1, user_id=1) +# or +key = user.keys.get(1) +# end key get + +# key create +k = gl.user_keys.create({'title': 'my_key', + 'key': open('/home/me/.ssh/id_rsa.pub').read()}, + user_id=2) +# or +k = user.keys.create({'title': 'my_key', + 'key': open('/home/me/.ssh/id_rsa.pub').read()}) +# end key create + +# key delete +gl.user_keys.delete(1, user_id=1) +# or +user.keys.delete(1) +# or +key.delete() +# end key delete + +# currentuser get +gl.auth() +current_user = gl.user +# end currentuser get + +# currentuser key list +keys = gl.user.keys.list() +# end currentuser key list + +# currentuser key get +key = gl.user.keys.get(1) +# end currentuser key get + +# currentuser key create +key = gl.user.keys.create({'id': 'my_key', 'key': key_content}) +# end currentuser key create + +# currentuser key delete +gl.user.keys.delete(1) +# or +key.delete() +# end currentuser key delete diff --git a/docs/gl_objects/users.rst b/docs/gl_objects/users.rst new file mode 100644 index 0000000..dfcfe73 --- /dev/null +++ b/docs/gl_objects/users.rst @@ -0,0 +1,128 @@ +##### +Users +##### + +Use :class:`User` objects to manipulate repository branches. + +To create :class:`User` objects use the :class:`Gitlab.users` manager. + +Examples +======== + +Get the list of users: + +.. literalinclude:: users.py + :start-after: # list + :end-before: # end list + +Search users whose username match the given string: + +.. literalinclude:: users.py + :start-after: # search + :end-before: # end search + +Get a single user: + +.. literalinclude:: users.py + :start-after: # get + :end-before: # end get + +Create a user: + +.. literalinclude:: users.py + :start-after: # create + :end-before: # end create + +Update a user: + +.. literalinclude:: users.py + :start-after: # update + :end-before: # end update + +Delete a user: + +.. literalinclude:: users.py + :start-after: # delete + :end-before: # end delete + +Block/Unblock a user: + +.. literalinclude:: users.py + :start-after: # block + :end-before: # end block + +SSH keys +======== + +Use the :class:`UserKey` objects to manage user keys. + +To create :class:`UserKey` objects use the :class:`User.keys` or +:class:`Gitlab.user_keys` managers. + +Exemples +-------- + +List SSH keys for a user: + +.. literalinclude:: users.py + :start-after: # key list + :end-before: # end key list + +Get an SSH key for a user: + +.. literalinclude:: users.py + :start-after: # key get + :end-before: # end key get + +Create an SSH key for a user: + +.. literalinclude:: users.py + :start-after: # key create + :end-before: # end key create + +Delete an SSH key for a user: + +.. literalinclude:: users.py + :start-after: # key delete + :end-before: # end key delete + +Current User +============ + +Use the :class:`CurrentUser` object to get information about the currently +logged-in user. + +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 + + |