#dotfiles #configuration #devops #cli

app dotjector

一个dotfile模板和注入工具

3个不稳定版本

0.1.0 2021年8月21日
0.0.3 2021年7月28日
0.0.2 2021年7月25日

#1691 in 开发工具

MIT许可证

20KB
485

Dotjector

一个基于 tera 模板引擎的dotfile生成、模板和注入工具。

安装

cargo install dotjector

这是什么?

如今,编码伴随着使用大量第三方工具,这些工具大多数情况下需要一些配置型dotfile放在git仓库的根目录。这不仅会搞乱根目录,而且大多数情况下还需要在许多dotfile中粘贴通用的信息,例如项目版本。当与在单独仓库中生活的微服务一起工作时,这尤其麻烦,但大多数情况下仍然需要相同的工具配置。

如何解决问题?

Dotjector根据模板和上下文文件生成配置文件。

模板文件是缺少数据的配置文件,例如这个仓库的Cargo.toml可能看起来像这样
templates/Cargo.toml

[package]
name = "{ project_config.name }"
version = "{ project_config.version }"
edition = "2018"
...

上下文文件提供缺少的数据
configs/project_config.yaml

name: dotjector
version: 0.1.0  

执行dotjector将生成带有上下文文件提供的插值值的Cargo.toml文件。

警告

Dotjector是基于可能或可能不是最好的想法开发的。使用dotjector可能感觉有些繁琐,对于查看使用它的仓库的人来说可能感觉有些奇怪。所以请自行决定它是否对您有用,如果您发现值得注意的使用案例,请确保告诉我。欢迎提交改进建议!

示例

一个示例可以在单独的示例 仓库 中找到。

项目状态

功能

  • 基本功能
  • 基于任务的文件生成
  • 编写测试

文件获取方式

  • 本地
  • git
  • http

文件源格式

  • 纯文本
  • .yaml
  • json

DevOps / 集成

  • 以crate形式发布
  • [/] 打包并作为docker容器发布(仅开发镜像)
  • 预提交钩子集成
  • [/] 集成CI和徽章(没有徽章)

依赖关系

~22–36MB
~636K SLoC