mirror of
				https://github.com/jellyfin/jellyfin.git
				synced 2025-10-31 10:37:22 -04:00 
			
		
		
		
	
							parent
							
								
									ce0a6b2df8
								
							
						
					
					
						commit
						4096c973c6
					
				| @ -23,6 +23,7 @@ using MediaBrowser.Common.Configuration; | |||||||
| using MediaBrowser.Common.Net; | using MediaBrowser.Common.Net; | ||||||
| using MediaBrowser.Controller; | using MediaBrowser.Controller; | ||||||
| using Microsoft.AspNetCore.Hosting; | using Microsoft.AspNetCore.Hosting; | ||||||
|  | using Microsoft.EntityFrameworkCore; | ||||||
| using Microsoft.Extensions.Configuration; | using Microsoft.Extensions.Configuration; | ||||||
| using Microsoft.Extensions.DependencyInjection; | using Microsoft.Extensions.DependencyInjection; | ||||||
| using Microsoft.Extensions.Hosting; | using Microsoft.Extensions.Hosting; | ||||||
| @ -175,6 +176,9 @@ namespace Jellyfin.Server | |||||||
| 
 | 
 | ||||||
|                 // Re-use the host service provider in the app host since ASP.NET doesn't allow a custom service collection. |                 // Re-use the host service provider in the app host since ASP.NET doesn't allow a custom service collection. | ||||||
|                 appHost.ServiceProvider = _jellyfinHost.Services; |                 appHost.ServiceProvider = _jellyfinHost.Services; | ||||||
|  | 
 | ||||||
|  |                 PrepareDatabaseProvider(appHost.ServiceProvider); | ||||||
|  | 
 | ||||||
|                 await ApplyCoreMigrationsAsync(appHost.ServiceProvider, Migrations.Stages.JellyfinMigrationStageTypes.CoreInitialisaition).ConfigureAwait(false); |                 await ApplyCoreMigrationsAsync(appHost.ServiceProvider, Migrations.Stages.JellyfinMigrationStageTypes.CoreInitialisaition).ConfigureAwait(false); | ||||||
| 
 | 
 | ||||||
|                 await appHost.InitializeServices(startupConfig).ConfigureAwait(false); |                 await appHost.InitializeServices(startupConfig).ConfigureAwait(false); | ||||||
| @ -248,6 +252,9 @@ namespace Jellyfin.Server | |||||||
|                 .AddSingleton<IApplicationPaths>(appPaths) |                 .AddSingleton<IApplicationPaths>(appPaths) | ||||||
|                 .AddSingleton<ServerApplicationPaths>(appPaths); |                 .AddSingleton<ServerApplicationPaths>(appPaths); | ||||||
|             var startupService = migrationStartupServiceProvider.BuildServiceProvider(); |             var startupService = migrationStartupServiceProvider.BuildServiceProvider(); | ||||||
|  | 
 | ||||||
|  |             PrepareDatabaseProvider(startupService); | ||||||
|  | 
 | ||||||
|             var jellyfinMigrationService = ActivatorUtilities.CreateInstance<JellyfinMigrationService>(startupService); |             var jellyfinMigrationService = ActivatorUtilities.CreateInstance<JellyfinMigrationService>(startupService); | ||||||
|             await jellyfinMigrationService.CheckFirstTimeRunOrMigration(appPaths).ConfigureAwait(false); |             await jellyfinMigrationService.CheckFirstTimeRunOrMigration(appPaths).ConfigureAwait(false); | ||||||
|             await jellyfinMigrationService.MigrateStepAsync(Migrations.Stages.JellyfinMigrationStageTypes.PreInitialisation, startupService).ConfigureAwait(false); |             await jellyfinMigrationService.MigrateStepAsync(Migrations.Stages.JellyfinMigrationStageTypes.PreInitialisation, startupService).ConfigureAwait(false); | ||||||
| @ -302,5 +309,12 @@ namespace Jellyfin.Server | |||||||
|                 .AddEnvironmentVariables("JELLYFIN_") |                 .AddEnvironmentVariables("JELLYFIN_") | ||||||
|                 .AddInMemoryCollection(commandLineOpts.ConvertToConfig()); |                 .AddInMemoryCollection(commandLineOpts.ConvertToConfig()); | ||||||
|         } |         } | ||||||
|  | 
 | ||||||
|  |         private static void PrepareDatabaseProvider(IServiceProvider services) | ||||||
|  |         { | ||||||
|  |             var factory = services.GetRequiredService<IDbContextFactory<JellyfinDbContext>>(); | ||||||
|  |             var provider = services.GetRequiredService<IJellyfinDatabaseProvider>(); | ||||||
|  |             provider.DbContextFactory = factory; | ||||||
|  |         } | ||||||
|     } |     } | ||||||
| } | } | ||||||
|  | |||||||
		Loading…
	
	
			
			x
			
			
		
	
		Reference in New Issue
	
	Block a user