Class BowireConsulCatalogueOptions
- Namespace
- Kuestenlogik.Bowire.Sources
- Assembly
- Kuestenlogik.Bowire.dll
Options for the built-in ConsulCatalogueProvider — a Consul agent URL the provider queries via the v1 catalogue API.
public sealed class BowireConsulCatalogueOptions
- Inheritance
-
BowireConsulCatalogueOptions
- Inherited Members
Remarks
Bound from Bowire:Discovery:Catalogue:Consul. The provider
hits GET {Address}/v1/catalog/services followed by per-
service GET {Address}/v1/catalog/service/{name} calls to
materialise URL entries. The Consul HTTP API is stable across
1.x releases so the v1 paths are hard-coded.
Auth: optional Consul ACL token via Token, sent in
the X-Consul-Token header. mTLS / cert auth is out of
scope for v1 — operators that need it can run Bowire behind a
proxy that adds the cert.
Constructors
BowireConsulCatalogueOptions()
public BowireConsulCatalogueOptions()
Properties
Address
Consul agent address — e.g. "http://localhost:8500".
Required when the consul provider is selected; falls
back to "http://localhost:8500" when null (Consul's
default loopback bind).
public string? Address { get; set; }
Property Value
Datacenter
Optional datacenter filter. When set, every catalogue API
call is made with ?dc={Datacenter}. Defaults to null
(Consul picks the local DC).
public string? Datacenter { get; set; }
Property Value
Scheme
URL scheme to use when materialising the per-service URL.
Defaults to "http" — Consul's catalogue doesn't carry
the scheme intrinsically, so the operator picks one. Set to
"https" for TLS-fronted services.
public string Scheme { get; set; }
Property Value
Tag
Optional tag filter. When set, only services that carry this
tag are surfaced. Useful for scoping the catalogue to a
specific environment (e.g. "bowire", "staging")
without inflating every service the cluster runs.
public string? Tag { get; set; }
Property Value
Timeout
Per-fetch timeout. Defaults to 10 s — same reasoning as Timeout.
public TimeSpan Timeout { get; set; }
Property Value
Token
Optional Consul ACL token, sent as X-Consul-Token.
public string? Token { get; set; }