Путања 04Лекција 9 / 10

Донесите одлуку о објављивању на основу доказа

Проверите верзију, циљно окружење, преостали ризик и начин опоравка. Раздвојите merge, постављање и доступност корисницима када систем то захтева.

Практична примена9 минПрегледано

Објављује Како пишемо

Проверите разумевањеОсоба која прегледа промену одобри commit A, али постављање прави build из commit-а B са додатном променом ауторизације. Шта је потребно?Урадите вежбу
Особа која прегледа промену одобри commit A, али постављање прави build из commit-а B са додатном променом ауторизације. Шта је потребно?

Шта ћете научити

  • Утврдите на шта одлука о објављивању мора да се односи.
  • Разликујте merge, постављање у окружење и омогућавање функције корисницима.
  • Дефинишите услове за заустављање или поништавање објављивања.

Прецизно наведите одлуку

Зелен pipeline је доказ из скупа провера. Није потпун опис одлуке о објављивању. Одговорна особа треба да зна шта ће се променити, где ће се променити и које последице преостају.

За измишљен извоз података о купцима утврдите прихваћени commit и артефакт направљен од њега. Наведите циљно окружење. Повежите релевантне тестове, преглед и сваки одобрени изузетак. Укључите промене података или инфраструктуре које прате апликацију.

NIST SSDF пружа праксе безбедног развоја, док SLSA provenance помаже да се опише како је артефакт настао. Ниједно не уклања потребу да одлучите да ли је ово издање прикладно за овај сервис. NIST SSDF, SLSA provenance.

Раздвојите три догађаја

Merge уноси промену изворног кода у грану. Постављање у окружење уноси артефакт у то окружење. Омогућавање функције чини понашање доступним корисницима. Ови догађаји могу да се поклопе, али нису нужно исти догађај.

Сервис може да постави неактивну функцију и омогући је касније. Миграција базе може да утиче на продукцију пре појаве видљиве функције. Дефинишите стварни редослед уместо претпоставке да merge PR-а описује сваку последицу.

За извоз, feature flag може да ограничи почетну доступност. Не штити аутоматски нову крајњу тачку и не поништава миграцију шеме. Проверите контролу на месту где последица настаје.

Прегледајте сажет запис доказа

Користите запис који друга одговорна особа може да испита:

  • Сврха и погођени корисници.
  • Идентитет commit-а и артефакта.
  • Релевантне провере понашања, безбедности и компатибилности.
  • Циљно окружење и идентитет извршиоца.
  • Преостали изузеци са одговорним особама и условима истека.
  • Надзор, начин опоравка и особа одговорна за реаговање.

Нека тврдње буду конкретне. „Тестови су прошли“ слабије је од везе ка резултатима за commit издања са јасним описом покривености. „Rollback је доступан“ слабије је од тестираног поступка са наведеним ограничењима.

Одлучите како да зауставите објављивање

Дефинишите услове објављивања пре извршења. За измишљен извоз зауставите објављивање ако приступ подацима друге организације успе, ако артефакт не одговара прихваћеном криптографском сажетку или ако опоравак није доступан. Ово су илустративни услови, а не универзална контролна листа.

После постављања испитајте сигнале важне корисницима. Упоредите грешке и времена одзива са прихваћеним циљевима сервиса. Исправан процес не доказује да кориснички ток ради.

Ако услов није испуњен, примените договорени одговор. То може да значи онемогућавање функције, rollback компатибилног кода или опоравак података. Изаберите радњу која решава отказ без изазивања већег.

Сачувајте одлуку после објављивања

Забележите стварно постављен артефакт и исход. Ако се извршење разликује од плана, учините разлику видљивом. Укључите инциденте и неочекивани рад у планирање следећег издања.

Аутоматизован систем испоруке треба да олакша преглед овог записа. Не треба да захтева да особа која прегледа промену реконструише објављивање из неповезаних разговора, логова и снимака екрана. Јасни докази омогућавају тимовима да аутоматизују рутински рад и задрже одговорност за одлуке.

Урадите вежбу

Припремите измишљену белешку о објављивању извоза података о купцима. Укључите commit, криптографски сажетак артефакта, окружење, проверу ауторизације, ефекат миграције, особу одговорну за надзор и услов за покретање опоравка. Наведите један услов који би зауставио објављивање чак и ако јединични тестови прођу.

Преузми радни лист (Markdown)
Проверите разумевање ↑

Наставите учење

Извори и додатно читање

Повезани материјал компаније Taiga

← Претходна лекција: Координишите AI развој међу тимовима