#!/usr/bin/env bash
set -euo pipefail

DEPLOY_PATH="${DEPLOY_PATH:-$(pwd)}"
APP_ENV_FILE="${APP_ENV_FILE:-.env.dev.example}"
PHP_BIN="${PHP_BIN:-php}"
COMPOSER_BIN="${COMPOSER_BIN:-composer}"

cd "${DEPLOY_PATH}"

if [ ! -f .env ] && [ -f "${APP_ENV_FILE}" ]; then
  cp "${APP_ENV_FILE}" .env
fi

"${COMPOSER_BIN}" install --no-interaction --prefer-dist --optimize-autoloader

mkdir -p writable/cache writable/logs writable/session writable/uploads writable/debugbar
chmod -R 775 writable

"${PHP_BIN}" spark migrate
"${PHP_BIN}" spark cache:clear || true
"${PHP_BIN}" spark routes > writable/logs/deploy_routes_snapshot.log
