test
This commit is contained in:
@@ -569,12 +569,16 @@ func HandleCommand(ctx context.Context, env *runtime.Env, envelope map[string]in
|
|||||||
if err != nil {
|
if err != nil {
|
||||||
return wire.WriteMsg(ctx, env.Conn, wire.CommandResult{Type: "command_result", CommandID: cmdID, OK: false, Message: err.Error()})
|
return wire.WriteMsg(ctx, env.Conn, wire.CommandResult{Type: "command_result", CommandID: cmdID, OK: false, Message: err.Error()})
|
||||||
}
|
}
|
||||||
|
go func() {
|
||||||
if err := env.Plugins.Load(ctx, manifest, binaryBytes); err != nil {
|
if err := env.Plugins.Load(ctx, manifest, binaryBytes); err != nil {
|
||||||
_ = wire.WriteMsg(ctx, env.Conn, wire.PluginEvent{Type: "plugin_event", PluginID: manifest.ID, Event: "error", Error: err.Error()})
|
_ = wire.WriteMsg(ctx, env.Conn, wire.PluginEvent{Type: "plugin_event", PluginID: manifest.ID, Event: "error", Error: err.Error()})
|
||||||
return wire.WriteMsg(ctx, env.Conn, wire.CommandResult{Type: "command_result", CommandID: cmdID, OK: false, Message: err.Error()})
|
_ = wire.WriteMsg(ctx, env.Conn, wire.CommandResult{Type: "command_result", CommandID: cmdID, OK: false, Message: err.Error()})
|
||||||
|
return
|
||||||
}
|
}
|
||||||
_ = wire.WriteMsg(ctx, env.Conn, wire.PluginEvent{Type: "plugin_event", PluginID: manifest.ID, Event: "loaded"})
|
_ = wire.WriteMsg(ctx, env.Conn, wire.PluginEvent{Type: "plugin_event", PluginID: manifest.ID, Event: "loaded"})
|
||||||
return wire.WriteMsg(ctx, env.Conn, wire.CommandResult{Type: "command_result", CommandID: cmdID, OK: true})
|
_ = wire.WriteMsg(ctx, env.Conn, wire.CommandResult{Type: "command_result", CommandID: cmdID, OK: true})
|
||||||
|
}()
|
||||||
|
return nil
|
||||||
case "plugin_load_http":
|
case "plugin_load_http":
|
||||||
payload, _ := envelope["payload"].(map[string]interface{})
|
payload, _ := envelope["payload"].(map[string]interface{})
|
||||||
if payload == nil {
|
if payload == nil {
|
||||||
@@ -587,7 +591,8 @@ func HandleCommand(ctx context.Context, env *runtime.Env, envelope map[string]in
|
|||||||
}
|
}
|
||||||
pullURL, _ := payload["url"].(string)
|
pullURL, _ := payload["url"].(string)
|
||||||
expectedSize := int64(toInt(payload["size"]))
|
expectedSize := int64(toInt(payload["size"]))
|
||||||
return HandlePluginLoadHTTP(ctx, env, cmdID, manifest, pullURL, expectedSize)
|
go HandlePluginLoadHTTP(ctx, env, cmdID, manifest, pullURL, expectedSize)
|
||||||
|
return nil
|
||||||
case "plugin_unload":
|
case "plugin_unload":
|
||||||
payload, _ := envelope["payload"].(map[string]interface{})
|
payload, _ := envelope["payload"].(map[string]interface{})
|
||||||
if payload == nil || env.Plugins == nil {
|
if payload == nil || env.Plugins == nil {
|
||||||
|
|||||||
@@ -6,6 +6,7 @@ import (
|
|||||||
"errors"
|
"errors"
|
||||||
"log"
|
"log"
|
||||||
"sync"
|
"sync"
|
||||||
|
"time"
|
||||||
|
|
||||||
"overlord-client/cmd/agent/wire"
|
"overlord-client/cmd/agent/wire"
|
||||||
)
|
)
|
||||||
@@ -69,15 +70,19 @@ func (m *Manager) Load(ctx context.Context, manifest PluginManifest, binary []by
|
|||||||
payloadVal = string(payload)
|
payloadVal = string(payload)
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
err := wire.WriteMsg(context.Background(), m.writer, wire.PluginEvent{
|
msg := wire.PluginEvent{
|
||||||
Type: "plugin_event",
|
Type: "plugin_event",
|
||||||
PluginID: pluginID,
|
PluginID: pluginID,
|
||||||
Event: event,
|
Event: event,
|
||||||
Payload: payloadVal,
|
Payload: payloadVal,
|
||||||
})
|
}
|
||||||
if err != nil {
|
go func() {
|
||||||
|
sendCtx, cancel := context.WithTimeout(context.Background(), 30*time.Second)
|
||||||
|
defer cancel()
|
||||||
|
if err := wire.WriteMsg(sendCtx, m.writer, msg); err != nil {
|
||||||
log.Printf("[plugin] %s send event error: %v", pluginID, err)
|
log.Printf("[plugin] %s send event error: %v", pluginID, err)
|
||||||
}
|
}
|
||||||
|
}()
|
||||||
}
|
}
|
||||||
|
|
||||||
hostJSON, err := json.Marshal(m.host)
|
hostJSON, err := json.Marshal(m.host)
|
||||||
|
|||||||
@@ -7,5 +7,5 @@ export const MAX_WS_MESSAGE_BYTES_VIEWER = Number(
|
|||||||
process.env.MAX_WS_MESSAGE_BYTES_VIEWER || 1_000_000,
|
process.env.MAX_WS_MESSAGE_BYTES_VIEWER || 1_000_000,
|
||||||
);
|
);
|
||||||
export const MAX_WS_MESSAGE_BYTES_CLIENT = Number(
|
export const MAX_WS_MESSAGE_BYTES_CLIENT = Number(
|
||||||
process.env.MAX_WS_MESSAGE_BYTES_CLIENT || 16_000_000,
|
process.env.MAX_WS_MESSAGE_BYTES_CLIENT || 64_000_000,
|
||||||
);
|
);
|
||||||
|
|||||||
Reference in New Issue
Block a user