cluster: Introduce pubsub.zeek and types.zeek

Allow access to the Cluster's subscribe(), unsubscribe(), publish(),
publish_hrw() and publish_rr() methods by loading only the
base/frameworks/cluster/pubsub, rather than everything that
__load__.zeek or also main.zeek pulls in.

This can be used by other scripts to use these functions without
relying or expecting the rest of the cluster framework to be loaded
already. Concretely, this is needed to move the Supervisor framework
from Broker to Cluster.
This commit is contained in:
Arne Welzel 2025-09-25 15:57:40 +02:00
parent ba8305e1e6
commit 2f15f5ce6a
7 changed files with 193 additions and 165 deletions

View file

@ -136,10 +136,12 @@ scripts/base/init-frameworks-and-bifs.zeek
scripts/base/frameworks/cluster/main.zeek
scripts/base/frameworks/control/__load__.zeek
scripts/base/frameworks/control/main.zeek
build/scripts/base/bif/cluster.bif.zeek
scripts/base/frameworks/cluster/types.zeek
build/scripts/base/bif/plugins/Zeek_Cluster_WebSocket.events.bif.zeek
build/scripts/base/bif/cluster.bif.zeek
scripts/base/frameworks/cluster/pools.zeek
scripts/base/utils/hash_hrw.zeek
scripts/base/frameworks/cluster/pubsub.zeek
scripts/base/frameworks/cluster/telemetry.zeek
scripts/base/frameworks/config/__load__.zeek
scripts/base/frameworks/config/main.zeek

View file

@ -136,10 +136,12 @@ scripts/base/init-frameworks-and-bifs.zeek
scripts/base/frameworks/cluster/main.zeek
scripts/base/frameworks/control/__load__.zeek
scripts/base/frameworks/control/main.zeek
build/scripts/base/bif/cluster.bif.zeek
scripts/base/frameworks/cluster/types.zeek
build/scripts/base/bif/plugins/Zeek_Cluster_WebSocket.events.bif.zeek
build/scripts/base/bif/cluster.bif.zeek
scripts/base/frameworks/cluster/pools.zeek
scripts/base/utils/hash_hrw.zeek
scripts/base/frameworks/cluster/pubsub.zeek
scripts/base/frameworks/cluster/telemetry.zeek
scripts/base/frameworks/config/__load__.zeek
scripts/base/frameworks/config/main.zeek

View file

@ -477,6 +477,7 @@
0.000000 MetaHookPost LoadFile(0, ./polling, <...>/polling.zeek) -> -1
0.000000 MetaHookPost LoadFile(0, ./pools, <...>/pools.zeek) -> -1
0.000000 MetaHookPost LoadFile(0, ./postprocessors, <...>/postprocessors) -> -1
0.000000 MetaHookPost LoadFile(0, ./pubsub, <...>/pubsub.zeek) -> -1
0.000000 MetaHookPost LoadFile(0, ./removal-hooks, <...>/removal-hooks.zeek) -> -1
0.000000 MetaHookPost LoadFile(0, ./reporter.bif.zeek, <...>/reporter.bif.zeek) -> -1
0.000000 MetaHookPost LoadFile(0, ./scp, <...>/scp.zeek) -> -1
@ -793,6 +794,7 @@
0.000000 MetaHookPost LoadFileExtended(0, ./polling, <...>/polling.zeek) -> (-1, <no content>)
0.000000 MetaHookPost LoadFileExtended(0, ./pools, <...>/pools.zeek) -> (-1, <no content>)
0.000000 MetaHookPost LoadFileExtended(0, ./postprocessors, <...>/postprocessors) -> (-1, <no content>)
0.000000 MetaHookPost LoadFileExtended(0, ./pubsub, <...>/pubsub.zeek) -> (-1, <no content>)
0.000000 MetaHookPost LoadFileExtended(0, ./removal-hooks, <...>/removal-hooks.zeek) -> (-1, <no content>)
0.000000 MetaHookPost LoadFileExtended(0, ./reporter.bif.zeek, <...>/reporter.bif.zeek) -> (-1, <no content>)
0.000000 MetaHookPost LoadFileExtended(0, ./scp, <...>/scp.zeek) -> (-1, <no content>)
@ -1419,6 +1421,7 @@
0.000000 MetaHookPre LoadFile(0, ./polling, <...>/polling.zeek)
0.000000 MetaHookPre LoadFile(0, ./pools, <...>/pools.zeek)
0.000000 MetaHookPre LoadFile(0, ./postprocessors, <...>/postprocessors)
0.000000 MetaHookPre LoadFile(0, ./pubsub, <...>/pubsub.zeek)
0.000000 MetaHookPre LoadFile(0, ./removal-hooks, <...>/removal-hooks.zeek)
0.000000 MetaHookPre LoadFile(0, ./reporter.bif.zeek, <...>/reporter.bif.zeek)
0.000000 MetaHookPre LoadFile(0, ./scp, <...>/scp.zeek)
@ -1735,6 +1738,7 @@
0.000000 MetaHookPre LoadFileExtended(0, ./polling, <...>/polling.zeek)
0.000000 MetaHookPre LoadFileExtended(0, ./pools, <...>/pools.zeek)
0.000000 MetaHookPre LoadFileExtended(0, ./postprocessors, <...>/postprocessors)
0.000000 MetaHookPre LoadFileExtended(0, ./pubsub, <...>/pubsub.zeek)
0.000000 MetaHookPre LoadFileExtended(0, ./removal-hooks, <...>/removal-hooks.zeek)
0.000000 MetaHookPre LoadFileExtended(0, ./reporter.bif.zeek, <...>/reporter.bif.zeek)
0.000000 MetaHookPre LoadFileExtended(0, ./scp, <...>/scp.zeek)
@ -2371,6 +2375,7 @@
0.000000 | HookLoadFile ./pools <...>/pools.zeek
0.000000 | HookLoadFile ./postprocessors <...>/postprocessors
0.000000 | HookLoadFile ./programming <...>/programming.sig
0.000000 | HookLoadFile ./pubsub <...>/pubsub.zeek
0.000000 | HookLoadFile ./python <...>/python.sig
0.000000 | HookLoadFile ./removal-hooks <...>/removal-hooks.zeek
0.000000 | HookLoadFile ./reporter.bif.zeek <...>/reporter.bif.zeek
@ -2687,6 +2692,7 @@
0.000000 | HookLoadFileExtended ./pools <...>/pools.zeek
0.000000 | HookLoadFileExtended ./postprocessors <...>/postprocessors
0.000000 | HookLoadFileExtended ./programming <...>/programming.sig
0.000000 | HookLoadFileExtended ./pubsub <...>/pubsub.zeek
0.000000 | HookLoadFileExtended ./python <...>/python.sig
0.000000 | HookLoadFileExtended ./removal-hooks <...>/removal-hooks.zeek
0.000000 | HookLoadFileExtended ./reporter.bif.zeek <...>/reporter.bif.zeek