|
| 1 | +# Generated using https://github.com/RedHatQE/openshift-python-wrapper/blob/main/scripts/resource/README.md |
| 2 | + |
| 3 | + |
| 4 | +from typing import Any |
| 5 | +from ocp_resources.resource import NamespacedResource |
| 6 | +from ocp_resources.exceptions import MissingRequiredArgumentError |
| 7 | + |
| 8 | + |
| 9 | +class TempoStack(NamespacedResource): |
| 10 | + """ |
| 11 | + TempoStack manages a Tempo deployment in microservices mode. |
| 12 | + """ |
| 13 | + |
| 14 | + api_group: str = NamespacedResource.ApiGroup.TEMPO_GRAFANA_COM |
| 15 | + |
| 16 | + def __init__( |
| 17 | + self, |
| 18 | + management_state: str | None = None, |
| 19 | + resources: dict[str, Any] | None = None, |
| 20 | + storage: dict[str, Any] | None = None, |
| 21 | + storage_size: Any | None = None, |
| 22 | + template: dict[str, Any] | None = None, |
| 23 | + **kwargs: Any, |
| 24 | + ) -> None: |
| 25 | + r""" |
| 26 | + Args: |
| 27 | + management_state (str): ManagementState defines if the CR should be managed by the operator or |
| 28 | + not. Default is managed. |
| 29 | +
|
| 30 | + resources (dict[str, Any]): Resources defines resources configuration. |
| 31 | +
|
| 32 | + storage (dict[str, Any]): Storage defines the spec for the object storage endpoint to store |
| 33 | + traces. User is required to create secret and supply it. |
| 34 | +
|
| 35 | + storage_size (Any): StorageSize for PVCs used by ingester. Defaults to 10Gi. |
| 36 | +
|
| 37 | + template (dict[str, Any]): Template defines requirements for a set of tempo components. |
| 38 | + """ |
| 39 | + super().__init__(**kwargs) |
| 40 | + |
| 41 | + self.management_state = management_state |
| 42 | + self.resources = resources |
| 43 | + self.storage = storage |
| 44 | + self.storage_size = storage_size |
| 45 | + self.template = template |
| 46 | + |
| 47 | + def to_dict(self) -> None: |
| 48 | + super().to_dict() |
| 49 | + |
| 50 | + if not self.kind_dict and not self.yaml_file: |
| 51 | + if self.management_state is None: |
| 52 | + raise MissingRequiredArgumentError(argument="self.management_state") |
| 53 | + |
| 54 | + if self.storage is None: |
| 55 | + raise MissingRequiredArgumentError(argument="self.storage") |
| 56 | + |
| 57 | + self.res["spec"] = {} |
| 58 | + _spec = self.res["spec"] |
| 59 | + |
| 60 | + _spec["managementState"] = self.management_state |
| 61 | + _spec["storage"] = self.storage |
| 62 | + |
| 63 | + if self.resources is not None: |
| 64 | + _spec["resources"] = self.resources |
| 65 | + |
| 66 | + if self.storage_size is not None: |
| 67 | + _spec["storageSize"] = self.storage_size |
| 68 | + |
| 69 | + if self.template is not None: |
| 70 | + _spec["template"] = self.template |
| 71 | + |
| 72 | + # End of generated code |
0 commit comments