First comit
This commit is contained in:
204
server_custom/deprecated-config.ts
Executable file
204
server_custom/deprecated-config.ts
Executable file
@@ -0,0 +1,204 @@
|
||||
/* tslint:disable:no-console */
|
||||
import path from 'path';
|
||||
import { ConnectionOptions } from 'typeorm';
|
||||
import { WinstonLogger, RedisSessionCachePlugin, LogLevel, TypeOrmLogger, SystemConfig, DefaultJobQueuePlugin, TypeORMHealthCheckStrategy } from '@phoenix/core';
|
||||
import { AssetServerPlugin } from '@phoenix/asset-server-plugin';
|
||||
import { ADMIN_API_PATH, API_PORT, SHOP_API_PATH, SUPER_ADMIN_USER_IDENTIFIER, WORKER_PORT } from '@phoenix/common';
|
||||
import { EmailPlugin, FileBasedTemplateLoader, defaultEmailHandlers } from '@phoenix/email-plugin';
|
||||
import { BillBeePlugin } from "@phoenix/bill-bee-plugin";
|
||||
import { ChannelPilotProPlugin } from "@phoenix/channel-pilot-pro-plugin";
|
||||
import { ShopifyPlugin } from '@phoenix/shopify-plugin';
|
||||
//import { BonnAPIPlugin } from '../plugins/bonn-api-plugin/bonn-api-plugin.module';
|
||||
|
||||
/**
|
||||
* Config settings used during development
|
||||
*/
|
||||
export const customConfig: SystemConfig = {
|
||||
apiOptions: {
|
||||
port: API_PORT,
|
||||
workerPort: WORKER_PORT,
|
||||
// sslPort: API_SSL_PORT,
|
||||
//sslCertPath: path.join(__dirname, '../secrets/certificate.crt'),
|
||||
//sslKeyPath: path.join(__dirname, '../secrets/certificate.key'),
|
||||
adminApiPath: ADMIN_API_PATH,
|
||||
shopApiPath: SHOP_API_PATH,
|
||||
cors: {
|
||||
origin: true,
|
||||
credentials: true,
|
||||
},
|
||||
},
|
||||
authOptions: {
|
||||
disableAuth: true,
|
||||
sessionSecret: 'some-secret',
|
||||
requireVerification: false,
|
||||
tokenMethod: "bearer",
|
||||
superadminCredentials: {
|
||||
identifier: SUPER_ADMIN_USER_IDENTIFIER,
|
||||
password: process.env.SUPER_ADMIN_USER_PASSWORD || 'superadmin'
|
||||
}
|
||||
},
|
||||
dbConnectionOptions: {
|
||||
// synchronize: true,
|
||||
// logging: true,
|
||||
logger: new TypeOrmLogger(),
|
||||
...getDbConfig(),
|
||||
// logging: ["error"]
|
||||
},
|
||||
// paymentOptions: {
|
||||
// // paymentMethodHandlers: [examplePaymentHandler],
|
||||
// },
|
||||
customFields: {
|
||||
Product: [
|
||||
{
|
||||
name: 'testo',
|
||||
type: 'string',
|
||||
}
|
||||
],
|
||||
DocumentLineItem: [
|
||||
],
|
||||
PostProductionDetail: [
|
||||
],
|
||||
},
|
||||
searchableFields: {
|
||||
processResource: [
|
||||
"scanId"
|
||||
]
|
||||
},
|
||||
logger: new WinstonLogger({ level: LogLevel.Debug }),
|
||||
workerLogger: new WinstonLogger({ level: LogLevel.Info }),
|
||||
//importExportOptions: {
|
||||
// importProductAssetsDir: path.join(__dirname, 'import', 'product-assets'),
|
||||
//},
|
||||
defaults: {
|
||||
defaultTakeNumber: 100,
|
||||
},
|
||||
plugins: [
|
||||
RedisSessionCachePlugin.init({
|
||||
namespace: 'phx-session',
|
||||
redisOptions: {
|
||||
host: process.env.REDIS_HOST || 'redis',
|
||||
port: process.env.REDIS_PORT ? parseInt(process.env.REDIS_PORT) : 6379,
|
||||
db: process.env.REDIS_DB ? parseInt(process.env.REDIS_DB) : 0,
|
||||
password: process.env.REDIS_PASSWORD || 'admin'
|
||||
}
|
||||
}),
|
||||
AssetServerPlugin.init({
|
||||
route: 'remote-assets',
|
||||
assetUploadDir: path.join(__dirname, 'assets'),
|
||||
port: 5002,
|
||||
assetUrlPrefix: "\\remote-assets\\" // to make it relative for client
|
||||
}),
|
||||
DefaultJobQueuePlugin.init({
|
||||
useDatabaseForBuffer: true
|
||||
}),
|
||||
EmailPlugin.init({
|
||||
sendRealEmails: true,
|
||||
route: 'mailbox',
|
||||
handlers: [...defaultEmailHandlers],
|
||||
// Dynamic Email Templates
|
||||
templateLoader: new FileBasedTemplateLoader(path.join(__dirname, '..', '../email-plugin/templates')),
|
||||
globalTemplateVars: {
|
||||
verifyEmailAddressUrl: 'http://localhost:4201/verify',
|
||||
passwordResetUrl: 'http://localhost:4201/reset-password',
|
||||
changeEmailAddressUrl: 'http://localhost:4201/change-email-address',
|
||||
}
|
||||
}),
|
||||
BillBeePlugin.init({
|
||||
active: process.env.BILL_BEE_ACTIVE === 'true'
|
||||
}),
|
||||
ChannelPilotProPlugin.init({
|
||||
active: process.env.CHANNEL_PILOT_PRO_ACTIVE === 'true',
|
||||
}),
|
||||
ShopifyPlugin.init({
|
||||
active: 1 === 1
|
||||
}),
|
||||
// DefaultStoragePlaceRankPlugin.init({})
|
||||
// new DefaultSearchPlugin(),
|
||||
// new ElasticsearchPlugin({
|
||||
// host: 'http://192.168.99.100',
|
||||
// port: 9200,
|
||||
// }),
|
||||
// DocusignPlugin.init({
|
||||
// devMode:true,
|
||||
// handlers: defaultDocusignHandlers,
|
||||
// assetDownloadDir: path.join(__dirname, 'docusign'),
|
||||
// assetUploadDir: path.join(__dirname, 'docusign'),
|
||||
// port: API_PORT,
|
||||
// route: "docusign"
|
||||
// }),
|
||||
// new AdminUiPlugin({
|
||||
// port: 5001,
|
||||
// }),
|
||||
],
|
||||
systemOptions: {
|
||||
healthChecks: [new TypeORMHealthCheckStrategy(null, { key: 'database', timeout: 1000 })],
|
||||
errorHandlers: [],
|
||||
},
|
||||
// ApolloEngineApiKey: "service:Logic-Bits-2900:5w1aCP5YUtF-1ErRG0KNQw"
|
||||
};
|
||||
|
||||
function getDbConfig(): ConnectionOptions {
|
||||
const dbType = process.env.DB || 'postgres';
|
||||
const dbHost = process.env.DB_HOST || 'localhost';
|
||||
const dbPort = +process.env.DB_PORT || 5432;
|
||||
|
||||
const connectionPoolMax = process.env.CONNECTION_POOL_MAX ?? 20;
|
||||
|
||||
const dbUsername = process.env.DB_USERNAME || 'postgres';
|
||||
const password = process.env.DB_PASSWORD || 'admin';
|
||||
const database = process.env.DB_NAME || 'phoenix'
|
||||
|
||||
if (password == "admin")
|
||||
console.warn("default postgres password is used!");
|
||||
|
||||
if (process.env.DB_HOST)
|
||||
console.log(`using DB Host ${dbHost} from env`);
|
||||
|
||||
console.log(`using Database ${database}`);
|
||||
console.log(`using User ${dbUsername}`);
|
||||
|
||||
switch (dbType) {
|
||||
case 'postgres':
|
||||
console.log('Using postgres connection at ' + dbHost);
|
||||
return {
|
||||
synchronize: true,
|
||||
type: 'postgres',
|
||||
//host: '127.0.0.1',
|
||||
host: dbHost,
|
||||
port: dbPort,
|
||||
username: dbUsername,
|
||||
password: password,
|
||||
database: database,
|
||||
// logging: "all",
|
||||
extra: {
|
||||
max: connectionPoolMax
|
||||
}
|
||||
};
|
||||
case 'sqlite':
|
||||
console.log('Using sqlite connection');
|
||||
return {
|
||||
type: 'sqlite',
|
||||
database: path.join(__dirname, 'phoenix.sqlite'),
|
||||
};
|
||||
case 'sqljs':
|
||||
console.log('Using sql.js connection');
|
||||
return {
|
||||
type: 'sqljs',
|
||||
autoSave: true,
|
||||
database: new Uint8Array([]),
|
||||
location: path.join(__dirname, 'phoenix.sqlite'),
|
||||
};
|
||||
case 'mysql':
|
||||
default:
|
||||
console.log('Using mysql connection');
|
||||
return {
|
||||
synchronize: true,
|
||||
type: 'mysql',
|
||||
host: '192.168.99.100',
|
||||
port: 3306,
|
||||
username: 'root',
|
||||
password: '',
|
||||
database: 'phoenix-dev',
|
||||
};
|
||||
}
|
||||
}
|
||||
Reference in New Issue
Block a user