public async Task InitializeMigrationLogDb_DatabaseExists_Test() { //need a script to create the database or do we go straight into postgres itself and create the database? var builder = new ConfigurationBuilder() .SetBasePath(Directory.GetCurrentDirectory()) .AddJsonFile("appsettings.json", optional: false, reloadOnChange: true) .AddEnvironmentVariables(); DatabaseBuilderSettings databaseBuilderSettings = new DatabaseBuilderSettings(); IConfiguration config = builder.Build(); config.GetSection("DatabaseBuilderSettings").Bind(databaseBuilderSettings); Assert.True(!string.IsNullOrWhiteSpace(databaseBuilderSettings.SqlSourceDir)); Assert.True(!string.IsNullOrWhiteSpace(databaseBuilderSettings.MigrationSourceDir)); Assert.True(!string.IsNullOrWhiteSpace(databaseBuilderSettings.DatabaseHost)); Assert.True(!string.IsNullOrWhiteSpace(databaseBuilderSettings.DatabaseUserName)); Assert.True(!string.IsNullOrWhiteSpace(databaseBuilderSettings.DatabasePassword)); //need a method returning a list of migrations from the migrations directory MigrationProcessor migrationProcessor = new MigrationProcessor(databaseBuilderSettings); await migrationProcessor.Run(); Assert.NotNull(migrationProcessor.MigrationLogs); Assert.True(migrationProcessor.MigrationLogs.Count > 0); Assert.True(migrationProcessor.MigrationLogs.First().MigrationLogId > 0); }
public static void Main(string[] args) { var log = new ConsoleLogService(); var configService = new AzureBlobConfigurationService(new MyConfigurationManager(), log); var processor = new MigrationProcessor(configService, log); processor.Execute(new System.Threading.CancellationTokenSource().Token); Console.ReadKey(); }
public FaaMigrationControlQueueConsumer(IJobControlQueue <StorageQueueMessage> messageService, IConfigurationService configurationService, ILogService logService) : base(messageService, logService, "FAA Migration", ScheduledJobQueues.FaaMigration) { _logService = logService; _migrationProcessor = new MigrationProcessor(configurationService, _logService); }