From 83de31a999132b052f1ccec75eb664c9e4a18e87 Mon Sep 17 00:00:00 2001 From: crupest Date: Fri, 12 Feb 2021 22:10:56 +0800 Subject: feat: Add databse custom migration service. --- BackEnd/Timeline/Program.cs | 19 +++++++++---------- 1 file changed, 9 insertions(+), 10 deletions(-) (limited to 'BackEnd/Timeline/Program.cs') diff --git a/BackEnd/Timeline/Program.cs b/BackEnd/Timeline/Program.cs index 75bf6154..0f75908f 100644 --- a/BackEnd/Timeline/Program.cs +++ b/BackEnd/Timeline/Program.cs @@ -6,6 +6,7 @@ using Microsoft.Extensions.Hosting; using System.Resources; using Timeline.Entities; using Timeline.Services; +using Timeline.Services.Migration; [assembly: NeutralResourcesLanguage("en")] @@ -17,18 +18,16 @@ namespace Timeline { var host = CreateWebHostBuilder(args).Build(); - var env = host.Services.GetRequiredService(); + using (var scope = host.Services.CreateScope()) + { + var databaseBackupService = scope.ServiceProvider.GetRequiredService(); + databaseBackupService.BackupNow(); - var databaseBackupService = host.Services.GetRequiredService(); - databaseBackupService.BackupNow(); + var databaseContext = scope.ServiceProvider.GetRequiredService(); + databaseContext.Database.Migrate(); - if (env.IsProduction()) - { - using (var scope = host.Services.CreateScope()) - { - var databaseContext = scope.ServiceProvider.GetRequiredService(); - databaseContext.Database.Migrate(); - } + var customMigrationManager = scope.ServiceProvider.GetRequiredService(); + customMigrationManager.Migrate(); } host.Run(); -- cgit v1.2.3 From 5849d34d9fcf1ccfb7fe5cc0842765129f7198b4 Mon Sep 17 00:00:00 2001 From: crupest Date: Fri, 12 Feb 2021 22:32:10 +0800 Subject: fix: Fix migration bug. --- BackEnd/Timeline/Program.cs | 14 +++++++------- BackEnd/Timeline/Properties/launchSettings.json | 5 ++--- .../Timeline/Services/Migration/CustomMigrationManager.cs | 4 ++-- 3 files changed, 11 insertions(+), 12 deletions(-) (limited to 'BackEnd/Timeline/Program.cs') diff --git a/BackEnd/Timeline/Program.cs b/BackEnd/Timeline/Program.cs index 0f75908f..19fa6e37 100644 --- a/BackEnd/Timeline/Program.cs +++ b/BackEnd/Timeline/Program.cs @@ -4,6 +4,7 @@ using Microsoft.Extensions.Configuration; using Microsoft.Extensions.DependencyInjection; using Microsoft.Extensions.Hosting; using System.Resources; +using System.Threading.Tasks; using Timeline.Entities; using Timeline.Services; using Timeline.Services.Migration; @@ -14,20 +15,19 @@ namespace Timeline { public static class Program { - public static void Main(string[] args) + public async static Task Main(string[] args) { var host = CreateWebHostBuilder(args).Build(); + var databaseBackupService = host.Services.GetRequiredService(); + databaseBackupService.BackupNow(); + using (var scope = host.Services.CreateScope()) { - var databaseBackupService = scope.ServiceProvider.GetRequiredService(); - databaseBackupService.BackupNow(); - var databaseContext = scope.ServiceProvider.GetRequiredService(); - databaseContext.Database.Migrate(); - + await databaseContext.Database.MigrateAsync(); var customMigrationManager = scope.ServiceProvider.GetRequiredService(); - customMigrationManager.Migrate(); + await customMigrationManager.Migrate(); } host.Run(); diff --git a/BackEnd/Timeline/Properties/launchSettings.json b/BackEnd/Timeline/Properties/launchSettings.json index 851fc6a8..3c8a465b 100644 --- a/BackEnd/Timeline/Properties/launchSettings.json +++ b/BackEnd/Timeline/Properties/launchSettings.json @@ -5,8 +5,7 @@ "environmentVariables": { "ASPNETCORE_ENVIRONMENT": "Development", "ASPNETCORE_FRONTEND": "Proxy" - }, - "applicationUrl": "http://0.0.0.0:5000" + } }, "Dev-Mock": { "commandName": "Project", @@ -30,4 +29,4 @@ } } } -} \ No newline at end of file +} diff --git a/BackEnd/Timeline/Services/Migration/CustomMigrationManager.cs b/BackEnd/Timeline/Services/Migration/CustomMigrationManager.cs index ba86e10b..f6f156cc 100644 --- a/BackEnd/Timeline/Services/Migration/CustomMigrationManager.cs +++ b/BackEnd/Timeline/Services/Migration/CustomMigrationManager.cs @@ -36,7 +36,7 @@ namespace Timeline.Services.Migration if (!did) { - _logger.LogInformation("Begin custom migration '{0}'.", name); + _logger.LogWarning("Begin custom migration '{0}'.", name); await using var transaction = await _database.Database.BeginTransactionAsync(); @@ -47,7 +47,7 @@ namespace Timeline.Services.Migration await transaction.CommitAsync(); - _logger.LogInformation("End custom migration '{0}'.", name); + _logger.LogWarning("End custom migration '{0}'.", name); } } } -- cgit v1.2.3