|
3 | 3 | https://docs.gitlab.com/ee/api/integrations.html
|
4 | 4 | """
|
5 | 5 |
|
6 |
| -from typing import Any, cast, Dict, List, Optional, Union |
| 6 | +from typing import Any, cast, List, Union |
7 | 7 |
|
8 | 8 | from gitlab import cli
|
9 | 9 | from gitlab.base import RESTManager, RESTObject
|
|
23 | 23 |
|
24 | 24 |
|
25 | 25 | class ProjectService(SaveMixin, ObjectDeleteMixin, RESTObject):
|
26 |
| - pass |
| 26 | + _id_attr = "slug" |
27 | 27 |
|
28 | 28 |
|
29 | 29 | class ProjectServiceManager(GetMixin, UpdateMixin, DeleteMixin, ListMixin, RESTManager):
|
@@ -264,53 +264,7 @@ class ProjectServiceManager(GetMixin, UpdateMixin, DeleteMixin, ListMixin, RESTM
|
264 | 264 | def get(
|
265 | 265 | self, id: Union[str, int], lazy: bool = False, **kwargs: Any
|
266 | 266 | ) -> ProjectService:
|
267 |
| - """Retrieve a single object. |
268 |
| -
|
269 |
| - Args: |
270 |
| - id: ID of the object to retrieve |
271 |
| - lazy: If True, don't request the server, but create a |
272 |
| - shallow object giving access to the managers. This is |
273 |
| - useful if you want to avoid useless calls to the API. |
274 |
| - **kwargs: Extra options to send to the server (e.g. sudo) |
275 |
| -
|
276 |
| - Returns: |
277 |
| - The generated RESTObject. |
278 |
| -
|
279 |
| - Raises: |
280 |
| - GitlabAuthenticationError: If authentication is not correct |
281 |
| - GitlabGetError: If the server cannot perform the request |
282 |
| - """ |
283 |
| - obj = cast( |
284 |
| - ProjectService, |
285 |
| - super().get(id, lazy=lazy, **kwargs), |
286 |
| - ) |
287 |
| - obj.id = id |
288 |
| - return obj |
289 |
| - |
290 |
| - def update( |
291 |
| - self, |
292 |
| - id: Optional[Union[str, int]] = None, |
293 |
| - new_data: Optional[Dict[str, Any]] = None, |
294 |
| - **kwargs: Any |
295 |
| - ) -> Dict[str, Any]: |
296 |
| - """Update an object on the server. |
297 |
| -
|
298 |
| - Args: |
299 |
| - id: ID of the object to update (can be None if not required) |
300 |
| - new_data: the update data for the object |
301 |
| - **kwargs: Extra options to send to the server (e.g. sudo) |
302 |
| -
|
303 |
| - Returns: |
304 |
| - The new object data (*not* a RESTObject) |
305 |
| -
|
306 |
| - Raises: |
307 |
| - GitlabAuthenticationError: If authentication is not correct |
308 |
| - GitlabUpdateError: If the server cannot perform the request |
309 |
| - """ |
310 |
| - new_data = new_data or {} |
311 |
| - result = super().update(id, new_data, **kwargs) |
312 |
| - self.id = id |
313 |
| - return result |
| 267 | + return cast(ProjectService, super().get(id=id, lazy=lazy, **kwargs)) |
314 | 268 |
|
315 | 269 | @cli.register_custom_action("ProjectServiceManager")
|
316 | 270 | def available(self, **kwargs: Any) -> List[str]:
|
|
0 commit comments