Port of Go server/opts.go processConfigFileLine switch. Maps parsed NATS config dictionaries to NatsOptions fields including: - Core options (port, host, server_name, limits, ping, write_deadline) - Logging (debug, trace, logfile, log rotation) - Authorization (single user, users array with permissions) - TLS (cert/key/ca, verify, pinned_certs, handshake_first) - Monitoring (http_port, https_port, http/https listen, base_path) - Lifecycle (lame_duck_duration/grace_period) - Server tags, file paths, system account options Includes error collection (not fail-fast), duration parsing (ms/s/m/h strings and numeric seconds), host:port listen parsing, and 56 tests covering all config sections plus validation edge cases.
13 lines
311 B
Plaintext
13 lines
311 B
Plaintext
tls {
|
|
cert_file: "/path/to/cert.pem"
|
|
key_file: "/path/to/key.pem"
|
|
ca_file: "/path/to/ca.pem"
|
|
verify: true
|
|
verify_and_map: true
|
|
timeout: 3
|
|
connection_rate_limit: 100
|
|
pinned_certs: ["abcdef0123456789abcdef0123456789abcdef0123456789abcdef0123456789"]
|
|
handshake_first: true
|
|
}
|
|
allow_non_tls: false
|