improve cache busting for module/theme static assets (ie. do not require a restart)

This commit is contained in:
sbwalker
2026-02-17 09:31:13 -05:00
parent e85b1001c6
commit 3af03d308e
8 changed files with 38 additions and 4 deletions

View File

@@ -164,6 +164,7 @@ namespace Oqtane.Controllers
{
_moduleDefinitions.UpdateModuleDefinition(moduleDefinition);
_syncManager.AddSyncEvent(_alias, EntityNames.ModuleDefinition, moduleDefinition.ModuleDefinitionId, SyncEventActions.Update);
_syncManager.AddSyncEvent(_alias, EntityNames.Site, _alias.SiteId, SyncEventActions.Refresh); // fingerprint changed
_logger.Log(LogLevel.Information, this, LogFunction.Update, "Module Definition Updated {ModuleDefinition}", moduleDefinition);
}
else

View File

@@ -117,6 +117,7 @@ namespace Oqtane.Controllers
{
_themes.UpdateTheme(theme);
_syncManager.AddSyncEvent(_alias, EntityNames.Theme, theme.ThemeId, SyncEventActions.Update);
_syncManager.AddSyncEvent(_alias, EntityNames.Site, _alias.SiteId, SyncEventActions.Refresh); // fingerprint changed
_logger.Log(LogLevel.Information, this, LogFunction.Update, "Theme Updated {Theme}", theme);
}
else

View File

@@ -113,7 +113,7 @@ namespace Oqtane.Repository
ModuleDefinition.Resources = moduleDefinition.Resources;
ModuleDefinition.IsEnabled = moduleDefinition.IsEnabled;
ModuleDefinition.PackageName = moduleDefinition.PackageName;
ModuleDefinition.Fingerprint = Utilities.GenerateSimpleHash(moduleDefinition.ModifiedOn.ToString("yyyyMMddHHmm"));
ModuleDefinition.Fingerprint = moduleDefinition.Fingerprint;
}
return ModuleDefinition;
@@ -186,6 +186,7 @@ namespace Oqtane.Repository
ModuleDefinition.CreatedOn = moduledefinition.CreatedOn;
ModuleDefinition.ModifiedBy = moduledefinition.ModifiedBy;
ModuleDefinition.ModifiedOn = moduledefinition.ModifiedOn;
ModuleDefinition.Fingerprint = Utilities.GenerateSimpleHash(moduledefinition.ModifiedOn.ToString("yyyyMMddHHmm"));
}
// any remaining module definitions are orphans

View File

@@ -99,7 +99,7 @@ namespace Oqtane.Repository
Theme.ContainerSettingsType = theme.ContainerSettingsType;
Theme.PackageName = theme.PackageName;
Theme.PermissionList = theme.PermissionList;
Theme.Fingerprint = Utilities.GenerateSimpleHash(theme.ModifiedOn.ToString("yyyyMMddHHmm"));
Theme.Fingerprint = theme.Fingerprint;
Themes.Add(Theme);
}
@@ -165,6 +165,7 @@ namespace Oqtane.Repository
Theme.CreatedOn = theme.CreatedOn;
Theme.ModifiedBy = theme.ModifiedBy;
Theme.ModifiedOn = theme.ModifiedOn;
Theme.Fingerprint = Utilities.GenerateSimpleHash(theme.ModifiedOn.ToString("yyyyMMddHHmm"));
}
// any remaining themes are orphans