Show HN: Unobin 将基础设施即代码编译为单一二进制文件
Unobin 是一种面向基础设施即代码(IaC)的语言和编译器。IaC 源码被编写并编译成一个名为 factory 的二进制文件,其中包含运行时及所有依赖。运行时只需传递一个名为 stack file 的配置文件(仅包含配置,不含任意代码)来定义后端状态和输入。Factory 还可以在浏览器中显示 UI 展示进度。
背景速读
- **Unobin** 是一个专为「基础设施即代码」(IaC)设计的新语言和编译器。IaC 是用代码定义云服务器、网络、数据库等资源,替代手动点击控制台。
- 主流 IaC 工具如 Terraform(HashiCorp)、Pulumi 和 AWS CDK 都需要安装对应 CLI 和语言运行时(Python/Go/TypeScript),并依赖包管理器(npm/pip)处理依赖——这在 CI/CD 流水线或团队协作中常导致版本冲突和固化(vendor)困难。
- Unobin 的核心理念是「编译成一个单文件二进制"工厂"」:工厂自带运行时和所有依赖,运行时只需一个 Linux 系统调用。用户再用一个纯配置的"栈文件"来指定后端状态存储和输入参数——栈文件不可包含任意代码,只做参数声明。
- "Show HN" 是 Hacker News 上的专题,开发者借此展示自己的项目并获取社区反馈。这篇文档面向懂 IaC 但被现有工具"依赖地狱"困扰的读者。