Expand description
§faucet-source-singer
A bridge source that runs an external Singer tap executable and adapts its message stream into faucet records — so any of the hundreds of existing Singer taps can feed a faucet pipeline.
Tier-2 / experimental. Using this source reintroduces a runtime dependency (usually Python) for that pipeline, throughput is Singer-class rather than faucet-class, and STATE-based resume granularity depends on the individual tap.
v0 is single-stream: exactly the stream named by
SingerSourceConfig::stream is emitted; RECORD messages for other streams
are ignored.
Re-exports§
pub use config::MalformedPolicy;pub use config::SingerSourceConfig;pub use discover::StreamSelection;pub use discover::catalog_stream_ids;pub use discover::discover;pub use discover::select_streams;pub use stream::SingerSource;
Modules§
- assemble
- Pure page-assembly state machine.
- config
- Configuration types for the Singer tap bridge source.
- discover
- Singer catalog discovery: run
<tap> --config <tmp> --discoverand return the catalog it prints. Used byfaucet init --source singer --discover. - message
- Singer message model + line parser, re-exported from
faucet_common_singer::message(shared with the Singer target sink). - process
- Tap subprocess runner: spawn, stream stdout as parsed messages over a
bounded channel (backpressure), drain stderr into
tracing, and always reap the child (SIGTERM → grace → SIGKILL on the paths we control;kill_on_dropis the backstop for an abrupt drop/cancel). - stream
SingerSource— theSourceimplementation that bridges a Singer tap.
Enums§
- Faucet
Error - All possible errors returned by faucet-stream.
- Inherit
Env - The
inherit_envsetting of a Singer tap or target. - Singer
Message - A parsed Singer protocol message.
Constants§
- DESCRIPTOR
- The connector’s static descriptor (RFC 0013): its capabilities, answered from config alone.
Traits§
- Sink
- A sink writes records to an external system.
- Source
- A source fetches records from an external system.
Functions§
- parse_
line - Parse one line of tap stdout into a
SingerMessage.