一个模仿ansible的 golang 练习项目
简易的ansible功能
{{ avars }}vars
实现内置功能模块
- name: aa
plugin:
mod: modname
args: arg1,arg2,arg3... #统一逗号分隔,空格会被自动删除,支持变量模板
使用说明
- 运行
#./noansible -h
Usage :
-bs int
SCP buffer size (default 1024)
-i string
Inventory file dir (default "inventory.yml")
-log string
Log file dir (default "output.log")
-p string
Inventory file dir (default "main.yml")
tasks支持变量模板
#inventory 格式 <groupname>: - <IPV4/IPV6 ADDR>,<PASSWORD>,[PORT:default=22] - <IPV4/IPV6 ADDR>,<PASSWORD>,[PORT:default=22]
编译
cd main go build main.go
TODO
- json支持
- telnet支持
- 从远端抓取文件
- 记录异步任务的执行结果(当前默认,异步任务成功)