Movatterモバイル変換


[0]ホーム

URL:


Skip to content

Navigation Menu

Sign in
Appearance settings

Search code, repositories, users, issues, pull requests...

Provide feedback

We read every piece of feedback, and take your input very seriously.

Saved searches

Use saved searches to filter your results more quickly

Sign up
Appearance settings

Commitd0c4118

Browse files
author
Gauvain Pocentek
committed
Add support for GPG keys
Closes#355
1 parentaba713a commitd0c4118

File tree

4 files changed

+222
-138
lines changed

4 files changed

+222
-138
lines changed

‎docs/gl_objects/users.py

Lines changed: 19 additions & 52 deletions
Original file line numberDiff line numberDiff line change
@@ -36,37 +36,44 @@
3636
# end block
3737

3838
# key list
39-
keys=gl.user_keys.list(user_id=1)
40-
# or
4139
keys=user.keys.list()
4240
# end key list
4341

4442
# key get
45-
key=gl.user_keys.list(1,user_id=1)
46-
# or
4743
key=user.keys.get(1)
4844
# end key get
4945

5046
# key create
51-
k=gl.user_keys.create({'title':'my_key',
52-
'key':open('/home/me/.ssh/id_rsa.pub').read()},
53-
user_id=2)
54-
# or
5547
k=user.keys.create({'title':'my_key',
5648
'key':open('/home/me/.ssh/id_rsa.pub').read()})
5749
# end key create
5850

5951
# key delete
60-
gl.user_keys.delete(1,user_id=1)
61-
# or
6252
user.keys.delete(1)
6353
# or
6454
key.delete()
6555
# end key delete
6656

67-
# email list
68-
emails=gl.user_emails.list(user_id=1)
57+
# gpgkey list
58+
gpgkeys=user.gpgkeys.list()
59+
# end gpgkey list
60+
61+
# gpgkey get
62+
gpgkey=user.gpgkeys.get(1)
63+
# end gpgkey get
64+
65+
# gpgkey create
66+
# get the key with `gpg --export -a GPG_KEY_ID`
67+
k=user.gpgkeys.create({'key':public_key_content})
68+
# end gpgkey create
69+
70+
# gpgkey delete
71+
user.gpgkeys.delete(1)
6972
# or
73+
gpgkey.delete()
74+
# end gpgkey delete
75+
76+
# email list
7077
emails=user.emails.list()
7178
# end email list
7279

@@ -77,14 +84,10 @@
7784
# end email get
7885

7986
# email create
80-
k=gl.user_emails.create({'email':'foo@bar.com'},user_id=2)
81-
# or
8287
k=user.emails.create({'email':'foo@bar.com'})
8388
# end email create
8489

8590
# email delete
86-
gl.user_emails.delete(1,user_id=1)
87-
# or
8891
user.emails.delete(1)
8992
# or
9093
email.delete()
@@ -94,39 +97,3 @@
9497
gl.auth()
9598
current_user=gl.user
9699
# end currentuser get
97-
98-
# currentuser key list
99-
keys=gl.user.keys.list()
100-
# end currentuser key list
101-
102-
# currentuser key get
103-
key=gl.user.keys.get(1)
104-
# end currentuser key get
105-
106-
# currentuser key create
107-
key=gl.user.keys.create({'id':'my_key','key':key_content})
108-
# end currentuser key create
109-
110-
# currentuser key delete
111-
gl.user.keys.delete(1)
112-
# or
113-
key.delete()
114-
# end currentuser key delete
115-
116-
# currentuser email list
117-
emails=gl.user.emails.list()
118-
# end currentuser email list
119-
120-
# currentuser email get
121-
email=gl.user.emails.get(1)
122-
# end currentuser email get
123-
124-
# currentuser email create
125-
email=gl.user.emails.create({'email':'foo@bar.com'})
126-
# end currentuser email create
127-
128-
# currentuser email delete
129-
gl.user.emails.delete(1)
130-
# or
131-
email.delete()
132-
# end currentuser email delete

‎docs/gl_objects/users.rst

Lines changed: 132 additions & 86 deletions
Original file line numberDiff line numberDiff line change
@@ -1,14 +1,32 @@
1-
#####
1+
######################
2+
Users and current user
3+
######################
4+
5+
The Gitlab API exposes user-related method that can be manipulated by admins
6+
only.
7+
8+
The currently logged-in user is also exposed.
9+
210
Users
3-
#####
11+
=====
12+
13+
References
14+
----------
15+
16+
* v4 API:
17+
18+
+:class:`gitlab.v4.objects.User`
19+
+:class:`gitlab.v4.objects.UserManager`
20+
+:attr:`gitlab.Gitlab.users`
421

