โ† ๋ชฉ๋ก์œผ๋กœ
ENGINEERING NOTE16 ๋ถ„ ์ฝ๊ธฐ

๐Ÿงญ 7๊ฐœ OSS๋ฅผ ํ•˜๋‚˜์˜ Engineering Portfolio๋กœ ์šด์˜ํ•˜๊ธฐ โ€” OpenForge๋กœ ๊ณตํ†ต Engineering Standard ๋งŒ๋“ค๊ธฐ

Narwhal, Beluga, KubeMetal, kube-ready-box, ldapium, nfs-quota-agent, OpenForge๋ฅผ ํ•˜๋‚˜์˜ OSS Engineering Portfolio๋กœ ๋ณด๊ณ  ์‹ค์ œ repository evidence๋ฅผ ๊ธฐ์ค€์œผ๋กœ ๊ณตํ†ต Engineering/Supply-Chain Standard๋ฅผ ์ˆ˜๋ฆฝํ•œ ๊ณผ์ •์„ ์ •๋ฆฌํ•ฉ๋‹ˆ๋‹ค.

Open Source
Engineering
Platform Engineering
Kubernetes
Cloud Native
Supply Chain
GitHub
AI-assisted Development

๋“ค์–ด๊ฐ€๋ฉฐ

์ตœ๊ทผ ๋ช‡ ๋‹ฌ ๋™์•ˆ ์—ฌ๋Ÿฌ ๊ฐœ์˜ ์˜คํ”ˆ์†Œ์Šค ํ”„๋กœ์ ํŠธ๋ฅผ ๋™์‹œ์— ๋ฐœ์ „์‹œํ‚ค๋ฉด์„œ ํ•œ ๊ฐ€์ง€ ๋ฌธ์ œ๊ฐ€ ๋ฐ˜๋ณตํ•ด์„œ ๋ณด์ด๊ธฐ ์‹œ์ž‘ํ–ˆ์Šต๋‹ˆ๋‹ค.

์ฒ˜์Œ์—๋Š” ๊ฐ๊ฐ์˜ repository๊ฐ€ ์„œ๋กœ ๋‹ค๋ฅธ ๋ฌธ์ œ๋ฅผ ํ•ด๊ฒฐํ•˜๋Š” ๋…๋ฆฝ๋œ ํ”„๋กœ์ ํŠธ๋ผ๊ณ  ์ƒ๊ฐํ–ˆ์Šต๋‹ˆ๋‹ค.

ํ•˜์ง€๋งŒ ํ”„๋กœ์ ํŠธ๊ฐ€ ๋Š˜์–ด๋‚˜์ž ์ƒˆ๋กœ์šด ๋ฌธ์ œ๊ฐ€ ์ƒ๊ฒผ์Šต๋‹ˆ๋‹ค.

๊ฐ repository์˜ ์ฝ”๋“œ๋ฅผ ์ž˜ ๋งŒ๋“œ๋Š” ๊ฒƒ๊ณผ, ์—ฌ๋Ÿฌ OSS๋ฅผ ์ง€์†์ ์œผ๋กœ ์šด์˜ ๊ฐ€๋Šฅํ•œ engineering portfolio๋กœ ๋งŒ๋“œ๋Š” ๊ฒƒ์€ ์ „ํ˜€ ๋‹ค๋ฅธ ๋ฌธ์ œ๋‹ค.

์–ด๋–ค ํ”„๋กœ์ ํŠธ๋Š” Makefile์ด ์ค‘์‹ฌ์ด๊ณ , ์–ด๋–ค ํ”„๋กœ์ ํŠธ๋Š” packer/build.sh๊ฐ€ canonical entrypoint์ž…๋‹ˆ๋‹ค. ์–ด๋–ค ํ”„๋กœ์ ํŠธ๋Š” SECURITY.md์™€ private vulnerability reporting์„ ๊ฐ–๊ณ  ์žˆ๊ณ , ๋‹ค๋ฅธ ํ”„๋กœ์ ํŠธ๋Š” ์•„์ง ๋ณด๊ฐ• ์ค‘์ž…๋‹ˆ๋‹ค. ์–ด๋–ค ํ”„๋กœ์ ํŠธ๋Š” SBOM๊ณผ provenance๊นŒ์ง€ release์— ์—ฐ๊ฒฐํ•˜์ง€๋งŒ, ๋‹ค๋ฅธ ํ”„๋กœ์ ํŠธ๋Š” license์™€ third-party attribution์€ ์ž˜ ๊ฐ–์ถ”๊ณ  ์žˆ์–ด๋„ release evidence๊ฐ€ ๋ถ„๋ฆฌ๋˜์–ด ์žˆ์Šต๋‹ˆ๋‹ค.

์ฒ˜์Œ์—๋Š” ๊ฐ๊ฐ์˜ backlog์—์„œ ๋ฌธ์ œ๋ฅผ ๋”ฐ๋กœ ํ•ด๊ฒฐํ–ˆ์Šต๋‹ˆ๋‹ค.

๊ทธ๋Ÿฌ๋‹ค ๊ฐ™์€ ์ข…๋ฅ˜์˜ ๋ฌธ์ œ๊ฐ€ repository๋งˆ๋‹ค ๋ฐ˜๋ณต๋˜๊ณ  ์žˆ๋‹ค๋Š” ์‚ฌ์‹ค์„ ๋ฐœ๊ฒฌํ–ˆ์Šต๋‹ˆ๋‹ค.

