mirror of
https://github.com/toeverything/AFFiNE.git
synced 2026-02-13 12:55:00 +00:00
chore(server): set script flavor instead of NODE_ENV (#10121)
This commit is contained in:
@@ -19,6 +19,7 @@ test.before('start app', async t => {
|
||||
sync: false,
|
||||
renderer: false,
|
||||
doc: true,
|
||||
script: false,
|
||||
} satisfies typeof AFFiNE.flavor;
|
||||
const app = await createTestingApp({
|
||||
imports: [buildAppModule()],
|
||||
|
||||
@@ -21,6 +21,7 @@ test.before('start app', async t => {
|
||||
sync: false,
|
||||
renderer: false,
|
||||
doc: false,
|
||||
script: false,
|
||||
} satisfies typeof AFFiNE.flavor;
|
||||
const app = await createTestingApp({
|
||||
imports: [buildAppModule()],
|
||||
|
||||
@@ -19,6 +19,7 @@ test.before('start app', async t => {
|
||||
sync: false,
|
||||
renderer: true,
|
||||
doc: false,
|
||||
script: false,
|
||||
} satisfies typeof AFFiNE.flavor;
|
||||
const app = await createTestingApp({
|
||||
imports: [buildAppModule()],
|
||||
|
||||
@@ -19,6 +19,7 @@ test.before('start app', async t => {
|
||||
sync: true,
|
||||
renderer: false,
|
||||
doc: false,
|
||||
script: false,
|
||||
} satisfies typeof AFFiNE.flavor;
|
||||
const app = await createTestingApp({
|
||||
imports: [buildAppModule()],
|
||||
|
||||
@@ -2,9 +2,16 @@ import type { LeafPaths } from '../utils/types';
|
||||
import { AppStartupConfig } from './types';
|
||||
|
||||
export type EnvConfigType = 'string' | 'int' | 'float' | 'boolean';
|
||||
export type ServerFlavor = 'allinone' | 'graphql' | 'sync' | 'renderer' | 'doc';
|
||||
export type ServerFlavor =
|
||||
| 'allinone'
|
||||
| 'graphql'
|
||||
| 'sync'
|
||||
| 'renderer'
|
||||
| 'doc'
|
||||
| 'script';
|
||||
|
||||
export type AFFINE_ENV = 'dev' | 'beta' | 'production';
|
||||
export type NODE_ENV = 'development' | 'test' | 'production' | 'script';
|
||||
export type NODE_ENV = 'development' | 'test' | 'production';
|
||||
|
||||
export enum DeploymentType {
|
||||
Affine = 'affine',
|
||||
@@ -29,7 +36,6 @@ export interface PreDefinedAFFiNEConfig {
|
||||
prod: boolean;
|
||||
dev: boolean;
|
||||
test: boolean;
|
||||
script: boolean;
|
||||
};
|
||||
readonly deploy: boolean;
|
||||
}
|
||||
|
||||
@@ -13,12 +13,15 @@ import {
|
||||
import { readEnv } from './env';
|
||||
import { defaultStartupConfig } from './register';
|
||||
|
||||
function expectFlavor(flavor: ServerFlavor, expected: ServerFlavor) {
|
||||
return flavor === expected || flavor === 'allinone';
|
||||
}
|
||||
|
||||
function getPredefinedAFFiNEConfig(): PreDefinedAFFiNEConfig {
|
||||
const NODE_ENV = readEnv<NODE_ENV>('NODE_ENV', 'production', [
|
||||
'development',
|
||||
'test',
|
||||
'production',
|
||||
'script',
|
||||
]);
|
||||
const AFFINE_ENV = readEnv<AFFINE_ENV>('AFFINE_ENV', 'production', [
|
||||
'dev',
|
||||
@@ -31,6 +34,7 @@ function getPredefinedAFFiNEConfig(): PreDefinedAFFiNEConfig {
|
||||
'sync',
|
||||
'renderer',
|
||||
'doc',
|
||||
'script',
|
||||
]);
|
||||
const deploymentType = readEnv<DeploymentType>(
|
||||
'DEPLOYMENT_TYPE',
|
||||
@@ -49,7 +53,6 @@ function getPredefinedAFFiNEConfig(): PreDefinedAFFiNEConfig {
|
||||
prod: NODE_ENV === 'production',
|
||||
dev: NODE_ENV === 'development',
|
||||
test: NODE_ENV === 'test',
|
||||
script: NODE_ENV === 'script',
|
||||
};
|
||||
|
||||
return {
|
||||
@@ -64,10 +67,11 @@ function getPredefinedAFFiNEConfig(): PreDefinedAFFiNEConfig {
|
||||
flavor: {
|
||||
type: flavor,
|
||||
allinone: flavor === 'allinone',
|
||||
graphql: flavor === 'graphql' || flavor === 'allinone',
|
||||
sync: flavor === 'sync' || flavor === 'allinone',
|
||||
renderer: flavor === 'renderer' || flavor === 'allinone',
|
||||
doc: flavor === 'doc' || flavor === 'allinone',
|
||||
graphql: expectFlavor(flavor, 'graphql'),
|
||||
sync: expectFlavor(flavor, 'sync'),
|
||||
renderer: expectFlavor(flavor, 'renderer'),
|
||||
doc: expectFlavor(flavor, 'doc'),
|
||||
script: expectFlavor(flavor, 'script'),
|
||||
},
|
||||
affine,
|
||||
node,
|
||||
|
||||
@@ -1,11 +1,10 @@
|
||||
import '../prelude';
|
||||
|
||||
import { Logger } from '@nestjs/common';
|
||||
import { CommandFactory } from 'nest-commander';
|
||||
|
||||
async function bootstrap() {
|
||||
AFFiNE.metrics.enabled = false;
|
||||
AFFiNE.doc.manager.enableUpdateAutoMerging = false;
|
||||
process.env.SERVER_FLAVOR = 'script';
|
||||
|
||||
await import('../prelude');
|
||||
const { CliAppModule } = await import('./app');
|
||||
await CommandFactory.run(CliAppModule, new Logger()).catch(e => {
|
||||
console.error(e);
|
||||
|
||||
Reference in New Issue
Block a user