5
from os.path import isdir
9
dev_path= "/media/backup"
10
prod_path = "/opt/backup"
15
months = ['Jan','Feb','Mar','Apr','May','Jun','Jul','Aug','Sep','Oct','Nov','Dec']
25
"Initialise varables and process args"
26
print 'Backup - Deletion Program \n Version %s ' % (version)
27
print '--------------------------------'
29
m = int(time.strftime('%m'))-1 # sort out array as months is zero based
30
for i in range(keep_months):
31
month_list.append(months[m-i])
36
if socket.gethostname() == "tigger2.charlwoods143.home":
39
print "Path - %s " %socket.gethostname()
40
print "Data Path - %s " % (base_path)
43
"delete files in directory before we delete dir"
45
for f in os.listdir(d):
46
os.remove(os.path.join(d,f))
50
def remove_old_dirs():
51
"Tidy up now we have finished"
55
for d in dir_del_list:
61
for d in file_del_list:
67
print 'Directories - deleted %d ' % (dc)
68
print 'Directorie files - deleted %d ' % (fc1)
69
print 'Files - deleted %d ' % (fc)
72
"Simple Debug Print statement"
77
"Split file name and return day"
82
"Split Directory name and return month"
86
def delete_old_months(period):
88
dir = os.path.join(base_path,period,server)
89
for f in os.listdir(dir):
90
if isdir(os.path.join(dir,f)):
93
if ml != split_dir(f):
96
dir_del_list.append(os.path.join(dir,f))
98
def delete_old_files(period):
100
dir = os.path.join(base_path,period,server)
101
for f in os.listdir(dir):
102
if isdir(os.path.join(dir,f)):
103
dir1=os.path.join(base_path,period,server,f,)
105
for f1 in os.listdir(dir1):
106
if split_file(f1) > mx:
109
for f1 in os.listdir(dir1):
110
if split_file(f1) != mx:
111
file_del_list.append(os.path.join(dir1,f1))
113
def delete_old_files_daily(daily,full):
115
dir = os.path.join(base_path,full,server)
116
for f in os.listdir(dir):
117
if isdir(os.path.join(dir,f)):
118
dir1=os.path.join(base_path,full,server,f,)
120
for f1 in os.listdir(dir1):
121
if split_file(f1) > mx:
124
dir2 = os.path.join(base_path,daily,server,f)
125
for f2 in os.listdir(dir2):
126
if int(split_file(f2)) < int(mx):
127
file_del_list.append(os.path.join(dir2,f2))
131
delete_old_months(full)
132
delete_old_months(inc)
133
delete_old_months(daily)
134
delete_old_files(inc)
135
delete_old_files(full)
136
delete_old_files_daily(daily,full)
141
if __name__ == "__main__":