docs: replace hard-coded container names with service-based podman-compose/label resolution

This commit is contained in:
a2nr 2026-08-10 11:34:54 +07:00
parent c453ddde2d
commit 5508c2dc7a
3 changed files with 25 additions and 10 deletions

View File

@ -121,9 +121,14 @@ progress-report + export-csv (guru).
# Unit & kontrak (host): backend aktif = postgresql (butuh DATABASE_URL ter-set)
PYTHONPATH=services python -m pytest services/tests -q
# Integrasi (butuh DATABASE_URL + postgres hidup): jalankan di container
podman exec -w /app -e PYTHONPATH=services lms-dev_elemes_1 \
# Integrasi (butuh DATABASE_URL + postgres hidup): jalankan di dalam container
# service `elemes` via podman-compose. Nama container mengikuti PROJECT_NAME
# (= basename folder parent: lms-dev → lms-dev_elemes_1) — jangan hard-code
# nama container, cukup sebut nama service:
podman-compose -p <PROJECT_NAME> exec -T -w /app -e PYTHONPATH=services elemes \
python -m pytest services/tests -q
# <PROJECT_NAME> = nama folder deploy (mis. lms-dev / sinau-c); elemes.sh
# menghitungnya otomatis dari basename folder parent.
```
Suite round-trip siswa (`test_student_roundtrip.py`, `test_repositories.py`,
@ -131,9 +136,10 @@ Suite round-trip siswa (`test_student_roundtrip.py`, `test_repositories.py`,
(`elemes_test`):
```bash
podman exec -w /app -e PYTHONPATH=services \
podman-compose -p <PROJECT_NAME> exec -T -w /app \
-e PYTHONPATH=services \
-e DATABASE_URL="$DATABASE_URL_TEST" \
lms-dev_elemes_1 python -m pytest services/tests/test_student_roundtrip.py \
elemes python -m pytest services/tests/test_student_roundtrip.py \
services/tests/test_repositories.py services/tests/test_student_management_routes.py -q
```

View File

@ -264,10 +264,12 @@ cd elemes/
### Logs
```bash
podman logs elemes # Flask API
podman logs elemes-frontend # SvelteKit
podman logs velxio # Velxio simulator
podman logs elemes-ts # Tailscale
# Nama container mengikuti folder deploy (PROJECT_NAME = basename folder
# parent, mis. lms-dev / sinau-c) — pakai podman-compose + nama service:
podman-compose -p <PROJECT_NAME> logs elemes # Flask API
podman-compose -p <PROJECT_NAME> logs elemes-frontend # SvelteKit
podman-compose -p <PROJECT_NAME> logs velxio # Velxio simulator
podman-compose -p <PROJECT_NAME> logs elemes-ts # Tailscale
```
---

View File

@ -98,10 +98,17 @@ python content_parser.py --content-dir ../../content --num-tokens 50
Verifikasi cepat alur interaktif tanpa browser — jalan di dalam container backend:
```bash
podman cp elemes/load-test/e2e_session_check.py lms-dev_elemes_1:/tmp/
podman exec -e E2E_TOKEN=<token_siswa> lms-dev_elemes_1 python3 /tmp/e2e_session_check.py
# Nama container mengikuti folder deploy (PROJECT_NAME = basename folder
# parent, mis. lms-dev → lms-dev_elemes_1) — resolve via label project+service,
# jangan hard-code nama container:
ELEMES_CTN=$(podman ps -q \
--filter "label=io.podman.compose.project=<PROJECT_NAME>" \
--filter "label=com.docker.compose.service=elemes")
podman cp elemes/load-test/e2e_session_check.py "$ELEMES_CTN":/tmp/
podman exec -e E2E_TOKEN=<token_siswa> "$ELEMES_CTN" python3 /tmp/e2e_session_check.py
# Contoh token: LOCUST_TEST_xxxx — token sintetis yang di-seed ke PostgreSQL
# oleh content_parser.py (jalankan langkah 2 dengan DATABASE_URL ter-set).
# <PROJECT_NAME> = nama folder deploy (mis. lms-dev / sinau-c).
```
Tanpa `E2E_TOKEN` skrip tetap jalan tapi hanya 2 create session (anon rate limit 1/2 menit).