5-
Use:class:`~gitlab.objects.User` objects to manipulate repository branches.
22+
* v3 API:
623

7-
To create:class:`~gitlab.objects.User` objects use the
8-
:attr:`gitlab.Gitlab.users` manager.
24+
+:class:`gitlab.v3.objects.User`
25+
+:class:`gitlab.v3.objects.UserManager`
26+
+:attr:`gitlab.Gitlab.users`
927

1028
Examples
11-
========
29+
--------
1230

1331
Get the list of users:
1432

@@ -52,14 +70,97 @@ Block/Unblock a user:
5270
:start-after: # block
5371
:end-before: # end block
5472

73+
Current User
74+
============
75+
76+
* v4 API:
77+
78+
+:class:`gitlab.v4.objects.CurrentUser`
79+
+:class:`gitlab.v4.objects.CurrentUserManager`
80+
+:attr:`gitlab.Gitlab.user`
81+
82+
* v3 API:
83+
84+
+:class:`gitlab.v3.objects.CurrentUser`
85+
+:class:`gitlab.v3.objects.CurrentUserManager`
86+
+:attr:`gitlab.Gitlab.user`
87+
88+
Examples
89+
--------
90+
91+
Get the current user:
92+
93+
..literalinclude::users.py
94+
:start-after: # currentuser get
95+
:end-before: # end currentuser get
96+
97+
GPG keys
98+
========
99+
100+
You can manipulate GPG keys for the current user and for the other users if you
101+
are admin.
102+
103+
* v4 API:
104+
105+
+:class:`gitlab.v4.objects.CurrentUserGPGKey`
106+
+:class:`gitlab.v4.objects.CurrentUserGPGKeyManager`
107+
+:attr:`gitlab.v4.objects.CurrentUser.gpgkeys`
108+
+:class:`gitlab.v4.objects.UserGPGKey`
109+
+:class:`gitlab.v4.objects.UserGPGKeyManager`
110+
+:attr:`gitlab.v4.objects.User.gpgkeys`
111+
112+
Exemples
113+
--------
114+
115+
List GPG keys for a user:
116+
117+
..literalinclude::users.py
118+
:start-after: # gpgkey list
119+
:end-before: # end gpgkey list
120+
121+
Get an GPG gpgkey for a user:
122+
123+
..literalinclude::users.py
124+
:start-after: # gpgkey get
125+
:end-before: # end gpgkey get
126+
127+
Create an GPG gpgkey for a user:
128+
129+
..literalinclude::users.py
130+
:start-after: # gpgkey create
131+
:end-before: # end gpgkey create
132+
133+
Delete an GPG gpgkey for a user:
134+
135+
..literalinclude::users.py
136+
:start-after: # gpgkey delete
137+
:end-before: # end gpgkey delete
138+
55139
SSH keys
56140
========
57141

58-
Use the:class:`~gitlab.objects.UserKey` objects to manage user keys.
142+
You can manipulate SSH keys for the current user and for the other users if you
143+
are admin.
144+
145+
* v4 API:
146+
147+
+:class:`gitlab.v4.objects.CurrentUserKey`
148+
+:class:`gitlab.v4.objects.CurrentUserKeyManager`
149+
+:attr:`gitlab.v4.objects.CurrentUser.keys`
150+
+:class:`gitlab.v4.objects.UserKey`
151+
+:class:`gitlab.v4.objects.UserKeyManager`
152+
+:attr:`gitlab.v4.objects.User.keys`
59153

60-
To create:class:`~gitlab.objects.UserKey` objects use the
61-
:attr:`User.keys <gitlab.objects.User.keys>` or:attr:`gitlab.Gitlab.user_keys`
62-
managers.
154+
* v3 API:
155+
156+
+:class:`gitlab.v3.objects.CurrentUserKey`
157+
+:class:`gitlab.v3.objects.CurrentUserKeyManager`
158+
+:attr:`gitlab.v3.objects.CurrentUser.keys`
159+
+:attr:`gitlab.Gitlab.user.keys`
160+
+:class:`gitlab.v3.objects.UserKey`
161+
+:class:`gitlab.v3.objects.UserKeyManager`
162+
+:attr:`gitlab.v3.objects.User.keys`
163+
+:attr:`gitlab.Gitlab.user_keys`
63164

