source: lliurex-remote-installer/trunk/fuentes/lliurex-remote-installer-gui.install/usr/share/lliurex-remote-installer/N4dManager.py @ 4625

Last change on this file since 4625 was 4625, checked in by daduve, 2 years ago

Only show mirror APT if exists in server

File size: 3.7 KB
Line 
1import xmlrpclib
2
3class N4dManager:
4       
5       
6       
7        def __init__(self):
8               
9               
10                self.N4D_VAR="LLX_REMOTE_INSTALLER"
11               
12        #def init
13       
14       
15        def lliurex_version(self):
16               
17                try:
18               
19                        print self.client.lliurex_version("","LliurexVersion")
20                        return True
21                       
22                except Exception as e:
23                        print e
24                        return False
25                       
26                       
27               
28        #def
29       
30        def lliurex_mirror(self):
31                try:
32                        variable=self.client.lliurex_version("","LliurexVersion","-m")[1]
33                        #print variable
34                        return[True,variable]
35                       
36                except Exception as e:
37                        print e
38                        return False
39               
40        #def lliurex_mirror
41       
42        def test_var (self):
43               
44                try:
45                        self.variable=self.client.test_var(self.user,"LliureXRemoteInstaller",self.N4D_VAR,self.user[0],self.user[1])
46                        return[True,self.variable]
47               
48                except Exception as e:
49                        print e
50                        return False
51               
52        #def ge
53       
54
55        def get_variable (self):
56               
57                try:
58                       
59                        self.variable=self.client.get_variable(self.user,"VariablesManager",self.N4D_VAR)
60                        return[True,self.variable]
61               
62                except Exception as e:
63                        print e
64                        return False
65               
66        #def get_value
67       
68       
69       
70        def set_variable (self,dict):
71               
72                try:
73                        #self.variable.update(dict)
74                        if self.client.set_variable(self.user,"VariablesManager",self.N4D_VAR,dict)[0]:
75                                return True
76                        else:
77                                return False
78               
79                except Exception as e:
80                        print e
81                        return False
82               
83        #def set_variable
84       
85       
86       
87        def test_apt_list (self,dict):
88               
89                try:
90                        list_apt_ok=self.client.test_apt_list(self.user,"LliureXRemoteInstaller",dict)
91                        #list_apt_ok.wait()
92                        #print list_apt_ok
93                        if list_apt_ok[0]:
94                                return list_apt_ok
95                        else:
96                                return list_apt_ok
97               
98                except Exception as e:
99                        print e
100                        return False
101               
102        #def set_variable
103       
104        def test_deb_list (self,dict):
105               
106                try:
107                        list_deb_ok=self.client.test_deb_list(self.user,"LliureXRemoteInstaller",dict)
108                        #list_apt_ok.wait()
109                        if list_deb_ok[0]:
110                                return list_deb_ok
111                        else:
112                                return list_deb_ok
113               
114                except Exception as e:
115                        print e
116                        return False
117               
118        #def set_variable
119       
120        def test_list (self,dict,type):
121               
122                try:
123                        list_deb_ok=self.client.test_list(self.user,"LliureXRemoteInstaller",dict,type)
124                        print list_deb_ok
125                        return list_deb_ok
126               
127                except Exception as e:
128                        print e
129                        return False
130               
131        #def test_list
132       
133        def app_deb_exist (self,app=None,url=None):
134                try:
135                        app_deb_tested=self.client.app_deb_exist(self.user,"LliureXRemoteInstaller",app,url)
136                        return app_deb_tested
137                       
138                except Exception as e:
139                        print e
140                        return False
141                       
142               
143        def send_file(self,ip,url_source,url_dest):
144               
145                try:
146                        file_sended=self.client.send_file(self.user,"ScpManager",self.user[0],self.user[1],ip,url_source,url_dest)
147                        #list_apt_ok.wait()
148                        if file_sended["status"]:
149                                return True
150                        else:
151                                return False
152               
153                except Exception as e:
154                        print e
155                        return False
156               
157        #def set_variable
158       
159        def remove_file(self,file):
160               
161                try:
162                        file_sended=self.client.remove_file(self.user,"LliureXRemoteInstaller",file)
163                        #list_apt_ok.wait()
164                        return file_sended
165               
166                except Exception as e:
167                        print e
168                        return False
169               
170        #def set_variable
171       
172       
173        def validate_user(self,username,password,server_ip):
174               
175                try:
176                        if server_ip in {'',None}:
177                                server_ip="server"
178                        if server_ip in {'localhost'}:
179                                proxy="https://localhost:9779"
180                                #print proxy
181                                self.client=xmlrpclib.ServerProxy(proxy)
182                        else:
183                                proxy="https://%s:9779"%server_ip
184                                #print proxy
185                                self.client=xmlrpclib.ServerProxy(proxy)
186                       
187                               
188                        ret=self.client.validate_user(username,password)
189                        if ret[0]:
190                                if "adm" in ret[1] or "admins" in ret[1]:
191                                        self.user=(username,password)
192                                        return [True,""]
193                                else:
194                                        return [False,"User is not allowed to use this application"]
195                                       
196                        return [False,"Wrong user and/or password"]
197                       
198                except Exception as e:
199                        print e
200                        return [False,str(e)]
201               
202               
203        #def validate_user
204       
205       
206#class n4dmanager
Note: See TracBrowser for help on using the repository browser.