Document GitHub deployment workflow

This commit is contained in:
Codex
2026-07-10 13:00:42 -05:00
parent b45a9eccd6
commit be017d5ace
3 changed files with 16 additions and 0 deletions
+1
View File
@@ -11,6 +11,7 @@ This project uses Git as the primary rollback trail. The `.old` convention is re
- Added a Phase 1 UI system pass with dark/light theme support, shared page/action/stat components, a product-focused home page, and a more useful dashboard. - Added a Phase 1 UI system pass with dark/light theme support, shared page/action/stat components, a product-focused home page, and a more useful dashboard.
- Added roadmap guardrails for open-source-friendly dependencies, public themes, and future license audits. - Added roadmap guardrails for open-source-friendly dependencies, public themes, and future license audits.
- Documented `pdo_sqlite` and `sqlite3` as required PHP extensions for SQLite-backed local tests and first-pass deployments. - Documented `pdo_sqlite` and `sqlite3` as required PHP extensions for SQLite-backed local tests and first-pass deployments.
- Documented the preferred local-to-GitHub-to-remote-update workflow and the ChristIT conversion from rsync test deploy to Git checkout.
- Created the Laravel Provider Exchange prototype with Breeze authentication, seeded demo users, and role support for admins, providers, buyers, and hybrid accounts. - Created the Laravel Provider Exchange prototype with Breeze authentication, seeded demo users, and role support for admins, providers, buyers, and hybrid accounts.
- Added provider and buyer profile management with service areas, profile details, and external profile snapshot records. - Added provider and buyer profile management with service areas, profile details, and external profile snapshot records.
- Added social posts, buyer job posts, provider quotes, quote revisions, quote decline flow, and buyer quote acceptance. - Added social posts, buyer job posts, provider quotes, quote revisions, quote decline flow, and buyer quote acceptance.
+8
View File
@@ -97,3 +97,11 @@ Initial test data/runtime:
- Confirmed seeded admin login succeeds and redirects to `https://christit.com/tse/dashboard`. - Confirmed seeded admin login succeeds and redirects to `https://christit.com/tse/dashboard`.
- No PHP-FPM version changes have been made. - No PHP-FPM version changes have been made.
- No database server changes have been made. - No database server changes have been made.
- Installed Composer on the remote server through Ubuntu packages so future updates can install PHP dependencies from `composer.lock`.
- Converted `/sites/provider-exchange` from the initial rsync test deployment into a Git checkout of `https://github.com/jasonybird/technical-services-exchange.git`.
- Preserved the previous rsync deployment at `/sites/provider-exchange.pre-git-20260710-125739`.
- Preserved the existing production `.env`, SQLite database, and Laravel `storage/` contents during the Git checkout conversion.
- Confirmed remote Git checkout at commit `b45a9ec`.
- Confirmed `bash scripts/update.sh` works from the remote Git checkout: Git pull, Composer install, npm install, Vite build, migrations, and Laravel cache rebuild completed successfully.
- Confirmed remote working tree is clean after normalizing copied `storage/` placeholder file modes.
- Confirmed authenticated smoke login with `admin@example.com` reaches `https://christit.com/tse/dashboard` and renders dashboard count content.
+7
View File
@@ -28,6 +28,13 @@ Or from anywhere:
APP_DIR=/var/www/technical-services-exchange bash /var/www/technical-services-exchange/scripts/update.sh APP_DIR=/var/www/technical-services-exchange bash /var/www/technical-services-exchange/scripts/update.sh
``` ```
The preferred working loop for this project is:
1. Make and test changes locally.
2. Commit and push to GitHub.
3. SSH to the server and run `bash scripts/update.sh` from the deployed Git checkout.
4. Smoke test the live URL after the update completes.
## Important Notes ## Important Notes
- The installer is a first-pass Ubuntu/Nginx helper, not a universal hosting panel installer. - The installer is a first-pass Ubuntu/Nginx helper, not a universal hosting panel installer.