Index: trunk/wikiation/installer/extension_installer.py |
— | — | @@ -7,7 +7,7 @@ |
8 | 8 | |
9 | 9 | |
10 | 10 | class Extension_Installer(Installation_System): |
11 | | - system_name='extensions' |
| 11 | + system_name='extensions_generic' |
12 | 12 | destination_dir=None |
13 | 13 | |
14 | 14 | def set_instance(self,instance): |
Index: trunk/wikiation/installer/scripted_installer.py |
— | — | @@ -15,6 +15,12 @@ |
16 | 16 | |
17 | 17 | |
18 | 18 | class Scripted_Installer(Extension_Installer): |
| 19 | + |
| 20 | + def __init__(self,instance=None): |
| 21 | + Extension_Installer.__init__(self,instance) |
| 22 | + self.subsystemdir=os.path.join(settings.installfiles,"extensions") |
| 23 | + |
| 24 | + system_name="scripted" |
19 | 25 | def install_settings(self, installer_name): |
20 | 26 | installdir=self.installdir_name(installer_name) |
21 | 27 | settingsdir=os.path.join(self.destination_dir,"../LocalSettings") |
Index: trunk/wikiation/installer/combined_installer.py |
— | — | @@ -122,13 +122,17 @@ |
123 | 123 | |
124 | 124 | def install(self, installer_name): |
125 | 125 | """actually install something. Short circuits (Will try each installer, until success""" |
| 126 | + messages=[] |
126 | 127 | for system in self.systemlist: |
127 | 128 | try: |
128 | 129 | if system.install(installer_name): |
129 | 130 | return True |
130 | | - except: #TODO sometimes an installer may recognise that something CAN NOT be installed, in that case, we should stop trying. |
131 | | - pass |
| 131 | + except Exception,e: #TODO sometimes an installer may recognise that something CAN NOT be installed, in that case, we should stop trying. |
| 132 | + messages.append(system.system_name+": "+e.message) |
132 | 133 | |
| 134 | + if messages: |
| 135 | + raise Combined_Installer_Exception ("\n".join(messages)) |
| 136 | + |
133 | 137 | return False |
134 | 138 | |
135 | 139 | def setup(self, installer_name, destination_dir=None): |
— | — | @@ -153,8 +157,11 @@ |
154 | 158 | if system.uninstall(installer_name): |
155 | 159 | return True |
156 | 160 | except: #TODO sometimes an installer may recognise that something CAN NOT be uninstalled, in that case, we should stop trying |
157 | | - pass |
| 161 | + messages.append(system.system_name+": "+e.message) |
158 | 162 | |
| 163 | + if messages: |
| 164 | + raise Combined_Installer_Exception ("\n".join(messages)) |
| 165 | + |
159 | 166 | return False |
160 | 167 | |
161 | 168 | |
Index: trunk/wikiation/installer/installfiles/extensions/LiquidThreads.install/setup.sh |
— | — | @@ -1,3 +1,3 @@ |
2 | 2 | #!/bin/sh |
3 | 3 | |
4 | | -$MYSQL_COMMAND $DATABASE_NAME < $NAME/lqt.sql |
| 4 | +$MYSQL_COMMAND $DATABASE_NAME < $DESTINATION_DIR/$NAME/lqt.sql |
Index: trunk/wikiation/installer/installation_system.py |
— | — | @@ -252,17 +252,16 @@ |
253 | 253 | raise Installer_Exception("Can't find installer "+installer_name) |
254 | 254 | |
255 | 255 | if self.is_installed(installer_name): |
256 | | - print installer_name,"already installed." |
257 | | - return |
258 | | - try: |
259 | | - self.download(installer_name) |
260 | | - self.install_settings(installer_name) |
261 | | - self.setup(installer_name) |
| 256 | + raise Installer_Exception(installer_name+"already installed.") |
| 257 | + #try: |
| 258 | + self.download(installer_name) |
| 259 | + self.install_settings(installer_name) |
| 260 | + self.setup(installer_name) |
262 | 261 | # ... |
263 | | - except Installer_Exception: |
264 | | - pass |
265 | | - except: |
266 | | - raise |
| 262 | + #except Installer_Exception: |
| 263 | + # pass |
| 264 | + #except: |
| 265 | + # raise |
267 | 266 | |
268 | 267 | #query the installer to see if ot thinks the component is properly installed |
269 | 268 | # any flaws at this point are the fault of the installer :-P |
Index: trunk/wikiation/installer/installers.py |
— | — | @@ -189,7 +189,6 @@ |
190 | 190 | |
191 | 191 | except Installer_Exception,e: |
192 | 192 | print e.message |
193 | | - return |
194 | 193 | |
195 | 194 | |
196 | 195 | def uninstall(args): |