Documentation
¶
Index ¶
- Constants
- Variables
- func MarshalJSONLine(resp Response) ([]byte, error)
- type DiscoverTargetsOptions
- type EnvironmentDiagnostics
- type EnvironmentOperationPlan
- type EnvironmentOperationPlans
- type EnvironmentOperationResult
- type EnvironmentStatus
- type EnvironmentTargetResolution
- type Response
- type ResponseError
- type ResponseTrace
- type RuntimeStatusSummary
- type TargetCatalog
- type TargetDescriptor
- type TargetExecInvocation
- type TargetExecOptions
- type TargetExecProcessResult
- type TargetExecResult
- type TargetExecRunner
- type TargetExecutionRoute
Constants ¶
View Source
const ( TargetKindLocalHostRuntime = "local_host_runtime" TargetKindLocalContainerRuntime = "local_container_runtime" TargetKindSSHEnvironment = "ssh_environment" TargetKindSSHContainerRuntime = "ssh_container_runtime" TargetKindProviderEnvironment = "provider_environment" TargetKindGatewayEnvironment = "gateway_environment" TargetKindExternalLocalUI = "external_local_ui" TargetStatusUnsupported = "unsupported" EnvOperationStatus = "status" EnvOperationDiagnose = "diagnose" EnvOperationStart = "start" EnvOperationStop = "stop" EnvOperationRestart = "restart" EnvOperationUpdate = "update" OperationAvailabilityAvailable = "available" OperationAvailabilityBlocked = "blocked" OperationAvailabilityHidden = "hidden" OperationMethodLocalHost = "local_host" OperationMethodSSHHost = "ssh_host" OperationMethodLocalContainerExec = "local_container_exec" OperationMethodSSHContainerExec = "ssh_container_exec" OperationMethodRuntimeControlRPC = "runtime_control_rpc" OperationMethodRuntimeGateway = "runtime_gateway" OperationMethodProviderTunnel = "provider_tunnel" OperationMethodNone = "none" EnvReasonUnsupportedTargetKind = "unsupported_target_kind" EnvReasonRuntimeNotStarted = "runtime_not_started" EnvReasonRuntimeAlreadyRunning = "runtime_already_running" EnvReasonRuntimeGatewaySetupRequired = "runtime_gateway_setup_required" )
View Source
const ( TargetKindLocalEnvironment = "local_environment" TargetStatusAvailable = "available" TargetStatusConfigured = "configured" TargetStatusNotConfigured = "not_configured" TargetExecutionLocationLocalRuntime = "local_runtime" TargetExecutionLocationLocalHost = "local_host" TargetExecutionLocationSSH = "ssh_target" CapabilityLocalUI = "local_ui" CapabilityRemoteControl = "remote_control" CapabilityFiles = "files" CapabilityTerminal = "terminal" CapabilityMonitor = "monitor" CapabilityGit = "git" )
View Source
const ( TargetExecReasonUnsupportedTargetKind = "unsupported_target_kind" )
View Source
const ( ErrCodeAgentProtocol = "AGENT_PROTOCOL_ERROR" ErrCodeTargetDiscoveryFailed = "TARGET_DISCOVERY_FAILED" ErrCodeTargetMissing = "TARGET_MISSING" ErrCodeTargetNotFound = "TARGET_NOT_FOUND" ErrCodeTargetExecFailed = "TARGET_EXEC_FAILED" ErrCodeEnvironmentStatus = "ENVIRONMENT_STATUS_FAILED" ErrCodeEnvironmentOperation = "ENVIRONMENT_OPERATION_FAILED" )
View Source
const SchemaVersion = 1
Variables ¶
View Source
var ErrTargetNotFound = errors.New("target not found")
Functions ¶
func MarshalJSONLine ¶
Types ¶
type DiscoverTargetsOptions ¶
type DiscoverTargetsOptions struct {
StateRoot string
}
type EnvironmentDiagnostics ¶ added in v0.7.1
type EnvironmentDiagnostics struct {
LockPath string `json:"lock_path,omitempty"`
ControlSocketPath string `json:"control_socket_path,omitempty"`
LockPID int `json:"lock_pid,omitempty"`
LockInstanceID string `json:"lock_instance_id,omitempty"`
PIDAlive bool `json:"pid_alive,omitempty"`
SocketReachable bool `json:"socket_reachable,omitempty"`
FailureCode string `json:"failure_code,omitempty"`
}
func EnvironmentDiagnosticsFromAttach ¶ added in v0.7.1
func EnvironmentDiagnosticsFromAttach(status runtimemanagement.RuntimeAttachStatus) *EnvironmentDiagnostics
type EnvironmentOperationPlan ¶ added in v0.7.1
type EnvironmentOperationPlan struct {
Operation string `json:"operation"`
Availability string `json:"availability"`
Method string `json:"method"`
Performed bool `json:"performed,omitempty"`
RequiresConfirmation bool `json:"requires_confirmation"`
Label string `json:"label"`
ReasonCode string `json:"reason_code,omitempty"`
Message string `json:"message,omitempty"`
Command string `json:"command,omitempty"`
Argv []string `json:"argv,omitempty"`
NextActions []string `json:"next_actions,omitempty"`
}
func BlockedOperationPlan ¶ added in v0.7.1
func BlockedOperationPlan(operation string, method string, reasonCode string, message string) EnvironmentOperationPlan
type EnvironmentOperationPlans ¶ added in v0.7.1
type EnvironmentOperationPlans map[string]EnvironmentOperationPlan
func EnvironmentOperationPlansFromRuntime ¶ added in v0.7.1
func EnvironmentOperationPlansFromRuntime(target TargetDescriptor, _ runtimemanagement.RuntimeAttachStatus, _ RuntimeStatusSummary) EnvironmentOperationPlans
func UnsupportedEnvironmentOperationPlans ¶ added in v0.7.1
func UnsupportedEnvironmentOperationPlans(target TargetDescriptor, message string) EnvironmentOperationPlans
type EnvironmentOperationResult ¶ added in v0.7.1
type EnvironmentOperationResult struct {
Target TargetDescriptor `json:"target"`
Runtime RuntimeStatusSummary `json:"runtime"`
Operation EnvironmentOperationPlan `json:"operation"`
Diagnostics *EnvironmentDiagnostics `json:"diagnostics,omitempty"`
}
func EnvironmentOperationResultFromStatus ¶ added in v0.7.1
func EnvironmentOperationResultFromStatus(status EnvironmentStatus, operation EnvironmentOperationPlan, includeDiagnostics bool) EnvironmentOperationResult
type EnvironmentStatus ¶ added in v0.7.1
type EnvironmentStatus struct {
Target TargetDescriptor `json:"target"`
Supported bool `json:"supported"`
ReasonCode string `json:"reason_code,omitempty"`
Message string `json:"message,omitempty"`
Runtime RuntimeStatusSummary `json:"runtime"`
Operations EnvironmentOperationPlans `json:"operations"`
Diagnostics *EnvironmentDiagnostics `json:"diagnostics,omitempty"`
}
func EnvironmentStatusFromAttach ¶ added in v0.7.1
func EnvironmentStatusFromAttach(resolution EnvironmentTargetResolution, status runtimemanagement.RuntimeAttachStatus, includeDiagnostics bool) EnvironmentStatus
func UnsupportedEnvironmentStatus ¶ added in v0.7.1
func UnsupportedEnvironmentStatus(resolution EnvironmentTargetResolution) EnvironmentStatus
type EnvironmentTargetResolution ¶ added in v0.7.1
type EnvironmentTargetResolution struct {
RequestedTarget string `json:"requested_target,omitempty"`
Target TargetDescriptor `json:"target"`
Supported bool `json:"supported"`
ReasonCode string `json:"reason_code,omitempty"`
Message string `json:"message,omitempty"`
}
func ResolveEnvironmentTarget ¶ added in v0.7.1
func ResolveEnvironmentTarget(catalog TargetCatalog, rawTarget string) (EnvironmentTargetResolution, error)
type Response ¶
type Response struct {
SchemaVersion int `json:"schema_version"`
OK bool `json:"ok"`
Data any `json:"data,omitempty"`
Error *ResponseError `json:"error,omitempty"`
Trace ResponseTrace `json:"trace"`
}
type ResponseError ¶
type ResponseTrace ¶
type RuntimeStatusSummary ¶ added in v0.7.1
type RuntimeStatusSummary struct {
State string `json:"state"`
Message string `json:"message,omitempty"`
Ready bool `json:"ready"`
Running bool `json:"running"`
RuntimeVersion string `json:"runtime_version,omitempty"`
RuntimeCommit string `json:"runtime_commit,omitempty"`
PID int `json:"pid,omitempty"`
LocalUIURL string `json:"local_ui_url,omitempty"`
LocalUIURLs []string `json:"local_ui_urls,omitempty"`
PasswordRequired bool `json:"password_required,omitempty"`
EffectiveRunMode string `json:"effective_run_mode,omitempty"`
RemoteEnabled bool `json:"remote_enabled,omitempty"`
FailureCode string `json:"failure_code,omitempty"`
}
func RuntimeStatusSummaryFromAttach ¶ added in v0.7.1
func RuntimeStatusSummaryFromAttach(status runtimemanagement.RuntimeAttachStatus) RuntimeStatusSummary
type TargetCatalog ¶
type TargetCatalog struct {
Targets []TargetDescriptor `json:"targets"`
}
func DiscoverTargets ¶
func DiscoverTargets(opts DiscoverTargetsOptions) (TargetCatalog, error)
func EnvironmentTargetCatalog ¶ added in v0.7.1
func EnvironmentTargetCatalog(catalog TargetCatalog) TargetCatalog
type TargetDescriptor ¶
type TargetDescriptor struct {
ID string `json:"id"`
Kind string `json:"kind"`
Label string `json:"label"`
Status string `json:"status"`
StateRoot string `json:"state_root,omitempty"`
StateDir string `json:"state_dir,omitempty"`
ConfigPath string `json:"config_path,omitempty"`
RuntimeControlSocketPath string `json:"runtime_control_socket_path,omitempty"`
LocalUIURL string `json:"local_ui_url,omitempty"`
LocalUIURLs []string `json:"local_ui_urls,omitempty"`
PasswordRequired bool `json:"password_required,omitempty"`
EffectiveRunMode string `json:"effective_run_mode,omitempty"`
RemoteEnabled bool `json:"remote_enabled,omitempty"`
ControlplaneBaseURL string `json:"controlplane_base_url,omitempty"`
ControlplaneProvider string `json:"controlplane_provider_id,omitempty"`
EnvPublicID string `json:"env_public_id,omitempty"`
LocalEnvironmentID string `json:"local_environment_public_id,omitempty"`
AgentHomeDir string `json:"agent_home_dir,omitempty"`
Shell string `json:"shell,omitempty"`
Capabilities []string `json:"capabilities"`
Execution *TargetExecutionRoute `json:"execution,omitempty"`
}
func ResolveTarget ¶
func ResolveTarget(catalog TargetCatalog, rawTarget string) (TargetDescriptor, error)
func ResolveTargetForExecution ¶ added in v0.7.1
func ResolveTargetForExecution(catalog TargetCatalog, rawTarget string) (TargetDescriptor, error)
type TargetExecInvocation ¶ added in v0.7.1
type TargetExecOptions ¶ added in v0.7.1
type TargetExecProcessResult ¶ added in v0.7.1
type TargetExecResult ¶ added in v0.7.1
type TargetExecResult struct {
Target TargetDescriptor `json:"target"`
TargetID string `json:"target_id"`
Supported bool `json:"supported"`
ReasonCode string `json:"reason_code,omitempty"`
Message string `json:"message,omitempty"`
ExecutionLocation string `json:"execution_location,omitempty"`
Command string `json:"command,omitempty"`
CWD string `json:"cwd,omitempty"`
Stdout string `json:"stdout,omitempty"`
Stderr string `json:"stderr,omitempty"`
ExitCode int `json:"exit_code"`
DurationMS int64 `json:"duration_ms,omitempty"`
TimedOut bool `json:"timed_out,omitempty"`
Truncated bool `json:"truncated,omitempty"`
}
func ExecuteTargetCommand ¶ added in v0.7.1
func ExecuteTargetCommand(ctx context.Context, opts TargetExecOptions) (TargetExecResult, error)
type TargetExecRunner ¶ added in v0.7.1
type TargetExecRunner func(ctx context.Context, inv TargetExecInvocation) (TargetExecProcessResult, error)
type TargetExecutionRoute ¶ added in v0.7.1
Click to show internal directories.
Click to hide internal directories.