배포 동결

Deployment freeze

위험한 기간의 일반 배포를 잠시 막고 긴급 수정만 별도 승인합니다.

···
html
<div class="stage" data-phase="0"><div class="title">RELEASE CALENDAR</div><div class="calendar"><span>MON</span><span>TUE</span><span>WED</span><span>THU</span><span>FRI</span><i></i><i></i><i class="freeze"></i><i class="freeze"></i><i></i></div><div class="lanes"><div class="panel routine">ROUTINE RELEASE <b>queued</b></div><div class="panel urgent">URGENT PATCH <b>review</b></div></div></div>
css
.stage{width:min(94vw,760px);height:min(88vh,330px);padding:clamp(9px,2.6vmin,20px);border:1px solid var(--line);border-radius:14px;background:var(--surface);font:600 clamp(12px,2.5vmin,16px)/1.3 "Pretendard Variable",Pretendard,-apple-system,BlinkMacSystemFont,"Apple SD Gothic Neo",sans-serif;display:flex;flex-direction:column;gap:clamp(6px,1.7vmin,12px);overflow:hidden;position:relative}.stage *{min-width:0}.stage .title{color:var(--accent);font-weight:800}.stage .sub{color:var(--muted)}.stage .row{display:flex;align-items:center;gap:clamp(5px,1.6vmin,12px)}.stage .panel{border:1px solid var(--line);border-radius:8px;background:var(--bg);padding:clamp(6px,1.6vmin,12px)}.stage .mono{font-family:ui-monospace,SFMono-Regular,monospace;font-size:clamp(12px,2.5vmin,15px)}.stage .grow{flex:1}.stage .on{color:var(--accent)}.calendar{display:grid;grid-template-columns:repeat(5,1fr);gap:4px;text-align:center;color:var(--muted)}.calendar i{height:clamp(18px,5vmin,28px);border:1px solid var(--line);border-radius:5px}.calendar .freeze{background:color-mix(in srgb,var(--accent-3) 24%,var(--surface));border-color:var(--accent-3)}.lanes{flex:1;display:flex;flex-direction:column;justify-content:space-around;gap:6px}.lanes .panel{display:flex;justify-content:space-between}.lanes b{color:var(--muted)}.stage[data-phase="1"] .routine{border-color:var(--accent-3)}.stage[data-phase="1"] .routine b{font-size:0}.stage[data-phase="1"] .routine b:after{content:'blocked';font-size:clamp(12px,2.5vmin,16px);color:var(--accent-3)}.stage[data-phase="2"] .urgent{border-color:var(--accent)}.stage[data-phase="2"] .urgent b{font-size:0}.stage[data-phase="2"] .urgent b:after{content:'approved';font-size:clamp(12px,2.5vmin,16px);color:var(--accent)}
js
const stage=document.querySelector('.stage');let phase=0;function advance(){phase=(phase+1)%3;stage.dataset.phase=String(phase)}const timer=setInterval(advance,1200);stage.addEventListener('pointerdown',()=>{clearInterval(timer);advance()})

배포 동결은 큰 행사나 결산처럼 장애 비용이 높은 기간에 운영 변경을 제한하는 정책입니다. 변경 자체를 없애는 대신 일반 배포와 긴급 패치의 승인 경로를 다르게 둡니다.

데모의 주간 타임라인에서 동결 구간에는 일반 배포가 차단되고 긴급 패치만 별도 경로를 탑니다. 동결이 길어지면 변경이 쌓여 해제 직후 위험이 커질 수 있으므로 종료 시점과 검증 계획을 미리 정해야 합니다.

언제 쓰나

행사·결산 등 안정성이 최우선인 짧은 기간에 배포 위험을 관리할 때 사용합니다.

페이지로 열기 ↗