托管自定义插件索引
Krew 附带一个名为 default
的插件索引,指向 krew-index
存储库,通过社区维护,来实现集中发现。
但是,你可以托管自己的插件索引(并可能移除或替换 default
索引)。不建议托管自己的插件索引,除非你有明确需要的用例,比如:
- 插件未被
krew-index
接受 - 你想完全掌控自己插件的分发生命周期
- 你想在组织中运行一个私有插件索引(例如,在开发机器上的安装中)
托管你自己的自定义索引很简单
- 自定义索引存储库必须是
git
存储库。 - 你的客户端应拥有对该存储库的读取权限。如果该存储库不是公开的,用户仍然可以使用 SSH 密钥或其他在客户端机器上安装的 gitremote-helpers 对其进行身份验证。
- 存储库必须在根目录中包含一个
plugins/
目录,其中至少包含一个插件清单。插件清单应直接位于此目录中(不在子目录中)。 - 确保插件清单是有效的 YAML 并通过 Krew 清单验证(可选,你可以使用用于静态分析的 validate-krew-manifest 工具)。
插件存储库布局示例
.
└── plugins/
├── plugin-a.yaml
├── plugin-b.yaml
└── plugin-c.yaml