Commit graph

167 commits

Author SHA1 Message Date
65fbf3bb31
use datestamp instead of creating a version 2026-02-09 13:49:19 -06:00
bd08bb3aad
Remove TOWEROPS_API_URL from docker-compose example 2026-02-09 13:36:29 -06:00
45cea92f8d
Use full path to towerops-agent binary in Procfile 2026-02-09 13:32:40 -06:00
3fa0943ed0
Disable TUI in Dokku (Procfile only, docker-compose unaffected) 2026-02-09 13:31:17 -06:00
2d94f82832
Change Dockerfile to use CMD instead of ENTRYPOINT for Dokku compatibility 2026-02-09 13:29:55 -06:00
1f73dc2d46
Add Procfile with exec and DOKKU_SCALE for worker process 2026-02-09 13:29:14 -06:00
2a1bd414be
Remove Procfile - use Dockerfile ENTRYPOINT directly 2026-02-09 13:27:40 -06:00
37c4fd1d78
Fix Procfile to work with Dockerfile ENTRYPOINT 2026-02-09 13:27:08 -06:00
8ff34d08a6
Remove app.json - use Procfile only for worker process 2026-02-09 13:25:22 -06:00
3bf7d9484a
More dokku testing 2026-02-09 13:25:00 -06:00
47b6c3611b
Morke dokku testing 2026-02-09 13:24:23 -06:00
bf166a123e
add Procfile for dokku staging 2026-02-09 13:21:50 -06:00
71489a709a
copy new native code in to docker build 2026-02-09 12:46:34 -06:00
792825f682
major overhaul to use more C for snmp, may not be stable 2026-02-09 12:31:41 -06:00
cd45e9ff51
feat: add agent-side ICMP ping health monitoring
Implements health monitoring in the agent using ICMP ping, allowing
devices assigned to local (non-cloud) agents to be monitored.

Changes:
- Add surge-ping library for async ICMP ping operations
- Create ping.rs module with ping_device() function (5s timeout)
- Rename JobType::MONITOR to JobType::PING in protobuf
- Add monitoring_check channels for result communication
- Implement execute_ping_job() to handle PING jobs
- Update TUI to display ping result events

The agent now receives PING jobs from Phoenix, executes ICMP pings,
and sends MonitoringCheck results back for storage in the database.

Co-Authored-By: Claude Sonnet 4.5 <noreply@anthropic.com>
2026-02-08 13:44:09 -06:00
b29a38edb5
fix security vuln in lru package 2026-02-07 11:55:54 -06:00
cee0788300
format 2026-02-07 11:43:50 -06:00
f5b7e589f2
fix: implement agent IP detection and remove dead poller code
- Implement get_local_ip() using UDP socket trick to resolve local
  interface address without sending traffic, so heartbeat reports
  actual agent IP instead of "unknown"
- Remove dead poller/scheduler/executor and api_client modules that
  referenced non-existent modules and were never compiled
2026-02-07 09:17:47 -06:00
2111453653
Fix TUI 2026-02-06 13:18:23 -06:00
6275562f35
Resolve issues from TUI implementation 2026-02-06 13:08:06 -06:00
a2cef243ee
Handle discovered ip addresses 2026-02-06 12:20:53 -06:00
8c969401fb
fix live and scheduled polling 2026-02-05 12:45:13 -06:00
d44682ce9c
fix: increase SNMP timeout to 120s for SNMPv3 discovery
Discovery with SNMPv3 was completing in 52 seconds, dangerously close
to the 60s timeout. Increasing to 120s provides comfortable headroom
for complete MikroTik OID tree traversal with encryption overhead.
2026-02-05 09:02:05 -06:00
357d1711be
fix: increase SNMP timeout to 60s for SNMPv3 operations
SNMPv3 has significant encryption and authentication overhead compared to
v2c. MikroTik enterprise tree walks (1.3.6.1.4.1.14988) can take 16+
seconds with SNMPv3, causing timeouts with the previous 30s limit.

Increased timeout from 30s to 60s in both client.rs and device_poller.rs
to accommodate SNMPv3's additional latency.
2026-02-05 08:45:20 -06:00
c62330bf40
handle other encryption methods 2026-02-04 17:46:09 -06:00
55d55a2c86
fix tests 2026-02-04 17:29:19 -06:00
f454a1f7ea
experimental tcp snmp handling 2026-02-04 17:25:39 -06:00
df334e4db8
Security hardening and performance improvements 2026-02-04 16:50:36 -06:00
91913bd6e4
Implement snmp v3 support 2026-02-04 12:02:10 -06:00
Graham McIntire
86b2eb70be
Merge pull request #10 from towerops-app/deps-update
bump rust version and crates
2026-02-04 08:07:55 -06:00
5811bed1b1
Add needed packages to Dockerfile 2026-02-04 08:02:59 -06:00
6f1261b0ce
bump rust version and crates 2026-02-04 07:54:12 -06:00
Graham McIntire
e688260ab5
Merge pull request #9 from towerops-app/dependabot/cargo/bytes-1.11.1
Bump bytes from 1.11.0 to 1.11.1
2026-02-04 07:47:48 -06:00
dependabot[bot]
cf84c2db16
Bump bytes from 1.11.0 to 1.11.1
Bumps [bytes](https://github.com/tokio-rs/bytes) from 1.11.0 to 1.11.1.
- [Release notes](https://github.com/tokio-rs/bytes/releases)
- [Changelog](https://github.com/tokio-rs/bytes/blob/master/CHANGELOG.md)
- [Commits](https://github.com/tokio-rs/bytes/compare/v1.11.0...v1.11.1)

---
updated-dependencies:
- dependency-name: bytes
  dependency-version: 1.11.1
  dependency-type: indirect
...

Signed-off-by: dependabot[bot] <support@github.com>
2026-02-04 13:45:53 +00:00
1be76b0049
show partially redacted snmp community 2026-02-03 16:50:11 -06:00
0f19518065
snmpv3 first stab 2026-02-03 16:46:19 -06:00
4719bb8249
bump russh 2026-02-02 17:17:53 -06:00
d24c712ed8
bump rust version 2026-02-02 17:14:28 -06:00
89a53eb07a
fix snmp community redaction 2026-02-02 17:03:46 -06:00
135e3d3799
pin home crate to 0.5.9 to fix CI build 2026-02-02 17:03:31 -06:00
78aee7ce40
add ssh support 2026-02-02 16:39:09 -06:00
8e8ea6426d
mikrotik api improvements 2026-02-02 14:02:27 -06:00
5ecada7646
cache improvements in ci 2026-02-02 13:44:40 -06:00
667045c34b
use blacksmith for amd64 build too 2026-02-02 13:39:51 -06:00
Graham McIntire
440ba2d44d
Merge pull request #6 from towerops-app/blacksmith-migration-3dec5fb
.github/workflows: Migrate workflows to Blacksmith runners
2026-02-02 13:35:08 -06:00
blacksmith-sh[bot]
720b56544b
Migrate workflows to Blacksmith 2026-02-02 19:34:56 +00:00
3dec5fbe36
dep cleanup 2026-02-02 13:32:06 -06:00
b4d9fb9677
dep cleanup 2026-02-02 13:31:02 -06:00
d137925a0f
update deps 2026-02-02 13:26:02 -06:00
575735b0da
Handle generic mikrotik commands 2026-02-02 13:18:31 -06:00