[Top][All Lists]
[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
[myserver-commit] [3022] myserver-get: added remove command + removed sv
From: |
Daniele Perrone |
Subject: |
[myserver-commit] [3022] myserver-get: added remove command + removed svn protocol partial support. |
Date: |
Tue, 03 Mar 2009 16:06:15 +0000 |
Revision: 3022
http://svn.sv.gnu.org/viewvc/?view=rev&root=myserver&revision=3022
Author: dperrone
Date: 2009-03-03 16:06:15 +0000 (Tue, 03 Mar 2009)
Log Message:
-----------
myserver-get: added remove command + removed svn protocol partial support.
Modified Paths:
--------------
trunk/misc/myserver-get/myserver-get.py
trunk/misc/myserver-get/myserverGetLib/general.py
trunk/misc/myserver-get/myserverGetLib/local.py
Removed Paths:
-------------
trunk/misc/myserver-get/myserverGetLib/remoteSvn.py
Modified: trunk/misc/myserver-get/myserver-get.py
===================================================================
--- trunk/misc/myserver-get/myserver-get.py 2009-03-03 13:21:12 UTC (rev
3021)
+++ trunk/misc/myserver-get/myserver-get.py 2009-03-03 16:06:15 UTC (rev
3022)
@@ -5,13 +5,13 @@
def usage(arg):
- print "usage: myserver-get [update|search|install|source|source-auto]
[-v|--verbose|-h|--help] "
+ print "usage: myserver-get
[update|search|install|source|source-auto|remove] [-v|--verbose|-h|--help] "
def main(argv):
myserverGet = MyServerGet()
command = ""
- commands = {"":usage, "update":myserverGet.update,
"search":myserverGet.search,"install":myserverGet.install,"source":myserverGet.source,"source-auto":myserverGet.sourceAuto}
+ commands = {"":usage, "update":myserverGet.update,
"search":myserverGet.search,"install":myserverGet.install,"source":myserverGet.source,"source-auto":myserverGet.sourceAuto,"remove":myserverGet.remove}
import os
@@ -39,7 +39,7 @@
arguments = []
for arg in args:
- if arg in ("update","search","install","source","source-auto"):
+ if arg in
("update","search","install","source","source-auto","remove"):
command = arg
else:
arguments.append(arg)
Modified: trunk/misc/myserver-get/myserverGetLib/general.py
===================================================================
--- trunk/misc/myserver-get/myserverGetLib/general.py 2009-03-03 13:21:12 UTC
(rev 3021)
+++ trunk/misc/myserver-get/myserverGetLib/general.py 2009-03-03 16:06:15 UTC
(rev 3022)
@@ -13,7 +13,6 @@
self.__rep = repositoryFile
self.__listDir = listDir
self.__repManager = remote.RepositoryManager()
- self.__repManager.addSupportedRepository("svn",remoteSvn.RepositorySvn)
self.__repManager.addSupportedRepository("http",remoteGenericUrl.RepositoryGenericUrl)
self.__repManager.addSupportedRepository("ftp",remoteGenericUrl.RepositoryGenericUrl)
self.__list = []
@@ -128,7 +127,7 @@
downloadErrors = []
for (plugin,list) in toInstall:
- if self.__dbManager.isPluginInstalled(plugin):
+ if
self.__dbManager.isPluginInstalled(plugin["name"][0]["value"]):
console.writeln ("plugin %s already installed." %
(plugin["name"][0]["value"]))
continue
rep = self.__repManager.getRepository(list.repository)
@@ -141,7 +140,7 @@
return None
for (plugin,list) in toInstall:
- if self.__dbManager.isPluginInstalled(plugin):
+ if
self.__dbManager.isPluginInstalled(plugin["name"][0]["value"]):
continue
filename = config.MYSERVER_PLUGIN_DIR + "/%s-%s-%s.tar.gz" %
(plugin["name"][0]["value"],plugin["version"][0]["value"],config.arch)
@@ -209,4 +208,24 @@
continue
console.writeln("Error while compiling the source package. check
scons error message.")
-
\ No newline at end of file
+
+ def remove(self,args):
+ console.write ("the following plugins will be removed:\n %s\n do you
want to continue?[Y|n] " % (", ".join(args)))
+ resp = string.lower(console.readln())
+
+ while not resp in ("y\n","n\n","\n"):
+ console.write ("the following plugins will be removed:\n %s\n do
you want to continue?[Y|n] " % (", ".join(args)))
+ resp = string.lower(console.readln())
+ if resp == 'n\n':
+ console.writeln ("Install aborted.")
+ return None
+
+ console.writeln ("")
+
+ for arg in args:
+ if not self.__dbManager.isPluginInstalled(arg):
+ console.writeln("Plugin %s already not installed.\n" % (arg))
+ elif self.__dbManager.removePlugin(arg):
+ console.writeln("Plugin %s removed.\n" % (arg))
+ else:
+ console.writeln("Error while removing plugin %s.\n" % (arg))
\ No newline at end of file
Modified: trunk/misc/myserver-get/myserverGetLib/local.py
===================================================================
--- trunk/misc/myserver-get/myserverGetLib/local.py 2009-03-03 13:21:12 UTC
(rev 3021)
+++ trunk/misc/myserver-get/myserverGetLib/local.py 2009-03-03 16:06:15 UTC
(rev 3022)
@@ -149,9 +149,19 @@
self.plugins = [f for f in os.listdir(self.pluginsDir) if not
os.path.isfile(os.path.join(self.pluginsDir, f))]
def isPluginInstalled(self,plugin):
- return plugin["name"][0]["value"] in self.plugins
+ return plugin in self.plugins
-
+
+ def removePlugin(self,plugin):
+ import shutil
+ import os
+ pluginPath = os.path.join(self.pluginsDir,plugin)
+ try:
+ shutil.rmtree(pluginPath)
+ except Exception:
+ return False
+ return True
+
if __name__ == "__main__":
manager = ListManager("localhost.it",".","localhost.it-plugins.list")
Deleted: trunk/misc/myserver-get/myserverGetLib/remoteSvn.py
===================================================================
--- trunk/misc/myserver-get/myserverGetLib/remoteSvn.py 2009-03-03 13:21:12 UTC
(rev 3021)
+++ trunk/misc/myserver-get/myserverGetLib/remoteSvn.py 2009-03-03 16:06:15 UTC
(rev 3022)
@@ -1,43 +0,0 @@
-import pysvn
-import local
-import error
-import xml.dom.minidom
-from remote import Repository
-import console
-
-class RepositorySvn(Repository):
- def __init__ (self,url):
- Repository.__init__(self,url)
- self.client = pysvn.Client()
-
- def __getPluginsList(self):
- plugins = self.client.list(self.url + "/src",recurse=False)
- import string
- plugins = [string.split(elem[0]["repos_path"],"/")[-1] for elem in
plugins]
- return plugins[1:]
-
- def synchronizeListWithRepository(self, list):
- console.write("update: "+ list.repository + '\n')
- console.write("loading ")
- localRevision = int(list.getRevision())
- info = self.client.info2(self.url, recurse=False)
- console.write(". ")
- remoteRevision = int(info[0][1]["rev"].number)
- if localRevision == remoteRevision:
- console.write("local list already updated.\n")
- if localRevision > remoteRevision:
- raise error.FatalError("Local plugins list corrupted!!")
-
- if localRevision < remoteRevision:
- list.resetToEmptyListFile(`remoteRevision`)
- console.write(". ")
- plugins = self.__getPluginsList()
- console.write(". ")
- for plugin in plugins:
- url = self.url + "/src/" + plugin + "/plugin.xml"
- pluginXml = xml.dom.minidom.parseString(self.client.cat(url))
- console.write(". ")
- element = pluginXml.getElementsByTagName("PLUGIN")
- pluginInfo = list.addPluginWithXml(element[0])
- list.synchronizeListWithFileSystem()
- console.write("DONE.\n")
[Prev in Thread] |
Current Thread |
[Next in Thread] |
- [myserver-commit] [3022] myserver-get: added remove command + removed svn protocol partial support.,
Daniele Perrone <=