Documentation
¶
Overview ¶
Code generated by ./hack/generate-agent-binaries.py DO NOT EDIT
Index ¶
- Variables
- func Call[I any, O any](ctx context.Context, agent *Agent, call rpc.RPCCall[I]) (rpc.RPCResult[O], error)
- func Connect(ctx context.Context, agent *Agent) error
- func GetAgentBinary(goos string, goarch string) ([]byte, error)
- func InstallAgent(ctx context.Context, agent *Agent) error
- func RunRemoteCommand(ctx context.Context, agent *Agent, cmd string) ([]byte, error)
- func StageFile(ctx context.Context, agent *Agent, f io.Reader) (string, error)
- type Agent
- func (agent *Agent) Disconnect(ctx context.Context, wait bool) error
- func (agent *Agent) EnsureUUID() (string, error)
- func (agent *Agent) GetLogger(ctx context.Context) *slog.Logger
- func (agent *Agent) Heartbeat(timeout time.Duration) (time.Duration, bool)
- func (agent *Agent) Ping(ctx context.Context) (rpc.AgentPingResult, error)
- func (agent *Agent) RunHeartbeat()
- func (agent *Agent) RunLocal()
Constants ¶
This section is empty.
Variables ¶
View Source
var ( ErrRunningRemoteCommand = errors.New("error running remote command") ErrInstallingAgent = errors.New("error installing agent") ErrConnectingToAgent = errors.New("error connecting to agent") ErrAgentShutDown = errors.New("agent shut down") ErrDisconnectingFromAgent = errors.New("error disconnecting from agent") ErrCallingRPCSystem = errors.New("error calling RPC system") ErrStagingFile = errors.New("error staging file") )
View Source
var AgentBinary_linux_amd64_ []byte
View Source
var AgentBinary_linux_arm64_ []byte
View Source
var Tracer = otel.Tracer("mid/agent")
Functions ¶
func RunRemoteCommand ¶
Types ¶
type Agent ¶
type Agent struct {
RemotePid atomic.Int64
InstanceUUID string
ConnectMutex sync.Mutex
EncoderMutex sync.Mutex
Client *ssh.Client
Session *ssh.Session
Encoder *json.Encoder
Decoder *json.Decoder
Running atomic.Bool
WaitGroup sync.WaitGroup
InFlight syncmap.Map[string, chan rpc.RPCResult[any]]
}
func (*Agent) EnsureUUID ¶ added in v0.0.8
func (*Agent) RunHeartbeat ¶ added in v0.0.8
func (agent *Agent) RunHeartbeat()
Click to show internal directories.
Click to hide internal directories.