๊ทธ๋ž˜์„œ ์ ‘๊ทผ ๋ฐฉ์‹์„ ๋ฐ”๊ฟจ์Šต๋‹ˆ๋‹ค.

์—ฌ๋Ÿฌ OSS๋ฅผ ํ•˜๋‚˜์˜ Engineering Standard checklist๋กœ ๋†“๊ณ  ์‹ค์ œ ํŒŒ์ผ, GitHub Actions, Issue, release ๋ฌธ์„œ, ๊ณต๊ธ‰๋ง evidence๊นŒ์ง€ ๋Œ€์กฐํ•˜๋Š” ๋ฐฉ์‹์œผ๋กœ portfolio ์ „์ฒด๋ฅผ ๋ฐ”๋ผ๋ณด๊ธฐ ์‹œ์ž‘ํ–ˆ์Šต๋‹ˆ๋‹ค.

๊ทธ๋ฆฌ๊ณ  ์ด ๊ณผ์ •์—์„œ ๋˜ ํ•˜๋‚˜์˜ ํ”„๋กœ์ ํŠธ๊ฐ€ ํ•„์š”ํ•˜๋‹ค๋Š” ๊ฒฐ๋ก ์— ๋„๋‹ฌํ–ˆ์Šต๋‹ˆ๋‹ค.

๋ฐ”๋กœ OpenForge์ž…๋‹ˆ๋‹ค.

OpenForge๋Š” ์ƒˆ๋กœ์šด runtime์ด๋‚˜ platform component๊ฐ€ ์•„๋‹™๋‹ˆ๋‹ค. repository structure, documentation, GitHub workflow, CI/CD, security, release, localization, development tooling, AI-assisted development, lifecycle practices๋ฅผ ๋ฐ˜๋ณต ๊ฐ€๋Šฅํ•œ ๊ธฐ์ค€์œผ๋กœ ๋ฌถ๋Š” OSS Project Blueprint & Engineering Standards์ž…๋‹ˆ๋‹ค.

์ฆ‰ ๊ธฐ์กด OSS๋“ค์„ ๋ชจ๋‘ ๊ฐ™์€ ๋ฐฉ์‹์œผ๋กœ ๋งŒ๋“œ๋Š” ๊ฒƒ์ด ์•„๋‹ˆ๋ผ, ์„œ๋กœ ๋‹ค๋ฅธ ํ”„๋กœ์ ํŠธ๊ฐ€ ๊ฐ™์€ engineering language๋ฅผ ์‚ฌ์šฉํ•  ์ˆ˜ ์žˆ๊ฒŒ ํ•˜๋Š” ํ‘œ์ค€ํ™” ๊ณ„์ธต์ž…๋‹ˆ๋‹ค.


1. ํ˜„์žฌ ์šด์˜ํ•˜๊ณ  ์žˆ๋Š” 7๊ฐœ OSS

์ด๋ฒˆ ๊ด€์ ์—์„œ portfolio๋ฅผ ๋‹ค์‹œ ๊ทธ๋ฆฌ๋ฉด ๋‹ค์Œ๊ณผ ๊ฐ™์Šต๋‹ˆ๋‹ค.

                 OSS Engineering Portfolio
                          โ”‚
              โ”Œโ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”ดโ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”
              โ”‚                       โ”‚
              โ–ผ                       โ–ผ
         OpenForge              Cloud / Platform OSS
              โ”‚                       โ”‚
              โ”‚          โ”Œโ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”ผโ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”
              โ”‚          โ–ผ            โ–ผ            โ–ผ
              โ”‚       Narwhal       Beluga      KubeMetal
              โ”‚          โ”‚            โ”‚
              โ”‚          โ–ผ            โ–ผ
              โ”‚   Narwhal Portal   Data Platform
              โ”‚
              โ””โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”ฌโ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”˜
                             โ”‚
                     Reusable Standards
                             โ”‚
          โ”Œโ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”ผโ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”
          โ–ผ                  โ–ผ                  โ–ผ
    kube-ready-box        ldapium        nfs-quota-agent

๊ฐ ํ”„๋กœ์ ํŠธ๋Š” ๋‹ค๋ฅธ ๋ฌธ์ œ๋ฅผ ํ•ด๊ฒฐํ•ฉ๋‹ˆ๋‹ค.

Narwhal

Kubernetes ๊ธฐ๋ฐ˜ Internal Developer Platform(IDP)์ž…๋‹ˆ๋‹ค.

GitOps, IAM/SSO, Service Mesh, Observability, Registry, Storage, Backup, Policy, API Gateway, Management Portal ๋“ฑ์„ ํ•˜๋‚˜์˜ ์žฌํ˜„ ๊ฐ€๋Šฅํ•œ ํ”Œ๋žซํผ์œผ๋กœ ํ†ตํ•ฉํ•ฉ๋‹ˆ๋‹ค.

Beluga

Kubernetes ์œ„์—์„œ CDC, Kafka, Flink, Iceberg, Trino, Superset, Airflow ๋“ฑ์„ ์—ฐ๊ฒฐํ•˜๋Š” ๋ฐ์ดํ„ฐ ํ”Œ๋žซํผ์ž…๋‹ˆ๋‹ค.

