# Deployment

## Staging (blue/green)

1. CI builds `release.tar.gz` on push to `develop`.
2. Upload to staging server `/var/www/karobari/releases/<timestamp>/` or run `bin/deploy-blue-green.sh`.
3. Run `php bin/migrate.php`.
4. Symlink `current` → new release (blue/green swap).
5. Reload PHP-FPM / Apache.

## Production

- Tag release on `main`.
- Run backup: `php bin/backup.php`.
- Deploy artifact; verify `/api/v1/health`.
- Quarterly: `php bin/verify-backup.php <id>`.

## Cron

```
* * * * * php /path/to/bin/cron.php
```

Daily backup runs at 03:00 UTC via cron (first 5 minutes of hour 3).
