Coverage for ocp_resources/restore.py: 0%
16 statements
« prev ^ index » next coverage.py v7.6.10, created at 2025-01-30 10:48 +0200
« prev ^ index » next coverage.py v7.6.10, created at 2025-01-30 10:48 +0200
1# -*- coding: utf-8 -*-
3from ocp_resources.resource import MissingRequiredArgumentError, NamespacedResource
6class Restore(NamespacedResource):
7 """
8 Restore object.
9 """
11 api_group = NamespacedResource.ApiGroup.VELERO_IO
13 def __init__(
14 self,
15 name=None,
16 namespace=None,
17 included_namespaces=None,
18 backup_name=None,
19 client=None,
20 teardown=False,
21 yaml_file=None,
22 **kwargs,
23 ):
24 super().__init__(
25 name=name,
26 namespace=namespace,
27 client=client,
28 teardown=teardown,
29 yaml_file=yaml_file,
30 **kwargs,
31 )
33 self.included_namespaces = included_namespaces
34 self.backup_name = backup_name
36 def to_dict(self) -> None:
37 super().to_dict()
39 if not self.kind_dict and not self.yaml_file:
40 if not self.backup_name:
41 raise MissingRequiredArgumentError(argument="backup_name")
43 if not self.kind_dict and not self.yaml_file:
44 self.res.update({
45 "spec": {
46 "backupName": self.backup_name,
47 }
48 })
49 if self.included_namespaces:
50 self.res["spec"]["includedNamespaces"] = self.included_namespaces