Narwhal์ด platform engineering์˜ ์ค‘์‹ฌ์ด๋ผ๋ฉด Beluga๋Š” data platform engineering์˜ ์‹คํ—˜์žฅ ์—ญํ• ์„ ํ•ฉ๋‹ˆ๋‹ค.

KubeMetal

Apple Silicon์˜ macOS host compute์™€ Kubernetes control plane์„ ์—ฐ๊ฒฐํ•˜๋Š” hybrid MLOps desktop application์ž…๋‹ˆ๋‹ค.

kube-ready-box

Kubernetes ๊ฐœ๋ฐœยท์‹ค์Šต ํ™˜๊ฒฝ์„ ์œ„ํ•œ Ubuntu ๊ธฐ๋ฐ˜ Vagrant Box์ž…๋‹ˆ๋‹ค.

Packer๋ฅผ ์‚ฌ์šฉํ•ด OS tuning๊ณผ Kubernetes prerequisite๋ฅผ ํฌํ•จํ•˜๋Š” ์žฌํ˜„ ๊ฐ€๋Šฅํ•œ VM ํ™˜๊ฒฝ์„ ๋งŒ๋“ญ๋‹ˆ๋‹ค.

ldapium

Upstream OpenLDAP์„ ์ง์ ‘ ๋นŒ๋“œํ•˜๊ณ  container image, UI, Helm chart๊นŒ์ง€ ํ•จ๊ป˜ ์ œ๊ณตํ•˜๋Š” ํ”„๋กœ์ ํŠธ์ž…๋‹ˆ๋‹ค.

Repository governance์™€ release/supply-chain ๊ตฌ์กฐ๋ฅผ ์‹ค์ œ ์šด์˜ ์ˆ˜์ค€์œผ๋กœ ๋‹ค๋“ฌ๋Š” ์ข‹์€ reference๊ฐ€ ๋˜์—ˆ์Šต๋‹ˆ๋‹ค.

nfs-quota-agent

NFS์˜ XFS/ext4/Btrfs project quota๋ฅผ Kubernetes PersistentVolume๊ณผ ์—ฐ๊ฒฐํ•˜๋Š” Kubernetes agent์ž…๋‹ˆ๋‹ค.

Helm, multi-arch image, binary release, SBOM, vulnerability scan๊นŒ์ง€ ๊ณต๊ธ‰๋ง ํ๋ฆ„์„ ํ•จ๊ป˜ ๋‹ค๋ฃน๋‹ˆ๋‹ค.

OpenForge

OpenForge๋Š” ์œ„ ํ”„๋กœ์ ํŠธ๋“ค์„ ์‹คํ–‰ํ•˜๋Š” ๋˜ ํ•˜๋‚˜์˜ runtime component๊ฐ€ ์•„๋‹™๋‹ˆ๋‹ค.

์˜คํžˆ๋ ค repository ์ž์ฒด๋ฅผ ์–ด๋–ป๊ฒŒ ์‹œ์ž‘ํ•˜๊ณ , ๋ฌธ์„œํ™”ํ•˜๊ณ , CI๋กœ ๊ฒ€์ฆํ•˜๊ณ , security์™€ release evidence๋ฅผ ๋‚จ๊ธฐ๊ณ , localization๊ณผ AI-assisted development๋ฅผ ์šด์˜ํ• ์ง€๋ฅผ ์ •์˜ํ•˜๋Š” ๊ณตํ†ต engineering foundation์ž…๋‹ˆ๋‹ค.

ํ˜„์žฌ OpenForge๋Š” ๋‹ค์Œ์„ ํ‘œ์ค€ํ™”ํ•ฉ๋‹ˆ๋‹ค.

Repository
Documentation
GitHub
Development
Tooling
Security
CI/CD
Release
Internationalization
OSS Compliance
Reference Practices
Reference Metrics

์ค‘์š”ํ•œ ๊ฒƒ์€ ๋ชจ๋“  repository๊ฐ€ OpenForge์˜ ๊ตฌํ˜„์„ ๊ทธ๋Œ€๋กœ ๋ณต์‚ฌํ•ด์•ผ ํ•˜๋Š” ๊ฒƒ์€ ์•„๋‹ˆ๋ผ๋Š” ์ ์ž…๋‹ˆ๋‹ค.

OpenForge๋Š” defaults์™€ vocabulary๋ฅผ ์ œ๊ณตํ•˜๊ณ , ๊ฐ project๋Š” ํ•„์š”ํ•œ ๋ถ€๋ถ„๋งŒ ์ฑ„ํƒํ•˜๋ฉฐ ์˜๋„์ ์ธ ์ฐจ์ด๋Š” ADR ๋“ฑ์œผ๋กœ ์„ค๋ช…ํ•ฉ๋‹ˆ๋‹ค.


2. OpenForge๋ฅผ ์ถ”๊ฐ€ํ•˜๋ฉด์„œ ๋ฐ”๋€ ์งˆ๋ฌธ

6๊ฐœ OSS๋งŒ ๋†“๊ณ  ๋ณด๋ฉด ์งˆ๋ฌธ์€ ์ฃผ๋กœ ๋‹ค์Œ๊ณผ ๊ฐ™์•˜์Šต๋‹ˆ๋‹ค.

