Documentation ¶
Index ¶
Constants ¶
This section is empty.
Variables ¶
This section is empty.
Functions ¶
This section is empty.
Types ¶
type ClientTLSConfig ¶
type ClientTLSConfigSchema ¶
type Config ¶
type Config struct { MessageBusServers []MessageBusServer RoutingAPI RoutingAPI Routes []Route NATSmTLSConfig ClientTLSConfig Host string AvailabilityZone string `json:"availability_zone"` }
type ConfigSchema ¶
type ConfigSchema struct { MessageBusServers []MessageBusServerSchema `json:"message_bus_servers"` RoutingAPI RoutingAPISchema `json:"routing_api"` Routes []RouteSchema `json:"routes"` NATSmTLSConfig ClientTLSConfigSchema `json:"nats_mtls_config"` Host string `json:"host"` AvailabilityZone string `json:"availability_zone"` }
func NewConfigSchemaFromFile ¶
func NewConfigSchemaFromFile(configFile string) (ConfigSchema, error)
func (ConfigSchema) ToConfig ¶
func (c ConfigSchema) ToConfig() (*Config, error)
type HealthCheckSchema ¶
type MessageBusServer ¶
type MessageBusServerSchema ¶
type RouteSchema ¶
type RouteSchema struct { Type string `json:"type"` Name string `json:"name"` Port *int `json:"port"` Protocol string `json:"protocol"` SniPort *int `json:"sni_port"` TLSPort *int `json:"tls_port"` Tags map[string]string `json:"tags"` URIs []string `json:"uris"` RouterGroup string `json:"router_group"` ExternalPort *int `json:"external_port,omitempty"` RouteServiceUrl string `json:"route_service_url"` RegistrationInterval string `json:"registration_interval,omitempty"` HealthCheck *HealthCheckSchema `json:"health_check,omitempty"` ServerCertDomainSAN string `json:"server_cert_domain_san,omitempty"` SniRoutableSan string `json:"sni_routable_san,omitempty"` }
type RoutingAPI ¶
type RoutingAPISchema ¶
type RoutingAPISchema struct { APIURL string `json:"api_url"` OAuthURL string `json:"oauth_url"` ClientID string `json:"client_id"` ClientSecret string `json:"client_secret"` CACerts string `json:"ca_certs"` SkipSSLValidation bool `json:"skip_ssl_validation"` ClientCertificatePath string `json:"client_cert_path"` ClientPrivateKeyPath string `json:"client_private_key_path"` ServerCACertificatePath string `json:"server_ca_cert_path"` MaxTTL string `json:"max_ttl,omitempty"` }
Click to show internal directories.
Click to hide internal directories.