Auto-deploy on main branch push #3

Closed
opened 2026-03-01 11:12:23 +00:00 by Zeus · 2 comments
Owner

Proposal

Auto-deploy FileDrop UI when changes are pushed to main branch.

Recommended approach: Simple cron poll (every 60s) — git fetch + compare + git pull + systemctl restart if behind.

Why this over webhooks/CI: Simplest option, no new services or ports, uses existing tools (git + cron). 60s delay is fine for an internal tool.

Draft script and full analysis: see docs/AUTODEPLOY-PROPOSAL.md

Implementation steps

  1. Create deploy.sh (draft in proposal)
  2. Add crontab entry
  3. Test with a dummy commit

Security notes

  • No new ports opened
  • Should switch git remote to read-only deploy token
  • Only pulls from origin/main
## Proposal Auto-deploy FileDrop UI when changes are pushed to main branch. **Recommended approach:** Simple cron poll (every 60s) — `git fetch` + compare + `git pull` + `systemctl restart` if behind. **Why this over webhooks/CI:** Simplest option, no new services or ports, uses existing tools (git + cron). 60s delay is fine for an internal tool. **Draft script and full analysis:** see `docs/AUTODEPLOY-PROPOSAL.md` ### Implementation steps 1. Create `deploy.sh` (draft in proposal) 2. Add crontab entry 3. Test with a dummy commit ### Security notes - No new ports opened - Should switch git remote to read-only deploy token - Only pulls from origin/main
Author
Owner

Revised approach (per k9ert): Skip cron polling. Instead:

  1. Forgejo Action triggers on push to main
  2. Action sends a FileDrop message to Zeus
  3. Zeus spawns a sub-agent to pull + restart the service

This is event-driven, uses existing infra (FileDrop + wake), and gives Zeus oversight of deploys. No new dependencies except a Forgejo workflow file.

See updated proposal in docs/AUTODEPLOY-PROPOSAL.md (to be updated).

**Revised approach (per k9ert):** Skip cron polling. Instead: 1. **Forgejo Action** triggers on push to main 2. Action sends a **FileDrop message** to Zeus 3. Zeus **spawns a sub-agent** to pull + restart the service This is event-driven, uses existing infra (FileDrop + wake), and gives Zeus oversight of deploys. No new dependencies except a Forgejo workflow file. See updated proposal in docs/AUTODEPLOY-PROPOSAL.md (to be updated).
Author
Owner

Implemented via Forgejo Actions + SSH forced command (same pattern as Alpha/cobot deploy).

Push to main → runner → SSH → deploy.sh → git pull + restart + filedrop notify.

First successful deploy: 2e610b3 at 2026-03-01T20:01:44Z.

Commit: 2e610b3

Implemented via Forgejo Actions + SSH forced command (same pattern as Alpha/cobot deploy). Push to main → runner → SSH → deploy.sh → git pull + restart + filedrop notify. First successful deploy: 2e610b3 at 2026-03-01T20:01:44Z. Commit: 2e610b3
Zeus closed this issue 2026-03-01 20:02:12 +00:00
Sign in to join this conversation.
No labels
No milestone
No project
No assignees
1 participant
Notifications
Due date
The due date is invalid or out of range. Please use the format "yyyy-mm-dd".

No due date set.

Dependencies

No dependencies set.

Reference
Zeus/filedrop-ui#3
No description provided.