Commit 7dde3450 authored by Eric's avatar Eric

[update] add terminal register and heartbeat service

parent 4bf1af8d
package model
type Terminal struct {
Name string `json:"name"`
Comment string `json:"comment"`
ServiceAccount struct {
Id string `json:"id"`
Name string `json:"name"`
AccessKey struct {
Id string `json:"id"`
Secret string `json:"secret"`
}
} `json:"service_account"`
}
type TerminalTask struct {
Id string `json:"id"`
Name string `json:"name"`
Args string `json:"args"`
IsFinished bool
}
package service package service
func registerTerminal(name string) { import (
"fmt"
"cocogo/pkg/logger"
"cocogo/pkg/model"
)
func RegisterTerminal(name, token, comment string) (res model.Terminal) {
if client.Headers == nil {
client.Headers = make(map[string]string)
}
client.Headers["Authorization"] = fmt.Sprintf("BootstrapToken %s", token)
data := map[string]string{"name": name, "comment": comment}
err := client.Post(baseHost+TerminalRegisterURL, data, &res)
if err != nil {
logger.Error(err)
}
return
} }
func CreateServiceAccount() { func TerminalHeartBeat(sIds []string) (res []model.TerminalTask) {
data := map[string][]string{
"sessions": sIds,
}
err := authClient.Post(baseHost+TerminalHeartBeatURL, data, &res)
if err != nil {
logger.Error(err)
}
return
} }
func CreateSession() { func CreateSession() {
......
...@@ -10,6 +10,8 @@ const ( ...@@ -10,6 +10,8 @@ const (
TerminalRegisterURL = "/api/terminal/v2/terminal-registrations/" // 注册当前coco TerminalRegisterURL = "/api/terminal/v2/terminal-registrations/" // 注册当前coco
TerminalConfigURL = "/api/terminal/v1/terminal/config/" // 从jumpserver获取coco的配置 TerminalConfigURL = "/api/terminal/v1/terminal/config/" // 从jumpserver获取coco的配置
TerminalHeartBeatURL = "/api/terminal/v1/terminal/status/"
SessionListURL = "/api/terminal/v1/sessions/" //上传创建的资产会话session id SessionListURL = "/api/terminal/v1/sessions/" //上传创建的资产会话session id
SessionDetailURL = "/api/terminal/v1/sessions/%s/" // finish session的时候发送 SessionDetailURL = "/api/terminal/v1/sessions/%s/" // finish session的时候发送
SessionReplayURL = "/api/terminal/v1/sessions/%s/replay/" //上传录像 SessionReplayURL = "/api/terminal/v1/sessions/%s/replay/" //上传录像
......
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment