template-gallery) pada setiap pod Ayakaleaf Pro; layanan filestore di pod yang sama menyimpan file template dan merender pratinjaunya. Kategori, izin, dan penerbitan dijelaskan di Template.
Konfigurasi
1
ConfigMap
30-config.yaml (additions)
2
Pengguna template (opsional)
Admin selalu dapat menerbitkan. Agar pengguna non-admin dapat mengelola galeri, buat pengguna tersebut, baca ID-nya dari MongoDB, dan masukkan ke ConfigMap:
3
Terapkan dan mulai ulang
Beberapa replika
- File template harus berada di S3: jika file berada di disk masing-masing replika, setiap node akan menampilkan galeri yang berbeda. Penyiapan Penskalaan horizontal sudah menggunakan bucket
overleaf-template-files. - Penerbitan mengambil PDF dari kompilasi terakhir proyek, yang hanya ada di replika yang mengompilasinya. Cookie sticky load balancer mempertahankan pengguna di replika tersebut, jadi terbitkan dari sesi browser yang sama dengan yang melakukan kompilasi.
Diuji di Kubernetes
Di Kubernetes 1.37 dengan tiga replika di belakang HAProxy dan file template di bucket S3overleaf-template-files (Garage), pengujian end-to-end kami untuk galeri template lulus (41 kasus): menerbitkan proyek yang telah dikompilasi dari menu File serta PDF, gambar pratinjau, dan ZIP sumber yang disajikan dari bucket; membuat proyek dari template; kategori, pencarian, pengurutan, dan halaman galeri; mengedit, menimpa, dan menghapus template; izin admin, pengguna biasa, dan pengguna template dari OVERLEAF_TEMPLATES_USER_ID (ID-nya dibaca dari MongoDB seperti dijelaskan di atas); serta permintaan yang tidak valid.
