Clarificați sarcina și decizia
Acest ghid transformă ghidul de implementare drupal într-un flux de lucru de operare care poate fi revizuit. Conectează deciziile de domeniu, proprietatea, dovezile și acceptarea, astfel încât rezultatul să continue să funcționeze în producție.
Utilizați revizuirile Drupal, moderarea conținutului și permisiunile pentru a separa generarea, revizuirea de specialitate și publicare.
Proces practic
- 1
Tipuri de surse de inventar, identificatori, câmpuri, locații, proprietari și stări de publicare.
- 2
Alegeți modelul de livrare dintre volum, latență, control editorial și toleranță la eșec.
- 3
Mapați înregistrarea sursă într-o înregistrare separată a versiunii de limbă cu o legătură durabilă.
- 4
Adăugați autentificare, idempotence, reîncercare, invalidare cache, logare și controale de acces.
- 5
Testează publicarea, modificările sursei, rezultatele indisponibile, derularea înapoi, operarea tastaturii și monitorizarea înainte de lansare.
Exemplu sau instrument
Un tip de conținut moderat arată câmpuri, roluri, revizuiri, livrare și rollback. În instrument, înregistrați, de asemenea, valoarea de bază, proprietarul, decizia, dovezile, problema deschisă și data aprobării. Utilizați o pagină reală sau o tranzacție, astfel încât echipa să vadă dependențele, excepțiile și lucrările de întreținere care urmează după lansare.
| Punct de decizie | Înregistra | Criteriul de acceptare |
|---|---|---|
| Linia de bază | Starea curentă observată | Sursa și data înregistrate |
| Decizie | Opțiunea selectată și justificarea | Risc și audiență luate în considerare |
| Dovezi | Testați, documentați sau măsurați | Revizuabil și specific versiunii |
| Aprobare | Nume, rol și data | Toate criteriile obligatorii îndeplinite |
Creați un model de conținut care păstrează proveniența
Creați un tip de conținut într-un limbaj accesibil sau o entitate structurată cu o referință la entitate la sursa autorizată. Includeți ID-ul de revizuire sursă, localitatea, modul de limbă, ID-ul rezultatului, starea revizuirii, versiunea glosarului, nivelul de risc, aprobatorii și următorul declanșator de revizuire. Utilizați paragrafe sau câmpuri structurate pentru titluri, liste, linkuri, notificări, descărcări și informații de contact. Un singur câmp de text îmbogățit nerestricționat face mai dificilă validarea la nivel de câmp, reutilizarea și redarea în siguranță.
Alegeți în mod deliberat între relația de traducere a lui Drupal și o entitate asociată separată. Traducerea standard funcționează atunci când structura câmpului și ciclul de viață editorial rămân echivalente. O entitate separată este mai sigură atunci când versiunea accesibilă combină, reordonează sau explică câmpurile sursă și necesită o moderare diferită. În ambele cazuri, păstrați revizuirea sursei imuabilă pentru transformare și afișați starea învechită atunci când sursa curentă nu se mai potrivește cu ea.
| Alegerea designului | Folosiți când | Protecție necesară |
|---|---|---|
| Traducerea conținutului | Structura și ciclul de viață rămân echivalente | Traducerea revizuirii a fost afectată și moderarea a fost testată |
| Entitate aferentă | Structura, proprietatea sau revizuirea diferă | Referință explicită la sursă și navigare reciprocă |
| Maparea paragrafelor | Sursa conține blocuri structurate reutilizabile | Blocuri de pachete neacceptate sau generare de steaguri |
Creare separată, revizuire de specialitate și publicare
Configurați stările de moderare a conținutului, cum ar fi solicitat, generare, schiță, revizuire subiect, revizuire limbă, aprobat, publicat, învechit și eșuat. Definiți tranziții pentru roluri dedicate și verificați-le cu permisiunile Drupal și gestionanții de acces. Contul de integrare API poate crea și actualiza o schiță, dar nu poate aproba sau publica. Un evaluator de subiect nu poate aproba propria generație cu risc ridicat decât dacă politica de risc documentată o permite.
Activați revizuirile și asigurați-vă că fiecare transformare, rezoluție de comentarii, tranziție de stare și rebazare a sursei creează o revizuire cu autor și marcaj de timp. Creați o vizualizare de revizuire care să arate sursa și schița, diferențele, avertismentele, linkurile și rezultatul redat. Dacă sursa se modifică, marcați corect versiunea nefinalizată și publicată și blocați publicarea până când un examinator rezolvă nepotrivirea.
- 1
Configurați câmpurile de entitate, validarea, revizuirile și relația sursă.
- 2
Creați stări de moderare și tranziții specifice rolului.
- 3
Generați o schiță printr-un lucrător de coadă restricționată.
- 4
Completează recenziile de subiect și limbă pe o singură revizuire identificată.
- 5
Publicați, indexați și păstrați pista de audit de la sursă la lansare.
Livrați cu Drupal cachebilitatea și accesibilitatea intacte
Atașați etichete cache pentru entitatea sursă, relația de revizuire sursă, entitatea de limbă, paragrafele și media la care se face referire, configurația glosarului și redarea. Utilizați contextele cache pentru locale și orice variație de acces legitim, dar nu faceți ca paginile publice aprobate să depindă de starea de generare specifică utilizatorului. Invalidați paginile afectate prin modificări ale entităților sau prin finalizarea cozii și păstrați ultima revizuire aprobată vizibilă în timp ce o înlocuire este revizuită.
Redați navigarea în limbă ca linkuri obișnuite prin rutarea Drupal și generarea de adrese URL conștient de limbă. Adăugați linkuri de sursă reciproce, metadate în limbi alternative, breadcrumbs și intrări sitemap. Verificați ierarhia titlurilor, scopul linkului, ordinea focalizării, mesajele de stare și asocierea erorilor de formular în tema finală. Dezinfectați ieșirea API prin câmpurile structurate permise și sistemul de randare al lui Drupal. Nu marcați niciodată HTML generat ca sigur doar pentru că provine de la un server de încredere.
Etichetele cache acoperă sursa, versiunea de limbă, componente, media, glosar și redare.
Procesarea cozii nu poate publica conținut sau șterge prematur ultimul rezultat aprobat.
Rutele lingvistice și linkurile sursă funcționează fără JavaScript.
Formatele de text și matricele de randare împiedică marcarea nesigură.
Căutarea indexează numai revizuirea aprobată și elimină rutele retrase.
Demonstrați permisiunile, revizuirile și derularea înapoi
Testele kernel-ului și funcționale ar trebui să acopere validarea câmpului, controlul accesului, tranzițiile de moderare, crearea reviziilor, detectarea sursei învechite, reîncercări în coadă, invalidarea cache-ului, accesul rutei și redarea fiecărei componente acceptate. Testați Drupal cron și cozile externe de rulare, inclusiv lucrători care se suprapun și lucrări repetate. Testele de browser ar trebui să exercite fluxul de lucru editorial complet cu fiecare rol și utilizarea frontală numai a tastaturii.
Lansare cu gestionarea configurației, cârlige de actualizare, rotație a acreditărilor, tablouri de bord în coadă, reluare a lucrărilor eșuate, minimizare a jurnalelor, copie de rezervă a bazei de date și un runbook de rollback. Importați configurația într-un mediu de producție și confirmați că pachetele, traducerile, permisiunile și vizualizările existente rămân intacte. Acceptarea include restabilirea unei revizuiri aprobate anterioare, reconstruirea cache-urilor și a indexurilor și confirmarea faptului că adresele URL publice și înregistrările de audit rămân corecte.
Roluri, dovezi și aprobare
Mențineți generația separată de publicare. Un răspuns de succes este o schiță, nu o aprobare. Stocați identificatorul și versiunea sursei, setările de transformare, identificatorul de rezultat, starea de revizuire, aprobarea și timpul de publicare. Când sursa se schimbă, marcați versiunea lingvistică pentru revizuire în loc să înlocuiți în tăcere conținutul aprobat. Acest lucru face posibilă rollback-ul și auditul pe toate platformele.
Operațiuni și întreținere
Lucrarea nu se termină la publicare. Conectați versiunea sau configurația lingvistică la sursa acesteia, monitorizați măsurile de calitate și servicii și definiți declanșatorii de revizuire concreti. Declanșatorii includ modificări de sursă, modificări legale, noi nevoi de public, întrebări de asistență recurente, modificări tehnice și incidente. Un proprietar numit evaluează declanșatorul, deschide o nouă revizuire atunci când este necesar și înregistrează aprobarea reînnoită.
Listă de verificare pentru publicare
Integrarea folosește identificatori durabili de sursă.
Acreditările sunt stocate pe partea serverului și rotite.
Timeout, reîncercarea și comportamentul limită de rată sunt definite.
Cererile repetate sunt idempotente.
Conținutul generat intră într-o stare de revizuire.
Modificările sursei invalidează sau redeschid versiunea.
Navigarea lingvistică funcționează prin tastatură și tehnologie de asistență.
Monitorizarea acoperă eșecurile, cozile, latența și conținutul învechit.