Skip to content

Commit a7c0b12

Browse files
committed
feat: add option to skip chainhook node ping
1 parent 72d43c6 commit a7c0b12

File tree

1 file changed

+12
-1
lines changed

1 file changed

+12
-1
lines changed

components/client/typescript/src/server.ts

+12-1
Original file line numberDiff line numberDiff line change
@@ -22,6 +22,7 @@ const ServerOptionsSchema = Type.Object({
2222
port: Type.Integer(),
2323
auth_token: Type.String(),
2424
external_base_url: Type.String(),
25+
wait_for_chainhook_node: Type.Boolean({ default: true }),
2526
});
2627
/** Local event server connection and authentication options */
2728
export type ServerOptions = Static<typeof ServerOptionsSchema>;
@@ -92,6 +93,10 @@ export async function buildServer(
9293
}
9394

9495
async function registerPredicates(this: FastifyInstance) {
96+
if (predicates.length === 0) {
97+
logger.info(`ChainhookEventObserver does not have predicates to register`);
98+
return;
99+
}
95100
logger.info(
96101
predicates,
97102
`ChainhookEventObserver registering predicates at ${chainhookOpts.base_url}`
@@ -123,6 +128,10 @@ export async function buildServer(
123128
}
124129

125130
async function removePredicates(this: FastifyInstance) {
131+
if (predicates.length === 0) {
132+
logger.info(`ChainhookEventObserver does not have predicates to close`);
133+
return;
134+
}
126135
logger.info(`ChainhookEventObserver closing predicates at ${chainhookOpts.base_url}`);
127136
const removals = predicates.map(
128137
predicate =>
@@ -196,7 +205,9 @@ export async function buildServer(
196205
bodyLimit: 41943040, // 40 MB
197206
}).withTypeProvider<TypeBoxTypeProvider>();
198207

199-
fastify.addHook('onReady', waitForNode);
208+
if (serverOpts.wait_for_chainhook_node) {
209+
fastify.addHook('onReady', waitForNode);
210+
}
200211
fastify.addHook('onReady', registerPredicates);
201212
fastify.addHook('onClose', removePredicates);
202213

0 commit comments

Comments
 (0)