@@ -211,11 +211,27 @@ jobs:
211211 DB_PASSWORD="$(get_env_value DB_PASSWORD)"
212212 MYSQL_DATABASE="$(get_env_value MYSQL_DATABASE)"
213213 MYSQL_ROOT_PASSWORD="$(get_env_value MYSQL_ROOT_PASSWORD)"
214+ DB_URL="$(get_env_value DB_URL)"
214215
215216 : "${DB_USERNAME:=smalltrend}"
216217 : "${DB_PASSWORD:=1234}"
217218 : "${MYSQL_DATABASE:=smalltrend}"
218219 : "${MYSQL_ROOT_PASSWORD:=root1234}"
220+ : "${DB_URL:=jdbc:mysql://mysql:3306/${MYSQL_DATABASE}?allowPublicKeyRetrieval=true&useSSL=false&serverTimezone=UTC&createDatabaseIfNotExist=true}"
221+
222+ # Prevent false-positive seed checks when backend points to a different DB/schema.
223+ if [[ "$DB_URL" != *"mysql:3306"* ]]; then
224+ echo "ERROR: DB_URL must point to mysql service in docker compose (mysql:3306)."
225+ echo "Current DB_URL: $DB_URL"
226+ exit 1
227+ fi
228+
229+ if [[ "$DB_URL" != *"/${MYSQL_DATABASE}"* ]]; then
230+ echo "ERROR: DB_URL database does not match MYSQL_DATABASE."
231+ echo "MYSQL_DATABASE=$MYSQL_DATABASE"
232+ echo "DB_URL=$DB_URL"
233+ exit 1
234+ fi
219235
220236 echo "$DOCKERHUB_TOKEN" | sudo docker login -u "$DOCKERHUB_USERNAME" --password-stdin
221237
@@ -277,6 +293,17 @@ jobs:
277293 fi
278294 fi
279295
296+ PRODUCTS_COUNT_FINAL="$(get_table_count products || echo 0)"
297+ VARIANTS_COUNT_FINAL="$(get_table_count product_variants || echo 0)"
298+ STOCK_COUNT_FINAL="$(get_table_count inventory_stock || echo 0)"
299+ echo "Post-start final counts: products=$PRODUCTS_COUNT_FINAL, variants=$VARIANTS_COUNT_FINAL, inventory_stock=$STOCK_COUNT_FINAL"
300+
301+ if [ "${PRODUCTS_COUNT_FINAL:-0}" = "0" ] || [ "${VARIANTS_COUNT_FINAL:-0}" = "0" ]; then
302+ echo "ERROR: Critical tables are still empty after deploy + seed."
303+ sudo env REGISTRY="$REGISTRY" IMAGE_NAMESPACE="$IMAGE_NAMESPACE" IMAGE_TAG="$TARGET_TAG" DB_USERNAME="$DB_USERNAME" DB_PASSWORD="$DB_PASSWORD" MYSQL_DATABASE="$MYSQL_DATABASE" MYSQL_ROOT_PASSWORD="$MYSQL_ROOT_PASSWORD" docker compose -f docker-compose.prod.yml logs --tail=150 mysql backend || true
304+ exit 1
305+ fi
306+
280307 MAX_RETRIES=12
281308 RETRY_DELAY=10
282309 ATTEMPT=1
0 commit comments