Continuous delivery and deployment

지속적 전달과 배포

Move a verified artifact through environment gates toward production.

···
html
<div class="stage" data-phase="0"><div class="title">ONE ARTIFACT, THREE GATES</div><div class="row gates"><div class="panel">build<br><b>v7</b></div><i></i><div class="panel">test</div><i></i><div class="panel">stage</div><i></i><div class="panel">prod</div></div><div class="sub status">artifact v7 waits at gate</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)}.gates{flex:1;justify-content:center}.gates .panel{min-width:18%;text-align:center}.gates i{width:clamp(10px,4vmin,35px);height:2px;background:var(--line)}.gates .panel:not(:first-child){color:var(--muted);transition:color .3s,background .3s}.stage[data-phase="1"] .gates .panel:nth-of-type(2),.stage[data-phase="2"] .gates .panel:nth-of-type(2),.stage[data-phase="2"] .gates .panel:nth-of-type(3){color:var(--accent);background:color-mix(in srgb,var(--accent) 18%,var(--surface));border-color:var(--accent)}.stage[data-phase="2"] .status:after{content:' · ready to promote'}
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()})

Continuous delivery keeps an artifact ready for release; continuous deployment also sends verified changes to production automatically. Promoting the same artifact avoids differences from rebuilding per environment.

The demo opens test, staging, and production gates in order. Approval or live metrics may control the final gate, and failure must stop promotion.

When to use

Use it to make releases repeatable and clarify approval points between environments.

Open as page ↗