template-gallery) di ogni pod di Ayakaleaf Pro; il servizio filestore nello stesso pod memorizza i file dei template e ne genera le anteprime. Categorie, permessi e pubblicazione sono descritti in Template.
Configurazione
1
ConfigMap
30-config.yaml (additions)
2
Un utente per i template (facoltativo)
Gli amministratori possono sempre pubblicare. Per consentire a un utente non amministratore di gestire la galleria, crea l’utente, leggi il suo ID da MongoDB e inseriscilo nella ConfigMap:
3
Applica e riavvia
Più repliche
- I file dei template devono trovarsi in S3: con i file sul disco di ciascuna replica, ogni nodo mostrerebbe una galleria diversa. La configurazione di Scalabilità orizzontale usa già il bucket
overleaf-template-files. - La pubblicazione usa il PDF dell’ultima compilazione del progetto, che esiste solo sulla replica che lo ha compilato. Il cookie sticky del load balancer mantiene un utente su quella replica, quindi pubblica dalla stessa sessione del browser con cui hai compilato.
Testato su Kubernetes
Su Kubernetes 1.37 con tre repliche dietro HAProxy e i file dei template nel bucket S3overleaf-template-files (Garage), i nostri test end-to-end per la galleria dei template vengono superati (41 casi): pubblicazione di un progetto compilato dal menu File, con PDF, immagini di anteprima e ZIP dei sorgenti serviti dal bucket; creazione di progetti da un template; categorie, ricerca, ordinamento e pagine della galleria; modifica, sovrascrittura ed eliminazione dei template; permessi degli amministratori, degli utenti normali e dell’utente dei template indicato in OVERLEAF_TEMPLATES_USER_ID (il cui ID è stato letto da MongoDB come descritto sopra); e richieste malformate.
