/// <summary> /// Initializes a new instance of the <see cref="MigrationRunner"/> class. /// </summary> /// <param name="options">The migration runner options</param> /// <param name="processorOptions">The migration processor options</param> /// <param name="profileLoader">The profile loader</param> /// <param name="processorAccessor">The migration processor accessor</param> /// <param name="maintenanceLoader">The maintenance loader</param> /// <param name="migrationLoader">The migration loader</param> /// <param name="logger">The logger</param> /// <param name="stopWatch">The stopwatch</param> /// <param name="migrationRunnerConventionsAccessor">The accessor for migration runner conventions</param> /// <param name="assemblySource">The assemblies to scan for migrations, etc...</param> /// <param name="migrationValidator">The validator for migrations</param> /// <param name="serviceProvider">The service provider</param> public MigrationRunner( [NotNull] IOptions <RunnerOptions> options, [NotNull] IOptionsSnapshot <ProcessorOptions> processorOptions, [NotNull] IProfileLoader profileLoader, [NotNull] IProcessorAccessor processorAccessor, [NotNull] IMaintenanceLoader maintenanceLoader, [NotNull] IMigrationInformationLoader migrationLoader, [NotNull] ILogger <MigrationRunner> logger, [NotNull] IStopWatch stopWatch, [NotNull] IMigrationRunnerConventionsAccessor migrationRunnerConventionsAccessor, [NotNull] IAssemblySource assemblySource, [NotNull] MigrationValidator migrationValidator, [NotNull] IServiceProvider serviceProvider) : this( options, processorOptions, profileLoader, processorAccessor, maintenanceLoader, migrationLoader, logger, stopWatch, migrationRunnerConventionsAccessor, assemblySource, migrationValidator, serviceProvider, migrationScopeHandler : null) { }
public ConstrainedMigrationRunner( IOptions <RunnerOptions> options, IOptionsSnapshot <ProcessorOptions> processorOptions, IProfileLoader profileLoader, IProcessorAccessor processorAccessor, IMaintenanceLoader maintenanceLoader, IMigrationInformationLoader migrationLoader, ILogger <MigrationRunner> logger, IStopWatch stopWatch, IMigrationRunnerConventionsAccessor migrationRunnerConventionsAccessor, IAssemblySource assemblySource, MigrationValidator migrationValidator, IServiceProvider serviceProvider ) : base(options, processorOptions, profileLoader, processorAccessor, maintenanceLoader, migrationLoader, logger, stopWatch, migrationRunnerConventionsAccessor, assemblySource, migrationValidator, serviceProvider ) { }
public void Setup() { _migrationConventions = new Mock <IMigrationRunnerConventions>(); _migrationConventions.Setup(x => x.GetMaintenanceStage).Returns(DefaultMigrationRunnerConventions.Instance.GetMaintenanceStage); _migrationConventions.Setup(x => x.TypeIsMigration).Returns(DefaultMigrationRunnerConventions.Instance.TypeIsMigration); _migrationConventions.Setup(x => x.TypeHasTags).Returns(DefaultMigrationRunnerConventions.Instance.TypeHasTags); _migrationConventions.Setup(x => x.TypeHasMatchingTags).Returns(DefaultMigrationRunnerConventions.Instance.TypeHasMatchingTags); _maintenanceLoader = ServiceCollectionExtensions.CreateServices() .Configure <RunnerOptions>(opt => opt.Tags = _tags) .AddSingleton <IMigrationRunnerConventionsAccessor>(new PassThroughMigrationRunnerConventionsAccessor(_migrationConventions.Object)) .BuildServiceProvider() .GetRequiredService <IMaintenanceLoader>(); _maintenanceLoaderNoTags = ServiceCollectionExtensions.CreateServices() .AddSingleton <IMigrationRunnerConventionsAccessor>(new PassThroughMigrationRunnerConventionsAccessor(_migrationConventions.Object)) .BuildServiceProvider() .GetRequiredService <IMaintenanceLoader>(); }
/// <summary> /// Initializes a new instance of the <see cref="MigrationRunner"/> class. /// </summary> /// <param name="options">The migration runner options</param> /// <param name="processorOptions">The migration processor options</param> /// <param name="profileLoader">The profile loader</param> /// <param name="processorAccessor">The migration processor accessor</param> /// <param name="maintenanceLoader">The maintenance loader</param> /// <param name="migrationLoader">The migration loader</param> /// <param name="logger">The logger</param> /// <param name="stopWatch">The stopwatch</param> /// <param name="migrationRunnerConventionsAccessor">The accessor for migration runner conventions</param> /// <param name="assemblySource">The assemblies to scan for migrations, etc...</param> /// <param name="migrationValidator">The validator for migrations</param> /// <param name="serviceProvider">The service provider</param> /// <param name="migrationScopeHandler">THe migration scope handler</param> public MigrationRunner( [NotNull] IOptions <RunnerOptions> options, [NotNull] IOptionsSnapshot <ProcessorOptions> processorOptions, [NotNull] IProfileLoader profileLoader, [NotNull] IProcessorAccessor processorAccessor, [NotNull] IMaintenanceLoader maintenanceLoader, [NotNull] IMigrationInformationLoader migrationLoader, [NotNull] ILogger <MigrationRunner> logger, [NotNull] IStopWatch stopWatch, [NotNull] IMigrationRunnerConventionsAccessor migrationRunnerConventionsAccessor, [NotNull] IAssemblySource assemblySource, [NotNull] MigrationValidator migrationValidator, [NotNull] IServiceProvider serviceProvider, [CanBeNull] IMigrationScopeManager migrationScopeHandler) { Processor = processorAccessor.Processor; Conventions = migrationRunnerConventionsAccessor.MigrationRunnerConventions; ProfileLoader = profileLoader; MaintenanceLoader = maintenanceLoader; MigrationLoader = migrationLoader; _serviceProvider = serviceProvider; _options = options.Value; _logger = logger; _stopWatch = stopWatch; _processorOptions = processorOptions.Value; _migrationScopeManager = migrationScopeHandler ?? new MigrationScopeHandler(Processor, processorOptions.Value); _migrationValidator = migrationValidator; _versionLoader = new Lazy <IVersionLoader>(serviceProvider.GetRequiredService <IVersionLoader>); #pragma warning disable 612 #pragma warning disable 618 _migrationAssemblies = new AssemblyCollectionService(assemblySource); #pragma warning restore 618 #pragma warning restore 612 }