Project

General

Profile

Actions

Task #932

closed

PE-1817: Fix LXC deployment automation

Added by Fredrick Amnehagen about 2 hours ago. Updated about 2 hours ago.

Status:
Done
Priority:
Urgent
Assignee:
-
Target version:
-
Start date:
2026-05-16
Due date:
% Done:

100%

Estimated time:

Description

Problem

LXC deployment requires manual file pushes after git push. No automated deployment on code changes.

Current Manual Process

  1. Developer pushes to git
  2. Run: la-infra-cli proxmox push-file (each file)
  3. Run: php artisan migrate on LXC
  4. Run: php artisan route:clear

Required for Production

  1. Git hook to trigger deployment
  2. SSH key setup for automated push
  3. Deployment script in .forgejo/workflows/

Proposed Solution

  1. Add .forgejo/workflows/deploy.yml workflow
  2. On push to main: la-infra-cli proxmox pull-files + migrate + clear cache
  3. Support for staging/production branches

Workflow Requirements

  • Trigger on: push to main, release tags
  • Steps: pull code, install deps, migrate, clear cache, restart workers
  • Notifications on failure
  • Rollback capability

Implementation

  1. Create .forgejo/workflows/deploy.yml
  2. Add deployment scripts/ directory
  3. Configure la-infra-cli credentials in Forgejo secrets
  4. Test with staging environment first

Files to Create

  • .forgejo/workflows/deploy.yml
  • scripts/deploy-lxc.sh
  • scripts/rollback.sh

Related

  • PE-1803: Fix LXC route deployment issue (blocked by this)
Actions

Also available in: Atom PDF