public static TM_UserData handle_External_GitPull(this TM_UserData userData) { try { //var gitLocationFile = HttpContextFactory.Server.MapPath("gitUserData.config"); var gitLocationFile = TMConfig.Current.getGitUserConfigFile(); if (gitLocationFile.fileExists()) { "[TM_UserData] [handleExternalGitPull] found gitConfigFile: {0}".info(gitLocationFile); var gitLocation = gitLocationFile.fileContents(); if (gitLocation.notValid()) { return(userData); } //if (userData.Path_UserData.dirExists() && userData.Path_UserData.files().empty()) // userData.Path_UserData.delete_Folder(); //Adjust Path_UserData so that there is an unique folder per repo var extraFolderName = "_Git_"; // extra mode to switch of multiple Git_Hosting in same server extraFolderName += gitLocation.replace("\\", "/").split("/").last().remove(".git").safeFileName(); userData.Path_UserData = userData.Path_UserData_Base + extraFolderName; //userData.Path_UserData.createDir(); "[TM_UserData] [handleExternalGitPull] userData.Path_UserData set to: {0}".debug(userData.Path_UserData); if (MiscUtils.online().isFalse() && gitLocation.dirExists().isFalse()) { return(userData); } if (userData.Path_UserData.isGitRepository()) { "[TM_UserData] [GitPull]".info(); var result = userData.Path_UserData.git_Pull(); if (result) { userData.pushUserRepository(userData.Path_UserData.git_Open()); } } else { userData.clone_UserDataRepo(gitLocation, userData.Path_UserData); } } } catch (Exception ex) { ex.log("[TM_UserData] [handleExternalGitPull]"); } return(userData); }