์–ด๋–ค repository๊ฐ€ SECURITY.md๋ฅผ ๊ฐ–๊ณ  ์žˆ๋Š”๊ฐ€?
์–ด๋–ค repository๊ฐ€ SBOM์„ ์ƒ์„ฑํ•˜๋Š”๊ฐ€?
์–ด๋–ค repository๊ฐ€ release evidence๋ฅผ ๋‚จ๊ธฐ๋Š”๊ฐ€?

OpenForge๋ฅผ ํ•จ๊ป˜ ๋†“๊ณ  ๋ณด๋‹ˆ ์งˆ๋ฌธ์ด ํ•œ ๋‹จ๊ณ„ ์˜ฌ๋ผ๊ฐ‘๋‹ˆ๋‹ค.

"๊ฐ repository์— ์ด ๊ธฐ๋Šฅ์ด ์žˆ๋Š”๊ฐ€?"๊ฐ€ ์•„๋‹ˆ๋ผ "์ด ๊ธฐ๋Šฅ์„ portfolio ์ „์ฒด์—์„œ ์–ด๋–ค ๊ธฐ์ค€์œผ๋กœ ์ •์˜ํ•  ๊ฒƒ์ธ๊ฐ€?"

์˜ˆ๋ฅผ ๋“ค์–ด SECURITY.md ํŒŒ์ผ ํ•˜๋‚˜๋ฅผ ์ถ”๊ฐ€ํ•˜๋Š” ๊ฒƒ์€ ์‰ฝ์Šต๋‹ˆ๋‹ค.

ํ•˜์ง€๋งŒ ์‹ค์ œ๋กœ ํ•„์š”ํ•œ ๊ฒƒ์€ ๋‹ค์Œ์ž…๋‹ˆ๋‹ค.

Security policy
    โ†“
Private reporting
    โ†“
Credential protection
    โ†“
Dependency / image scan
    โ†“
Release integrity
    โ†“
Known limitations

์ฆ‰ ํŒŒ์ผ ์กด์žฌ ์—ฌ๋ถ€๊ฐ€ ์•„๋‹ˆ๋ผ engineering intent์™€ lifecycle ์ „์ฒด๋ฅผ ๋ด์•ผ ํ•ฉ๋‹ˆ๋‹ค.

OpenForge๊ฐ€ ํ•„์š”ํ•œ ์ด์œ ๋„ ์—ฌ๊ธฐ์— ์žˆ์Šต๋‹ˆ๋‹ค.


3. ๊ธฐ๋Šฅ ๋ชฉ๋ก๋ณด๋‹ค ๋จผ์ € taxonomy๋ฅผ ๋งŒ๋“ค์—ˆ๋‹ค

์ฒ˜์Œ๋ถ€ํ„ฐ ํ”„๋กœ์ ํŠธ๋ณ„ ๊ธฐ๋Šฅ์„ ๋Š˜๋ฆฌ๋Š” ๋Œ€์‹  portfolio ์ „์ฒด์˜ engineering language๋ถ€ํ„ฐ ์ •๋ฆฌํ–ˆ์Šต๋‹ˆ๋‹ค.

Foundation
Platform
Data
Security
Observability
Developer Experience
AI / MLOps
Supply Chain
Release
Documentation
Integration

์ด taxonomy๋Š” repository๋ฅผ ๋˜‘๊ฐ™์ด ๋งŒ๋“ค๊ธฐ ์œ„ํ•œ ๊ฒƒ์ด ์•„๋‹™๋‹ˆ๋‹ค.

์˜คํžˆ๋ ค ์„œ๋กœ ๋‹ค๋ฅธ ํ”„๋กœ์ ํŠธ๋ฅผ ๋™์ผํ•œ ๊ธฐ์ค€์œผ๋กœ ๋น„๊ตํ•˜๊ณ , ๋ฐ˜๋ณต๋˜๋Š” backlog๋ฅผ ํ•˜๋‚˜์˜ ์–ธ์–ด๋กœ ๋ฌถ๊ธฐ ์œ„ํ•œ ๊ฒƒ์ž…๋‹ˆ๋‹ค.

OpenForge๋Š” ์ด taxonomy๋ฅผ ์‹ค์ œ repository standard์™€ ์—ฐ๊ฒฐํ•ฉ๋‹ˆ๋‹ค.


4. ๊ณตํ†ต checklist๊ฐ€ OpenForge๋กœ ๋ฐ”๋€Œ์—ˆ๋‹ค

2026๋…„ 8์›” 20์ผ ๊ธฐ์ค€์œผ๋กœ portfolio audit์˜ ํ•ต์‹ฌ ์˜์—ญ์€ ๋‹ค์Œ 11๊ฐœ์ž…๋‹ˆ๋‹ค.

1. Repository Governance
2. Build / Dependency Reproducibility
3. Common Make / Command Vocabulary
4. GitHub Actions / CI
5. Security Engineering
6. License / Third-party Governance
7. SBOM / Provenance
8. Release Management
9. Test / Quality Conformance
10. Offline / Reproducibility
11. Cross-OSS Contract

์ฒ˜์Œ์—๋Š” ์ด checklist๋ฅผ ๋ธ”๋กœ๊ทธ ๋ฌธ์„œ์™€ Issue๋กœ๋งŒ ๊ด€๋ฆฌํ–ˆ์Šต๋‹ˆ๋‹ค.

