diff --git a/.github/workflows/cd-staging-tagged.yml b/.github/workflows/cd-staging-tagged.yml index 72a267e8a..542bc7700 100644 --- a/.github/workflows/cd-staging-tagged.yml +++ b/.github/workflows/cd-staging-tagged.yml @@ -21,6 +21,10 @@ on: - zitare - presi - mana-core-auth + - manacore + - todo + - calendar + - clock apps: description: 'Apps to deploy (comma-separated: backend,web,landing or "all")' required: true @@ -104,6 +108,10 @@ jobs: PROJECT_APPS[zitare]="backend,web" PROJECT_APPS[presi]="backend,web" PROJECT_APPS[mana-core-auth]="service" + PROJECT_APPS[manacore]="web" + PROJECT_APPS[todo]="backend,web" + PROJECT_APPS[calendar]="backend,web" + PROJECT_APPS[clock]="backend,web" # Expand "all" to available apps if [ "$APPS" == "all" ]; then @@ -135,8 +143,17 @@ jobs: IMAGE_NAME="${PROJECT}-backend" ;; web) - DOCKERFILE_PATH="docker/templates/Dockerfile.sveltekit" - CONTEXT_PATH="apps/$PROJECT/apps/web" + # Apps with their own Dockerfiles (need monorepo root for shared packages) + case "$PROJECT" in + manacore|todo|calendar|clock) + DOCKERFILE_PATH="apps/$PROJECT/apps/web/Dockerfile" + CONTEXT_PATH="." + ;; + *) + DOCKERFILE_PATH="docker/templates/Dockerfile.sveltekit" + CONTEXT_PATH="apps/$PROJECT/apps/web" + ;; + esac IMAGE_NAME="${PROJECT}-web" ;; landing) @@ -146,15 +163,29 @@ jobs: ;; esac - # Set ports per project + # Set backend ports per project case "$PROJECT" in chat) PORT="3002" ;; picture) PORT="3006" ;; manadeck) PORT="3009" ;; zitare) PORT="3007" ;; presi) PORT="3008" ;; + calendar) PORT="3014" ;; + clock) PORT="3017" ;; + todo) PORT="3018" ;; esac - HEALTH_PATH="/api/health" + + # Override ports for web apps (SvelteKit uses different ports) + if [ "$APP" == "web" ]; then + case "$PROJECT" in + manacore) PORT="5173" ;; + todo) PORT="5188" ;; + calendar) PORT="5185" ;; + clock) PORT="5187" ;; + *) PORT="5173" ;; # default SvelteKit port + esac + fi + HEALTH_PATH="/health" ;; esac