Repository navigation
feat: prepare Student production and complete organization workflows - #41
Merged
Merged
Conversation
Mobin-Karam
force-pushed
the
fix/student-docker-production
branch
3 times, most recently
from
September 21, 2026 06:39
dce193d to
396fa98
Compare
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
Summary
/api/v2/openapi.jsonmobinkaramand studentmahakaramPrivate organization
The seed creates eight active organization members: platform admin, organization admin, advisor, teacher, mentor, content manager, guardian, and student. The platform administrator keeps a global role assignment while also belonging to the organization. Advisor, guardian, teacher, and mentor relationships are scoped to
mahakaram.Production seeding is denied unless
ALLOW_PRODUCTION_BOOTSTRAP=true, all eight passwords are provided, each is at least 12 characters and mutually distinct, and the student national code passes Iranian checksum validation. Secrets and the national code are never printed.See
docs/operations/private-organization-bootstrap.mdfor the PaaS release command and environment variables.Production finding
On 2026-09-21,
https://st.mahakaram.ir/returned the legacy v1 HTML artifact (last-modified 2026-08-25), whilehttps://st.mahakaram.ir/api/v2/openapi.jsonalso returned that HTML with HTTP 200 andtext/html. The new verifier rejects this false-positive deployment state.After merge, redeploy the
apps/student/Dockerfileservice and attachst.mahakaram.irto that v2 Student service. ConfigureAPI_PROXY_TARGETwith the private backend-v2 URL, then run:Validation
Deployment note
Merging does not update the live PaaS by itself. Redeploy the v2 Student service, configure the private API target and seed secrets in the PaaS secret manager, run the one-time production seed job, remove those one-time secrets, disable the bootstrap flag, and run the production verifier.