ํ•˜์ง€๋งŒ ํ”„๋กœ์ ํŠธ๊ฐ€ ๋Š˜์–ด๋‚˜์ž ๊ธฐ์ค€ ์ž์ฒด๊ฐ€ repository ๋ฐ–์— ๋จธ๋ฌด๋ฅด๋Š” ๊ฒƒ์ด ๋ถˆํŽธํ•ด์กŒ์Šต๋‹ˆ๋‹ค.

๊ทธ๋ž˜์„œ OpenForge์— Reference Practices Audit๊ณผ Reference Implementation Metrics๋ฅผ ๋„ฃ์—ˆ์Šต๋‹ˆ๋‹ค.

์ด์ œ standard๊ฐ€ ๋‹จ์ˆœ ์„ ์–ธ์ด ์•„๋‹ˆ๋ผ ๋‹ค์Œ๊ณผ ๊ฐ™์€ feedback loop๋ฅผ ๊ฐ–์Šต๋‹ˆ๋‹ค.

์‹ค์ œ OSS ํ”„๋กœ์ ํŠธ
      โ†“
Issue / CI / Release evidence
      โ†“
๊ณตํ†ต Engineering Standard
      โ†“
OpenForge
      โ†“
์ƒˆ ํ”„๋กœ์ ํŠธ bootstrap
      โ†“
๋‹ค์‹œ ์‹ค์ œ ์šด์˜
      โ†“
Standard ๊ฐœ์„ 

์ฆ‰ OpenForge๋„ ๊ณ ์ •๋œ ํ—Œ์žฅ์ด ์•„๋‹ˆ๋ผ ์‹ค์ œ OSS์—์„œ ๊ฒ€์ฆํ•˜๋ฉฐ ๊ณ„์† ๋ฐœ์ „ํ•˜๋Š” ํ‘œ์ค€์ž…๋‹ˆ๋‹ค.


5. Repository Governance

์ฒซ ๋ฒˆ์งธ ์˜์—ญ์€ repository๊ฐ€ ์‹ ๋ขฐํ•  ์ˆ˜ ์žˆ๋Š” OSS ํ”„๋กœ์ ํŠธ์˜ ๊ธฐ๋ณธ ๊ตฌ์กฐ๋ฅผ ๊ฐ–๊ณ  ์žˆ๋Š”๊ฐ€์ž…๋‹ˆ๋‹ค.

์ตœ์†Œ ๊ธฐ์ค€์€ ๋‹ค์Œ์ฒ˜๋Ÿผ ์ •์˜ํ–ˆ์Šต๋‹ˆ๋‹ค.

LICENSE
NOTICE ๋˜๋Š” third-party attribution
SECURITY.md / private reporting
CONTRIBUTING.md ๋˜๋Š” equivalent
CHANGELOG.md
RELEASING.md ๋˜๋Š” reproducible release procedure
Supported versions / EOL policy
Public repository security settings

์—ฌ๊ธฐ์„œ ์ค‘์š”ํ•œ ๊ตํ›ˆ์€ ๊ฐ™์€ ํŒŒ์ผ๋ช…์„ ๊ฐ•์ œํ•˜๋Š” ๊ฒƒ์ด standard๊ฐ€ ์•„๋‹ˆ๋ผ๋Š” ๊ฒƒ์ž…๋‹ˆ๋‹ค.

์˜ˆ๋ฅผ ๋“ค์–ด kube-ready-box๋Š” ์ผ๋ฐ˜์ ์ธ Go/Node project์ฒ˜๋Ÿผ Makefile ํ•˜๋‚˜๋ฅผ ์ค‘์‹ฌ์œผ๋กœ ์›€์ง์ด์ง€ ์•Š๊ณ  Packer์™€ build.sh๊ฐ€ ๋ช…ํ™•ํ•œ canonical interface๋ฅผ ์ œ๊ณตํ•ฉ๋‹ˆ๋‹ค.

OpenForge๋Š” ์ด๋Ÿฐ ์ฐจ์ด๋ฅผ ํ—ˆ์šฉํ•ฉ๋‹ˆ๋‹ค.

๋Œ€์‹  "๋ฌด์—‡์ด canonical entrypoint์ธ๊ฐ€", "CI์™€ local workflow๊ฐ€ ๊ฐ™์€๊ฐ€", "์‚ฌ์šฉ์ž๊ฐ€ ์–ด๋–ป๊ฒŒ ์žฌํ˜„ํ•˜๋Š”๊ฐ€"๊ฐ€ ๋ฌธ์„œ์™€ automation์œผ๋กœ ์„ค๋ช…๋˜์–ด ์žˆ์–ด์•ผ ํ•ฉ๋‹ˆ๋‹ค.


6. Build / Reproducibility

๊ฐ€์žฅ ์ค‘์š”ํ•œ ์งˆ๋ฌธ์€ ๊ฐ„๋‹จํ•ฉ๋‹ˆ๋‹ค.

์ƒˆ๋กœ์šด ์‚ฌ๋žŒ์ด repository๋ฅผ cloneํ•˜๋ฉด ๊ฐ™์€ build๋ฅผ ๋‹ค์‹œ ๋งŒ๋“ค ์ˆ˜ ์žˆ๋Š”๊ฐ€?

portfolio์—์„œ๋Š” ๋‹ค์Œ์„ ์ฒดํฌํ•ฉ๋‹ˆ๋‹ค.

