From 141be1410a244fd1a1bc67b7f112fd239ead4e8e Mon Sep 17 00:00:00 2001
From: James Turner <zakalawe@mac.com>
Date: Sun, 3 Jan 2016 19:49:54 -0600
Subject: [PATCH] Fix adding of variants to catalog property-list

---
 maintain_catalog.py |  6 +++++-
 package.py          | 16 ++++++++++++++--
 2 files changed, 19 insertions(+), 3 deletions(-)

diff --git a/maintain_catalog.py b/maintain_catalog.py
index 2d1e51e..0c503b1 100755
--- a/maintain_catalog.py
+++ b/maintain_catalog.py
@@ -22,6 +22,10 @@ parser.add_argument("--no-update",
      dest = "noupdate",
      help="Disable updating from SCM source",
      action="store_true")
+parser.add_argument("--no-upload",
+     dest = "noupload",
+     help="Disable uploading to destination server",
+     action="store_true")
 parser.add_argument("dir", help="Catalog directory")
 args = parser.parse_args()
 
@@ -75,7 +79,7 @@ def initRepositories():
     return repositories
 
 def processUpload(node, outputPath):
-    if not node.getValue("enabled", True):
+    if args.noupload or not node.getValue("enabled", True):
         print "Upload disabled"
         return
 
diff --git a/package.py b/package.py
index a8a307a..0d692c5 100644
--- a/package.py
+++ b/package.py
@@ -15,16 +15,28 @@ class VariantData:
         #self._primary = primary
         self._path = path
         self._name = node.getValue("sim/description")
+        if (not self._name):
+            print "Missing description for " + path
+            self._name = "Missing description:" + self.id
 
         # ratings
 
         # seperate thumbnails
 
+    @property
+    def name(self):
+        return self._name
+
+    @property
+    def id(self):
+        return self._path[:-8] # "remove -set.xml" (8 chars)
+
     @property
     def catalogNode(self):
         n = sgprops.Node("variant")
-        n.addChild("id").value = self._path[:-8] # "remove -set.xml" (8 chars)
-        n.addChild("name").value = self._name
+        n.addChild("id").value = self.id
+        n.addChild("name").value = self.name
+        return n
 
 class PackageData:
     def __init__(self, path, scmRepo):