Promocionar un esquema d'staging a producció
Yellow manté l'estructura (esquemes i models) separada de les dades (instàncies). Un benefici directe: pots construir i provar un esquema en un entorn de proves i després promocionar l'estructura resultant a l'entorn de producció sense exportar i reimportar JSON a mà. Aquesta guia recorre aquesta promoció.
Quan ho necessites
Casos habituals:
- Un model nou ha estat dissenyat i provat a Acme Staging. Quan està bé, vols el mateix model — amb el mateix UId, propietats, restriccions i vistes — a Acme Producció.
- Un esquema existent ha guanyat algunes propietats noves a staging. Vols passar-les a producció sense tocar les dades de producció.
- Un esquema sencer migra la propietat d'un sandbox personal a l'organització, i d'allà a l'entorn principal de l'organització.
L'assistent de sincronització d'esquemes
La promoció la fa una Schema sync job — un model del sistema que registra què copiar, des d'on i a on. Configures una feina per promoció.
Des de la pàgina de l'organització → Sync jobs → + Nova schema sync job:
- Entorn d'origen — on viu l'esquema ben provat (per exemple Acme Staging).
- Entorn de destinació — on ha d'arribar l'esquema (per exemple Acme Producció).
- Esquemes a sincronitzar — tria'n un o més. Pots promocionar-los junts si pertanyen a la mateixa àrea funcional.
- Mode — habitualment additiu (s'afegeixen models i propietats nous a la destinació; els existents es reconcilien per UId). Algunes configuracions també exposen un mode replace que esborra l'estructura de la destinació primer; fes-lo servir amb cautela.
- (Opcional) Dry run — executa la feina, informa del que canviaria, però no ho aplica. Fes-ho sempre primer.
Desa i executa. L'assistent informa de cada model i propietat que toca.
Què fa i no fa l'assistent
Copia:
- Models, propietats, restriccions, vistes.
- UIds de model i de propietat (perquè les referències existents a la destinació continuïn funcionant).
- Enumeracions del sistema referenciades per l'esquema.
No copia:
- Dades d'instància — les files. Fes servir Copiar dades entre entorns per a això.
- Configuració per entorn — marcadors, widgets, consultes desades.
- Assignacions de rols — els rols són per organització, no per entorn. Els membres mantenen els rols que tenien a la destinació.
Una seqüència de promoció segura
Per a un entorn de producció real, segueix aquest ordre:
- Congela els canvis estructurals a producció — assegura't que ningú edita l'esquema directament a la destinació mentre sincronitzes.
- Executa amb dry-run — llegeix el diff amb cura. Verifica que cada canvi de propietat és intencional.
- Captura un snapshot — si la teva organització guarda snapshots d'entorn, captura'n un de l'entorn de destinació abans de l'execució en viu.
- Executa en viu — fes la sincronització.
- Valida — obre l'entorn de destinació, navega per uns quants models clau, crea una instància de prova, confirma que els formularis es renderitzen correctament.
- Descongela — torna a deixar entrar l'equip a la destinació.
Xarxa de seguretat del versionat
Com que els esquemes són versionats (vegeu Models), la forma anterior queda enregistrada després d'una sincronització. Les instàncies existents a la destinació continuen validant contra la versió del model amb què es van crear. Si la sincronització introdueix un canvi de propietat del qual et penedeixes, pots tornar a executar l'assistent amb un origen corregit — o, en el pitjor dels casos, demanar a un administrador de Yellow que faci rollback de la versió més recent.
Relacionats
- Esquemes — la unitat que es promociona.
- Entorns — els contenidors d'origen i destinació.
- Copiar dades entre entorns — l'operació germana per a dades d'instància.