Odluku o izdanju donesite na temelju dokaza
DovršenoProvjerite verziju, ciljno okruženje, preostali rizik i način oporavka. Odvojite spajanje koda, postavljanje i dostupnost korisnicima kada sustav to zahtijeva.
Objavljuje TaigaKako pišemo
Provjerite razumijevanjeOsoba koja pregledava odobri commit A, ali postupak postavljanja izgradi commit B s dodatnom promjenom autorizacije. Što je potrebno?Napravite vježbu
Što ćete naučiti
- Utvrditi na što se odluka o izdanju mora odnositi.
- Razlikovati spajanje koda, postavljanje u okruženje i dostupnost funkcije korisnicima.
- Odrediti uvjete za zaustavljanje izdanja ili povratak na prethodno stanje.
Precizno navedite odluku
Uspješan pipeline daje dokaze iz skupa provjera. Nije potpun opis odluke o izdanju. Odgovorna osoba mora znati što će se promijeniti, gdje će se promijeniti i koje posljedice ostaju.
Za izmišljeni izvoz podataka o klijentima utvrdite prihvaćeni commit i artefakt proizveden iz njega. Navedite ciljno okruženje. Povežite relevantne testove, pregled i sve odobrene iznimke. Uključite promjene podataka ili infrastrukture koje prate aplikaciju.
NIST-ov SSDF daje prakse sigurnog razvoja, a SLSA podaci o podrijetlu pomažu opisati kako je artefakt proizveden. Nijedno ne uklanja potrebu za odlukom je li ovo izdanje primjereno za ovu uslugu. NIST SSDF, SLSA podrijetlo.
Odvojite tri događaja
Spajanje koda unosi promjenu izvornog koda u granu. Postavljanje stavlja artefakt u okruženje. Omogućavanje funkcije čini njezino ponašanje dostupnim korisnicima. Ti se događaji mogu podudarati, ali nisu nužno isti događaj.
Usluga može postaviti neaktivnu funkciju i omogućiti je kasnije. Migracija baze podataka može utjecati na produkciju prije pojave vidljive funkcije. Odredite stvarni redoslijed umjesto da pretpostavite da spajanje PR-a opisuje svaku posljedicu.
Za izvoz se početna dostupnost može ograničiti zastavicom funkcije. To ne štiti automatski novu krajnju točku i ne poništava migraciju sheme. Provjerite kontrolu ondje gdje posljedica nastaje.
Pregledajte sažet zapis dokaza
Upotrijebite zapis koji druga odgovorna osoba može pregledati:
- Svrha i zahvaćeni korisnici.
- Identitet commita i artefakta.
- Relevantne provjere ponašanja, sigurnosti i kompatibilnosti.
- Ciljno okruženje i identitet pod kojim se postupak izvršava.
- Preostale iznimke s odgovornim osobama i uvjetima isteka.
- Nadzor, način oporavka i osoba odgovorna za reakciju.
Neka tvrdnje budu konkretne. Tvrdnja „testovi su prošli” slabija je od poveznice na rezultate za commit izdanja s jasnim opisom pokrivenosti. Tvrdnja „povratak je dostupan” slabija je od testiranog postupka s navedenim ograničenjima.
Odredite kako zaustaviti postupak
Odredite uvjete izdanja prije izvršavanja. Za izmišljeni izvoz zaustavite postupak ako pristup drugoj organizaciji uspije, ako se kriptografski sažetak artefakta razlikuje od prihvaćenog sažetka ili ako oporavak nije dostupan. To su primjeri uvjeta, a ne univerzalni kontrolni popis.
Nakon postavljanja pregledajte signale važne korisnicima. Usporedite ponašanje pri pogreškama i vremena odgovora s prihvaćenim ciljevima usluge. Proces koji ispravno radi ne dokazuje da korisnički postupak funkcionira.
Ako uvjet nije ispunjen, primijenite dogovorenu reakciju. To može značiti isključivanje funkcije, povratak kompatibilnog koda na prethodnu verziju ili oporavak podataka. Odaberite radnju koja otklanja kvar bez stvaranja većeg.
Sačuvajte odluku nakon izdavanja
Zabilježite stvarno postavljeni artefakt i ishod. Ako izvršavanje odstupa od plana, učinite razliku vidljivom. Uključite incidente i neočekivani rad u pripremu sljedećeg izdanja.
Automatizirani sustav isporuke trebao bi olakšati pregled tog zapisa. Osoba koja pregledava ne bi trebala rekonstruirati izdanje iz nepovezanih razgovora, logova i snimki zaslona. Jasni dokazi omogućuju timovima automatizaciju rutinskog rada uz zadržavanje odgovornosti za odluke.
Napravite vježbu
Pripremite izmišljenu bilješku o izdanju za izvoz podataka o klijentima. Uključite commit, kriptografski sažetak artefakta, okruženje, provjeru autorizacije, učinak migracije, osobu odgovornu za nadzor i povod za oporavak. Navedite jedan uvjet koji bi zaustavio izdanje čak i ako jedinični testovi prolaze.
Preuzmi radni list (Markdown)Uklanjanje ove oznake briše sav napredak spremljen u ovom pregledniku.
Napredak ostaje u ovom pregledniku. Bez računa i praćenja.