32 lines
910 B
JSON
32 lines
910 B
JSON
{
|
|
"lab": 2,
|
|
"kind": "requirements, not runnable deployment",
|
|
"required_for_grade_3": [
|
|
{
|
|
"role": "api",
|
|
"count_min": 1,
|
|
"student_implements": true,
|
|
"persistent_local_state": false
|
|
},
|
|
{
|
|
"role": "postgres",
|
|
"purpose": "users/chats/membership/messages/metadata",
|
|
"persistent_volume": true
|
|
}
|
|
],
|
|
"optional_components": [
|
|
{
|
|
"role": "redis_or_valkey",
|
|
"required_for_lab2_grade4": true,
|
|
"note": "Choose one; if only store of sessions, configure durable persistence."
|
|
}
|
|
],
|
|
"rules": [
|
|
"Choose Compose or Swarm for lab3+; do not need both.",
|
|
"Never publish internal API replica ports in bypass of LB from lab3.",
|
|
"Versions/digests must be fixed in implementation.",
|
|
"Do not remove volumes in restart/failover checks.",
|
|
"Document service names, healthchecks, bootstrap/migrations and credentials."
|
|
]
|
|
}
|