go 调用 salt-api 接口
go get github.com/daixijun/go-salt
package main
import (
"context"
"fmt"
salt "github.com/daixijun/go-salt"
)
func main() {
ctx := context.TODO()
// 初始化客户端
client := salt.NewClient("https://saltapi.example.com")
if err := client.Login(ctx, "username", "password", "eauth"); err != nil {
panic(err)
}
// 列表 minions
minions, err := client.ListMinions(ctx)
if err != nil {
panic(err)
}
fmt.Println(minions)
// 执行命令
resp, err := client.LocalClient(ctx, "*", "cmd.run", []string{"whoami"})
if err != nil {
panic(err)
}
fmt.Println(resp)
}