64165
Exemples
65166
--------
@@ -91,10 +192,28 @@ Delete an SSH key for a user:
91192
Emails
92193
======
93194

94-
Use the:class:`~gitlab.objects.UserEmail` objects to manage user emails.
195+
You can manipulate emails for the current user and for the other users if you
196+
are admin.
197+
198+
* v4 API:
199+
200+
+:class:`gitlab.v4.objects.CurrentUserEmail`
201+
+:class:`gitlab.v4.objects.CurrentUserEmailManager`
202+
+:attr:`gitlab.v4.objects.CurrentUser.emails`
203+
+:class:`gitlab.v4.objects.UserEmail`
204+
+:class:`gitlab.v4.objects.UserEmailManager`
205+
+:attr:`gitlab.v4.objects.User.emails`
95206

96-
To create:class:`~gitlab.objects.UserEmail` objects use the:attr:`User.emails
97-
<gitlab.objects.User.emails>` or:attr:`gitlab.Gitlab.user_emails` managers.
207+
* v3 API:
208+
209+
+:class:`gitlab.v3.objects.CurrentUserEmail`
210+
+:class:`gitlab.v3.objects.CurrentUserEmailManager`
211+
+:attr:`gitlab.v3.objects.CurrentUser.emails`
212+
+:attr:`gitlab.Gitlab.user.emails`
213+
+:class:`gitlab.v3.objects.UserEmail`
214+
+:class:`gitlab.v3.objects.UserEmailManager`
215+
+:attr:`gitlab.v3.objects.User.emails`
216+
+:attr:`gitlab.Gitlab.user_emails`
98217

99218
Exemples
100219
--------
@@ -122,76 +241,3 @@ Delete an email for a user:
122241
..literalinclude::users.py
123242
:start-after: # email delete
124243
:end-before: # end email delete
125-
126-
Current User
127-
============
128-
129-
Use the:class:`~gitlab.objects.CurrentUser` object to get information about
130-
the currently logged-in user.
131-
132-
Use the:class:`~gitlab.objects.CurrentUserKey` objects to manage user keys.
133-
134-
To create:class:`~gitlab.objects.CurrentUserKey` objects use the
135-
:attr:`gitlab.objects.CurrentUser.keys <CurrentUser.keys>` manager.
136-
137-
Use the:class:`~gitlab.objects.CurrentUserEmail` objects to manage user emails.
138-
139-
To create:class:`~gitlab.objects.CurrentUserEmail` objects use the
140-
:attr:`gitlab.objects.CurrentUser.emails <CurrentUser.emails>` manager.
141-
142-
Examples
143-
--------
144-
145-
Get the current user:
146-
147-
..literalinclude::users.py
148-
:start-after: # currentuser get
149-
:end-before: # end currentuser get
150-
151-
List the current user SSH keys:
152-
153-
..literalinclude::users.py
154-
:start-after: # currentuser key list
155-
:end-before: # end currentuser key list
156-
157-
Get a key for the current user:
158-
159-
..literalinclude::users.py
160-
:start-after: # currentuser key get
161-
:end-before: # end currentuser key get
162-
163-
Create a key for the current user:
164-
165-
..literalinclude::users.py
166-
:start-after: # currentuser key create
167-
:end-before: # end currentuser key create
168-
169-
Delete a key for the current user:
170-
171-
..literalinclude::users.py
172-
:start-after: # currentuser key delete
173-
:end-before: # end currentuser key delete
174-
175-
List the current user emails:
176-
177-
..literalinclude::users.py
178-
:start-after: # currentuser email list
179-
:end-before: # end currentuser email list
180-
181-
Get an email for the current user:
182-
183-
..literalinclude::users.py
184-
:start-after: # currentuser email get
185-
:end-before: # end currentuser email get
186-
187-
Create an email for the current user:
188-
189-
..literalinclude::users.py
190-
:start-after: # currentuser email create
191-
:end-before: # end currentuser email create
192-
193-
Delete an email for the current user:
194-
195-
..literalinclude::users.py
196-
:start-after: # currentuser email delete
197-
:end-before: # end currentuser email delete

0 commit comments

Comments
 (0)

[8]ページ先頭

©2009-2025 Movatter.jp