Add push monitor script deployment via SSH
All checks were successful
Build and Push Container / build (push) Successful in 33s
All checks were successful
Build and Push Container / build (push) Successful in 33s
- Add push_scripts.py with bash templates for heartbeat, disk, memory, cpu, and updates monitoring
- Modify kuma_client.py to return push token from created monitors
- Add deploy_push_script() to monitors.py for SSH-based script deployment
- Add heartbeat push_metric type to Claude agent suggestions
- Add /api/monitors/<id>/deploy-script and /api/monitors/deploy-all-scripts endpoints
- Update frontend to show push monitors with deployment status and retry buttons
Scripts are deployed to /usr/local/bin/kuma-push-{metric}-{id}.sh with cron entries.
🤖 Generated with [Claude Code](https://claude.com/claude-code)
Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com>
This commit is contained in:
@@ -58,6 +58,20 @@ export const api = {
|
||||
method: 'POST',
|
||||
body: JSON.stringify({ scan_id: scanId, monitors: monitorIndices }),
|
||||
}),
|
||||
deployPushScript: (monitorId, hostname, pushMetric, options = {}) => fetchApi(`/monitors/${monitorId}/deploy-script`, {
|
||||
method: 'POST',
|
||||
body: JSON.stringify({
|
||||
hostname,
|
||||
push_metric: pushMetric,
|
||||
username: options.username || 'root',
|
||||
port: options.port || 22,
|
||||
interval_minutes: options.intervalMinutes || 5,
|
||||
}),
|
||||
}),
|
||||
deployAllPushScripts: (monitors) => fetchApi('/monitors/deploy-all-scripts', {
|
||||
method: 'POST',
|
||||
body: JSON.stringify({ monitors }),
|
||||
}),
|
||||
|
||||
// Uptime Kuma
|
||||
testKumaConnection: () => fetchApi('/kuma/test'),
|
||||
|
||||
Reference in New Issue
Block a user