Coverage for ocp_resources/limit_range.py: 0%

12 statements  

« prev     ^ index     » next       coverage.py v7.6.10, created at 2025-01-30 10:48 +0200

1# API reference: https://kubernetes.io/docs/reference/kubernetes-api/policy-resources/limit-range-v1/ 

2 

3from ocp_resources.resource import MissingRequiredArgumentError, NamespacedResource 

4 

5 

6class LimitRange(NamespacedResource): 

7 api_version = NamespacedResource.ApiVersion.V1 

8 

9 def __init__( 

10 self, 

11 limits=None, 

12 **kwargs, 

13 ): 

14 """ 

15 Create LimitRange object. 

16 

17 Args: 

18 limits (list of dict): List of limits 

19 example: [{"type": "Container", "default": {"cpu": "2"}, "max": {"cpu": "5"}}] 

20 """ 

21 super().__init__(**kwargs) 

22 self.limits = limits 

23 

24 def to_dict(self) -> None: 

25 super().to_dict() 

26 if not self.kind_dict and not self.yaml_file: 

27 if not self.limits: 

28 raise MissingRequiredArgumentError(argument="limits") 

29 

30 self.res.setdefault("spec", {})["limits"] = self.limits