Diff of /trunk/cforge/cforge/Package/CFORGE/Scripts/checkout-prj.py [r57] .. [r58]  Maximize  Restore

Switch to side-by-side view

--- a/trunk/cforge/cforge/Package/CFORGE/Scripts/checkout-prj.py
+++ b/trunk/cforge/cforge/Package/CFORGE/Scripts/checkout-prj.py
@@ -17,18 +17,18 @@
 # be passed to this command script
 def cforge_usage():
     help = [ 
-	    ["<path to CODESYS project>", "---"]
+        ["<path to CODESYS project>", "---"]
     ]
 
     return help
 
 def get_json(url):
-	web_client = WebClient()
-	r = web_client.DownloadData(url)
-	j = json.loads(bytes(r).decode('utf-8'))
-	return j
+    web_client = WebClient()
+    r = web_client.DownloadData(url)
+    j = json.loads(bytes(r).decode('utf-8'))
+    return j
 
-	
+    
 if len(sys.argv) <= 1:
     print("Oh, there are no arguments. Perhaps you forgot something?")
     sys.exit()
@@ -36,25 +36,32 @@
 args = sys.argv[1].split(" ")
 folder = ""
 if len(args) == 1:
-	folder = args[0].strip("/").split("/")[-1]
+    folder = args[0].strip("/").split("/")[-1]
 
 # username, password and path are specified at the command line
-if len(sys.argv) >= 3:
-	config['user'] = sys.argv[2]
-	config['pass'] = sys.argv[3]
-	config['folder'] = sys.argv[4]
+config = dict()
+if len(sys.argv)>= 3:
+    config['user'] = sys.argv[2]
+    config['pass'] = sys.argv[3]
+    config['folder'] = sys.argv[4]
 else:
-	config = ui.Dialog("Checkout Project", Folder=True, Credentials=True, DefaultFolder=folder)
+    config = ui.Dialog("Checkout Project", Folder=True, Credentials=True, DefaultFolder=folder)
 
 # iterate over all tools of the project, and checkout all SVN repositories,
 # excluding the CODESYS folders
 if config != None:
-	tools = get_json(base_url + '/' + sys.argv[1])
-	for tool in tools['tools']:
-		if tool['name'] == 'svn':
-			details = get_json(base_url + tool['url'])
-			repo = tool['url'][1:-1].replace('/', ',')
-			url = base_svn + repo
-			print(url)
-			pysvn.svn_checkout_non_codesys(config['user'], config['pass'], url, os.path.join(config['folder'], repo))
-			print('\n')
+    tools = get_json(base_url + '/' + sys.argv[1])
+    for tool in tools['tools']:
+        if tool['name'] == 'svn':
+            repo = tool['url'][1:-1].replace('/', ',')
+            url = base_svn + repo
+            print(url)
+            # checkout
+            pysvn.svn_checkout_non_codesys(config['user'], config['pass'], url, os.path.join(config['folder'], repo))
+            print('\n')
+            # store commit count
+            details = get_json(base_url + tool['url'])
+            f = open(os.path.join(config['folder'], repo + '.commit_count'), "w")
+            if f:
+                f.write(str(details['commit_count']))
+                f.close()