summaryrefslogtreecommitdiff
path: root/src
diff options
context:
space:
mode:
Diffstat (limited to 'src')
-rw-r--r--src/op_mode/config_sync.py11
1 files changed, 10 insertions, 1 deletions
diff --git a/src/op_mode/config_sync.py b/src/op_mode/config_sync.py
index 8d473cc70..828cd8623 100644
--- a/src/op_mode/config_sync.py
+++ b/src/op_mode/config_sync.py
@@ -73,13 +73,22 @@ def _load_config_sync_settings() -> dict:
key = secondary.get('key')
port = int(secondary.get('port', 443))
timeout = int(secondary.get('timeout')) if secondary.get('timeout') else None
+ # config-sync talks to a remote secondary over HTTPS. TLS verification is
+ # off by default because secondary nodes typically present a self-signed
+ # certificate; an operator can opt in (True, or a CA bundle path) once the
+ # runtime config exposes it.
+ # TODO(T9396): expose ca-certificate / peer-fingerprint under
+ # service config-sync secondary
+ verify_tls = secondary.get('verify_tls', False)
if not address or not key:
raise opmode.UnconfiguredObject(
'Config-sync is not fully configured: missing secondary address/key'
)
- return dict(host=address, key=key, port=port, timeout=timeout)
+ return dict(
+ host=address, key=key, port=port, timeout=timeout, verify_tls=verify_tls
+ )
class ConfigSyncDiffManager: