k8sailor - 02 使用 cobra 管理命令与参数集群连接参数
2023-06-13 09:16:10 时间
tag: https://github.com/tangx/k8sailor/tree/feat/01-cobra-command
为了更加方便的管理配置文件的来源, 这里使用 cobra 进行命令行构建
效果如下
cd cmd/k8sailor && go run .
k8s 管理平台
Usage:
k8sailor [flags]
Flags:
--config string k8s 配置授权文件 (default "./k8sconfig/config.yml")
-h, --help help for k8sailor
编码
变量管理
在 cmd/k8sailor/global
目录中管理 全局 变量。
其中,定义一个 CmdFlag
结构体管理所有 cobra flags。
type CmdFlags struct {
Config string `flag:"config" usage:"k8s 配置授权文件" persistent:"true"`
}
var Flags = &CmdFlags{
Config: "./k8sconfig/config.yml",
}
cobra
在 cmd/k8sailor/cmd
中管理所有 cobra 命令。root.go
在代码中使用了 cobrautils 库帮助管理 flag 绑定。
func init() {
cobrautils.BindFlags(rootCmd, global.Flags)
}
启动
在 main.go 调用 cmd/root.go
的启动函数。运行结果如上所示。
目录结构
# tree
.
├── README.md
├── cmd
│ └── k8sailor
│ ├── cmd
│ │ └── root.go
│ ├── global
│ │ └── config.go
│ ├── k8sconfig
│ │ └── config.yml
│ └── main.go
├── go.mod
└── go.sum
6 directories, 9 files
相关文章
- Jedis 连接Redis 集群[通俗易懂]
- spring配置文件详解_jedis连接redis集群
- 故障分析 | OceanBase Proxy 无法连接 OBserver 集群
- k8sailor - 03 连接 k3s 集群获取 deployment 信息
- 关于K8s集群环境工作组隔离配置多集群切换的一些笔记
- Kubernetes集群部署之五node节点部署详解架构师
- spring集成 JedisCluster 连接 redis3.0 集群详解编程语言
- 在树莓派集群中部署 Ceph
- 应用Redis集群简单而有效的连接方式(应用连接redis集群)
- 新建一群Redis服务器迈向稳固的Redis集群(搭建一个redis集群)
- 使用Yum安装Redis集群快捷便捷高效(yum安装redis集群)
- 红色高并发集群慢Redis可靠性测试报告(redis 高并发连接慢)
- 如何配置Redis集群间的连接(redis 集群连接配置)
- 繁忙红色过载Redis集群连接负荷过重(redis集群连接过度)
- 解决Redis集群连接被拒绝的方法(redis集群连接被拒绝)
- 排查红灯亮Redis 集群连接失败(redis 集群连接不上)
- 基于Redis的远程集群连接方案(redis集群远程连接)
- 实现高性能Redis集群管道操作策略(redis集群管道操作)
- 使用Redis集群程序快速实现连接(redis集群程序连接)
- 揭秘Redis集群连接超时的原因(redis集群的连接超时)
- 红色的未来Redis集群扩容引入新的连接串(redis集群扩容连接串)
- 红色集群实现海量连接的全新解决方案(redis集群 很多连接)
- 实现Redis集群域名间高效连接(redis集群域名连接)
- 公网连接Redis集群安全可靠的数据存储方案(redis集群公网连接)
- Redis集群实现高可用的优势分析(redis集群vs 单机)
- Redis实现集群连接的进阶之路(redis 连接集群)
- JDBC连接集群数据库的方法