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

ROOT="$(cd "$(dirname "${BASH_SOURCE[0]}")/.." && pwd)"
cd "$ROOT"

command -v php >/dev/null || { echo 'PHP가 필요합니다.' >&2; exit 1; }
command -v composer >/dev/null || { echo 'Composer가 필요합니다.' >&2; exit 1; }
command -v node >/dev/null || { echo 'Node.js가 필요합니다.' >&2; exit 1; }
command -v npm >/dev/null || { echo 'npm이 필요합니다.' >&2; exit 1; }

[ -f web/.env ] || cp web/env web/.env
[ -f orchestrator/.env ] || cp orchestrator/.env.example orchestrator/.env
mkdir -p web/writable/{cache,logs,session,uploads} runtime/{workspaces,artifacts}

(
  cd web
  composer install
)
(
  cd orchestrator
  if [ -f package-lock.json ]; then
    npm ci
  else
    npm install
  fi
)

chmod -R ug+rwX web/writable runtime
printf '\n설치 완료. docs/INSTALL.md의 DB 및 Apache 설정을 이어서 진행하십시오.\n'
