]> git.pld-linux.org Git - projects/pld-ftp-admin.git/blame - modules/baseftptree.py
- separate BasePkg and BaseFtpTree as lightweight versions for from-incoming.py
[projects/pld-ftp-admin.git] / modules / baseftptree.py
CommitLineData
151d31cc
MM
1# vi: encoding=utf-8 ts=8 sts=4 sw=4 et
2
3import string, config
4
5class Build:
6 def __init__(self):
7 self.requester=''
8 self.requester_email=''
9
10class BasePkg:
11 def __init__(self, name, tree):
12 self.files={}
13 self.info={}
14 self.build={}
15 self.tree=tree
16 self.name=name
17 self.load()
18
19 def __repr__(self):
20 return self.name
21
22 def load(self):
23 f=open(self.tree.basedir+'/SRPMS/.metadata/'+self.name+'.src.rpm.info', 'r')
24 for entry in f.readlines():
25 i=string.split(string.strip(entry), ':')
26 if i[0] == 'info':
27 if len(i)==3:
28 self.info[i[1]]=i[2]
29 elif i[1]=='build':
30 if not self.build.has_key(i[2]):
31 self.build[i[2]]=Build()
32 if i[3]=='requester':
33 self.build[i[2]].requester=i[4]
34 elif i[3]=='requester_email':
35 self.build[i[2]].requester_email=i[4]
36 else:
37 self.info[i[1]]=i[2:]
38 elif i[0] == 'file':
39 if not self.files.has_key(i[1]):
40 self.files[i[1]]=[]
41 self.files[i[1]].append(i[2])
42 f.close()
43
44class BaseFtpTree:
45 def __init__(self, tree):
46 self.basedir=config.value['ftp_dir']+'/'+tree
47
This page took 0.037663 seconds and 4 git commands to generate.