sitemap/resource: adding minus in path, adding video
authorFred <fred@ash.tree.se>
Mon, 13 Feb 2017 20:05:55 +0000 (21:05 +0100)
committerFred <fred@ash.tree.se>
Mon, 13 Feb 2017 20:05:55 +0000 (21:05 +0100)
Adding minus - in the path parsing
Adding support for video, collecting and uploading video

treecutter/directory.py
treecutter/docbook.py
treecutter/page.py
treecutter/tools.py

index e7508d94f8d22b3403d60dd85c695eacc6584179..1b7a3e9f3ee6562ff9bfedd51ea0bdac409b1d7c 100644 (file)
@@ -10,7 +10,7 @@ class Directory():
     def __init__(self):
         self._cwd = u'.'
         self._tree = []
-        self._basepath = re.compile('[/\w\._-]*/\w+',re.UNICODE)
+        self._basepath = re.compile('[/\w\._-]*/[\w-]+',re.UNICODE)
 
     def scan(self):
         for dirname, dirnames, filenames in os.walk(self._cwd):
index e7b6e9f6d833099ca504276a24970c3cb4d94447..32cff722ed72211e414d265250a72ece77202da0 100644 (file)
@@ -121,6 +121,16 @@ class Docbook():
                 print "WARNING: File "+im+" is missing!"
         return res
 
+    def collect_videos(self):
+        res = []
+        for i in self._doc.xpath(u"//db:videodata[@fileref]",namespaces=const.XPATH):
+            im = os.path.join(self._dirname,i.get('fileref'))
+            if os.path.isfile(im):
+                res.append(im)
+            else:
+                print "WARNING: File "+im+" is missing!"
+        return res
+
     def collect_forms(self):
         res = []
         for i in self._doc.xpath(u"//html:form[@action]",namespaces=const.XPATH):
index 9b8b2441277264625abea7e9f657509810bcfb0b..3da0eef87674995d46712ec9171b9fbff89ad358 100644 (file)
@@ -46,8 +46,9 @@ class Page():
         self._doc.parse_xincludes()
         doc = self._doc.collect_links()
         img = self._doc.collect_images()
+        vid = self._doc.collect_videos()
         form= self._doc.collect_forms()
-        self._resources = doc + img + form
+        self._resources = doc + img + vid + form
 
     def render(self, transform):
         self._rendered_article = self._doc.xslt(transform['xhtml5'])
index fa06a6d1272ab2e2abf757177098462b5ecdf366..fa98ee0f9db5fa0a6a0be18e4a525e499fdcc3f9 100644 (file)
@@ -14,7 +14,7 @@ def mkdir_p(path):
         else: raise
 
 def publish(src,target):
-    cmd = ["rsync","-a","--delete",src,target]
+    cmd = ["rsync","-a","--delete","--partial",src,target]
     retcode = subprocess.call(cmd)
     if retcode:
         error('%s : retruncode %s' % (' '.join(cmd),str(retcode)))