85 lines
3.7 KiB
Go
85 lines
3.7 KiB
Go
package protocol
|
|
|
|
import "time"
|
|
|
|
type RunCapacityReport struct {
|
|
MaxJobs int `json:"maxJobs"`
|
|
RunningJobs int `json:"runningJobs"`
|
|
QueuedJobs int `json:"queuedJobs"`
|
|
Summary string `json:"summary,omitempty"`
|
|
}
|
|
|
|
type RunCapabilityReport struct {
|
|
Capabilities []string `json:"capabilities"`
|
|
Fingerprint string `json:"fingerprint"`
|
|
}
|
|
|
|
type RunHelloRequest struct {
|
|
RegistrationToken string `json:"registrationToken"`
|
|
RunEndpointID string `json:"runEndpointId"`
|
|
ServerInstanceID string `json:"serverInstanceId,omitempty"`
|
|
PluginID string `json:"pluginId,omitempty"`
|
|
ComponentKind string `json:"componentKind,omitempty"`
|
|
ComponentKey string `json:"componentKey,omitempty"`
|
|
KeyGeneration int `json:"keyGeneration,omitempty"`
|
|
DisplayName string `json:"displayName"`
|
|
Version string `json:"version"`
|
|
Status string `json:"status"`
|
|
Platform string `json:"platform,omitempty"`
|
|
Architecture string `json:"architecture,omitempty"`
|
|
UpdateJobID string `json:"updateJobId,omitempty"`
|
|
UpdateOutcome string `json:"updateOutcome,omitempty"`
|
|
CapabilityReport RunCapabilityReport `json:"capabilityReport"`
|
|
Capacity RunCapacityReport `json:"capacity"`
|
|
}
|
|
|
|
type RunHelloResponse struct {
|
|
Accepted bool `json:"accepted"`
|
|
RunEndpointID string `json:"runEndpointId"`
|
|
SessionToken string `json:"sessionToken"`
|
|
ServerTime time.Time `json:"serverTime"`
|
|
HeartbeatIntervalSeconds int `json:"heartbeatIntervalSeconds"`
|
|
SessionExpiresAt time.Time `json:"sessionExpiresAt"`
|
|
FeatureFlags []string `json:"featureFlags,omitempty"`
|
|
}
|
|
|
|
type RunHeartbeatRequest struct {
|
|
RunEndpointID string `json:"runEndpointId"`
|
|
SessionToken string `json:"sessionToken"`
|
|
Version string `json:"version"`
|
|
Status string `json:"status"`
|
|
CapabilityFingerprint string `json:"capabilityFingerprint"`
|
|
Capacity RunCapacityReport `json:"capacity"`
|
|
}
|
|
|
|
type RunHeartbeatResponse struct {
|
|
Accepted bool `json:"accepted"`
|
|
RunEndpointID string `json:"runEndpointId"`
|
|
NextHeartbeatSeconds int `json:"nextHeartbeatSeconds"`
|
|
RefreshCapabilities bool `json:"refreshCapabilities"`
|
|
ServerTime time.Time `json:"serverTime"`
|
|
}
|
|
|
|
type RunLifecycleReportRequest struct {
|
|
RunEndpointID string `json:"runEndpointId"`
|
|
SessionToken string `json:"sessionToken"`
|
|
ServerInstanceID string `json:"serverInstanceId"`
|
|
Capability string `json:"capability"`
|
|
State string `json:"state"`
|
|
Progress RunJobProgressReport `json:"progress"`
|
|
Message string `json:"message,omitempty"`
|
|
ErrorCode string `json:"errorCode,omitempty"`
|
|
ManagedProcessID string `json:"managedProcessId,omitempty"`
|
|
ObservationSeq uint64 `json:"observationSeq,omitempty"`
|
|
ObservedAt time.Time `json:"observedAt,omitempty"`
|
|
ExecutionResult RunJobExecutionResult `json:"executionResult,omitempty"`
|
|
}
|
|
|
|
type RunLifecycleReportResponse struct {
|
|
Accepted bool `json:"accepted"`
|
|
RunEndpointID string `json:"runEndpointId"`
|
|
ServerInstanceID string `json:"serverInstanceId"`
|
|
ProjectedState string `json:"projectedState,omitempty"`
|
|
ServerTime time.Time `json:"serverTime"`
|
|
}
|