From 2a6b232e08add83e234e16861a3bb42c05e99f65 Mon Sep 17 00:00:00 2001 From: fullsizemalt <106900403+fullsizemalt@users.noreply.github.com> Date: Sat, 20 Dec 2025 22:09:08 -0800 Subject: [PATCH] feat: Add elmeg.xyz domain to Traefik routing --- backend/comprehensive_import.py | 19 ++++++++++++++++++- docker-compose.yml | 6 +++--- 2 files changed, 21 insertions(+), 4 deletions(-) diff --git a/backend/comprehensive_import.py b/backend/comprehensive_import.py index 85d0d72..0cfc339 100644 --- a/backend/comprehensive_import.py +++ b/backend/comprehensive_import.py @@ -7,7 +7,7 @@ import requests from datetime import datetime, date from sqlmodel import Session, select from database import engine -from models import Show, Song, Performance, Venue, Tour +from models import Show, Song, Performance, Venue, Tour, Vertical BASE_URL = "https://elgoose.net/api/v2" GOOSE_ARTIST_ID = 1 # Main Goose artist @@ -26,6 +26,23 @@ def import_shows_and_setlists(): print("COMPREHENSIVE ELGOOSE IMPORT") print("="*60) + with Session(engine) as session: + # Ensure Goose vertical exists (id=1) + goose_vertical = session.get(Vertical, 1) + if not goose_vertical: + print("Creating Goose vertical...") + goose_vertical = Vertical( + name="Goose", + slug="goose", + description="The band Goose." + ) + session.add(goose_vertical) + session.commit() + session.refresh(goose_vertical) + print(f"Created vertical with id: {goose_vertical.id}") + else: + print(f"Using existing Goose vertical (id={goose_vertical.id})") + # Get all shows from API shows_data = get_api_data("shows.json") if shows_data.get("error"): diff --git a/docker-compose.yml b/docker-compose.yml index f83efa9..39110e2 100644 --- a/docker-compose.yml +++ b/docker-compose.yml @@ -25,7 +25,7 @@ services: - traefik labels: - "traefik.enable=true" - - "traefik.http.routers.elmeg-backend.rule=Host(`elmeg.runfoo.run`) && PathPrefix(`/api`)" + - "traefik.http.routers.elmeg-backend.rule=(Host(`elmeg.runfoo.run`) || Host(`elmeg.xyz`)) && PathPrefix(`/api`)" - "traefik.http.routers.elmeg-backend.entrypoints=websecure" - "traefik.http.routers.elmeg-backend.tls.certresolver=letsencrypt" - "traefik.http.routers.elmeg-backend.priority=100" @@ -35,7 +35,7 @@ services: - "traefik.http.services.elmeg-backend-svc.loadbalancer.server.port=8000" - "traefik.docker.network=traefik" # Direct routes for docs (no strip) - - "traefik.http.routers.elmeg-backend-docs.rule=Host(`elmeg.runfoo.run`) && PathPrefix(`/docs`, `/openapi.json`)" + - "traefik.http.routers.elmeg-backend-docs.rule=(Host(`elmeg.runfoo.run`) || Host(`elmeg.xyz`)) && PathPrefix(`/docs`, `/openapi.json`)" - "traefik.http.routers.elmeg-backend-docs.entrypoints=websecure" - "traefik.http.routers.elmeg-backend-docs.tls.certresolver=letsencrypt" - "traefik.http.routers.elmeg-backend-docs.priority=100" @@ -61,7 +61,7 @@ services: - traefik labels: - "traefik.enable=true" - - "traefik.http.routers.elmeg-frontend.rule=Host(`elmeg.runfoo.run`) && !PathPrefix(`/api`, `/docs`, `/openapi.json`)" + - "traefik.http.routers.elmeg-frontend.rule=(Host(`elmeg.runfoo.run`) || Host(`elmeg.xyz`)) && !PathPrefix(`/api`, `/docs`, `/openapi.json`)" - "traefik.http.routers.elmeg-frontend.entrypoints=websecure" - "traefik.http.routers.elmeg-frontend.tls.certresolver=letsencrypt" - "traefik.http.routers.elmeg-frontend.priority=50"