Coverage for ocp_resources/self_node_remediation_templates.py: 0%

13 statements  

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

1# API reference: https://github.com/medik8s/self-node-remediation 

2from typing import Any 

3 

4from ocp_resources.resource import NamespacedResource 

5 

6 

7class SelfNodeRemediationTemplate(NamespacedResource): 

8 """ 

9 SelfNodeRemediationTemplate CRD 

10 """ 

11 

12 api_group = NamespacedResource.ApiGroup.SELF_NODE_REMEDIATION_MEDIK8S_IO 

13 

14 def __init__( 

15 self, 

16 remediation_strategy: str = "", 

17 **kwargs: Any, 

18 ) -> None: 

19 """ 

20 Create SelfNodeRemediationTemplate object. 

21 

22 Args: 

23 remediation_strategy (str, optional): The remediation method for unhealthy nodes. 

24 """ 

25 super().__init__( 

26 **kwargs, 

27 ) 

28 self.remediation_strategy = remediation_strategy 

29 

30 def to_dict(self) -> None: 

31 super().to_dict() 

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

33 _spec = self.res["spec"] = {"template": {"spec": {}}} 

34 

35 if self.remediation_strategy: 

36 _spec["template"]["spec"]["remediationStrategy"] = self.remediation_strategy