diff --git a/docker/docker-entrypoint.sh b/docker/docker-entrypoint.sh index 74cdf03da..2a82e9795 100755 --- a/docker/docker-entrypoint.sh +++ b/docker/docker-entrypoint.sh @@ -2,6 +2,8 @@ # Setup environment variables +export MODE="self-hosted" + ######### # PORTS # ######### diff --git a/packages/api-gateway/.env.sample b/packages/api-gateway/.env.sample index 282f25bfb..357319740 100644 --- a/packages/api-gateway/.env.sample +++ b/packages/api-gateway/.env.sample @@ -1,4 +1,4 @@ -MODE=microservice # microservice | home-server +MODE=microservice # microservice | home-server | self-hosted LOG_LEVEL=debug NODE_ENV=development VERSION=development diff --git a/packages/auth/.env.sample b/packages/auth/.env.sample index e42a31a5f..ae231db14 100644 --- a/packages/auth/.env.sample +++ b/packages/auth/.env.sample @@ -1,4 +1,4 @@ -MODE=microservice # microservice | home-server +MODE=microservice # microservice | home-server | self-hosted LOG_LEVEL=debug NODE_ENV=development VERSION=development diff --git a/packages/files/.env.sample b/packages/files/.env.sample index 509868cef..4818a6e39 100644 --- a/packages/files/.env.sample +++ b/packages/files/.env.sample @@ -1,4 +1,4 @@ -MODE=microservice # microservice | home-server +MODE=microservice # microservice | home-server | self-hosted LOG_LEVEL=debug NODE_ENV=development VERSION=development diff --git a/packages/revisions/.env.sample b/packages/revisions/.env.sample index 287020ba9..baeed5879 100644 --- a/packages/revisions/.env.sample +++ b/packages/revisions/.env.sample @@ -1,4 +1,4 @@ -MODE=microservice # microservice | home-server +MODE=microservice # microservice | home-server | self-hosted LOG_LEVEL=info NODE_ENV=development VERSION=development diff --git a/packages/syncing-server/.env.sample b/packages/syncing-server/.env.sample index 377a64122..817006a23 100644 --- a/packages/syncing-server/.env.sample +++ b/packages/syncing-server/.env.sample @@ -1,4 +1,4 @@ -MODE=microservice # microservice | home-server +MODE=microservice # microservice | home-server | self-hosted LOG_LEVEL=info NODE_ENV=development VERSION=development diff --git a/packages/syncing-server/src/Bootstrap/Container.ts b/packages/syncing-server/src/Bootstrap/Container.ts index f921df8d9..aff6f195d 100644 --- a/packages/syncing-server/src/Bootstrap/Container.ts +++ b/packages/syncing-server/src/Bootstrap/Container.ts @@ -213,6 +213,8 @@ export class ContainerConfigLoader { container.bind(TYPES.Sync_Timer).toConstantValue(new Timer()) const isConfiguredForHomeServer = env.get('MODE', true) === 'home-server' + const isConfiguredForSelfHosting = env.get('MODE', true) === 'self-hosted' + const isConfiguredForHomeServerOrSelfHosting = isConfiguredForHomeServer || isConfiguredForSelfHosting const isSecondaryDatabaseEnabled = env.get('SECONDARY_DB_ENABLED', true) === 'true' container.bind(TYPES.Sync_Env).toConstantValue(env) @@ -412,7 +414,7 @@ export class ContainerConfigLoader { container .bind(TYPES.Sync_SQLItemRepository) .toConstantValue( - isConfiguredForHomeServer + isConfiguredForHomeServerOrSelfHosting ? new SQLItemRepository( container.get>(TYPES.Sync_ORMItemRepository), container.get>(TYPES.Sync_SQLItemPersistenceMapper), diff --git a/packages/syncing-server/src/Bootstrap/DataSource.ts b/packages/syncing-server/src/Bootstrap/DataSource.ts index 2ce5f695c..fbe59f63d 100644 --- a/packages/syncing-server/src/Bootstrap/DataSource.ts +++ b/packages/syncing-server/src/Bootstrap/DataSource.ts @@ -68,14 +68,15 @@ export class AppDataSource { this.env.load() const isConfiguredForMySQL = this.env.get('DB_TYPE') === 'mysql' - const isConfiguredForHomeServer = this.env.get('MODE', true) === 'home-server' + const isConfiguredForHomeServerOrSelfHosting = + this.env.get('MODE', true) === 'home-server' || this.env.get('MODE', true) === 'self-hosted' const maxQueryExecutionTime = this.env.get('DB_MAX_QUERY_EXECUTION_TIME', true) ? +this.env.get('DB_MAX_QUERY_EXECUTION_TIME', true) : 45_000 const migrationsSourceDirectoryName = isConfiguredForMySQL - ? isConfiguredForHomeServer + ? isConfiguredForHomeServerOrSelfHosting ? 'mysql' : 'mysql-legacy' : 'sqlite' @@ -83,7 +84,7 @@ export class AppDataSource { const commonDataSourceOptions = { maxQueryExecutionTime, entities: [ - isConfiguredForHomeServer ? SQLItem : SQLLegacyItem, + isConfiguredForHomeServerOrSelfHosting ? SQLItem : SQLLegacyItem, TypeORMNotification, TypeORMSharedVault, TypeORMSharedVaultUser, diff --git a/packages/syncing-server/src/Infra/TypeORM/SQLItemRepository.ts b/packages/syncing-server/src/Infra/TypeORM/SQLItemRepository.ts index 568d6110d..420b18dd9 100644 --- a/packages/syncing-server/src/Infra/TypeORM/SQLItemRepository.ts +++ b/packages/syncing-server/src/Infra/TypeORM/SQLItemRepository.ts @@ -3,20 +3,20 @@ import { MapperInterface } from '@standardnotes/domain-core' import { Logger } from 'winston' import { Item } from '../../Domain/Item/Item' -import { SQLLegacyItem } from './SQLLegacyItem' +import { SQLItem } from './SQLItem' import { SQLLegacyItemRepository } from './SQLLegacyItemRepository' import { ItemQuery } from '../../Domain/Item/ItemQuery' export class SQLItemRepository extends SQLLegacyItemRepository { constructor( - protected override ormRepository: Repository, - protected override mapper: MapperInterface, + protected override ormRepository: Repository, + protected override mapper: MapperInterface, protected override logger: Logger, ) { super(ormRepository, mapper, logger) } - protected override createFindAllQueryBuilder(query: ItemQuery): SelectQueryBuilder { + protected override createFindAllQueryBuilder(query: ItemQuery): SelectQueryBuilder { const queryBuilder = this.ormRepository.createQueryBuilder('item') if (query.sortBy !== undefined && query.sortOrder !== undefined) {