generated from nholtware/service-template-express
feat: Unleash feature flags via src/lib/flags.ts, hello-banner on GET /
Ported from service-template-express 9b63993.
This commit is contained in:
parent
28ec495a98
commit
ec4b769be2
12 changed files with 675 additions and 17 deletions
|
|
@ -1,6 +1,7 @@
|
|||
import { createApp } from "../app.js";
|
||||
import { parseConfig } from "../lib/config.js";
|
||||
import { createDb } from "../lib/db.js";
|
||||
import { createFlags } from "../lib/flags.js";
|
||||
import { createLogger } from "../lib/logger.js";
|
||||
import { createCache } from "../lib/redis.js";
|
||||
|
||||
|
|
@ -8,8 +9,9 @@ const config = parseConfig(process.env);
|
|||
const logger = createLogger(config);
|
||||
const db = config.DATABASE_URL ? createDb(config.DATABASE_URL) : undefined;
|
||||
const cache = config.REDIS_URL ? createCache(config.REDIS_URL) : undefined;
|
||||
const flags = createFlags(config, logger);
|
||||
|
||||
const server = createApp({ config, logger, db, cache }).listen(
|
||||
const server = createApp({ config, logger, db, cache, flags }).listen(
|
||||
config.PORT,
|
||||
() => {
|
||||
logger.info({ port: config.PORT }, "listening");
|
||||
|
|
@ -19,7 +21,7 @@ const server = createApp({ config, logger, db, cache }).listen(
|
|||
function shutdown(signal: string) {
|
||||
logger.info({ signal }, "shutting down");
|
||||
server.close(async () => {
|
||||
await Promise.allSettled([db?.close(), cache?.close()]);
|
||||
await Promise.allSettled([db?.close(), cache?.close(), flags.close()]);
|
||||
process.exit(0);
|
||||
});
|
||||
setTimeout(() => process.exit(1), 10_000).unref();
|
||||
|
|
|
|||
Loading…
Add table
Add a link
Reference in a new issue