Add Brave API key to openclaw, fix uptime-kuma auth and TCP monitors
- openclaw: expose BRAVE_API_KEY env var for web search tool - uptime-kuma: prefer username/password auth (API key token auth unreliable) - uptime-kuma: add TCP monitor type support to manage_monitors.py
This commit is contained in:
@@ -11,6 +11,7 @@ services:
|
|||||||
- OPENCLAW_GATEWAY_TOKEN=${OPENCLAW_GATEWAY_TOKEN}
|
- OPENCLAW_GATEWAY_TOKEN=${OPENCLAW_GATEWAY_TOKEN}
|
||||||
# Enable Ollama provider (opt-in via env var)
|
# Enable Ollama provider (opt-in via env var)
|
||||||
- OLLAMA_API_KEY=ollama-local
|
- OLLAMA_API_KEY=ollama-local
|
||||||
|
- BRAVE_API_KEY=${BRAVE_API_KEY}
|
||||||
volumes:
|
volumes:
|
||||||
- /srv/openclaw/config:/home/node/.openclaw
|
- /srv/openclaw/config:/home/node/.openclaw
|
||||||
- /srv/openclaw/workspace:/home/node/.openclaw/workspace
|
- /srv/openclaw/workspace:/home/node/.openclaw/workspace
|
||||||
|
|||||||
@@ -25,12 +25,10 @@ def connect():
|
|||||||
# Disable SSL verification for self-signed certificates
|
# Disable SSL verification for self-signed certificates
|
||||||
api = UptimeKumaApi(UPTIME_KUMA_URL, ssl_verify=False)
|
api = UptimeKumaApi(UPTIME_KUMA_URL, ssl_verify=False)
|
||||||
|
|
||||||
if API_KEY:
|
if USERNAME and PASSWORD:
|
||||||
# API key authentication (preferred)
|
|
||||||
api.login_by_token(API_KEY)
|
|
||||||
elif USERNAME and PASSWORD:
|
|
||||||
# Username/password authentication
|
|
||||||
api.login(USERNAME, PASSWORD)
|
api.login(USERNAME, PASSWORD)
|
||||||
|
elif API_KEY:
|
||||||
|
api.login_by_token(API_KEY)
|
||||||
else:
|
else:
|
||||||
print("Error: No credentials provided. Set UPTIME_KUMA_API_KEY or UPTIME_KUMA_USERNAME/PASSWORD environment variables.")
|
print("Error: No credentials provided. Set UPTIME_KUMA_API_KEY or UPTIME_KUMA_USERNAME/PASSWORD environment variables.")
|
||||||
sys.exit(1)
|
sys.exit(1)
|
||||||
@@ -73,6 +71,15 @@ def add_monitor(api, name, url, monitor_type='http', interval=60, ignore_tls=Fal
|
|||||||
hostname=url,
|
hostname=url,
|
||||||
interval=interval
|
interval=interval
|
||||||
)
|
)
|
||||||
|
elif monitor_type.lower() == 'tcp':
|
||||||
|
hostname, port = url.rsplit(':', 1)
|
||||||
|
result = api.add_monitor(
|
||||||
|
type=monitor_type_value,
|
||||||
|
name=name,
|
||||||
|
hostname=hostname,
|
||||||
|
port=int(port),
|
||||||
|
interval=interval
|
||||||
|
)
|
||||||
else:
|
else:
|
||||||
kwargs = {
|
kwargs = {
|
||||||
'type': monitor_type_value,
|
'type': monitor_type_value,
|
||||||
|
|||||||
Reference in New Issue
Block a user