Commit graph

24 commits

Author SHA1 Message Date
7e2e50a764
Fix Docker permissions with automatic entrypoint script
The Docker container now handles data directory permissions automatically
without requiring manual user setup.

Changes:
- Added entrypoint.sh script that runs as root, fixes /data permissions,
  then drops to non-root user (towerops) using su-exec
- Updated Dockerfile to install su-exec and use the entrypoint script
- Container starts as root but immediately drops privileges after fixing
  permissions

The agent will now start successfully with just 'docker-compose up -d'
without users needing to run chown commands manually.
2026-01-14 09:36:45 -06:00
273c7b79e6
Add comprehensive release process documentation
- Multi-architecture build instructions (AMD64, ARM64)
- Publishing to Docker Hub, GHCR, GitLab, self-hosted registries
- Git tagging and GitHub/GitLab release creation
- Release notes template
- CI/CD automation examples (GitLab CI, GitHub Actions)
- Rollback procedures
- Release checklist
2026-01-14 09:14:10 -06:00
316c0b04f9
Add integration test plan and user guide
- INTEGRATION_TEST_PLAN.md: Comprehensive test plan with 10 scenarios
  - Authentication, config fetch, SNMP polling, metrics submission
  - Resilience testing (API outage, network interruption, token revocation)
  - Load testing and 24-hour stability test procedures
  - Setup instructions for SNMP simulator and real devices

- USER_GUIDE.md: Complete deployment and operations guide
  - Deployment methods: Docker Compose, Podman, Kubernetes, Systemd
  - Configuration options and environment variables
  - Network requirements and firewall rules
  - Troubleshooting common issues
  - Upgrade and maintenance procedures
  - Best practices and security considerations

- CLAUDE.md: Updated status to reflect all code complete
2026-01-14 09:10:00 -06:00
10a3c4353f
Fix buildx setup for GitLab DinD environment 2026-01-13 15:44:19 -06:00
2b1d779279
Add multi-architecture build support (amd64, arm64) 2026-01-13 14:07:21 -06:00
3db5e975a5
Remove nonexistent .cargo/ from CI cache config 2026-01-13 14:00:06 -06:00
54bba7e02a
Format code with cargo fmt 2026-01-13 13:57:46 -06:00
82f97deeb2
Add protobuf compiler to CI and Docker build 2026-01-13 13:55:12 -06:00
75b3b92adc
Update build status: zero clippy warnings 2026-01-13 13:52:32 -06:00
d9156183ac
Fix last clippy warning: decode heartbeat response
- Parse HeartbeatResponse protobuf message from API
- Eliminates unused struct warning for HeartbeatResponse
- Agent now has zero clippy warnings
2026-01-13 13:52:10 -06:00
c4024d8eb4
Update CLAUDE.md to reflect completed protobuf integration
- Document Protocol Buffers integration in its own section
- Update API client description to mention protobuf usage
- Update build status to show only 1 warning (down from 7)
- Add note about GitLab CI/CD Docker Hub deployment
2026-01-13 13:50:50 -06:00
f383f55c13
Complete protobuf integration for all API endpoints
- Update fetch_config to use protobuf instead of JSON
- Add conversion functions from protobuf types to internal config types
- Update heartbeat to use protobuf encoding
- All API endpoints now use Protocol Buffers (config, metrics, heartbeat)
- Reduces 7 unused struct warnings to 1 (HeartbeatResponse)
2026-01-13 13:50:07 -06:00
efea6e3c64
Fix clippy warning: use self by value for Copy type
Change to_unix_timestamp to take self by value instead of &self
since Timestamp is Copy
2026-01-13 13:47:24 -06:00
03dab21a0a
Switch to Docker Hub and use shared runners
- Change registry from GitLab to Docker Hub (gmcintire/towerops-agent)
- Update authentication to use DOCKERHUB_USERNAME and DOCKERHUB_TOKEN
- Remove vntx runner tags to use GitLab shared runners
2026-01-13 13:45:32 -06:00
1f9bdd57cf
rebuild docker image 2026-01-13 13:43:59 -06:00
953d044c9b
change build dest 2026-01-09 17:02:03 -06:00
d0a67798f8
cargo clippy 2026-01-09 14:00:37 -06:00
979369b502
continuing build 2026-01-09 13:57:27 -06:00
97736ea4b8
fix build errors 2026-01-09 13:41:48 -06:00
fd1b02a6ea
update ci rust version 2026-01-09 13:36:10 -06:00
125b0f427e
update ci rust version 2026-01-09 13:34:43 -06:00
b0fb9c2a78
build multiarch docker container 2026-01-09 13:33:35 -06:00
5263175182
build docker image in ci 2026-01-09 13:32:11 -06:00
0f8cfc34e7
init 2026-01-09 13:22:15 -06:00