Browse Source

Disable dynamic settings if `IsDataMigrationEnvironment`.

pull/16979/head
maliming 3 years ago
parent
commit
2f756de71f
No known key found for this signature in database GPG Key ID: A646B9CB645ECEA4
  1. 18
      modules/setting-management/src/Volo.Abp.SettingManagement.Domain/Volo/Abp/SettingManagement/AbpSettingManagementDomainModule.cs

18
modules/setting-management/src/Volo.Abp.SettingManagement.Domain/Volo/Abp/SettingManagement/AbpSettingManagementDomainModule.cs

@ -7,6 +7,7 @@ using Microsoft.Extensions.Logging;
using Microsoft.Extensions.Options;
using Polly;
using Volo.Abp.Caching;
using Volo.Abp.Data;
using Volo.Abp.DependencyInjection;
using Volo.Abp.Domain;
using Volo.Abp.Modularity;
@ -24,6 +25,7 @@ namespace Volo.Abp.SettingManagement;
public class AbpSettingManagementDomainModule : AbpModule
{
private readonly CancellationTokenSource _cancellationTokenSource = new();
private Task _initializeDynamicSettingsTask;
public override void ConfigureServices(ServiceConfigurationContext context)
{
@ -35,6 +37,15 @@ public class AbpSettingManagementDomainModule : AbpModule
options.Providers.Add<TenantSettingManagementProvider>();
options.Providers.Add<UserSettingManagementProvider>();
});
if (context.Services.IsDataMigrationEnvironment())
{
Configure<SettingManagementOptions>(options =>
{
options.SaveStaticSettingsToDatabase = false;
options.IsDynamicSettingStoreEnabled = false;
});
}
}
public override void OnApplicationInitialization(ApplicationInitializationContext context)
@ -54,6 +65,11 @@ public class AbpSettingManagementDomainModule : AbpModule
return Task.CompletedTask;
}
public Task GetInitializeDynamicSettingsTask()
{
return _initializeDynamicSettingsTask ?? Task.CompletedTask;
}
private void InitializeDynamicSettings(ApplicationInitializationContext context)
{
var options = context
@ -68,7 +84,7 @@ public class AbpSettingManagementDomainModule : AbpModule
var rootServiceProvider = context.ServiceProvider.GetRequiredService<IRootServiceProvider>();
Task.Run(async () =>
_initializeDynamicSettingsTask = Task.Run(async () =>
{
using var scope = rootServiceProvider.CreateScope();
var applicationLifetime = scope.ServiceProvider.GetService<IHostApplicationLifetime>();

Loading…
Cancel
Save