canonical build entrypoint
help / usage
single source of truth
dependency pinning
clean checkout build
architecture matrix
artifact โ†” source revision
false-green prevention
local โ†” CI parity

OpenForge๋Š” ์—ฌ๊ธฐ์„œ make ์ž์ฒด๋ฅผ ๊ฐ•์ œํ•˜์ง€ ์•Š์Šต๋‹ˆ๋‹ค.

๋Œ€์‹  repository๋งˆ๋‹ค ๋ช…ํ™•ํ•œ canonical build interface ํ•˜๋‚˜๋ฅผ ์š”๊ตฌํ•ฉ๋‹ˆ๋‹ค.

ldapium / nfs-quota-agent / Beluga / Narwhal
                 โ”‚
                 โ””โ”€ Make-oriented
 
KubeMetal
  โ””โ”€ Make + Cargo + pnpm
 
kube-ready-box
  โ””โ”€ Packer + build.sh

์ด๋Ÿฐ ๋‹ค์–‘์„ฑ์„ ์œ ์ง€ํ•˜๋ฉด์„œ engineering intent๋ฅผ ํ†ต์ผํ•˜๋Š” ๊ฒƒ์ด portfolio standard์˜ ํ•ต์‹ฌ์ž…๋‹ˆ๋‹ค.


7. CI / Security / Supply Chain

๊ณตํ†ต CI ๋ชจ๋ธ์€ ๋‹ค์Œ๊ณผ ๊ฐ™์Šต๋‹ˆ๋‹ค.

validate
   โ†“
test
   โ†“
security
   โ†“
license
   โ†“
sbom
   โ†“
build
   โ†“
package
   โ†“
e2e
   โ†“
release
   โ†“
attest

๋ชจ๋“  ํ”„๋กœ์ ํŠธ๊ฐ€ ๋ชจ๋“  ๋‹จ๊ณ„๋ฅผ ๊ตฌํ˜„ํ•  ํ•„์š”๋Š” ์—†์Šต๋‹ˆ๋‹ค.

๋Œ€์‹  ์–ด๋–ค ๋‹จ๊ณ„๊ฐ€ ํ•„์ˆ˜์ธ์ง€ ์„ค๋ช…ํ•  ์ˆ˜ ์žˆ์–ด์•ผ ํ•ฉ๋‹ˆ๋‹ค.

ํŠนํžˆ ๋‹ค์Œ ์›์น™์„ ๊ฐ•ํ•˜๊ฒŒ ์œ ์ง€ํ•ฉ๋‹ˆ๋‹ค.

ํ•„์ˆ˜ sub-check๊ฐ€ ์‹คํŒจํ–ˆ๋Š”๋ฐ ์ „์ฒด CI๊ฐ€ ์„ฑ๊ณตํ•˜๋ฉด ์•ˆ ๋œ๋‹ค.

AI-assisted development๊ฐ€ ๋นจ๋ผ์งˆ์ˆ˜๋ก ์ด ์›์น™์€ ๋” ์ค‘์š”ํ•ด์ง‘๋‹ˆ๋‹ค. ๋ณ€๊ฒฝ ์†๋„๊ฐ€ ๋นจ๋ผ์ง€๋ฉด false-green ํ•˜๋‚˜๊ฐ€ ์—ฌ๋Ÿฌ repository๋กœ ํผ์งˆ ๊ฐ€๋Šฅ์„ฑ๋„ ์ปค์ง€๊ธฐ ๋•Œ๋ฌธ์ž…๋‹ˆ๋‹ค.

OpenForge์˜ Security / CI/CD / Release standard๋Š” ์ด lifecycle์„ repository ๋‹จ์œ„๊ฐ€ ์•„๋‹ˆ๋ผ portfolio ์ „์ฒด์—์„œ ์žฌ์‚ฌ์šฉํ•˜๊ธฐ ์œ„ํ•œ ๊ธฐ๋ฐ˜์ž…๋‹ˆ๋‹ค.


8. AI ์‹œ๋Œ€์—๋Š” Engineering Standard๊ฐ€ ๋” ์ค‘์š”ํ•ด์กŒ๋‹ค

AI ์—์ด์ „ํŠธ๋Š” repository ํ•˜๋‚˜์˜ ์ฝ”๋“œ๋งŒ ๋น ๋ฅด๊ฒŒ ๋งŒ๋“ค ์ˆ˜ ์žˆ๋Š” ๊ฒƒ์ด ์•„๋‹™๋‹ˆ๋‹ค.

์—ฌ๋Ÿฌ ํŒŒ์ผ์„ ๋™์‹œ์— ์ˆ˜์ •ํ•˜๊ณ , Issue๋ฅผ ๋งŒ๋“ค๊ณ , workflow๋ฅผ ์ถ”๊ฐ€ํ•˜๊ณ , release ๋ฌธ์„œ๋ฅผ ๋ฐ”๊พธ๊ณ , dependency๋ฅผ ์—…๋ฐ์ดํŠธํ•  ์ˆ˜๋„ ์žˆ์Šต๋‹ˆ๋‹ค.

์ฆ‰ ํ•œ ๋ฒˆ์˜ AI-assisted ์ž‘์—…์ด ์—ฌ๋Ÿฌ repository์— ๋™์‹œ์— ์˜ํ–ฅ์„ ์ค„ ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค.

