Files
HartOMat/backend/alembic/versions/032_remove_flamenco.py
T
Hartmut 1d6864fb64 refactor(A1): remove Flamenco, simplify render pipeline to Celery-only
- Remove flamenco-manager and flamenco-worker from docker-compose.yml
- Delete flamenco_client.py, flamenco_tasks.py, docker_scaler.py
- Simplify render_dispatcher.py to Celery-only (removes ~300 lines)
- Remove Flamenco beat schedule from celery_app.py
- Clean admin.py: remove flamenco settings, endpoints, threejs validation
- Clean orders.py cancel-render: Celery revoke only
- Clean worker.py: remove flamenco_job_id from activity response
- Migration 032: cancel lingering flamenco jobs, remove flamenco settings
- PLAN.md: mark all decisions confirmed, status IN UMSETZUNG

Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
2026-03-06 15:38:37 +01:00

50 lines
1.4 KiB
Python

"""Remove Flamenco: cancel lingering flamenco jobs, clean up settings.
Revision ID: 032
Revises: 031
Create Date: 2026-03-06
"""
from alembic import op
import sqlalchemy as sa
revision = '032'
down_revision = '031'
branch_labels = None
depends_on = None
def upgrade():
# Cancel any order lines that were dispatched to Flamenco and never completed
op.execute("""
UPDATE order_lines
SET render_status = 'cancelled',
render_completed_at = NOW(),
render_log = render_log || '{"cancelled_reason": "flamenco_removed_in_v2"}'::jsonb
WHERE render_backend_used = 'flamenco'
AND render_status IN ('processing', 'pending')
""")
# Remove Flamenco-specific system settings
op.execute("""
DELETE FROM system_settings
WHERE key IN ('flamenco_manager_url', 'flamenco_worker_count')
""")
# Reset render_backend setting to 'celery' if it was 'flamenco' or 'auto'
op.execute("""
UPDATE system_settings
SET value = 'celery'
WHERE key = 'render_backend' AND value IN ('flamenco', 'auto')
""")
def downgrade():
# Re-insert default Flamenco settings
op.execute("""
INSERT INTO system_settings (key, value, updated_at)
VALUES
('flamenco_manager_url', 'http://flamenco-manager:8080', NOW()),
('flamenco_worker_count', '1', NOW())
ON CONFLICT (key) DO NOTHING
""")