Coverage for ocp_resources/cluster_pool.py: 0%

30 statements  

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

1from __future__ import annotations 

2from typing import Any, Dict 

3from ocp_resources.resource import NamespacedResource 

4 

5 

6class ClusterPool(NamespacedResource): 

7 """ 

8 https://github.com/openshift/hive/blob/master/docs/clusterpools.md#supported-cloud-platforms 

9 """ 

10 

11 api_group: str = NamespacedResource.ApiGroup.HIVE_OPENSHIFT_IO 

12 

13 def __init__( 

14 self, 

15 base_domain: str = "", 

16 image_set_ref_name: str = "", 

17 platform: Dict[str, Any] | None = None, 

18 pull_secret_ref_name: str = "", 

19 running_count: int | None = None, 

20 size: int | None = None, 

21 **kwargs: Any, 

22 ) -> None: 

23 """ 

24 Args: 

25 base_domain (str): ClusterPool base domain 

26 image_set_ref_name (str): ClusterPool image set name 

27 platform (dict): ClusterPool platform 

28 pull_secret_ref_name (str): ClusterPool pull secret name 

29 running_count (int): ClusterPool running count 

30 size (int): ClusterPool size 

31 """ 

32 super().__init__(**kwargs) 

33 self.base_domain = base_domain 

34 self.image_set_ref_name = image_set_ref_name 

35 self.platform = platform 

36 self.pull_secret_ref_name = pull_secret_ref_name 

37 self.running_count = running_count 

38 self.size = size 

39 

40 def to_dict(self) -> None: 

41 super().to_dict() 

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

43 self.res["spec"] = {} 

44 _spec = self.res["spec"] 

45 if self.base_domain: 

46 _spec["baseDomain"] = self.base_domain 

47 

48 if self.image_set_ref_name: 

49 _spec["imageSetRef"] = {"name": self.image_set_ref_name} 

50 

51 if self.platform: 

52 _spec["platform"] = self.platform 

53 

54 if self.pull_secret_ref_name: 

55 _spec["pullSecretRef"] = {"name": self.pull_secret_ref_name} 

56 

57 if self.running_count: 

58 _spec["runningCount"] = self.running_count 

59 

60 if self.size: 

61 _spec["size"] = self.size