๊ทธ๋ž˜์„œ ์ด์ œ๋Š” ๋‹จ์ˆœํ•œ coding guideline๋งŒ์œผ๋กœ ๋ถ€์กฑํ•ฉ๋‹ˆ๋‹ค.

AGENTS.md / project instructions
            โ†“
repository-local policy
            โ†“
implementation
            โ†“
CI / security / release validation
            โ†“
evidence

OpenForge๊ฐ€ AI-assisted development๋ฅผ ๋ณ„๋„ engineering tooling ์˜์—ญ์œผ๋กœ ๋‹ค๋ฃจ๋Š” ์ด์œ ๋„ ์—ฌ๊ธฐ์— ์žˆ์Šต๋‹ˆ๋‹ค.

AI๋ฅผ ํ‘œ์ค€ํ™”ํ•œ๋‹ค๋Š” ๋œป์ด ์•„๋‹ˆ๋ผ, AI๋ฅผ ์‚ฌ์šฉํ•˜๋”๋ผ๋„ repository์˜ engineering discipline์ด ํ”๋“ค๋ฆฌ์ง€ ์•Š๋„๋ก ๊ฒฝ๊ณ„๋ฅผ ๋ช…ํ™•ํ•˜๊ฒŒ ๋งŒ๋“ ๋‹ค๋Š” ์˜๋ฏธ์ž…๋‹ˆ๋‹ค.


9. OpenForge๋Š” ๋˜ ํ•˜๋‚˜์˜ ํ”„๋กœ์ ํŠธ๊ฐ€ ์•„๋‹ˆ๋ผ ํ‘œ์ค€์˜ ์ €์žฅ์†Œ๋‹ค

์ฒ˜์Œ์—๋Š” OpenForge๋„ ๊ทธ๋ƒฅ ํ•˜๋‚˜์˜ OSS repository๋ผ๊ณ  ์ƒ๊ฐํ–ˆ์Šต๋‹ˆ๋‹ค.

ํ•˜์ง€๋งŒ ์ง€๊ธˆ์€ ์—ญํ• ์ด ์กฐ๊ธˆ ๋‹ค๋ฅด๊ฒŒ ๋ณด์ž…๋‹ˆ๋‹ค.

Narwhal์€ platform์„ ๋งŒ๋“ค๊ณ ,

Beluga๋Š” data platform์„ ๋งŒ๋“ค๊ณ ,

KubeMetal์€ local MLOps environment๋ฅผ ๋งŒ๋“ค๊ณ ,

kube-ready-box๋Š” infrastructure foundation์„ ๋งŒ๋“ค๊ณ ,

ldapium์€ identity component๋ฅผ ๋งŒ๋“ค๊ณ ,

nfs-quota-agent๋Š” storage integration์„ ๋งŒ๋“ค๊ณ ,

OpenForge๋Š” ์ด ๋ชจ๋“  ํ”„๋กœ์ ํŠธ์—์„œ ๋ฐ˜๋ณต๋˜๋Š” engineering practice๋ฅผ ํ‘œ์ค€ํ™”ํ•ฉ๋‹ˆ๋‹ค.

๊ทธ๋ž˜์„œ OpenForge์˜ ์„ฑ๊ณต ๊ธฐ์ค€๋„ GitHub stars๋‚˜ ๊ธฐ๋Šฅ ์ˆ˜๋งŒ์œผ๋กœ ํŒ๋‹จํ•˜๋ฉด ์•ˆ ๋ฉ๋‹ˆ๋‹ค.

๋” ์ค‘์š”ํ•œ ์งˆ๋ฌธ์€ ๋‹ค์Œ์ž…๋‹ˆ๋‹ค.

์ด standard๊ฐ€ ์‹ค์ œ repository์—์„œ ์‚ฌ์šฉ๋˜๋Š”๊ฐ€?
 
์‹ค์ œ๋กœ ๋ฐ˜๋ณต ์ž‘์—…์ด ์ค„์–ด๋“œ๋Š”๊ฐ€?
 
CI ํ’ˆ์งˆ์ด ์ข‹์•„์ง€๋Š”๊ฐ€?
 
release evidence๊ฐ€ ์ผ๊ด€๋˜๋Š”๊ฐ€?
 
์ƒˆ ํ”„๋กœ์ ํŠธ๋ฅผ bootstrapํ•˜๋Š” ์‹œ๊ฐ„์ด ์ค„์–ด๋“œ๋Š”๊ฐ€?
 
์‹ค์ œ ํ”„๋กœ์ ํŠธ์˜ feedback์ด ๋‹ค์‹œ standard๋ฅผ ๊ฐœ์„ ํ•˜๋Š”๊ฐ€?

์ด๋ ‡๊ฒŒ ๋ณด๋ฉด OpenForge๋Š” OSS portfolio์˜ engineering control plane์— ๊ฐ€๊น์Šต๋‹ˆ๋‹ค.


10. ์•ž์œผ๋กœ์˜ ๋ฐฉํ–ฅ

์•ž์œผ๋กœ๋Š” OpenForge ์ž์ฒด๋ฅผ ์™„์„ฑ๋œ framework๋กœ ๋งŒ๋“ค๊ธฐ๋ณด๋‹ค, ์‹ค์ œ ํ”„๋กœ์ ํŠธ์—์„œ ๊ณ„์† ๊ฒ€์ฆํ•˜๋Š” ๋ฐฉํ–ฅ์œผ๋กœ ๊ฐ€์ ธ๊ฐ€๋ ค๊ณ  ํ•ฉ๋‹ˆ๋‹ค.

