public ActionResult NotifyChange(string id, EnvironmentOverview model) { try { var env = reader.GetEnvironment(id); ViewBag.Name = env.ConfigSet.Name; ViewBag.System = env.ConfigSet.System; ViewBag.EnvironmentId = env.Id; ViewBag.Trail = env.GetTrail(); reader.PushChange(env.ConfigSet.Id, env.Name); try { RepositoryFactory.Backup(); } catch (Exception ex) { ex.Log(); } return(RedirectToAction("Details", "ConfigSet", new { name = env.ConfigSet.Name, system = env.ConfigSet.System })); } catch (Exception ex) { ex.Log(); throw; } }
public ActionResult Backup(string id) { try { var path = Path.Combine(ConfigurationManagerHelper.GetValueOnKey("stardust.StoreLocation"), id); var tempDir = RepositoryFactory.CreateTempDir(id, path); var file = string.Format("{0}\\{1}.zip", ConfigurationManagerHelper.GetValueOnKey("stardust.StoreLocation"), id); var finfo = RepositoryFactory.Backup(file, tempDir); return(File(finfo.FullName, "application/zip, application/octet-stream", string.Format("{0}.zip", id))); } catch (Exception ex) { ex.Log(); var currentStore = RepositoryFactory.GetConnectionString().Split(';').Last().Split('=').Last(); var lastFile = Directory.GetFiles(ConfigurationManagerHelper.GetValueOnKey("stardust.StoreLocation")).Where(f => f.Contains(currentStore) && !f.Contains(currentStore + ".zip")).OrderBy(s => s).SingleOrDefault(); return(File(lastFile, "application/zip, application/octet-stream", string.Format("{0}.zip", id))); } }