Deploy Ladill Queue / deploy (push) Successful in 56s
Phases 1–6: tickets, counters, displays, appointments, workflows, rules, analytics, reports, feedback, admin, device API, and Gitea deploy workflow for queue.ladill.com. Co-authored-by: Cursor <cursoragent@cursor.com>
54 lines
1.7 KiB
Markdown
54 lines
1.7 KiB
Markdown
# Ladill Queue — deploy runbook
|
|
|
|
Enterprise queue management at **queue.ladill.com** (tickets, counters, displays, appointments, analytics).
|
|
|
|
## 1. Gitea repo + CI
|
|
|
|
- Repo: **ladill-queue** (`isaacclad/ladill-queue`).
|
|
- Canonical repo: `/Users/isaacclad/Forty8Tech/ladill-queue` (not nested under the monorepo).
|
|
- App root on server: `/var/www/ladill-queue`.
|
|
|
|
## 2. Server app-slot + database
|
|
|
|
```bash
|
|
sudo install -d -o deploy -g www-data /var/www/ladill-queue
|
|
sudo install -d -o deploy -g www-data /var/www/ladill-queue/{releases,shared}
|
|
sudo chown -R deploy:www-data /var/www/ladill-queue
|
|
sudo mysql -e "CREATE DATABASE ladill_queue CHARACTER SET utf8mb4 COLLATE utf8mb4_unicode_ci;"
|
|
sudo mysql -e "CREATE USER 'ladill_queue'@'127.0.0.1' IDENTIFIED BY '<pw>';"
|
|
sudo mysql -e "GRANT ALL ON ladill_queue.* TO 'ladill_queue'@'127.0.0.1'; FLUSH PRIVILEGES;"
|
|
```
|
|
|
|
## 3. Platform wiring (monolith)
|
|
|
|
```bash
|
|
cd /var/www/ladill.com/current
|
|
php artisan ladill:onboard-app queue --run-dns
|
|
php artisan passport:client --name="Ladill Queue" --redirect_uri=https://queue.ladill.com/sso/callback
|
|
php artisan ladill:launcher:sync --propagate
|
|
```
|
|
|
|
## 4. Shared `.env` (`/var/www/ladill-queue/shared/.env`)
|
|
|
|
Set `APP_URL=https://queue.ladill.com`, MySQL `ladill_queue` credentials, SSO client, billing/identity keys, and `SERVICE_EVENTS_INBOUND_SECRET`.
|
|
|
|
## 5. nginx + TLS
|
|
|
|
```bash
|
|
sudo bash deployment/setup-service-subdomain-nginx.sh queue --app /var/www/ladill-queue/current
|
|
```
|
|
|
|
## 6. Scheduler
|
|
|
|
Ensure cron runs `php artisan schedule:run` for:
|
|
|
|
- `qms:mark-devices-offline` (every 5 min)
|
|
- `qms:send-appointment-reminders` (every 15 min)
|
|
|
|
## 7. Verify
|
|
|
|
```bash
|
|
curl -s https://queue.ladill.com/api/health
|
|
curl -sI https://queue.ladill.com/login | head -1
|
|
```
|