OpenForge
   โ†“
Bootstrap / Standard
   โ†“
Narwhal / Beluga / KubeMetal / ...
   โ†“
Actual Issues / CI / Releases
   โ†“
Audit / Metrics
   โ†“
OpenForge improvement

์ด๋ ‡๊ฒŒ ํ•˜๋ฉด ์ƒˆ๋กœ์šด ํ”„๋กœ์ ํŠธ๊ฐ€ ์ถ”๊ฐ€๋  ๋•Œ๋งˆ๋‹ค ๊ฐ™์€ repository governance, CI/CD, security, release, localization ๋ฌธ์ œ๋ฅผ ์ฒ˜์Œ๋ถ€ํ„ฐ ๋‹ค์‹œ ํ’€ ํ•„์š”๊ฐ€ ์—†์Šต๋‹ˆ๋‹ค.

๋ฐ˜๋Œ€๋กœ ์‹ค์ œ ํ”„๋กœ์ ํŠธ๊ฐ€ ์ƒˆ๋กœ์šด ๋ฌธ์ œ๋ฅผ ๋ฐœ๊ฒฌํ•˜๋ฉด ๊ทธ ๊ฒฝํ—˜์„ ๋‹ค์‹œ OpenForge standard๋กœ ๋˜๋Œ๋ฆด ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค.


๊ฒฐ๋ก 

์ด๋ฒˆ ์ž‘์—…์„ ํ•˜๋ฉด์„œ ๊ฐ€์žฅ ํฌ๊ฒŒ ๋ฐ”๋€ ์ƒ๊ฐ์€ "์—ฌ๋Ÿฌ OSS๋ฅผ ์šด์˜ํ•œ๋‹ค"๋Š” ๊ฒƒ์ด ๋‹จ์ˆœํžˆ repository ์ˆซ์ž๊ฐ€ ๋Š˜์–ด๋‚˜๋Š” ๊ฒƒ์ด ์•„๋‹ˆ๋ผ engineering system์„ ์šด์˜ํ•˜๋Š” ๊ฒƒ์ด๋ผ๋Š” ์ ์ž…๋‹ˆ๋‹ค.

7๊ฐœ์˜ repository๋ฅผ ๋˜‘๊ฐ™์ด ๋งŒ๋“œ๋Š” ๊ฒƒ์€ ๋ชฉํ‘œ๊ฐ€ ์•„๋‹™๋‹ˆ๋‹ค.

์˜คํžˆ๋ ค ๊ฐ ํ”„๋กœ์ ํŠธ์˜ architecture์™€ ๋ชฉ์ ์€ ์ตœ๋Œ€ํ•œ ์ž์œ ๋กญ๊ฒŒ ์œ ์ง€ํ•˜๋ฉด์„œ,

  • ๋ฌด์—‡์„ repository quality๋ผ๊ณ  ๋ถ€๋ฅผ์ง€
  • ์–ด๋–ป๊ฒŒ CI๋ฅผ ์‹ ๋ขฐํ• ์ง€
  • release evidence๋ฅผ ์–ด๋–ป๊ฒŒ ๋‚จ๊ธธ์ง€
  • security์™€ supply chain์„ ์–ด๋–ป๊ฒŒ ๊ฒ€์ฆํ• ์ง€
  • AI-assisted development๋ฅผ ์–ด๋–ค ๊ฒฝ๊ณ„ ์•ˆ์—์„œ ์‚ฌ์šฉํ• ์ง€

์— ๋Œ€ํ•ด์„œ๋Š” ๊ณตํ†ต์˜ ์–ธ์–ด๋ฅผ ๊ฐ–๋Š” ๊ฒƒ์ด ์ค‘์š”ํ–ˆ์Šต๋‹ˆ๋‹ค.

OpenForge๋Š” ๊ทธ ๊ณตํ†ต ์–ธ์–ด๋ฅผ repository์™€ ์‹ค์ œ engineering workflow ์‚ฌ์ด์— ์—ฐ๊ฒฐํ•˜๋Š” ์—ญํ• ์„ ์‹œ์ž‘ํ–ˆ์Šต๋‹ˆ๋‹ค.

๊ทธ๋ฆฌ๊ณ  ์•ž์œผ๋กœ์˜ OSS portfolio์—์„œ๋Š” ๋” ๋งŽ์€ ์ฝ”๋“œ๋ฅผ ๋งŒ๋“œ๋Š” ๊ฒƒ๋ณด๋‹ค, ์ด๋ฏธ ๋งŒ๋“  ์ฝ”๋“œ๋ฅผ ๋ฐ˜๋ณต ๊ฐ€๋Šฅํ•˜๊ณ  ๊ฒ€์ฆ ๊ฐ€๋Šฅํ•˜๊ฒŒ ์šด์˜ํ•˜๋Š” ๋Šฅ๋ ฅ์ด ๋” ์ค‘์š”ํ•ด์งˆ ๊ฒƒ์ด๋ผ๊ณ  ์ƒ๊ฐํ•ฉ๋‹ˆ๋‹ค.

๊ด€๋ จ OSS