1 个不稳定版本

0.1.0 2022年9月23日

#2104开发工具

MIT 许可证

6KB
102

🔖 tagen

根据版本和变体生成大量标签。

🚀 动机

当给 Docker 镜像或 GitHub Actions 标签时,我们经常使用大量的标签变体,如下所示:

rust:1.64.0
rust:1.64.0-bullseye-slim
rust:1.64-bullseye
rust:1.64
rust:1

这种风格对于镜像用户来说非常方便,但很难正确列出它们。我们试图从给定的版本和变体中自动生成这些标签。

📦 入门

命令行界面

如果您不想在代码中使用 tagen,请使用此安装。

使用 Cargo

cargo install tagen --features=cli 

Rust API

tagen 是一个混合 Crates,这意味着您可以在自己的代码中使用它。

[dependencies]
tagen = "0.1"

做得好!

💚 示例

让我们从最简单的方式开始

tagen 1.64.0

它生成

1
1.64
1.64.0

简单!

现在为它们添加变体

tagpr 1.64.0 bullseye slim

它生成

1-bullseye-slim
1-slim
1.64-bullseye-slim
1.64-slim
1.64.0-bullseye-slim
1.64.0-slim

请注意,变体被缩短到正确的变体:a b c 变体将被 a-b-cb-cc。在这种情况下不会生成 aa-b,以避免与 aa b 变体冲突。

依赖项

~0.3–1MB
~21K SLoC