public PackageInstallResult CleanUp(PackageInstallModel model) { var definition = Services.PackagingService.GetInstalledPackageById(model.Id); if (definition == null) { throw new InvalidOperationException("Not package definition found with id " + model.Id); } var zipFile = new FileInfo(definition.PackagePath); var packageInfo = Services.PackagingService.GetCompiledPackageInfo(zipFile); zipFile.Delete(); //bump cdf to be safe var clientDependencyConfig = new ClientDependencyConfiguration(Logger); var clientDependencyUpdated = clientDependencyConfig.UpdateVersionNumber( UmbracoVersion.SemanticVersion, DateTime.UtcNow, "yyyyMMdd"); var redirectUrl = ""; if (!packageInfo.PackageView.IsNullOrWhiteSpace()) { redirectUrl = $"/packages/packages/options/{model.Id}"; } return(new PackageInstallResult { Id = model.Id, ZipFileName = model.ZipFileName, PackageGuid = model.PackageGuid, PostInstallationPath = redirectUrl }); }
public PackageInstallResult CleanUp(PackageInstallModel model) { var ins = new global::Umbraco.Web._Legacy.Packager.Installer(Security.CurrentUser.Id); var tempDir = IOHelper.MapPath(model.TemporaryDirectoryPath); ins.LoadConfig(IOHelper.MapPath(model.TemporaryDirectoryPath)); ins.InstallCleanUp(model.Id, IOHelper.MapPath(model.TemporaryDirectoryPath)); var clientDependencyConfig = new ClientDependencyConfiguration(Logger); var clientDependencyUpdated = clientDependencyConfig.UpdateVersionNumber( UmbracoVersion.SemanticVersion, DateTime.UtcNow, "yyyyMMdd"); var redirectUrl = ""; if (ins.Control.IsNullOrWhiteSpace() == false) { redirectUrl = string.Format("/developer/framed/{0}", Uri.EscapeDataString( string.Format("/umbraco/developer/Packages/installer.aspx?installing=custominstaller&dir={0}&pId={1}&customControl={2}&customUrl={3}", tempDir, model.Id, ins.Control, ins.Url))); } return(new PackageInstallResult { Id = model.Id, ZipFilePath = model.ZipFilePath, PackageGuid = model.PackageGuid, RepositoryGuid = model.RepositoryGuid, TemporaryDirectoryPath = model.TemporaryDirectoryPath, PostInstallationPath = redirectUrl }); }
public override InstallSetupResult Execute(object model) { //This is synonymous with library.RefreshContent() - but we don't want to use library // for anything anymore so welll use the method that it is wrapping. This will just make sure // the correct xml structure exists in the xml cache file. This is required by some upgrade scripts // that may modify the cmsContentXml table directly. DistributedCache.Instance.RefreshAllPageCache(); // Update configurationStatus GlobalSettings.ConfigurationStatus = UmbracoVersion.GetSemanticVersion().ToSemanticString(); // Update ClientDependency version var clientDependencyConfig = new ClientDependencyConfiguration(_applicationContext.ProfilingLogger.Logger); var clientDependencyUpdated = clientDependencyConfig.IncreaseVersionNumber(); var security = new WebSecurity(_httpContext, _applicationContext); security.PerformLogin(0); //reports the ended install var ih = new InstallHelper(UmbracoContext.Current); ih.InstallStatus(true, ""); return(null); }
/// <summary> /// changes the client dependency number (and cleans the cache) - so we get no browser odds /// </summary> private void IncrementClientDependency(HttpContextBase httpContext) { // Update ClientDependency version var clientDependencyConfig = new ClientDependencyConfiguration(logger); var clientDependencyUpdated = clientDependencyConfig.UpdateVersionNumber( UmbracoVersion.SemanticVersion, DateTime.UtcNow, "yyyyMMdd"); // Delete ClientDependency temp directories to make sure we get fresh caches var clientDependencyTempFilesDeleted = clientDependencyConfig.ClearTempFiles(httpContext); }
public ActionResult Index() { if (ApplicationContext.Current.IsConfigured) { return(Redirect(SystemDirectories.Umbraco.EnsureEndsWith('/'))); } if (ApplicationContext.Current.IsUpgrading) { // Update ClientDependency version var clientDependencyConfig = new ClientDependencyConfiguration(_umbracoContext.Application.ProfilingLogger.Logger); var clientDependencyUpdated = clientDependencyConfig.UpdateVersionNumber( UmbracoVersion.GetSemanticVersion(), DateTime.UtcNow, "yyyyMMdd"); // Delete ClientDependency temp directories to make sure we get fresh caches var clientDependencyTempFilesDeleted = clientDependencyConfig.ClearTempFiles(HttpContext); var result = _umbracoContext.Security.ValidateCurrentUser(false); switch (result) { case ValidateRequestAttempt.FailedNoPrivileges: case ValidateRequestAttempt.FailedNoContextId: return(Redirect(SystemDirectories.Umbraco + "/AuthorizeUpgrade?redir=" + Server.UrlEncode(Request.RawUrl))); } } //gen the install base url ViewBag.InstallApiBaseUrl = Url.GetUmbracoApiService("GetSetup", "InstallApi", "UmbracoInstall").TrimEnd("GetSetup"); //get the base umbraco folder ViewBag.UmbracoBaseFolder = IOHelper.ResolveUrl(SystemDirectories.Umbraco); InstallHelper ih = new InstallHelper(_umbracoContext); ih.InstallStatus(false, ""); //always ensure full path (see NOTE in the class remarks) return(View(GlobalSettings.Path.EnsureEndsWith('/') + "install/views/index.cshtml")); }
protected void Page_Load(object sender, System.EventArgs e) { // Update configurationStatus try { GlobalSettings.ConfigurationStatus = UmbracoVersion.Current.ToString(3); Application["umbracoNeedConfiguration"] = false; } catch (Exception) { //errorLiteral.Text = ex.ToString(); } // Update ClientDependency version var clientDependencyConfig = new ClientDependencyConfiguration(); var clientDependencyUpdated = clientDependencyConfig.IncreaseVersionNumber(); if (!global::umbraco.cms.businesslogic.skinning.Skinning.IsStarterKitInstalled()) { customizeSite.Visible = false; } }