--- a/trunk/cforge/cforge/Package/CFORGE/Scripts/action.svn.checkout.py +++ b/trunk/cforge/cforge/Package/CFORGE/Scripts/action.svn.checkout.py @@ -9,9 +9,11 @@ import os.path import pysvn +system.prompt_handling = PromptHandling.None + if len(sys.argv) <= 1: - print("usage: <url> [<user> <pass> <working dir>]") - sys.exit() + print("usage: <url> [<user> <pass> <working dir>]") + sys.exit() url = sys.argv[1].replace("`````", "'") @@ -29,32 +31,41 @@ path = system.ui.browse_directory_dialog("Choose a checkout folder") def set_username(req): - req.username = username - req.password = password - req.save = True # Optional + req.username = username + req.password = password + req.save = True # Optional # checkout plain SVN files pysvn.svn_checkout_non_codesys(username, password, url, path) -try: - # get all CODESYS projects - svn.auth_username_password += set_username - cdsprojects = pysvn.svn_get_directories_with_codesys_projects(username, password, url) - # checkout all CODESYS projects - for p in cdsprojects: - dirbase = path + "\\" + p.rstrip('/').replace("/", "\\") +# get all CODESYS projects +svn.auth_username_password += set_username +cdsprojects = pysvn.svn_get_directories_with_codesys_projects(username, password, url) +# checkout all CODESYS projects +for p in cdsprojects: + dirbase = path + "\\" + p.rstrip('/').replace("/", "\\") filebase = os.path.basename(dirbase) dir = os.path.dirname(dirbase) - svn.checkout(url + "/" + p, dir, filebase + ".library") + print("checkout via SVN...") + try: + svn.checkout(url + "/" + p, dir, filebase + ".library") + except: + pass + print("... checkout done.") + + print("save project...") proj = projects.primary if proj.find("Project Information"): proj.save_as(dirbase + ".library") else: proj.save_as(dirbase + ".project") - proj.close() -except: - print ("Seems like the CODESYS SVN package is missing. Checked out only plain files and no CODESYS projects.") - print ("Exception cause: %s" % str(sys.exc_info())) - pass + print("... project saved.") + print("closing...") + try: + proj.close() + except: + pass + print("... project closed.") + system.exit()