1
0
mirror of https://github.com/Unleash/unleash.git synced 2025-05-31 01:16:01 +02:00

fix: pass shared event store (#3233)

This commit is contained in:
Mateusz Kwasniewski 2023-03-01 14:09:52 +01:00 committed by GitHub
parent 173e5a9a91
commit ad588fd0d2
No known key found for this signature in database
GPG Key ID: 4AEE18F83AFDEB23
3 changed files with 11 additions and 9 deletions

View File

@ -1,5 +1,5 @@
import { Db } from '../../db/db'; import { Db } from '../../db/db';
import { IUnleashConfig } from '../../types'; import { IEventStore, IUnleashConfig } from '../../types';
import ExportImportService from './export-import-service'; import ExportImportService from './export-import-service';
import { ImportTogglesStore } from './import-toggles-store'; import { ImportTogglesStore } from './import-toggles-store';
import FeatureToggleStore from '../../db/feature-toggle-store'; import FeatureToggleStore from '../../db/feature-toggle-store';
@ -9,7 +9,6 @@ import ProjectStore from '../../db/project-store';
import FeatureTagStore from '../../db/feature-tag-store'; import FeatureTagStore from '../../db/feature-tag-store';
import StrategyStore from '../../db/strategy-store'; import StrategyStore from '../../db/strategy-store';
import ContextFieldStore from '../../db/context-field-store'; import ContextFieldStore from '../../db/context-field-store';
import EventStore from '../../db/event-store';
import FeatureStrategiesStore from '../../db/feature-strategy-store'; import FeatureStrategiesStore from '../../db/feature-strategy-store';
import { import {
ContextService, ContextService,
@ -112,6 +111,7 @@ export const createFakeExportImportTogglesService = (
export const createExportImportTogglesService = ( export const createExportImportTogglesService = (
db: Db, db: Db,
config: IUnleashConfig, config: IUnleashConfig,
eventStore: IEventStore,
): ExportImportService => { ): ExportImportService => {
const { eventBus, getLogger, flagResolver } = config; const { eventBus, getLogger, flagResolver } = config;
const importTogglesStore = new ImportTogglesStore(db); const importTogglesStore = new ImportTogglesStore(db);
@ -128,7 +128,6 @@ export const createExportImportTogglesService = (
const featureTagStore = new FeatureTagStore(db, eventBus, getLogger); const featureTagStore = new FeatureTagStore(db, eventBus, getLogger);
const strategyStore = new StrategyStore(db, getLogger); const strategyStore = new StrategyStore(db, getLogger);
const contextFieldStore = new ContextFieldStore(db, getLogger); const contextFieldStore = new ContextFieldStore(db, getLogger);
const eventStore = new EventStore(db, getLogger);
const featureStrategiesStore = new FeatureStrategiesStore( const featureStrategiesStore = new FeatureStrategiesStore(
db, db,
eventBus, eventBus,
@ -141,7 +140,11 @@ export const createExportImportTogglesService = (
getLogger, getLogger,
); );
const accessService = createAccessService(db, config); const accessService = createAccessService(db, config);
const featureToggleService = createFeatureToggleService(db, config); const featureToggleService = createFeatureToggleService(
db,
config,
eventStore,
);
const featureTagService = new FeatureTagService( const featureTagService = new FeatureTagService(
{ {

View File

@ -4,7 +4,6 @@ import {
GroupService, GroupService,
SegmentService, SegmentService,
} from '../../services'; } from '../../services';
import EventStore from '../../db/event-store';
import FeatureStrategiesStore from '../../db/feature-strategy-store'; import FeatureStrategiesStore from '../../db/feature-strategy-store';
import FeatureToggleStore from '../../db/feature-toggle-store'; import FeatureToggleStore from '../../db/feature-toggle-store';
import FeatureToggleClientStore from '../../db/feature-toggle-client-store'; import FeatureToggleClientStore from '../../db/feature-toggle-client-store';
@ -19,7 +18,7 @@ import { AccessStore } from '../../db/access-store';
import RoleStore from '../../db/role-store'; import RoleStore from '../../db/role-store';
import EnvironmentStore from '../../db/environment-store'; import EnvironmentStore from '../../db/environment-store';
import { Db } from '../../db/db'; import { Db } from '../../db/db';
import { IUnleashConfig } from '../../types'; import { IEventStore, IUnleashConfig } from '../../types';
import FakeEventStore from '../../../test/fixtures/fake-event-store'; import FakeEventStore from '../../../test/fixtures/fake-event-store';
import FakeFeatureStrategiesStore from '../../../test/fixtures/fake-feature-strategies-store'; import FakeFeatureStrategiesStore from '../../../test/fixtures/fake-feature-strategies-store';
import FakeFeatureToggleStore from '../../../test/fixtures/fake-feature-toggle-store'; import FakeFeatureToggleStore from '../../../test/fixtures/fake-feature-toggle-store';
@ -38,9 +37,9 @@ import FakeEnvironmentStore from '../../../test/fixtures/fake-environment-store'
export const createFeatureToggleService = ( export const createFeatureToggleService = (
db: Db, db: Db,
config: IUnleashConfig, config: IUnleashConfig,
eventStore: IEventStore,
): FeatureToggleService => { ): FeatureToggleService => {
const { getLogger, eventBus, flagResolver } = config; const { getLogger, eventBus, flagResolver } = config;
const eventStore = new EventStore(db, getLogger);
const featureStrategiesStore = new FeatureStrategiesStore( const featureStrategiesStore = new FeatureStrategiesStore(
db, db,
eventBus, eventBus,

View File

@ -164,10 +164,10 @@ export const createServices = (
// TODO: this is a temporary seam to enable packaging by feature // TODO: this is a temporary seam to enable packaging by feature
const exportImportService = db const exportImportService = db
? createExportImportTogglesService(db, config) ? createExportImportTogglesService(db, config, stores.eventStore)
: createFakeExportImportTogglesService(config); : createFakeExportImportTogglesService(config);
const transactionalExportImportService = (txDb: Knex.Transaction) => const transactionalExportImportService = (txDb: Knex.Transaction) =>
createExportImportTogglesService(txDb, config); createExportImportTogglesService(txDb, config, stores.eventStore);
const userSplashService = new UserSplashService(stores, config); const userSplashService = new UserSplashService(stores, config);
const openApiService = new OpenApiService(config); const openApiService = new OpenApiService(config);
const clientSpecService = new ClientSpecService(config); const clientSpecService = new ClientSpecService(config);