1+ # -*- coding: utf-8 -*-
2+
3+ from cdpy .common import CdpSdkBase , Squelch , CdpcliWrapper
4+
5+ ENTITLEMENT_DISABLED = 'DRS not enabled on CDP Tenant'
6+
7+
8+ class CdpyDrscp (CdpSdkBase ):
9+ def __init__ (self , * args , ** kwargs ):
10+ super ().__init__ (* args , ** kwargs )
11+
12+ def create_backup (self , backup_name = None , item_name = None ):
13+ return self .sdk .call (
14+ svc = 'drscp' , func = 'create_backup' , ret_field = 'backupCrn' , squelch = [
15+ Squelch ('NOT_FOUND' ), Squelch ('INVALID_ARGUMENT' ),
16+ Squelch (value = 'PATH_DISABLED' , warning = ENTITLEMENT_DISABLED )
17+ ],
18+ backupName = backup_name ,
19+ itemName = item_name
20+ )
21+
22+ def delete_backup (self , backup_crn ):
23+ return self .sdk .call (
24+ svc = 'drscp' , func = 'delete_backup' , ret_field = 'deleteBackupCrn' , squelch = [
25+ Squelch ('NOT_FOUND' ), Squelch ('INVALID_ARGUMENT' ),
26+ Squelch (value = 'PATH_DISABLED' , warning = ENTITLEMENT_DISABLED )
27+ ],
28+ backupCrn = backup_crn
29+ )
30+
31+ def describe_backup (self , backup_crn ):
32+ return self .sdk .call (
33+ svc = 'drscp' , func = 'describe_backup' , ret_field = 'backup' , squelch = [
34+ Squelch ('NOT_FOUND' ), Squelch ('INVALID_ARGUMENT' ),
35+ Squelch (value = 'PATH_DISABLED' , warning = ENTITLEMENT_DISABLED )
36+ ],
37+ backupCrn = backup_crn
38+ )
39+
40+ def describe_restore (self , restore_crn ):
41+ return self .sdk .call (
42+ svc = 'drscp' , func = 'describe_restore' , ret_field = 'restore' , squelch = [
43+ Squelch ('NOT_FOUND' ), Squelch ('INVALID_ARGUMENT' ),
44+ Squelch (value = 'PATH_DISABLED' , warning = ENTITLEMENT_DISABLED )
45+ ],
46+ restoreCrn = restore_crn
47+ )
48+
49+ def get_logs (self , crn ):
50+ return self .sdk .call (
51+ svc = 'drscp' , func = 'get_logs' , ret_field = 'logs' , squelch = [
52+ Squelch ('NOT_FOUND' ), Squelch ('INVALID_ARGUMENT' ),
53+ Squelch (value = 'PATH_DISABLED' , warning = ENTITLEMENT_DISABLED )
54+ ],
55+ crn = crn
56+ )
57+
58+ def list_backup_entities (self ):
59+ return self .sdk .call (
60+ svc = 'drscp' , func = 'list_backup_entities' , ret_field = 'items' , squelch = [
61+ Squelch ('NOT_FOUND' ), Squelch ('INVALID_ARGUMENT' ),
62+ Squelch (value = 'PATH_DISABLED' , warning = ENTITLEMENT_DISABLED )
63+ ]
64+ )
65+
66+ def list_backups (self , backup_name = None , job_states = None ):
67+ return self .sdk .call (
68+ svc = 'drscp' , func = 'list_backups' , ret_field = 'backup' , squelch = [
69+ Squelch ('NOT_FOUND' ), Squelch ('INVALID_ARGUMENT' ),
70+ Squelch (value = 'PATH_DISABLED' , warning = ENTITLEMENT_DISABLED )
71+ ],
72+ backupName = backup_name ,
73+ jobStates = job_states
74+ )
75+
76+ def list_restores (self , job_states = None , backup_crn = None ):
77+ return self .sdk .call (
78+ svc = 'drscp' , func = 'list_restores' , ret_field = 'restores' , squelch = [
79+ Squelch ('NOT_FOUND' ), Squelch ('INVALID_ARGUMENT' ),
80+ Squelch (value = 'PATH_DISABLED' , warning = ENTITLEMENT_DISABLED )
81+ ],
82+ jobStates = job_states ,
83+ backupCrn = backup_crn
84+ )
85+
86+ def restore_backup (self , backup_crn ):
87+ return self .sdk .call (
88+ svc = 'drscp' , func = 'restore_backup' , ret_field = 'restoreCrn' , squelch = [
89+ Squelch ('NOT_FOUND' ), Squelch ('INVALID_ARGUMENT' ),
90+ Squelch (value = 'PATH_DISABLED' , warning = ENTITLEMENT_DISABLED )
91+ ],
92+ backupCrn = backup_crn
93+ )
0 commit comments