한 번 build, 그 정확한 거 ship
foundation track 의 'build once, deploy many' 원칙이 artifact pipeline 에서 펼쳐져. Artifact 가 실제 ship 하는 것. 다음을 만족해야:
- 재현 가능 — 새 머신에서 같은 source 가 bit 동등 artifact 생산.
- Versioning — 고유 이름 (Git SHA, semantic version, timestamp).
- Immutable — 게시 후 절대 덮어쓰지 않음.
- 검증 가능 — checksum, signature, 또는 둘 다.
Artifact 저장 destination
- GitHub Releases — 사람 ship 가능한 binary (CLI 도구, 설치기).
- GitHub Container Registry (ghcr.io) — Docker image.
- npm / PyPI / crates.io — 언어 패키지.
- S3 / R2 / GCS — 일반 blob.
- 내부 artifact 저장소 — Artifactory, Nexus 등.
Versioning
흔한 두 가지 scheme:
- SemVer + Git SHA — 사람 ship release 는
v1.4.2+abc1234. API 안정 약속에 SemVer; 추적성에 SHA. - Date + SHA — 사용자 face 시맨틱 없는 내부 build 는
2026-04-30-abc1234.