fix enrollment logic, add financial aid, fix class distribution
Tests / PHPUnit (push) Failing after 1m6s

This commit is contained in:
root
2026-08-15 15:07:16 -04:00
parent c12bb59372
commit 4603d9ced2
95 changed files with 6892 additions and 1295 deletions
+41 -8
View File
@@ -31,24 +31,57 @@ Excluded:
- local scripts that are not needed at runtime
- runtime cache, logs, sessions, uploads, and generated reports
The server keeps its own `.env` and runtime `writable/` contents. The deploy job syncs from `build/deploy/` and excludes mutable writable subdirectories so production data is not overwritten.
The server keeps its own `.env` and runtime `writable/` contents. The deploy job never overwrites those.
## Shared hosting layout
`.gitea/workflows/deploy.yml` deploys to Hostinger-style shared hosting, where the document root is `public_html` and the CodeIgniter application lives in a sibling directory:
```text
/home/USER/domains/home.alrahmaisgl.org/alrahma application (not web-accessible)
/home/USER/domains/home.alrahmaisgl.org/public_html document root (contents of public/)
```
`public_html/index.php` is patched to load:
```php
require FCPATH . '../alrahma/app/Config/Paths.php';
```
Existing `public_html/uploads`, `cgi-bin`, and `.well-known` are left in place.
## Gitea repository secrets
Required for SSH deploy:
- `DEPLOY_HOST` - SSH hostname from the Hostinger panel
- `DEPLOY_USER` - SSH username (for example `u280815660`)
- `DEPLOY_SSH_KEY` - private key whose public half is in Hostinger SSH Access
- `DEPLOY_APP_PATH` - application directory, for example `/home/u280815660/domains/home.alrahmaisgl.org/alrahma`
- `DEPLOY_PUBLIC_PATH` - document root, for example `/home/u280815660/domains/home.alrahmaisgl.org/public_html`
Optional:
- `DEPLOY_PORT` - defaults to `65002` (Hostinger SSH). Use `22` only if the host uses the standard port.
- `DEPLOY_PHP_BIN` - defaults to `/opt/alt/php85/usr/bin/php`
- `DEPLOY_INDEX_REQUIRE` - defaults to `../alrahma/app/Config/Paths.php`
- `DEPLOY_PATH` - fallback for `DEPLOY_APP_PATH` if the newer secret is not set
Create `.env` once on the server under `DEPLOY_APP_PATH`. Do not put database or mail passwords in the workflow.
## Gitea Package
The deploy workflow also archives `build/deploy/` and publishes it to Gitea Packages as a generic package:
The deploy workflow also archives `build/deploy/` and publishes it to Gitea Packages when package credentials are present:
- Package name: `alrahma_sunday_school`
- Version format: `{branch}-{run_number}-{short_sha}`
- File format: `alrahma_sunday_school-{version}.tar.gz`
Required repository secrets for package publishing:
Optional package secrets:
- `GITEAPACKAGEUSER`
- `GITEAPACKAGETOKEN`
Optional repository secrets:
- `GITEA_BASE_URL` - defaults to `https://192.168.3.80`.
- `GITEA_PACKAGE_OWNER` - defaults to `melabidi`.
- `GITEA_BASE_URL` - defaults to `https://192.168.3.80`
- `GITEA_PACKAGE_OWNER` - defaults to `melabidi`
The token must have permission to publish packages for the package owner.