1个不稳定版本

0.1.0 2022年1月18日

#28#become


libside 中使用

AGPL-3.0

5KB
92 代码行

libside:构建配置管理工具的库

libside 是一个库,您可以使用它来构建配置管理工具。它专注于

  • 可组合性:多个项目可以部署在同一服务器上
  • 可逆性:应该能够撤销工具所做的任何更改;如果可能,不应覆盖现有文件
  • 静态验证:在可能的情况下,应使用类型编码依赖项和需求,以便更难编写错误的配置

方法

libside 围绕两个主要操作构建:构建和应用。在构建时,工具从 <root-dir>/packages 中的包生成需求依赖图。依赖图序列化到磁盘。在应用时,将需求依赖图应用于当前系统状态。

每个工具都需要为包定义自己的配置格式。此格式可以简洁,因为它只需考虑您特别需要的配置。

测试

如果您想运行所有测试,您需要安装 lxc。一些测试在 lxc 虚拟机中运行。

警告备注

  • 这是未完成的软件。
  • 您可能需要假设此软件包含可以删除所有您的文件的错误。在运行之前备份您的文件。
  • 仅在不信任的输入上运行。某些输入值可能被用于任意代码执行(有时是有意为之)。

许可证

此仓库中的所有代码均受 AGPL-3.0许可证 许可。

依赖项

~1.5MB
~35K SLoC