inapi

package
v2.0.0-alpha.2 Latest Latest
Warning

This package is not in the latest version of its module.

Go to latest
Published: May 11, 2026 License: Apache-2.0 Imports: 18 Imported by: 0

Documentation

Index

Constants

View Source
const (
	SpecFieldTypeUnspec = ""       // unspecified type
	SpecFieldTypeString = "string" // string type
	SpecFieldTypeSelect = "select" // select type

	SpecFieldTypeGroup = "group" // array type

	SpecFieldTypeText         = "text"          // text type
	SpecFieldTypeTextJSON     = "text_json"     // json text
	SpecFieldTypeTextTOML     = "text_toml"     // toml text
	SpecFieldTypeTextYAML     = "text_yaml"     // yaml text
	SpecFieldTypeTextINI      = "text_ini"      // ini text
	SpecFieldTypeTextJavaProp = "text_javaprop" // java properties
	SpecFieldTypeTextMarkdown = "text_markdown" // markdown text

	SpecFieldTypeAuthCert = "auth_cert" // auth certificate
)

AppSpecConfigItem type constants

View Source
const (
	// CPU resource limits in millicores
	CPUMin = 10
	CPUMax = 64000

	// Memory resource limits in bytes
	MemoryMin = 64 * 1024 * 1024         // 64 MiB
	MemoryMax = 512 * 1024 * 1024 * 1024 // 512 GiB

	// Volume size limits in bytes
	VolumeMin = 1 * 1024 * 1024 * 1024         // 1 GiB
	VolumeMax = 10 * 1024 * 1024 * 1024 * 1024 // 10 TiB
)
View Source
const (
	HealthStatusActionActive uint32 = 1 << 1 // health status: active
	HealthStatusActionSetup  uint32 = 1 << 2 // health status: setup

	// Health failover timing configuration (in seconds)
	HealthFailoverActiveTimeDef   int32 = 7200  // default active time: 2 hours
	HealthFailoverActiveTimeMin   int32 = 300   // minimum active time: 5 minutes
	HealthFailoverScheduleTimeMin int32 = 36000 // minimum schedule time: 10 hours

	HealthFailoverMsgSent uint32 = 1 << 16 // failover message sent flag
)

Health status action flags

View Source
const (
	AuthScope_Zone_Read  = "zone:ro"
	AuthScope_Zone_Write = "zone:rw"

	AuthScope_Host_Read  = "host:ro"
	AuthScope_Host_Write = "host:rw"

	AuthScope_App_Read  = "app:ro"
	AuthScope_App_Write = "app:rw"

	AuthScope_GatewayIngress_Read  = "ingress:ro"
	AuthScope_GatewayIngress_Write = "ingress:rw"

	AuthScope_GatewayIngressDeploy_Read = "ingress-deploy:ro"

	AuthScope_Package_Read  = "pkg:ro"
	AuthScope_Package_Write = "pkg:rw"

	AuthScope_Wildcard = "*"
)

Scope constants for authorization checks

View Source
const (
	// User action command
	OpActionStart   = "start"   // user action: start
	OpActionStop    = "stop"    // user action: stop
	OpActionDestroy = "destroy" // user action: destroy
)
View Source
const (
	// Empty state
	OpStateEmpty = "" // empty state

	// Lifecycle states
	OpStateStarting   = "starting"   // replica state: starting
	OpStateRunning    = "running"    // replica state: running
	OpStateStopping   = "stopping"   // replica state: stopping
	OpStateStopped    = "stopped"    // replica state: stopped
	OpStateDestroying = "destroying" // replica state: destroying
	OpStateDestroyed  = "destroyed"  // replica state: destroyed

	// Error state
	OpStateFailed = "failed" // replica state: failed
)

AppReplicaState represents the actual runtime state of a replica These are stable states that a replica can be in

View Source
const (
	// Transition result events
	OpEventSuccess = "success" // transition result: success
	OpEventFail    = "fail"    // transition result: fail
)

AppReplicaEvent represents user actions or transition results These trigger state transitions in the state machine

View Source
const (
	OpLogOK    = "ok"    // operation completed successfully
	OpLogInfo  = "info"  // informational message
	OpLogWarn  = "warn"  // warning message
	OpLogError = "error" // error message
)

Operation log status levels

View Source
const (
	NsOpLogZoneRepMigrateAlloc       = "zm/rep-migrate/alloc"   // allocate resources for migration
	NsOpLogZoneRepMigratePrevStop    = "zm/rep-migrate/stop"    // stop previous replica
	NsOpLogZoneRepMigratePrevDestory = "zm/rep-migrate/destroy" // destroy previous replica
	NsOpLogZoneRepMigrateNextData    = "zm/rep-migrate/data"    // migrate data to new replica
	NsOpLogZoneRepMigrateDone        = "zm/rep-migrate/done"    // migration completed
)

Zone replica migration operation log namespaces Used for tracking migration progress across zone replicas

View Source
const (
	OpLogNsZoneMasterPodScheduleCharge  = "zm/ps/charge"  // charge resources for scheduling
	OpLogNsZoneMasterPodScheduleAlloc   = "zm/ps/alloc"   // allocate pod to host
	OpLogNsZoneMasterPodScheduleResFree = "zm/ps/resfree" // free allocated resources
)

Zone master pod scheduling operation log namespaces Used for tracking pod scheduling operations

View Source
const (
	PackageFileStateUnspec    = ""          // unspecified state
	PackageFileStateUploading = "uploading" // upload in progress
	PackageFileStateComplete  = "complete"  // upload completed
	PackageFileStateFailed    = "failed"    // upload failed
)

PackageFileState constants for package file upload tracking

View Source
const (
	Zonelet_MaxHosts     = 252
	Zonelet_MaxInstances = 252 * 252
)
View Source
const (
	HostPortMin   uint32 = 20000 // start of host port allocation range
	HostPortMax   uint32 = 30000 // end of host port allocation range (inclusive)
	HostPortRange        = HostPortMax - HostPortMin + 1
	HostPortLimit        = int(HostPortRange) // max number of allocatable ports
)

Host port allocation range constants. Ports in [HostPortMin, HostPortMax] are auto-allocated for container host port mapping when a replica binds to a host.

View Source
const (
	VpcAllocMin uint8 = 3   // first allocatable octet value
	VpcAllocMax uint8 = 252 // last allocatable octet value

	// VpcAllocCap is the number of allocatable addresses per octet slot.
	VpcAllocCap = int(VpcAllocMax) - int(VpcAllocMin) + 1 // 250
)

VPC IP allocation range constants. Octet values in [VpcAllocMin, VpcAllocMax] are allocatable; values outside this range are reserved for system use (network, gateway, broadcast, future extensions).

View Source
const (
	GatewayIngressType_Instance = "instance" // route to an app instance by AppInstance.ID:Port

	GatewayIngressType_Upstream = "upstream" // route to a static upstream by IPv4:Port

	GatewayIngressType_Redirect = "redirect" // redirect to an external URL (http/https)
)

GatewayIngress route type constants. Each type determines how the gateway resolves route targets into backend addresses. The target format varies by type:

  • instance : AppInstanceID:Port (gateway resolves the instance to its runtime address automatically, e.g. "a1b2c3d4e5f6:8080")
  • upstream : IPv4:Port (static custom upstream, e.g. "10.0.1.5:80")
  • redirect : http(s)://host/path (HTTP redirect, e.g. "https://example.com/path")
View Source
const (
	GatewayIngressActionEnable  = "enable"  // ingress action: enable (default)
	GatewayIngressActionDisable = "disable" // ingress action: disable
)

GatewayIngress action constants

View Source
const (
	HostSetupStart   = "start"
	HostSetupStop    = "stop"
	HostSetupDestroy = "destroy"

	// PackageFileChunkSizeDefault is the default chunk size (1MB)
	PackageFileChunkSizeDefault = int64(1 << 20)
	// PackageMaxSize is the maximum package size (200MB)
	PackageMaxSize = int64(200 << 20)
)
View Source
const (
	ZoneService_ZoneInit_FullMethodName           = "/inapi.ZoneService/ZoneInit"
	ZoneService_ZoneInfo_FullMethodName           = "/inapi.ZoneService/ZoneInfo"
	ZoneService_ZoneSet_FullMethodName            = "/inapi.ZoneService/ZoneSet"
	ZoneService_HostJoin_FullMethodName           = "/inapi.ZoneService/HostJoin"
	ZoneService_HostList_FullMethodName           = "/inapi.ZoneService/HostList"
	ZoneService_AppInstanceDeploy_FullMethodName  = "/inapi.ZoneService/AppInstanceDeploy"
	ZoneService_AppInstanceInfo_FullMethodName    = "/inapi.ZoneService/AppInstanceInfo"
	ZoneService_AppInstanceList_FullMethodName    = "/inapi.ZoneService/AppInstanceList"
	ZoneService_AppInstanceDelete_FullMethodName  = "/inapi.ZoneService/AppInstanceDelete"
	ZoneService_GatewayIngressInfo_FullMethodName = "/inapi.ZoneService/GatewayIngressInfo"
	ZoneService_GatewayIngressList_FullMethodName = "/inapi.ZoneService/GatewayIngressList"
	ZoneService_GatewayIngressSet_FullMethodName  = "/inapi.ZoneService/GatewayIngressSet"
	ZoneService_PackagePush_FullMethodName        = "/inapi.ZoneService/PackagePush"
	ZoneService_PackageList_FullMethodName        = "/inapi.ZoneService/PackageList"
	ZoneService_PackageDelete_FullMethodName      = "/inapi.ZoneService/PackageDelete"
)
View Source
const (
	ZoneInternalService_HostStatusUpdate_FullMethodName         = "/inapi.ZoneInternalService/HostStatusUpdate"
	ZoneInternalService_GatewayIngressDeployList_FullMethodName = "/inapi.ZoneInternalService/GatewayIngressDeployList"
	ZoneInternalService_PackageChunk_FullMethodName             = "/inapi.ZoneInternalService/PackageChunk"
)
View Source
const (
	HostInternalService_HostInit_FullMethodName = "/inapi.HostInternalService/HostInit"
)

Variables

View Source
var File_common_proto protoreflect.FileDescriptor
View Source
var File_config_proto protoreflect.FileDescriptor
View Source
var File_gateway_proto protoreflect.FileDescriptor
View Source
var File_package_proto protoreflect.FileDescriptor
View Source
var File_service_proto protoreflect.FileDescriptor
View Source
var HostInternalService_ServiceDesc = grpc.ServiceDesc{
	ServiceName: "inapi.HostInternalService",
	HandlerType: (*HostInternalServiceServer)(nil),
	Methods: []grpc.MethodDesc{
		{
			MethodName: "HostInit",
			Handler:    _HostInternalService_HostInit_Handler,
		},
	},
	Streams:  []grpc.StreamDesc{},
	Metadata: "service.proto",
}

HostInternalService_ServiceDesc is the grpc.ServiceDesc for HostInternalService service. It's only intended for direct use with grpc.RegisterService, and not to be introspected or modified (even as a copy)

View Source
var ZoneInternalService_ServiceDesc = grpc.ServiceDesc{
	ServiceName: "inapi.ZoneInternalService",
	HandlerType: (*ZoneInternalServiceServer)(nil),
	Methods: []grpc.MethodDesc{
		{
			MethodName: "HostStatusUpdate",
			Handler:    _ZoneInternalService_HostStatusUpdate_Handler,
		},
		{
			MethodName: "GatewayIngressDeployList",
			Handler:    _ZoneInternalService_GatewayIngressDeployList_Handler,
		},
		{
			MethodName: "PackageChunk",
			Handler:    _ZoneInternalService_PackageChunk_Handler,
		},
	},
	Streams:  []grpc.StreamDesc{},
	Metadata: "service.proto",
}

ZoneInternalService_ServiceDesc is the grpc.ServiceDesc for ZoneInternalService service. It's only intended for direct use with grpc.RegisterService, and not to be introspected or modified (even as a copy)

View Source
var ZoneService_ServiceDesc = grpc.ServiceDesc{
	ServiceName: "inapi.ZoneService",
	HandlerType: (*ZoneServiceServer)(nil),
	Methods: []grpc.MethodDesc{
		{
			MethodName: "ZoneInit",
			Handler:    _ZoneService_ZoneInit_Handler,
		},
		{
			MethodName: "ZoneInfo",
			Handler:    _ZoneService_ZoneInfo_Handler,
		},
		{
			MethodName: "ZoneSet",
			Handler:    _ZoneService_ZoneSet_Handler,
		},
		{
			MethodName: "HostJoin",
			Handler:    _ZoneService_HostJoin_Handler,
		},
		{
			MethodName: "HostList",
			Handler:    _ZoneService_HostList_Handler,
		},
		{
			MethodName: "AppInstanceDeploy",
			Handler:    _ZoneService_AppInstanceDeploy_Handler,
		},
		{
			MethodName: "AppInstanceInfo",
			Handler:    _ZoneService_AppInstanceInfo_Handler,
		},
		{
			MethodName: "AppInstanceList",
			Handler:    _ZoneService_AppInstanceList_Handler,
		},
		{
			MethodName: "AppInstanceDelete",
			Handler:    _ZoneService_AppInstanceDelete_Handler,
		},
		{
			MethodName: "GatewayIngressInfo",
			Handler:    _ZoneService_GatewayIngressInfo_Handler,
		},
		{
			MethodName: "GatewayIngressList",
			Handler:    _ZoneService_GatewayIngressList_Handler,
		},
		{
			MethodName: "GatewayIngressSet",
			Handler:    _ZoneService_GatewayIngressSet_Handler,
		},
		{
			MethodName: "PackagePush",
			Handler:    _ZoneService_PackagePush_Handler,
		},
		{
			MethodName: "PackageList",
			Handler:    _ZoneService_PackageList_Handler,
		},
		{
			MethodName: "PackageDelete",
			Handler:    _ZoneService_PackageDelete_Handler,
		},
	},
	Streams:  []grpc.StreamDesc{},
	Metadata: "service.proto",
}

ZoneService_ServiceDesc is the grpc.ServiceDesc for ZoneService service. It's only intended for direct use with grpc.RegisterService, and not to be introspected or modified (even as a copy)

Functions

func NsAppInstance

func NsAppInstance(zone, id string) []byte

func NsHostInfo

func NsHostInfo(zone, host string) []byte

func NsHostStatus

func NsHostStatus(zone, host string) []byte

func NsPackageFileChunk

func NsPackageFileChunk(pkgId string, chunkIndex int64) []byte

NsPackageFileChunk returns the KV key for a specific chunk. Key: v2/pkg/chunk/{pkg_id}/{chunk_index:08d}

func NsPackageFileChunkPrefix

func NsPackageFileChunkPrefix(pkgId string) []byte

NsPackageFileChunkPrefix returns the KV key prefix for all chunks of a package. Key: v2/pkg/chunk/{pkg_id}/

func NsPackageInfo

func NsPackageInfo(pkgId string) []byte

NsPackageInfo returns the KV key for package metadata. Key: v2/pkg/info/{pkg_id}

func NsZoneletAccessKey

func NsZoneletAccessKey(zone, kid string) []byte

func NsZoneletGatewayIngress

func NsZoneletGatewayIngress(zone, name string) []byte

func NsZoneletInfo

func NsZoneletInfo(zone string) []byte

func NsZoneletLeader

func NsZoneletLeader(zone string) []byte

func NsZoneletNetworkIPAM

func NsZoneletNetworkIPAM(zone string) []byte

NsZoneletNetworkIPAM returns the KV key for persisting IPAM state.

func PackageId

func PackageId(pkg *Package) string

PackageId generates a unique package ID from package metadata. Format: {name}_{version}_{os}_{arch}

func RegisterHostInternalServiceServer

func RegisterHostInternalServiceServer(s grpc.ServiceRegistrar, srv HostInternalServiceServer)

func RegisterZoneInternalServiceServer

func RegisterZoneInternalServiceServer(s grpc.ServiceRegistrar, srv ZoneInternalServiceServer)

func RegisterZoneServiceServer

func RegisterZoneServiceServer(s grpc.ServiceRegistrar, srv ZoneServiceServer)

func SemverValid

func SemverValid(version string) error

SemverValid checks whether the given version string is a valid semantic version. The version must follow the full SemVer 2.0 format: MAJOR.MINOR.PATCH with optional pre-release (-alpha.1) and build (+build.123) tags. Note: golang.org/x/mod/semver requires a "v" prefix for canonical comparison, so we prepend "v" before validation.

func ValidateTaskTrigger

func ValidateTaskTrigger(task *AppSpecTask) error

ValidateTaskTrigger validates that exactly one trigger field is set in a task. Trigger fields are mutually exclusive: on_startup, on_shutdown, interval_seconds, cron. Each task must have exactly one trigger field set.

Types

type AppDeploy

type AppDeploy struct {

	// action specifies the desired operation (manually set by user).
	// Valid values: start, stop, destroy.
	Action string `protobuf:"bytes,1,opt,name=action,proto3" json:"action,omitempty" toml:"action,omitempty"`
	// revision is the operational revision for optimistic concurrency control.
	Revision uint64 `protobuf:"varint,2,opt,name=revision,proto3" json:"revision,omitempty" toml:"revision,omitempty"`
	// cpu_limit specifies the CPU limit in millicores (e.g., 500 = 0.5 cores).
	CpuLimit int64 `protobuf:"varint,10,opt,name=cpu_limit,json=cpuLimit,proto3" json:"cpu_limit,omitempty" toml:"cpu_limit,omitempty"`
	// memory_limit specifies the memory limit in bytes.
	MemoryLimit int64 `` /* 126-byte string literal not displayed */
	// volume_limit specifies the volume limit in bytes.
	VolumeLimit int64 `` /* 126-byte string literal not displayed */
	// configs is a list of deployment configs.
	Configs []*AppDeployConfigItem `protobuf:"bytes,13,rep,name=configs,proto3" json:"configs,omitempty" toml:"configs,omitempty"`
	// replica_cap specifies the desired number of replicas.
	ReplicaCap uint32 `protobuf:"varint,19,opt,name=replica_cap,json=replicaCap,proto3" json:"replica_cap,omitempty" toml:"replica_cap,omitempty"`
	// replicas is a list of replica deployment states.
	Replicas []*AppDeployReplica `protobuf:"bytes,20,rep,name=replicas,proto3" json:"replicas,omitempty" toml:"replicas,omitempty"`
	// depends is a list of resolved dependency bindings that map each
	// dependent AppSpec.Name to a concrete deployed AppInstance.ID.
	Depends []*AppDeployDepend `protobuf:"bytes,21,rep,name=depends,proto3" json:"depends,omitempty" toml:"depends,omitempty"`
	// contains filtered or unexported fields
}

AppDeploy defines the deployment parameters and desired actions for an application.

func (*AppDeploy) Descriptor deprecated

func (*AppDeploy) Descriptor() ([]byte, []int)

Deprecated: Use AppDeploy.ProtoReflect.Descriptor instead.

func (*AppDeploy) GetAction

func (x *AppDeploy) GetAction() string

func (*AppDeploy) GetConfigs

func (x *AppDeploy) GetConfigs() []*AppDeployConfigItem

func (*AppDeploy) GetCpuLimit

func (x *AppDeploy) GetCpuLimit() int64

func (*AppDeploy) GetDepends

func (x *AppDeploy) GetDepends() []*AppDeployDepend

func (*AppDeploy) GetMemoryLimit

func (x *AppDeploy) GetMemoryLimit() int64

func (*AppDeploy) GetReplicaCap

func (x *AppDeploy) GetReplicaCap() uint32

func (*AppDeploy) GetReplicas

func (x *AppDeploy) GetReplicas() []*AppDeployReplica

func (*AppDeploy) GetRevision

func (x *AppDeploy) GetRevision() uint64

func (*AppDeploy) GetVolumeLimit

func (x *AppDeploy) GetVolumeLimit() int64

func (*AppDeploy) ProtoMessage

func (*AppDeploy) ProtoMessage()

func (*AppDeploy) ProtoReflect

func (x *AppDeploy) ProtoReflect() protoreflect.Message

func (*AppDeploy) Reset

func (x *AppDeploy) Reset()

func (*AppDeploy) String

func (x *AppDeploy) String() string

type AppDeployConfigItem

type AppDeployConfigItem struct {

	// name is the name of the field.
	Name string `protobuf:"bytes,1,opt,name=name,proto3" json:"name,omitempty" toml:"name,omitempty"`
	// value is the value of the field.
	Value string `protobuf:"bytes,2,opt,name=value,proto3" json:"value,omitempty" toml:"value,omitempty"`
	// type specifies the data type of the field.
	Type string `protobuf:"bytes,3,opt,name=type,proto3" json:"type,omitempty" toml:"type,omitempty"`
	// items is a list of fields within this config group.
	Items []*AppDeployConfigItem `protobuf:"bytes,9,rep,name=items,proto3" json:"items,omitempty" toml:"items,omitempty"`
	// contains filtered or unexported fields
}

AppDeployConfigItem represents a single field in a deployment config.

func (*AppDeployConfigItem) Descriptor deprecated

func (*AppDeployConfigItem) Descriptor() ([]byte, []int)

Deprecated: Use AppDeployConfigItem.ProtoReflect.Descriptor instead.

func (*AppDeployConfigItem) GetItems

func (x *AppDeployConfigItem) GetItems() []*AppDeployConfigItem

func (*AppDeployConfigItem) GetName

func (x *AppDeployConfigItem) GetName() string

func (*AppDeployConfigItem) GetType

func (x *AppDeployConfigItem) GetType() string

func (*AppDeployConfigItem) GetValue

func (x *AppDeployConfigItem) GetValue() string

func (*AppDeployConfigItem) Item

Field returns the AppDeployConfigItem with the given name, or nil if not found

func (*AppDeployConfigItem) ProtoMessage

func (*AppDeployConfigItem) ProtoMessage()

func (*AppDeployConfigItem) ProtoReflect

func (x *AppDeployConfigItem) ProtoReflect() protoreflect.Message

func (*AppDeployConfigItem) Reset

func (x *AppDeployConfigItem) Reset()

func (*AppDeployConfigItem) String

func (x *AppDeployConfigItem) String() string

type AppDeployDepend

type AppDeployDepend struct {

	// spec_name is the name of the dependent application specification.
	SpecName string `protobuf:"bytes,1,opt,name=spec_name,json=specName,proto3" json:"spec_name,omitempty" toml:"spec_name,omitempty"`
	// instance_id is the ID of the deployed app instance that satisfies
	// this dependency.
	InstanceId string `protobuf:"bytes,2,opt,name=instance_id,json=instanceId,proto3" json:"instance_id,omitempty" toml:"instance_id,omitempty"`
	// 由调度器自动赋值
	Configs []*AppDeployConfigItem `protobuf:"bytes,13,rep,name=configs,proto3" json:"configs,omitempty" toml:"configs,omitempty"`
	// 由调度器自动赋值
	Replicas []*AppDeployReplica `protobuf:"bytes,20,rep,name=replicas,proto3" json:"replicas,omitempty" toml:"replicas,omitempty"`
	// contains filtered or unexported fields
}

AppDeployDepend represents a resolved dependency binding at deploy time. It maps an AppSpec.Name to a concrete deployed AppInstance.ID.

func (*AppDeployDepend) Descriptor deprecated

func (*AppDeployDepend) Descriptor() ([]byte, []int)

Deprecated: Use AppDeployDepend.ProtoReflect.Descriptor instead.

func (*AppDeployDepend) GetConfigs

func (x *AppDeployDepend) GetConfigs() []*AppDeployConfigItem

func (*AppDeployDepend) GetInstanceId

func (x *AppDeployDepend) GetInstanceId() string

func (*AppDeployDepend) GetReplicas

func (x *AppDeployDepend) GetReplicas() []*AppDeployReplica

func (*AppDeployDepend) GetSpecName

func (x *AppDeployDepend) GetSpecName() string

func (*AppDeployDepend) ProtoMessage

func (*AppDeployDepend) ProtoMessage()

func (*AppDeployDepend) ProtoReflect

func (x *AppDeployDepend) ProtoReflect() protoreflect.Message

func (*AppDeployDepend) Reset

func (x *AppDeployDepend) Reset()

func (*AppDeployDepend) String

func (x *AppDeployDepend) String() string

type AppDeployReplica

type AppDeployReplica struct {

	// id is the unique identifier of the replica.
	Id uint32 `protobuf:"varint,1,opt,name=id,proto3" json:"id,omitempty" toml:"id,omitempty"`
	// host_id is the ID of the host where the replica runs.
	HostId   string `protobuf:"bytes,2,opt,name=host_id,json=hostId,proto3" json:"host_id,omitempty" toml:"host_id,omitempty"`
	HostIpv4 string `protobuf:"bytes,6,opt,name=host_ipv4,json=hostIpv4,proto3" json:"host_ipv4,omitempty" toml:"host_ipv4,omitempty"`
	// state is the desired state of the replica.
	State string `protobuf:"bytes,3,opt,name=state,proto3" json:"state,omitempty" toml:"state,omitempty"`
	// vpc_ipv4 is the VPC IPv4 address assigned to this replica by IPAM.
	VpcIpv4 string `protobuf:"bytes,4,opt,name=vpc_ipv4,json=vpcIpv4,proto3" json:"vpc_ipv4,omitempty" toml:"vpc_ipv4,omitempty"`
	// service_ports is the list of port mappings allocated for this replica.
	// Each entry maps a container port (box_port) to a host physical port
	// (host_port), assigned by the scheduler when the replica binds to a host.
	ServicePorts []*AppDeployServicePort `` /* 128-byte string literal not displayed */
	// contains filtered or unexported fields
}

AppDeployReplica represents the deployment state of a replica.

func (*AppDeployReplica) Descriptor deprecated

func (*AppDeployReplica) Descriptor() ([]byte, []int)

Deprecated: Use AppDeployReplica.ProtoReflect.Descriptor instead.

func (*AppDeployReplica) GetHostId

func (x *AppDeployReplica) GetHostId() string

func (*AppDeployReplica) GetHostIpv4

func (x *AppDeployReplica) GetHostIpv4() string

func (*AppDeployReplica) GetId

func (x *AppDeployReplica) GetId() uint32

func (*AppDeployReplica) GetServicePorts

func (x *AppDeployReplica) GetServicePorts() []*AppDeployServicePort

func (*AppDeployReplica) GetState

func (x *AppDeployReplica) GetState() string

func (*AppDeployReplica) GetVpcIpv4

func (x *AppDeployReplica) GetVpcIpv4() string

func (*AppDeployReplica) ProtoMessage

func (*AppDeployReplica) ProtoMessage()

func (*AppDeployReplica) ProtoReflect

func (x *AppDeployReplica) ProtoReflect() protoreflect.Message

func (*AppDeployReplica) Reset

func (x *AppDeployReplica) Reset()

func (*AppDeployReplica) String

func (x *AppDeployReplica) String() string

type AppDeployServicePort

type AppDeployServicePort struct {
	Name string `protobuf:"bytes,1,opt,name=name,proto3" json:"name,omitempty" toml:"name,omitempty"`
	Port uint32 `protobuf:"varint,2,opt,name=port,proto3" json:"port,omitempty" toml:"port,omitempty"`
	// host_port is the port number exposed on the host.
	HostPort uint32 `protobuf:"varint,3,opt,name=host_port,json=hostPort,proto3" json:"host_port,omitempty" toml:"host_port,omitempty"`
	// lan_addr is the LAN (local area network) address for internal access.
	LanAddr string `protobuf:"bytes,4,opt,name=lan_addr,json=lanAddr,proto3" json:"lan_addr,omitempty" toml:"lan_addr,omitempty"`
	// contains filtered or unexported fields
}

func (*AppDeployServicePort) Descriptor deprecated

func (*AppDeployServicePort) Descriptor() ([]byte, []int)

Deprecated: Use AppDeployServicePort.ProtoReflect.Descriptor instead.

func (*AppDeployServicePort) GetHostPort

func (x *AppDeployServicePort) GetHostPort() uint32

func (*AppDeployServicePort) GetLanAddr

func (x *AppDeployServicePort) GetLanAddr() string

func (*AppDeployServicePort) GetName

func (x *AppDeployServicePort) GetName() string

func (*AppDeployServicePort) GetPort

func (x *AppDeployServicePort) GetPort() uint32

func (*AppDeployServicePort) ProtoMessage

func (*AppDeployServicePort) ProtoMessage()

func (*AppDeployServicePort) ProtoReflect

func (x *AppDeployServicePort) ProtoReflect() protoreflect.Message

func (*AppDeployServicePort) Reset

func (x *AppDeployServicePort) Reset()

func (*AppDeployServicePort) String

func (x *AppDeployServicePort) String() string

type AppInstance

type AppInstance struct {

	// meta contains the standard resource metadata (id, name, etc.).
	Meta *Metadata `protobuf:"bytes,1,opt,name=meta,proto3" json:"meta,omitempty" toml:"meta,omitempty"`
	// spec defines the desired state and configuration of the application.
	Spec *AppSpec `protobuf:"bytes,10,opt,name=spec,proto3" json:"spec,omitempty" toml:"spec,omitempty"`
	// deploy specifies the deployment parameters and desired actions.
	Deploy *AppDeploy `protobuf:"bytes,20,opt,name=deploy,proto3" json:"deploy,omitempty" toml:"deploy,omitempty"`
	// revision is an internal revision number for data synchronization.
	Revision uint64 `protobuf:"varint,21,opt,name=revision,proto3" json:"revision,omitempty" toml:"revision,omitempty"`
	// ref_by_instances records IDs of other app instances that reference
	// this instance as a dependency. Maintained by the zonelet to track
	// reverse dependency links.
	RefByInstances []string `` /* 140-byte string literal not displayed */
	// contains filtered or unexported fields
}

AppInstance represents a deployed application instance in the cluster. It is the top-level resource that encapsulates the application specification, operational parameters, and current status.

func (*AppInstance) Descriptor deprecated

func (*AppInstance) Descriptor() ([]byte, []int)

Deprecated: Use AppInstance.ProtoReflect.Descriptor instead.

func (*AppInstance) GetDeploy

func (x *AppInstance) GetDeploy() *AppDeploy

func (*AppInstance) GetMeta

func (x *AppInstance) GetMeta() *Metadata

func (*AppInstance) GetRefByInstances

func (x *AppInstance) GetRefByInstances() []string

func (*AppInstance) GetRevision

func (x *AppInstance) GetRevision() uint64

func (*AppInstance) GetSpec

func (x *AppInstance) GetSpec() *AppSpec

func (*AppInstance) InstanceId

func (x *AppInstance) InstanceId() string

InstanceId returns the unique identifier of the application instance.

func (*AppInstance) InstanceName

func (x *AppInstance) InstanceName() string

InstanceName returns the human-readable name of the application instance.

func (*AppInstance) ProtoMessage

func (*AppInstance) ProtoMessage()

func (*AppInstance) ProtoReflect

func (x *AppInstance) ProtoReflect() protoreflect.Message

func (*AppInstance) Reset

func (x *AppInstance) Reset()

func (*AppInstance) String

func (x *AppInstance) String() string

type AppInstanceDeleteRequest

type AppInstanceDeleteRequest struct {

	// id is the unique identifier of the application instance to delete.
	Id string `protobuf:"bytes,1,opt,name=id,proto3" json:"id,omitempty" toml:"id,omitempty"`
	// contains filtered or unexported fields
}

AppInstanceDeleteRequest is the request message for deleting an application instance.

func (*AppInstanceDeleteRequest) Descriptor deprecated

func (*AppInstanceDeleteRequest) Descriptor() ([]byte, []int)

Deprecated: Use AppInstanceDeleteRequest.ProtoReflect.Descriptor instead.

func (*AppInstanceDeleteRequest) GetId

func (x *AppInstanceDeleteRequest) GetId() string

func (*AppInstanceDeleteRequest) ProtoMessage

func (*AppInstanceDeleteRequest) ProtoMessage()

func (*AppInstanceDeleteRequest) ProtoReflect

func (x *AppInstanceDeleteRequest) ProtoReflect() protoreflect.Message

func (*AppInstanceDeleteRequest) Reset

func (x *AppInstanceDeleteRequest) Reset()

func (*AppInstanceDeleteRequest) String

func (x *AppInstanceDeleteRequest) String() string

type AppInstanceDeleteResponse

type AppInstanceDeleteResponse struct {
	// contains filtered or unexported fields
}

AppInstanceDeleteResponse is the response message after deleting an application instance.

func (*AppInstanceDeleteResponse) Descriptor deprecated

func (*AppInstanceDeleteResponse) Descriptor() ([]byte, []int)

Deprecated: Use AppInstanceDeleteResponse.ProtoReflect.Descriptor instead.

func (*AppInstanceDeleteResponse) ProtoMessage

func (*AppInstanceDeleteResponse) ProtoMessage()

func (*AppInstanceDeleteResponse) ProtoReflect

func (*AppInstanceDeleteResponse) Reset

func (x *AppInstanceDeleteResponse) Reset()

func (*AppInstanceDeleteResponse) String

func (x *AppInstanceDeleteResponse) String() string

type AppInstanceDeployRequest

type AppInstanceDeployRequest struct {

	// id is the unique identifier for the application instance.
	// If empty, a new ID will be generated.
	Id string `protobuf:"bytes,1,opt,name=id,proto3" json:"id,omitempty" toml:"id,omitempty"`
	// spec defines the application specification including resources,
	// executors, etc.
	Spec *AppSpec `protobuf:"bytes,2,opt,name=spec,proto3" json:"spec,omitempty" toml:"spec,omitempty"`
	// replica_cap specifies the desired number of replicas for the application.
	ReplicaCap uint32 `protobuf:"varint,3,opt,name=replica_cap,json=replicaCap,proto3" json:"replica_cap,omitempty" toml:"replica_cap,omitempty"`
	// deploy specifies the deployment parameters and desired action.
	Deploy *AppDeploy `protobuf:"bytes,4,opt,name=deploy,proto3" json:"deploy,omitempty" toml:"deploy,omitempty"`
	// name is the instance name. For new instances, it defaults to spec.name.
	// Must be unique within the zone. Immutable after creation.
	Name string `protobuf:"bytes,5,opt,name=name,proto3" json:"name,omitempty" toml:"name,omitempty"`
	// contains filtered or unexported fields
}

AppInstanceDeployRequest is the request message for deploying an application instance.

func (*AppInstanceDeployRequest) Descriptor deprecated

func (*AppInstanceDeployRequest) Descriptor() ([]byte, []int)

Deprecated: Use AppInstanceDeployRequest.ProtoReflect.Descriptor instead.

func (*AppInstanceDeployRequest) GetDeploy

func (x *AppInstanceDeployRequest) GetDeploy() *AppDeploy

func (*AppInstanceDeployRequest) GetId

func (x *AppInstanceDeployRequest) GetId() string

func (*AppInstanceDeployRequest) GetName

func (x *AppInstanceDeployRequest) GetName() string

func (*AppInstanceDeployRequest) GetReplicaCap

func (x *AppInstanceDeployRequest) GetReplicaCap() uint32

func (*AppInstanceDeployRequest) GetSpec

func (x *AppInstanceDeployRequest) GetSpec() *AppSpec

func (*AppInstanceDeployRequest) ProtoMessage

func (*AppInstanceDeployRequest) ProtoMessage()

func (*AppInstanceDeployRequest) ProtoReflect

func (x *AppInstanceDeployRequest) ProtoReflect() protoreflect.Message

func (*AppInstanceDeployRequest) Reset

func (x *AppInstanceDeployRequest) Reset()

func (*AppInstanceDeployRequest) String

func (x *AppInstanceDeployRequest) String() string

type AppInstanceDeployResponse

type AppInstanceDeployResponse struct {

	// id is the unique identifier of the deployed application instance.
	Id string `protobuf:"bytes,1,opt,name=id,proto3" json:"id,omitempty" toml:"id,omitempty"`
	// contains filtered or unexported fields
}

AppInstanceDeployResponse is the response message after deploying an application instance.

func (*AppInstanceDeployResponse) Descriptor deprecated

func (*AppInstanceDeployResponse) Descriptor() ([]byte, []int)

Deprecated: Use AppInstanceDeployResponse.ProtoReflect.Descriptor instead.

func (*AppInstanceDeployResponse) GetId

func (x *AppInstanceDeployResponse) GetId() string

func (*AppInstanceDeployResponse) ProtoMessage

func (*AppInstanceDeployResponse) ProtoMessage()

func (*AppInstanceDeployResponse) ProtoReflect

func (*AppInstanceDeployResponse) Reset

func (x *AppInstanceDeployResponse) Reset()

func (*AppInstanceDeployResponse) String

func (x *AppInstanceDeployResponse) String() string

type AppInstanceInfoRequest

type AppInstanceInfoRequest struct {

	// id is the unique identifier of the application instance to retrieve.
	Id string `protobuf:"bytes,1,opt,name=id,proto3" json:"id,omitempty" toml:"id,omitempty"`
	// contains filtered or unexported fields
}

AppInstanceInfoRequest is the request message for retrieving application instance info.

func (*AppInstanceInfoRequest) Descriptor deprecated

func (*AppInstanceInfoRequest) Descriptor() ([]byte, []int)

Deprecated: Use AppInstanceInfoRequest.ProtoReflect.Descriptor instead.

func (*AppInstanceInfoRequest) GetId

func (x *AppInstanceInfoRequest) GetId() string

func (*AppInstanceInfoRequest) ProtoMessage

func (*AppInstanceInfoRequest) ProtoMessage()

func (*AppInstanceInfoRequest) ProtoReflect

func (x *AppInstanceInfoRequest) ProtoReflect() protoreflect.Message

func (*AppInstanceInfoRequest) Reset

func (x *AppInstanceInfoRequest) Reset()

func (*AppInstanceInfoRequest) String

func (x *AppInstanceInfoRequest) String() string

type AppInstanceInfoResponse

type AppInstanceInfoResponse struct {

	// instance contains the application instance information.
	Instance *AppInstance `protobuf:"bytes,1,opt,name=instance,proto3" json:"instance,omitempty" toml:"instance,omitempty"`
	// contains filtered or unexported fields
}

AppInstanceInfoResponse is the response message containing application instance info.

func (*AppInstanceInfoResponse) Descriptor deprecated

func (*AppInstanceInfoResponse) Descriptor() ([]byte, []int)

Deprecated: Use AppInstanceInfoResponse.ProtoReflect.Descriptor instead.

func (*AppInstanceInfoResponse) GetInstance

func (x *AppInstanceInfoResponse) GetInstance() *AppInstance

func (*AppInstanceInfoResponse) ProtoMessage

func (*AppInstanceInfoResponse) ProtoMessage()

func (*AppInstanceInfoResponse) ProtoReflect

func (x *AppInstanceInfoResponse) ProtoReflect() protoreflect.Message

func (*AppInstanceInfoResponse) Reset

func (x *AppInstanceInfoResponse) Reset()

func (*AppInstanceInfoResponse) String

func (x *AppInstanceInfoResponse) String() string

type AppInstanceListRequest

type AppInstanceListRequest struct {
	// contains filtered or unexported fields
}

AppInstanceListRequest is the request message for listing application instances.

func (*AppInstanceListRequest) Descriptor deprecated

func (*AppInstanceListRequest) Descriptor() ([]byte, []int)

Deprecated: Use AppInstanceListRequest.ProtoReflect.Descriptor instead.

func (*AppInstanceListRequest) ProtoMessage

func (*AppInstanceListRequest) ProtoMessage()

func (*AppInstanceListRequest) ProtoReflect

func (x *AppInstanceListRequest) ProtoReflect() protoreflect.Message

func (*AppInstanceListRequest) Reset

func (x *AppInstanceListRequest) Reset()

func (*AppInstanceListRequest) String

func (x *AppInstanceListRequest) String() string

type AppInstanceListResponse

type AppInstanceListResponse struct {

	// items is the list of application instances.
	Items []*AppInstance `protobuf:"bytes,1,rep,name=items,proto3" json:"items,omitempty" toml:"items,omitempty"`
	// contains filtered or unexported fields
}

AppInstanceListResponse is the response message containing the list of application instances.

func (*AppInstanceListResponse) Descriptor deprecated

func (*AppInstanceListResponse) Descriptor() ([]byte, []int)

Deprecated: Use AppInstanceListResponse.ProtoReflect.Descriptor instead.

func (*AppInstanceListResponse) GetItems

func (x *AppInstanceListResponse) GetItems() []*AppInstance

func (*AppInstanceListResponse) ProtoMessage

func (*AppInstanceListResponse) ProtoMessage()

func (*AppInstanceListResponse) ProtoReflect

func (x *AppInstanceListResponse) ProtoReflect() protoreflect.Message

func (*AppInstanceListResponse) Reset

func (x *AppInstanceListResponse) Reset()

func (*AppInstanceListResponse) String

func (x *AppInstanceListResponse) String() string

type AppReplicaInstance

type AppReplicaInstance struct {
	App            *AppInstance      `protobuf:"bytes,1,opt,name=app,proto3" json:"app,omitempty" toml:"app,omitempty"`
	Replica        *AppDeployReplica `protobuf:"bytes,2,opt,name=replica,proto3" json:"replica,omitempty" toml:"replica,omitempty"`
	ZoneBaseDomain string            `` /* 139-byte string literal not displayed */
	// contains filtered or unexported fields
}

func (*AppReplicaInstance) ContainerName

func (it *AppReplicaInstance) ContainerName() string

ContainerName returns the container name for the app replica instance.

func (*AppReplicaInstance) Descriptor deprecated

func (*AppReplicaInstance) Descriptor() ([]byte, []int)

Deprecated: Use AppReplicaInstance.ProtoReflect.Descriptor instead.

func (*AppReplicaInstance) GetApp

func (x *AppReplicaInstance) GetApp() *AppInstance

func (*AppReplicaInstance) GetReplica

func (x *AppReplicaInstance) GetReplica() *AppDeployReplica

func (*AppReplicaInstance) GetZoneBaseDomain

func (x *AppReplicaInstance) GetZoneBaseDomain() string

func (*AppReplicaInstance) ProtoMessage

func (*AppReplicaInstance) ProtoMessage()

func (*AppReplicaInstance) ProtoReflect

func (x *AppReplicaInstance) ProtoReflect() protoreflect.Message

func (*AppReplicaInstance) Reset

func (x *AppReplicaInstance) Reset()

func (*AppReplicaInstance) String

func (x *AppReplicaInstance) String() string

type AppSpec

type AppSpec struct {

	// kind indicates the type of application (e.g., "app", "service").
	Kind string `protobuf:"bytes,1,opt,name=kind,proto3" json:"kind,omitempty" toml:"kind,omitempty"`
	// name is the unique name of the application specification.
	Name string `protobuf:"bytes,2,opt,name=name,proto3" json:"name,omitempty" toml:"name,omitempty"`
	// version is the semantic version of the application specification,
	// following the SemVer format (e.g., "1.0.0", "2.1.3-beta").
	Version string `protobuf:"bytes,3,opt,name=version,proto3" json:"version,omitempty" toml:"version,omitempty"`
	// description provides a human-readable description of the application.
	Description string `protobuf:"bytes,4,opt,name=description,proto3" json:"description,omitempty" toml:"description,omitempty"`
	// image specifies the container image to use (e.g., docker image).
	Image string `protobuf:"bytes,5,opt,name=image,proto3" json:"image,omitempty" toml:"image,omitempty"`
	// resources defines the compute resource requirements and limits.
	Resources *AppSpecResources `protobuf:"bytes,10,opt,name=resources,proto3" json:"resources,omitempty" toml:"resources,omitempty"`
	// depends is a list of application-level dependencies.
	Depends []*AppSpecDepend `protobuf:"bytes,11,rep,name=depends,proto3" json:"depends,omitempty" toml:"depends,omitempty"`
	// service_depends is a list of service-level dependencies.
	ServiceDepends []*AppSpecDepend `` /* 137-byte string literal not displayed */
	// service_ports is a list of service ports exposed by the application.
	ServicePorts []*AppSpecServicePort `` /* 129-byte string literal not displayed */
	// packages is a list of software packages required by the application.
	Packages []*AppSpecPackage `protobuf:"bytes,20,rep,name=packages,proto3" json:"packages,omitempty" toml:"packages,omitempty"`
	// configs defines the configuration schema for the application.
	Configs []*AppSpecConfigItem `protobuf:"bytes,21,rep,name=configs,proto3" json:"configs,omitempty" toml:"configs,omitempty"`
	// tasks is a list of tasks (commands/scripts) that run within the
	// application.
	Tasks []*AppSpecTask `protobuf:"bytes,30,rep,name=tasks,proto3" json:"tasks,omitempty" toml:"tasks,omitempty"`
	// contains filtered or unexported fields
}

AppSpec defines the specification of an application, including its resources, services, executors, packages, dependencies, and configuration.

func (*AppSpec) Descriptor deprecated

func (*AppSpec) Descriptor() ([]byte, []int)

Deprecated: Use AppSpec.ProtoReflect.Descriptor instead.

func (*AppSpec) GetConfigs

func (x *AppSpec) GetConfigs() []*AppSpecConfigItem

func (*AppSpec) GetDepends

func (x *AppSpec) GetDepends() []*AppSpecDepend

func (*AppSpec) GetDescription

func (x *AppSpec) GetDescription() string

func (*AppSpec) GetImage

func (x *AppSpec) GetImage() string

func (*AppSpec) GetKind

func (x *AppSpec) GetKind() string

func (*AppSpec) GetName

func (x *AppSpec) GetName() string

func (*AppSpec) GetPackages

func (x *AppSpec) GetPackages() []*AppSpecPackage

func (*AppSpec) GetResources

func (x *AppSpec) GetResources() *AppSpecResources

func (*AppSpec) GetServiceDepends

func (x *AppSpec) GetServiceDepends() []*AppSpecDepend

func (*AppSpec) GetServicePorts

func (x *AppSpec) GetServicePorts() []*AppSpecServicePort

func (*AppSpec) GetTasks

func (x *AppSpec) GetTasks() []*AppSpecTask

func (*AppSpec) GetVersion

func (x *AppSpec) GetVersion() string

func (*AppSpec) ProtoMessage

func (*AppSpec) ProtoMessage()

func (*AppSpec) ProtoReflect

func (x *AppSpec) ProtoReflect() protoreflect.Message

func (*AppSpec) Reset

func (x *AppSpec) Reset()

func (*AppSpec) String

func (x *AppSpec) String() string

type AppSpecConfigItem

type AppSpecConfigItem struct {

	// name is the programmatic name of the field.
	Name string `protobuf:"bytes,1,opt,name=name,proto3" json:"name,omitempty" toml:"name,omitempty"`
	// title is the human-readable title of the field.
	Title string `protobuf:"bytes,2,opt,name=title,proto3" json:"title,omitempty" toml:"title,omitempty"`
	// prompt is a hint or placeholder text for the field.
	Prompt string `protobuf:"bytes,3,opt,name=prompt,proto3" json:"prompt,omitempty" toml:"prompt,omitempty"`
	// type specifies the data type of the field (e.g., "string", "number",
	// "bool").
	Type string `protobuf:"bytes,4,opt,name=type,proto3" json:"type,omitempty" toml:"type,omitempty"`
	// default is the default value of the field.
	Default string `protobuf:"bytes,5,opt,name=default,proto3" json:"default,omitempty" toml:"default,omitempty"`
	// auto_fill specifies an auto-fill expression or value.
	AutoFill string `protobuf:"bytes,6,opt,name=auto_fill,json=autoFill,proto3" json:"auto_fill,omitempty" toml:"auto_fill,omitempty"`
	// description provides a detailed description of the field.
	Description string               `protobuf:"bytes,8,opt,name=description,proto3" json:"description,omitempty" toml:"description,omitempty"`
	Items       []*AppSpecConfigItem `protobuf:"bytes,9,rep,name=items,proto3" json:"items,omitempty" toml:"items,omitempty"`
	// contains filtered or unexported fields
}

AppSpecConfigItem represents a single configuration field in the schema.

func (*AppSpecConfigItem) Descriptor deprecated

func (*AppSpecConfigItem) Descriptor() ([]byte, []int)

Deprecated: Use AppSpecConfigItem.ProtoReflect.Descriptor instead.

func (*AppSpecConfigItem) GetAutoFill

func (x *AppSpecConfigItem) GetAutoFill() string

func (*AppSpecConfigItem) GetDefault

func (x *AppSpecConfigItem) GetDefault() string

func (*AppSpecConfigItem) GetDescription

func (x *AppSpecConfigItem) GetDescription() string

func (*AppSpecConfigItem) GetItems

func (x *AppSpecConfigItem) GetItems() []*AppSpecConfigItem

func (*AppSpecConfigItem) GetName

func (x *AppSpecConfigItem) GetName() string

func (*AppSpecConfigItem) GetPrompt

func (x *AppSpecConfigItem) GetPrompt() string

func (*AppSpecConfigItem) GetTitle

func (x *AppSpecConfigItem) GetTitle() string

func (*AppSpecConfigItem) GetType

func (x *AppSpecConfigItem) GetType() string

func (*AppSpecConfigItem) ProtoMessage

func (*AppSpecConfigItem) ProtoMessage()

func (*AppSpecConfigItem) ProtoReflect

func (x *AppSpecConfigItem) ProtoReflect() protoreflect.Message

func (*AppSpecConfigItem) Reset

func (x *AppSpecConfigItem) Reset()

func (*AppSpecConfigItem) String

func (x *AppSpecConfigItem) String() string

type AppSpecDepend

type AppSpecDepend struct {

	// name is the name of the dependent application or service.
	Name string `protobuf:"bytes,2,opt,name=name,proto3" json:"name,omitempty" toml:"name,omitempty"`
	// version specifies the required version of the dependency.
	Version string `protobuf:"bytes,3,opt,name=version,proto3" json:"version,omitempty" toml:"version,omitempty"`
	// contains filtered or unexported fields
}

AppSpecDepend represents a dependency on another application or service.

func (*AppSpecDepend) Descriptor deprecated

func (*AppSpecDepend) Descriptor() ([]byte, []int)

Deprecated: Use AppSpecDepend.ProtoReflect.Descriptor instead.

func (*AppSpecDepend) GetName

func (x *AppSpecDepend) GetName() string

func (*AppSpecDepend) GetVersion

func (x *AppSpecDepend) GetVersion() string

func (*AppSpecDepend) ProtoMessage

func (*AppSpecDepend) ProtoMessage()

func (*AppSpecDepend) ProtoReflect

func (x *AppSpecDepend) ProtoReflect() protoreflect.Message

func (*AppSpecDepend) Reset

func (x *AppSpecDepend) Reset()

func (*AppSpecDepend) String

func (x *AppSpecDepend) String() string

type AppSpecPackage

type AppSpecPackage struct {

	// name is the name of the package.
	Name string `protobuf:"bytes,2,opt,name=name,proto3" json:"name,omitempty" toml:"name,omitempty"`
	// version specifies the required version of the package.
	Version string `protobuf:"bytes,3,opt,name=version,proto3" json:"version,omitempty" toml:"version,omitempty"`
	// contains filtered or unexported fields
}

AppSpecPackage represents a software package dependency.

func (*AppSpecPackage) Descriptor deprecated

func (*AppSpecPackage) Descriptor() ([]byte, []int)

Deprecated: Use AppSpecPackage.ProtoReflect.Descriptor instead.

func (*AppSpecPackage) GetName

func (x *AppSpecPackage) GetName() string

func (*AppSpecPackage) GetVersion

func (x *AppSpecPackage) GetVersion() string

func (*AppSpecPackage) ProtoMessage

func (*AppSpecPackage) ProtoMessage()

func (*AppSpecPackage) ProtoReflect

func (x *AppSpecPackage) ProtoReflect() protoreflect.Message

func (*AppSpecPackage) Reset

func (x *AppSpecPackage) Reset()

func (*AppSpecPackage) String

func (x *AppSpecPackage) String() string

type AppSpecResources

type AppSpecResources struct {

	// cpu_limit specifies the maximum CPU resources allowed (e.g., "500m" for 0.5
	// cores).
	CpuLimit string `protobuf:"bytes,2,opt,name=cpu_limit,json=cpuLimit,proto3" json:"cpu_limit,omitempty" toml:"cpu_limit,omitempty"`
	// memory_limit specifies the maximum memory resources allowed (e.g.,
	// "512Mi").
	MemoryLimit string `protobuf:"bytes,3,opt,name=memory_limit,json=memoryLimit,proto3" json:"memory_limit,omitempty" toml:"memory_limit,omitempty"`
	// volume_limit specifies the maximum storage volume allowed (e.g., "10Gi").
	VolumeLimit string `protobuf:"bytes,4,opt,name=volume_limit,json=volumeLimit,proto3" json:"volume_limit,omitempty" toml:"volume_limit,omitempty"`
	// contains filtered or unexported fields
}

AppSpecResources defines the resource allocation for an application.

func (*AppSpecResources) Descriptor deprecated

func (*AppSpecResources) Descriptor() ([]byte, []int)

Deprecated: Use AppSpecResources.ProtoReflect.Descriptor instead.

func (*AppSpecResources) GetCpuLimit

func (x *AppSpecResources) GetCpuLimit() string

func (*AppSpecResources) GetMemoryLimit

func (x *AppSpecResources) GetMemoryLimit() string

func (*AppSpecResources) GetVolumeLimit

func (x *AppSpecResources) GetVolumeLimit() string

func (*AppSpecResources) ProtoMessage

func (*AppSpecResources) ProtoMessage()

func (*AppSpecResources) ProtoReflect

func (x *AppSpecResources) ProtoReflect() protoreflect.Message

func (*AppSpecResources) Reset

func (x *AppSpecResources) Reset()

func (*AppSpecResources) String

func (x *AppSpecResources) String() string

type AppSpecServicePort

type AppSpecServicePort struct {
	Name string `protobuf:"bytes,1,opt,name=name,proto3" json:"name,omitempty" toml:"name,omitempty"`
	Port uint32 `protobuf:"varint,2,opt,name=port,proto3" json:"port,omitempty" toml:"port,omitempty"`
	// contains filtered or unexported fields
}

func (*AppSpecServicePort) Descriptor deprecated

func (*AppSpecServicePort) Descriptor() ([]byte, []int)

Deprecated: Use AppSpecServicePort.ProtoReflect.Descriptor instead.

func (*AppSpecServicePort) GetName

func (x *AppSpecServicePort) GetName() string

func (*AppSpecServicePort) GetPort

func (x *AppSpecServicePort) GetPort() uint32

func (*AppSpecServicePort) ProtoMessage

func (*AppSpecServicePort) ProtoMessage()

func (*AppSpecServicePort) ProtoReflect

func (x *AppSpecServicePort) ProtoReflect() protoreflect.Message

func (*AppSpecServicePort) Reset

func (x *AppSpecServicePort) Reset()

func (*AppSpecServicePort) String

func (x *AppSpecServicePort) String() string

type AppSpecTask

type AppSpecTask struct {

	// name is the unique identifier of the task.
	Name string `protobuf:"bytes,1,opt,name=name,proto3" json:"name,omitempty" toml:"name,omitempty"`
	// working_dir specifies the working directory for command execution.
	WorkingDir string `protobuf:"bytes,2,opt,name=working_dir,json=workingDir,proto3" json:"working_dir,omitempty" toml:"working_dir,omitempty"`
	// run_user specifies the user identity for command execution.
	RunUser string `protobuf:"bytes,3,opt,name=run_user,json=runUser,proto3" json:"run_user,omitempty" toml:"run_user,omitempty"`
	// depends_on is a list of task names that must complete successfully
	// before this task can run (used with trigger).
	DependsOn []string `protobuf:"bytes,6,rep,name=depends_on,json=dependsOn,proto3" json:"depends_on,omitempty" toml:"depends_on,omitempty"`
	// script is the command or script to execute (split command and args to
	// prevent shell injection).
	Script string `protobuf:"bytes,7,opt,name=script,proto3" json:"script,omitempty" toml:"script,omitempty"`
	// max_attempts is the maximum number of execution attempts (1 means no
	// retry).
	MaxAttempts uint32 `` /* 126-byte string literal not displayed */
	// retry_backoff_seconds is the interval/backoff time between retries.
	RetryBackoffSeconds uint32 `` /* 161-byte string literal not displayed */
	// Trigger fields (mutually exclusive: only one should be set at a time):
	// - on_startup: triggers immediately when the application starts.
	// - on_shutdown: triggers before the application shuts down.
	// - interval_seconds: triggers periodically (every N seconds).
	// - cron: triggers on a schedule (standard cron expression).
	OnStartup       bool   `protobuf:"varint,30,opt,name=on_startup,json=onStartup,proto3" json:"on_startup,omitempty" toml:"on_startup,omitempty"`
	OnShutdown      bool   `protobuf:"varint,31,opt,name=on_shutdown,json=onShutdown,proto3" json:"on_shutdown,omitempty" toml:"on_shutdown,omitempty"`
	IntervalSeconds int64  `` /* 142-byte string literal not displayed */
	Cron            string `protobuf:"bytes,33,opt,name=cron,proto3" json:"cron,omitempty" toml:"cron,omitempty"`
	// contains filtered or unexported fields
}

AppSpecTask defines a task execution entity with trigger logic and fault tolerance strategies.

func (*AppSpecTask) Descriptor deprecated

func (*AppSpecTask) Descriptor() ([]byte, []int)

Deprecated: Use AppSpecTask.ProtoReflect.Descriptor instead.

func (*AppSpecTask) GetCron

func (x *AppSpecTask) GetCron() string

func (*AppSpecTask) GetDependsOn

func (x *AppSpecTask) GetDependsOn() []string

func (*AppSpecTask) GetIntervalSeconds

func (x *AppSpecTask) GetIntervalSeconds() int64

func (*AppSpecTask) GetMaxAttempts

func (x *AppSpecTask) GetMaxAttempts() uint32

func (*AppSpecTask) GetName

func (x *AppSpecTask) GetName() string

func (*AppSpecTask) GetOnShutdown

func (x *AppSpecTask) GetOnShutdown() bool

func (*AppSpecTask) GetOnStartup

func (x *AppSpecTask) GetOnStartup() bool

func (*AppSpecTask) GetRetryBackoffSeconds

func (x *AppSpecTask) GetRetryBackoffSeconds() uint32

func (*AppSpecTask) GetRunUser

func (x *AppSpecTask) GetRunUser() string

func (*AppSpecTask) GetScript

func (x *AppSpecTask) GetScript() string

func (*AppSpecTask) GetWorkingDir

func (x *AppSpecTask) GetWorkingDir() string

func (*AppSpecTask) ProtoMessage

func (*AppSpecTask) ProtoMessage()

func (*AppSpecTask) ProtoReflect

func (x *AppSpecTask) ProtoReflect() protoreflect.Message

func (*AppSpecTask) Reset

func (x *AppSpecTask) Reset()

func (*AppSpecTask) String

func (x *AppSpecTask) String() string

type GatewayIngress

type GatewayIngress struct {

	// meta is the standard resource metadata (id, timestamps, version).
	Meta *Metadata `protobuf:"bytes,1,opt,name=meta,proto3" json:"meta,omitempty" toml:"meta,omitempty"`
	// domain is the fully qualified domain name for this ingress.
	Domain string `protobuf:"bytes,2,opt,name=domain,proto3" json:"domain,omitempty" toml:"domain,omitempty"`
	// description is a human-readable description of this ingress.
	Description string `protobuf:"bytes,3,opt,name=description,proto3" json:"description,omitempty" toml:"description,omitempty"`
	// options holds optional gateway features such as TLS.
	Options *GatewayIngress_Options `protobuf:"bytes,4,opt,name=options,proto3" json:"options,omitempty" toml:"options,omitempty"`
	// action is the ingress operation: "enable" (default) or "disable".
	Action string `protobuf:"bytes,5,opt,name=action,proto3" json:"action,omitempty" toml:"action,omitempty"`
	// routes are the HTTP routing rules for this domain.
	Routes []*GatewayIngress_HttpRoute `protobuf:"bytes,6,rep,name=routes,proto3" json:"routes,omitempty" toml:"routes,omitempty"`
	// contains filtered or unexported fields
}

GatewayIngress is the user-facing model for managing an HTTP ingress entry bound to a domain with routing rules.

func (*GatewayIngress) Descriptor deprecated

func (*GatewayIngress) Descriptor() ([]byte, []int)

Deprecated: Use GatewayIngress.ProtoReflect.Descriptor instead.

func (*GatewayIngress) GetAction

func (x *GatewayIngress) GetAction() string

func (*GatewayIngress) GetDescription

func (x *GatewayIngress) GetDescription() string

func (*GatewayIngress) GetDomain

func (x *GatewayIngress) GetDomain() string

func (*GatewayIngress) GetMeta

func (x *GatewayIngress) GetMeta() *Metadata

func (*GatewayIngress) GetOptions

func (x *GatewayIngress) GetOptions() *GatewayIngress_Options

func (*GatewayIngress) GetRoutes

func (x *GatewayIngress) GetRoutes() []*GatewayIngress_HttpRoute

func (*GatewayIngress) ProtoMessage

func (*GatewayIngress) ProtoMessage()

func (*GatewayIngress) ProtoReflect

func (x *GatewayIngress) ProtoReflect() protoreflect.Message

func (*GatewayIngress) Reset

func (x *GatewayIngress) Reset()

func (*GatewayIngress) String

func (x *GatewayIngress) String() string

type GatewayIngressDeploy

type GatewayIngressDeploy struct {

	// id is the unique identifier of this deployment entry.
	Id string `protobuf:"bytes,1,opt,name=id,proto3" json:"id,omitempty" toml:"id,omitempty"`
	// domain is the fully qualified domain name.
	Domain string `protobuf:"bytes,2,opt,name=domain,proto3" json:"domain,omitempty" toml:"domain,omitempty"`
	// letsencrypt_enable enables automatic TLS provisioning via Let's Encrypt.
	LetsencryptEnable bool `` /* 149-byte string literal not displayed */
	// routes are the HTTP routing rules for this domain.
	Routes []*GatewayIngressDeploy_HttpRoute `protobuf:"bytes,4,rep,name=routes,proto3" json:"routes,omitempty" toml:"routes,omitempty"`
	// revision is a monotonically increasing revision number for this deployment.
	Revision uint64 `protobuf:"varint,5,opt,name=revision,proto3" json:"revision,omitempty" toml:"revision,omitempty"`
	// contains filtered or unexported fields
}

GatewayIngressDeploy is the flattened deployment model used by zonelet to configure the actual gateway proxy.

func (*GatewayIngressDeploy) Descriptor deprecated

func (*GatewayIngressDeploy) Descriptor() ([]byte, []int)

Deprecated: Use GatewayIngressDeploy.ProtoReflect.Descriptor instead.

func (*GatewayIngressDeploy) GetDomain

func (x *GatewayIngressDeploy) GetDomain() string

func (*GatewayIngressDeploy) GetId

func (x *GatewayIngressDeploy) GetId() string

func (*GatewayIngressDeploy) GetLetsencryptEnable

func (x *GatewayIngressDeploy) GetLetsencryptEnable() bool

func (*GatewayIngressDeploy) GetRevision

func (x *GatewayIngressDeploy) GetRevision() uint64

func (*GatewayIngressDeploy) GetRoutes

func (*GatewayIngressDeploy) ProtoMessage

func (*GatewayIngressDeploy) ProtoMessage()

func (*GatewayIngressDeploy) ProtoReflect

func (x *GatewayIngressDeploy) ProtoReflect() protoreflect.Message

func (*GatewayIngressDeploy) Reset

func (x *GatewayIngressDeploy) Reset()

func (*GatewayIngressDeploy) String

func (x *GatewayIngressDeploy) String() string

type GatewayIngressDeployListRequest

type GatewayIngressDeployListRequest struct {
	Revision uint64 `protobuf:"varint,10,opt,name=revision,proto3" json:"revision,omitempty" toml:"revision,omitempty"` // return only entries newer than this revision
	// contains filtered or unexported fields
}

GatewayIngressDeployListRequest is the request message for incremental deploy sync.

func (*GatewayIngressDeployListRequest) Descriptor deprecated

func (*GatewayIngressDeployListRequest) Descriptor() ([]byte, []int)

Deprecated: Use GatewayIngressDeployListRequest.ProtoReflect.Descriptor instead.

func (*GatewayIngressDeployListRequest) GetRevision

func (x *GatewayIngressDeployListRequest) GetRevision() uint64

func (*GatewayIngressDeployListRequest) ProtoMessage

func (*GatewayIngressDeployListRequest) ProtoMessage()

func (*GatewayIngressDeployListRequest) ProtoReflect

func (*GatewayIngressDeployListRequest) Reset

func (*GatewayIngressDeployListRequest) String

type GatewayIngressDeployListResponse

type GatewayIngressDeployListResponse struct {
	Items    []*GatewayIngressDeploy `protobuf:"bytes,9,rep,name=items,proto3" json:"items,omitempty" toml:"items,omitempty"`            // deployed ingress entries
	Revision uint64                  `protobuf:"varint,10,opt,name=revision,proto3" json:"revision,omitempty" toml:"revision,omitempty"` // current latest revision for next sync
	// contains filtered or unexported fields
}

GatewayIngressDeployListResponse is the response message containing deployed entries.

func (*GatewayIngressDeployListResponse) Descriptor deprecated

func (*GatewayIngressDeployListResponse) Descriptor() ([]byte, []int)

Deprecated: Use GatewayIngressDeployListResponse.ProtoReflect.Descriptor instead.

func (*GatewayIngressDeployListResponse) GetItems

func (*GatewayIngressDeployListResponse) GetRevision

func (x *GatewayIngressDeployListResponse) GetRevision() uint64

func (*GatewayIngressDeployListResponse) ProtoMessage

func (*GatewayIngressDeployListResponse) ProtoMessage()

func (*GatewayIngressDeployListResponse) ProtoReflect

func (*GatewayIngressDeployListResponse) Reset

func (*GatewayIngressDeployListResponse) String

type GatewayIngressDeploy_HttpRoute

type GatewayIngressDeploy_HttpRoute struct {

	// type is the route type: "instance", "upstream", or "redirect".
	Type string `protobuf:"bytes,1,opt,name=type,proto3" json:"type,omitempty" toml:"type,omitempty"`
	// path is the URL path to match.
	Path string `protobuf:"bytes,2,opt,name=path,proto3" json:"path,omitempty" toml:"path,omitempty"`
	// targets are the upstream backends for this route.
	Targets []*GatewayIngressDeploy_HttpRoute_Target `protobuf:"bytes,3,rep,name=targets,proto3" json:"targets,omitempty" toml:"targets,omitempty"`
	// contains filtered or unexported fields
}

HttpRoute is a simplified routing rule for deployment.

func (*GatewayIngressDeploy_HttpRoute) Descriptor deprecated

func (*GatewayIngressDeploy_HttpRoute) Descriptor() ([]byte, []int)

Deprecated: Use GatewayIngressDeploy_HttpRoute.ProtoReflect.Descriptor instead.

func (*GatewayIngressDeploy_HttpRoute) GetPath

func (*GatewayIngressDeploy_HttpRoute) GetTargets

func (*GatewayIngressDeploy_HttpRoute) GetType

func (*GatewayIngressDeploy_HttpRoute) ProtoMessage

func (*GatewayIngressDeploy_HttpRoute) ProtoMessage()

func (*GatewayIngressDeploy_HttpRoute) ProtoReflect

func (*GatewayIngressDeploy_HttpRoute) Reset

func (x *GatewayIngressDeploy_HttpRoute) Reset()

func (*GatewayIngressDeploy_HttpRoute) String

type GatewayIngressDeploy_HttpRoute_Target

type GatewayIngressDeploy_HttpRoute_Target struct {

	// backend is the backend endpoint (format depends on route type).
	Backend string `protobuf:"bytes,1,opt,name=backend,proto3" json:"backend,omitempty" toml:"backend,omitempty"`
	// weight is the traffic weight for load balancing (0 means equal share).
	Weight int32 `protobuf:"varint,2,opt,name=weight,proto3" json:"weight,omitempty" toml:"weight,omitempty"`
	// contains filtered or unexported fields
}

Target is an upstream backend endpoint with an optional weight for load-balancing distribution.

func (*GatewayIngressDeploy_HttpRoute_Target) Descriptor deprecated

func (*GatewayIngressDeploy_HttpRoute_Target) Descriptor() ([]byte, []int)

Deprecated: Use GatewayIngressDeploy_HttpRoute_Target.ProtoReflect.Descriptor instead.

func (*GatewayIngressDeploy_HttpRoute_Target) GetBackend

func (*GatewayIngressDeploy_HttpRoute_Target) GetWeight

func (*GatewayIngressDeploy_HttpRoute_Target) ProtoMessage

func (*GatewayIngressDeploy_HttpRoute_Target) ProtoMessage()

func (*GatewayIngressDeploy_HttpRoute_Target) ProtoReflect

func (*GatewayIngressDeploy_HttpRoute_Target) Reset

func (*GatewayIngressDeploy_HttpRoute_Target) String

type GatewayIngressInfoRequest

type GatewayIngressInfoRequest struct {
	Name string `protobuf:"bytes,1,opt,name=name,proto3" json:"name,omitempty" toml:"name,omitempty"` // ingress name
	// contains filtered or unexported fields
}

GatewayIngressInfoRequest is the request message for retrieving a specific ingress.

func (*GatewayIngressInfoRequest) Descriptor deprecated

func (*GatewayIngressInfoRequest) Descriptor() ([]byte, []int)

Deprecated: Use GatewayIngressInfoRequest.ProtoReflect.Descriptor instead.

func (*GatewayIngressInfoRequest) GetName

func (x *GatewayIngressInfoRequest) GetName() string

func (*GatewayIngressInfoRequest) ProtoMessage

func (*GatewayIngressInfoRequest) ProtoMessage()

func (*GatewayIngressInfoRequest) ProtoReflect

func (*GatewayIngressInfoRequest) Reset

func (x *GatewayIngressInfoRequest) Reset()

func (*GatewayIngressInfoRequest) String

func (x *GatewayIngressInfoRequest) String() string

type GatewayIngressInfoResponse

type GatewayIngressInfoResponse struct {
	Item *GatewayIngress `protobuf:"bytes,9,opt,name=item,proto3" json:"item,omitempty" toml:"item,omitempty"` // the requested gateway ingress entry
	// contains filtered or unexported fields
}

GatewayIngressInfoResponse is the response message containing the ingress details.

func (*GatewayIngressInfoResponse) Descriptor deprecated

func (*GatewayIngressInfoResponse) Descriptor() ([]byte, []int)

Deprecated: Use GatewayIngressInfoResponse.ProtoReflect.Descriptor instead.

func (*GatewayIngressInfoResponse) GetItem

func (*GatewayIngressInfoResponse) ProtoMessage

func (*GatewayIngressInfoResponse) ProtoMessage()

func (*GatewayIngressInfoResponse) ProtoReflect

func (*GatewayIngressInfoResponse) Reset

func (x *GatewayIngressInfoResponse) Reset()

func (*GatewayIngressInfoResponse) String

func (x *GatewayIngressInfoResponse) String() string

type GatewayIngressListRequest

type GatewayIngressListRequest struct {
	// contains filtered or unexported fields
}

GatewayIngressListRequest is the request message for listing gateway ingress entries.

func (*GatewayIngressListRequest) Descriptor deprecated

func (*GatewayIngressListRequest) Descriptor() ([]byte, []int)

Deprecated: Use GatewayIngressListRequest.ProtoReflect.Descriptor instead.

func (*GatewayIngressListRequest) ProtoMessage

func (*GatewayIngressListRequest) ProtoMessage()

func (*GatewayIngressListRequest) ProtoReflect

func (*GatewayIngressListRequest) Reset

func (x *GatewayIngressListRequest) Reset()

func (*GatewayIngressListRequest) String

func (x *GatewayIngressListRequest) String() string

type GatewayIngressListResponse

type GatewayIngressListResponse struct {
	Items []*GatewayIngress `protobuf:"bytes,9,rep,name=items,proto3" json:"items,omitempty" toml:"items,omitempty"` // list of gateway ingress entries
	// contains filtered or unexported fields
}

GatewayIngressListResponse is the response message containing gateway ingress entries.

func (*GatewayIngressListResponse) Descriptor deprecated

func (*GatewayIngressListResponse) Descriptor() ([]byte, []int)

Deprecated: Use GatewayIngressListResponse.ProtoReflect.Descriptor instead.

func (*GatewayIngressListResponse) GetItems

func (x *GatewayIngressListResponse) GetItems() []*GatewayIngress

func (*GatewayIngressListResponse) ProtoMessage

func (*GatewayIngressListResponse) ProtoMessage()

func (*GatewayIngressListResponse) ProtoReflect

func (*GatewayIngressListResponse) Reset

func (x *GatewayIngressListResponse) Reset()

func (*GatewayIngressListResponse) String

func (x *GatewayIngressListResponse) String() string

type GatewayIngressSetRequest

type GatewayIngressSetRequest struct {
	Item *GatewayIngress `protobuf:"bytes,9,opt,name=item,proto3" json:"item,omitempty" toml:"item,omitempty"` // the gateway ingress entry to create or update
	// contains filtered or unexported fields
}

GatewayIngressSetRequest is the request message for creating or updating an ingress.

func (*GatewayIngressSetRequest) Descriptor deprecated

func (*GatewayIngressSetRequest) Descriptor() ([]byte, []int)

Deprecated: Use GatewayIngressSetRequest.ProtoReflect.Descriptor instead.

func (*GatewayIngressSetRequest) GetItem

func (*GatewayIngressSetRequest) ProtoMessage

func (*GatewayIngressSetRequest) ProtoMessage()

func (*GatewayIngressSetRequest) ProtoReflect

func (x *GatewayIngressSetRequest) ProtoReflect() protoreflect.Message

func (*GatewayIngressSetRequest) Reset

func (x *GatewayIngressSetRequest) Reset()

func (*GatewayIngressSetRequest) String

func (x *GatewayIngressSetRequest) String() string

type GatewayIngressSetResponse

type GatewayIngressSetResponse struct {
	Item *GatewayIngress `protobuf:"bytes,9,opt,name=item,proto3" json:"item,omitempty" toml:"item,omitempty"` // the resulting gateway ingress entry
	// contains filtered or unexported fields
}

GatewayIngressSetResponse is the response message after setting an ingress.

func (*GatewayIngressSetResponse) Descriptor deprecated

func (*GatewayIngressSetResponse) Descriptor() ([]byte, []int)

Deprecated: Use GatewayIngressSetResponse.ProtoReflect.Descriptor instead.

func (*GatewayIngressSetResponse) GetItem

func (*GatewayIngressSetResponse) ProtoMessage

func (*GatewayIngressSetResponse) ProtoMessage()

func (*GatewayIngressSetResponse) ProtoReflect

func (*GatewayIngressSetResponse) Reset

func (x *GatewayIngressSetResponse) Reset()

func (*GatewayIngressSetResponse) String

func (x *GatewayIngressSetResponse) String() string

type GatewayIngress_HttpRoute

type GatewayIngress_HttpRoute struct {

	// path is the URL path to match, e.g. "/" or "/api/v1".
	Path string `protobuf:"bytes,1,opt,name=path,proto3" json:"path,omitempty" toml:"path,omitempty"`
	// type is the route type: "instance", "upstream", or "redirect".
	Type string `protobuf:"bytes,2,opt,name=type,proto3" json:"type,omitempty" toml:"type,omitempty"`
	// action is the route operation: "enable" or "disable".
	Action string `protobuf:"bytes,3,opt,name=action,proto3" json:"action,omitempty" toml:"action,omitempty"`
	// targets are the upstream backends for this route.
	Targets []*GatewayIngress_HttpRoute_Target `protobuf:"bytes,4,rep,name=targets,proto3" json:"targets,omitempty" toml:"targets,omitempty"`
	// contains filtered or unexported fields
}

HttpRoute maps a URL path to one or more upstream backends.

func (*GatewayIngress_HttpRoute) Descriptor deprecated

func (*GatewayIngress_HttpRoute) Descriptor() ([]byte, []int)

Deprecated: Use GatewayIngress_HttpRoute.ProtoReflect.Descriptor instead.

func (*GatewayIngress_HttpRoute) GetAction

func (x *GatewayIngress_HttpRoute) GetAction() string

func (*GatewayIngress_HttpRoute) GetPath

func (x *GatewayIngress_HttpRoute) GetPath() string

func (*GatewayIngress_HttpRoute) GetTargets

func (*GatewayIngress_HttpRoute) GetType

func (x *GatewayIngress_HttpRoute) GetType() string

func (*GatewayIngress_HttpRoute) ProtoMessage

func (*GatewayIngress_HttpRoute) ProtoMessage()

func (*GatewayIngress_HttpRoute) ProtoReflect

func (x *GatewayIngress_HttpRoute) ProtoReflect() protoreflect.Message

func (*GatewayIngress_HttpRoute) Reset

func (x *GatewayIngress_HttpRoute) Reset()

func (*GatewayIngress_HttpRoute) String

func (x *GatewayIngress_HttpRoute) String() string

type GatewayIngress_HttpRoute_Target

type GatewayIngress_HttpRoute_Target struct {

	// backend is the backend endpoint, format depends on the route type:
	//
	//	instance  — AppInstance.ID:Port  (e.g. "a1b2c3d4e5f6:8080")
	//	upstream  — IPv4:Port            (e.g. "10.0.0.1:8080")
	//	redirect  — Full URL             (e.g. "https://example.com/path")
	Backend string `protobuf:"bytes,1,opt,name=backend,proto3" json:"backend,omitempty" toml:"backend,omitempty"`
	// weight is the traffic weight for load balancing (0 means equal share).
	Weight int32 `protobuf:"varint,2,opt,name=weight,proto3" json:"weight,omitempty" toml:"weight,omitempty"`
	// contains filtered or unexported fields
}

Target is an upstream backend endpoint with an optional weight for load-balancing distribution.

func (*GatewayIngress_HttpRoute_Target) Descriptor deprecated

func (*GatewayIngress_HttpRoute_Target) Descriptor() ([]byte, []int)

Deprecated: Use GatewayIngress_HttpRoute_Target.ProtoReflect.Descriptor instead.

func (*GatewayIngress_HttpRoute_Target) GetBackend

func (x *GatewayIngress_HttpRoute_Target) GetBackend() string

func (*GatewayIngress_HttpRoute_Target) GetWeight

func (x *GatewayIngress_HttpRoute_Target) GetWeight() int32

func (*GatewayIngress_HttpRoute_Target) ProtoMessage

func (*GatewayIngress_HttpRoute_Target) ProtoMessage()

func (*GatewayIngress_HttpRoute_Target) ProtoReflect

func (*GatewayIngress_HttpRoute_Target) Reset

func (*GatewayIngress_HttpRoute_Target) String

type GatewayIngress_Options

type GatewayIngress_Options struct {

	// letsencrypt_enable enables automatic TLS certificate provisioning
	// via Let's Encrypt for this domain.
	LetsencryptEnable bool `` /* 149-byte string literal not displayed */
	// contains filtered or unexported fields
}

Options holds optional gateway features.

func (*GatewayIngress_Options) Descriptor deprecated

func (*GatewayIngress_Options) Descriptor() ([]byte, []int)

Deprecated: Use GatewayIngress_Options.ProtoReflect.Descriptor instead.

func (*GatewayIngress_Options) GetLetsencryptEnable

func (x *GatewayIngress_Options) GetLetsencryptEnable() bool

func (*GatewayIngress_Options) ProtoMessage

func (*GatewayIngress_Options) ProtoMessage()

func (*GatewayIngress_Options) ProtoReflect

func (x *GatewayIngress_Options) ProtoReflect() protoreflect.Message

func (*GatewayIngress_Options) Reset

func (x *GatewayIngress_Options) Reset()

func (*GatewayIngress_Options) String

func (x *GatewayIngress_Options) String() string

type Host

type Host struct {

	// id is the unique identifier of the host.
	Id string `protobuf:"bytes,1,opt,name=id,proto3" json:"id,omitempty" toml:"id,omitempty"`
	// name is the hostname of the machine.
	Name string `protobuf:"bytes,2,opt,name=name,proto3" json:"name,omitempty" toml:"name,omitempty"`
	// peer_addr is the network address used for peer-to-peer communication.
	PeerAddr string `protobuf:"bytes,3,opt,name=peer_addr,json=peerAddr,proto3" json:"peer_addr,omitempty" toml:"peer_addr,omitempty"`
	// access_key is the exported access key for secure communication.
	AccessKey string `protobuf:"bytes,8,opt,name=access_key,json=accessKey,proto3" json:"access_key,omitempty" toml:"access_key,omitempty"`
	// deploy contains the deployment-related network configuration.
	Deploy *HostDeploy `protobuf:"bytes,9,opt,name=deploy,proto3" json:"deploy,omitempty" toml:"deploy,omitempty"`
	// operate specifies the operational parameters for the host.
	Operate *HostOperate `protobuf:"bytes,10,opt,name=operate,proto3" json:"operate,omitempty" toml:"operate,omitempty"`
	// status reflects the current observed state of the host.
	Status *HostStatus `protobuf:"bytes,30,opt,name=status,proto3" json:"status,omitempty" toml:"status,omitempty"`
	// contains filtered or unexported fields
}

Host represents a physical or virtual machine in the cluster. It contains the host's identity, connection information, operational parameters, and current status.

func (*Host) Descriptor deprecated

func (*Host) Descriptor() ([]byte, []int)

Deprecated: Use Host.ProtoReflect.Descriptor instead.

func (*Host) GetAccessKey

func (x *Host) GetAccessKey() string

func (*Host) GetDeploy

func (x *Host) GetDeploy() *HostDeploy

func (*Host) GetId

func (x *Host) GetId() string

func (*Host) GetName

func (x *Host) GetName() string

func (*Host) GetOperate

func (x *Host) GetOperate() *HostOperate

func (*Host) GetPeerAddr

func (x *Host) GetPeerAddr() string

func (*Host) GetStatus

func (x *Host) GetStatus() *HostStatus

func (*Host) ProtoMessage

func (*Host) ProtoMessage()

func (*Host) ProtoReflect

func (x *Host) ProtoReflect() protoreflect.Message

func (*Host) Reset

func (x *Host) Reset()

func (*Host) String

func (x *Host) String() string

type HostDeploy

type HostDeploy struct {

	// vpc_bridge_ip is the host's VPC bridge address (e.g., "192.168.10.3").
	VpcBridgeIp string `` /* 128-byte string literal not displayed */
	// vpc_instance_cidr is the host's VPC instance subnet (e.g., "10.10.3.0/24").
	VpcInstanceCidr string `` /* 144-byte string literal not displayed */
	// port_used tracks the list of host physical ports currently in use.
	PortUsed []uint32 `protobuf:"varint,12,rep,packed,name=port_used,json=portUsed,proto3" json:"port_used,omitempty" toml:"port_used,omitempty"`
	// contains filtered or unexported fields
}

HostDeploy contains the deployment-related network configuration for a host.

func (*HostDeploy) Descriptor deprecated

func (*HostDeploy) Descriptor() ([]byte, []int)

Deprecated: Use HostDeploy.ProtoReflect.Descriptor instead.

func (*HostDeploy) GetPortUsed

func (x *HostDeploy) GetPortUsed() []uint32

func (*HostDeploy) GetVpcBridgeIp

func (x *HostDeploy) GetVpcBridgeIp() string

func (*HostDeploy) GetVpcInstanceCidr

func (x *HostDeploy) GetVpcInstanceCidr() string

func (*HostDeploy) ProtoMessage

func (*HostDeploy) ProtoMessage()

func (*HostDeploy) ProtoReflect

func (x *HostDeploy) ProtoReflect() protoreflect.Message

func (*HostDeploy) Reset

func (x *HostDeploy) Reset()

func (*HostDeploy) String

func (x *HostDeploy) String() string

type HostInitRequest

type HostInitRequest struct {

	// zone_name is the name of the zone to which the host should be registered.
	ZoneName string `protobuf:"bytes,1,opt,name=zone_name,json=zoneName,proto3" json:"zone_name,omitempty" toml:"zone_name,omitempty"`
	// zone_hosts is a list of existing host addresses in the zone for
	// discovery.
	ZoneHosts []string `protobuf:"bytes,2,rep,name=zone_hosts,json=zoneHosts,proto3" json:"zone_hosts,omitempty" toml:"zone_hosts,omitempty"`
	// contains filtered or unexported fields
}

HostInitRequest is the request message for initializing a host.

func (*HostInitRequest) Descriptor deprecated

func (*HostInitRequest) Descriptor() ([]byte, []int)

Deprecated: Use HostInitRequest.ProtoReflect.Descriptor instead.

func (*HostInitRequest) GetZoneHosts

func (x *HostInitRequest) GetZoneHosts() []string

func (*HostInitRequest) GetZoneName

func (x *HostInitRequest) GetZoneName() string

func (*HostInitRequest) ProtoMessage

func (*HostInitRequest) ProtoMessage()

func (*HostInitRequest) ProtoReflect

func (x *HostInitRequest) ProtoReflect() protoreflect.Message

func (*HostInitRequest) Reset

func (x *HostInitRequest) Reset()

func (*HostInitRequest) String

func (x *HostInitRequest) String() string

type HostInitResponse

type HostInitResponse struct {

	// host_id is the unique identifier assigned to the newly initialized host.
	HostId string `protobuf:"bytes,1,opt,name=host_id,json=hostId,proto3" json:"host_id,omitempty" toml:"host_id,omitempty"`
	// status contains the initial status of the host.
	Status *HostStatus `protobuf:"bytes,2,opt,name=status,proto3" json:"status,omitempty" toml:"status,omitempty"`
	// contains filtered or unexported fields
}

HostInitResponse is the response message after host initialization.

func (*HostInitResponse) Descriptor deprecated

func (*HostInitResponse) Descriptor() ([]byte, []int)

Deprecated: Use HostInitResponse.ProtoReflect.Descriptor instead.

func (*HostInitResponse) GetHostId

func (x *HostInitResponse) GetHostId() string

func (*HostInitResponse) GetStatus

func (x *HostInitResponse) GetStatus() *HostStatus

func (*HostInitResponse) ProtoMessage

func (*HostInitResponse) ProtoMessage()

func (*HostInitResponse) ProtoReflect

func (x *HostInitResponse) ProtoReflect() protoreflect.Message

func (*HostInitResponse) Reset

func (x *HostInitResponse) Reset()

func (*HostInitResponse) String

func (x *HostInitResponse) String() string

type HostInternalServiceClient

type HostInternalServiceClient interface {
	// HostInit initializes a new host and registers it with the specified zone.
	HostInit(ctx context.Context, in *HostInitRequest, opts ...grpc.CallOption) (*HostInitResponse, error)
}

HostInternalServiceClient is the client API for HostInternalService service.

For semantics around ctx use and closing/ending streaming RPCs, please refer to https://pkg.go.dev/google.golang.org/grpc/?tab=doc#ClientConn.NewStream.

type HostInternalServiceServer

type HostInternalServiceServer interface {
	// HostInit initializes a new host and registers it with the specified zone.
	HostInit(context.Context, *HostInitRequest) (*HostInitResponse, error)
	// contains filtered or unexported methods
}

HostInternalServiceServer is the server API for HostInternalService service. All implementations must embed UnimplementedHostInternalServiceServer for forward compatibility

type HostJoinRequest

type HostJoinRequest struct {

	// addr is the network address of the host joining the zone.
	Addr string `protobuf:"bytes,1,opt,name=addr,proto3" json:"addr,omitempty" toml:"addr,omitempty"`
	// access_key is the authentication access key for joining.
	AccessKey string `protobuf:"bytes,2,opt,name=access_key,json=accessKey,proto3" json:"access_key,omitempty" toml:"access_key,omitempty"`
	// contains filtered or unexported fields
}

HostJoinRequest is the request message for a host to join a zone.

func (*HostJoinRequest) Descriptor deprecated

func (*HostJoinRequest) Descriptor() ([]byte, []int)

Deprecated: Use HostJoinRequest.ProtoReflect.Descriptor instead.

func (*HostJoinRequest) GetAccessKey

func (x *HostJoinRequest) GetAccessKey() string

func (*HostJoinRequest) GetAddr

func (x *HostJoinRequest) GetAddr() string

func (*HostJoinRequest) ProtoMessage

func (*HostJoinRequest) ProtoMessage()

func (*HostJoinRequest) ProtoReflect

func (x *HostJoinRequest) ProtoReflect() protoreflect.Message

func (*HostJoinRequest) Reset

func (x *HostJoinRequest) Reset()

func (*HostJoinRequest) String

func (x *HostJoinRequest) String() string

type HostJoinResponse

type HostJoinResponse struct {

	// status contains the current status of the host after joining.
	Status *HostStatus `protobuf:"bytes,1,opt,name=status,proto3" json:"status,omitempty" toml:"status,omitempty"`
	// contains filtered or unexported fields
}

HostJoinResponse is the response message after a host joins a zone.

func (*HostJoinResponse) Descriptor deprecated

func (*HostJoinResponse) Descriptor() ([]byte, []int)

Deprecated: Use HostJoinResponse.ProtoReflect.Descriptor instead.

func (*HostJoinResponse) GetStatus

func (x *HostJoinResponse) GetStatus() *HostStatus

func (*HostJoinResponse) ProtoMessage

func (*HostJoinResponse) ProtoMessage()

func (*HostJoinResponse) ProtoReflect

func (x *HostJoinResponse) ProtoReflect() protoreflect.Message

func (*HostJoinResponse) Reset

func (x *HostJoinResponse) Reset()

func (*HostJoinResponse) String

func (x *HostJoinResponse) String() string

type HostListRequest

type HostListRequest struct {
	// contains filtered or unexported fields
}

HostListRequest is the request message for listing hosts in a zone.

func (*HostListRequest) Descriptor deprecated

func (*HostListRequest) Descriptor() ([]byte, []int)

Deprecated: Use HostListRequest.ProtoReflect.Descriptor instead.

func (*HostListRequest) ProtoMessage

func (*HostListRequest) ProtoMessage()

func (*HostListRequest) ProtoReflect

func (x *HostListRequest) ProtoReflect() protoreflect.Message

func (*HostListRequest) Reset

func (x *HostListRequest) Reset()

func (*HostListRequest) String

func (x *HostListRequest) String() string

type HostListResponse

type HostListResponse struct {

	// hosts is the list of hosts in the zone.
	Hosts []*Host `protobuf:"bytes,2,rep,name=hosts,proto3" json:"hosts,omitempty" toml:"hosts,omitempty"`
	// contains filtered or unexported fields
}

HostListResponse is the response message containing the list of hosts.

func (*HostListResponse) Descriptor deprecated

func (*HostListResponse) Descriptor() ([]byte, []int)

Deprecated: Use HostListResponse.ProtoReflect.Descriptor instead.

func (*HostListResponse) GetHosts

func (x *HostListResponse) GetHosts() []*Host

func (*HostListResponse) ProtoMessage

func (*HostListResponse) ProtoMessage()

func (*HostListResponse) ProtoReflect

func (x *HostListResponse) ProtoReflect() protoreflect.Message

func (*HostListResponse) Reset

func (x *HostListResponse) Reset()

func (*HostListResponse) String

func (x *HostListResponse) String() string

type HostOperate

type HostOperate struct {

	// cpu_alloc specifies the allocated CPU resources in millicores.
	CpuAlloc int64 `protobuf:"varint,1,opt,name=cpu_alloc,json=cpuAlloc,proto3" json:"cpu_alloc,omitempty" toml:"cpu_alloc,omitempty"`
	// mem_alloc specifies the allocated memory in bytes.
	MemAlloc int64 `protobuf:"varint,2,opt,name=mem_alloc,json=memAlloc,proto3" json:"mem_alloc,omitempty" toml:"mem_alloc,omitempty"`
	// storage_alloc specifies the allocated storage in bytes.
	StorageAlloc int64 `` /* 129-byte string literal not displayed */
	// contains filtered or unexported fields
}

HostOperate defines the operational resource allocation parameters for a host.

func (*HostOperate) Descriptor deprecated

func (*HostOperate) Descriptor() ([]byte, []int)

Deprecated: Use HostOperate.ProtoReflect.Descriptor instead.

func (*HostOperate) GetCpuAlloc

func (x *HostOperate) GetCpuAlloc() int64

func (*HostOperate) GetMemAlloc

func (x *HostOperate) GetMemAlloc() int64

func (*HostOperate) GetStorageAlloc

func (x *HostOperate) GetStorageAlloc() int64

func (*HostOperate) ProtoMessage

func (*HostOperate) ProtoMessage()

func (*HostOperate) ProtoReflect

func (x *HostOperate) ProtoReflect() protoreflect.Message

func (*HostOperate) Reset

func (x *HostOperate) Reset()

func (*HostOperate) String

func (x *HostOperate) String() string

type HostStatus

type HostStatus struct {

	// host_id is the unique identifier of the host.
	HostId string `protobuf:"bytes,1,opt,name=host_id,json=hostId,proto3" json:"host_id,omitempty" toml:"host_id,omitempty"`
	// Timestamp fields
	// uptime is the duration in seconds since the host was started.
	Uptime int64 `protobuf:"varint,5,opt,name=uptime,proto3" json:"uptime,omitempty" toml:"uptime,omitempty"`
	// updated is the Unix timestamp of the last status update.
	Updated int64 `protobuf:"varint,6,opt,name=updated,proto3" json:"updated,omitempty" toml:"updated,omitempty"`
	// CPU Info
	// cpu_model is the CPU model name.
	CpuModel string `protobuf:"bytes,10,opt,name=cpu_model,json=cpuModel,proto3" json:"cpu_model,omitempty" toml:"cpu_model,omitempty"`
	// cpu_cores is the number of CPU cores.
	CpuCores int32 `protobuf:"varint,11,opt,name=cpu_cores,json=cpuCores,proto3" json:"cpu_cores,omitempty" toml:"cpu_cores,omitempty"`
	// cpu_sys is the CPU time spent in system mode (in jiffies or
	// milliseconds).
	CpuSys int64 `protobuf:"varint,12,opt,name=cpu_sys,json=cpuSys,proto3" json:"cpu_sys,omitempty" toml:"cpu_sys,omitempty"`
	// cpu_user is the CPU time spent in user mode (in jiffies or milliseconds).
	CpuUser int64 `protobuf:"varint,13,opt,name=cpu_user,json=cpuUser,proto3" json:"cpu_user,omitempty" toml:"cpu_user,omitempty"`
	// Memory Info
	// mem_total is the total memory in bytes.
	MemTotal int64 `protobuf:"varint,20,opt,name=mem_total,json=memTotal,proto3" json:"mem_total,omitempty" toml:"mem_total,omitempty"`
	// mem_used is the used memory in bytes.
	MemUsed int64 `protobuf:"varint,21,opt,name=mem_used,json=memUsed,proto3" json:"mem_used,omitempty" toml:"mem_used,omitempty"`
	// mem_available is the available memory in bytes.
	MemAvailable int64 `` /* 130-byte string literal not displayed */
	// Network Info
	// lan_addr is the LAN (local area network) IP address.
	LanAddr string `protobuf:"bytes,30,opt,name=lan_addr,json=lanAddr,proto3" json:"lan_addr,omitempty" toml:"lan_addr,omitempty"`
	// wan_addr is the WAN (wide area network) IP address.
	WanAddr string `protobuf:"bytes,31,opt,name=wan_addr,json=wanAddr,proto3" json:"wan_addr,omitempty" toml:"wan_addr,omitempty"`
	// Network IO
	// net_recv_bytes is the total bytes received over the network.
	NetRecvBytes int64 `` /* 133-byte string literal not displayed */
	// net_recv_count is the total number of packets received.
	NetRecvCount int64 `` /* 133-byte string literal not displayed */
	// net_sent_bytes is the total bytes sent over the network.
	NetSentBytes int64 `` /* 133-byte string literal not displayed */
	// net_sent_count is the total number of packets sent.
	NetSentCount int64 `` /* 133-byte string literal not displayed */
	// Storage IO
	// disk_read_bytes is the total bytes read from disk.
	DiskReadBytes int64 `` /* 137-byte string literal not displayed */
	// disk_read_count is the total number of disk read operations.
	DiskReadCount int64 `` /* 137-byte string literal not displayed */
	// disk_write_bytes is the total bytes written to disk.
	DiskWriteBytes int64 `` /* 141-byte string literal not displayed */
	// disk_write_count is the total number of disk write operations.
	DiskWriteCount int64 `` /* 141-byte string literal not displayed */
	// Storage Usage
	// disk_total_bytes is the total disk capacity in bytes.
	DiskTotalBytes int64 `` /* 141-byte string literal not displayed */
	// disk_free_bytes is the free disk space in bytes.
	DiskFreeBytes int64 `` /* 137-byte string literal not displayed */
	// Container Server Info
	// containers maps driver names to their container service status.
	// Supports multiple drivers: docker, containerd, etc.
	Containers map[string]*HostStatus_Container `` /* 190-byte string literal not displayed */
	// contains filtered or unexported fields
}

HostStatus represents the current status and metrics of a host.

func (*HostStatus) Descriptor deprecated

func (*HostStatus) Descriptor() ([]byte, []int)

Deprecated: Use HostStatus.ProtoReflect.Descriptor instead.

func (*HostStatus) GetContainers

func (x *HostStatus) GetContainers() map[string]*HostStatus_Container

func (*HostStatus) GetCpuCores

func (x *HostStatus) GetCpuCores() int32

func (*HostStatus) GetCpuModel

func (x *HostStatus) GetCpuModel() string

func (*HostStatus) GetCpuSys

func (x *HostStatus) GetCpuSys() int64

func (*HostStatus) GetCpuUser

func (x *HostStatus) GetCpuUser() int64

func (*HostStatus) GetDiskFreeBytes

func (x *HostStatus) GetDiskFreeBytes() int64

func (*HostStatus) GetDiskReadBytes

func (x *HostStatus) GetDiskReadBytes() int64

func (*HostStatus) GetDiskReadCount

func (x *HostStatus) GetDiskReadCount() int64

func (*HostStatus) GetDiskTotalBytes

func (x *HostStatus) GetDiskTotalBytes() int64

func (*HostStatus) GetDiskWriteBytes

func (x *HostStatus) GetDiskWriteBytes() int64

func (*HostStatus) GetDiskWriteCount

func (x *HostStatus) GetDiskWriteCount() int64

func (*HostStatus) GetHostId

func (x *HostStatus) GetHostId() string

func (*HostStatus) GetLanAddr

func (x *HostStatus) GetLanAddr() string

func (*HostStatus) GetMemAvailable

func (x *HostStatus) GetMemAvailable() int64

func (*HostStatus) GetMemTotal

func (x *HostStatus) GetMemTotal() int64

func (*HostStatus) GetMemUsed

func (x *HostStatus) GetMemUsed() int64

func (*HostStatus) GetNetRecvBytes

func (x *HostStatus) GetNetRecvBytes() int64

func (*HostStatus) GetNetRecvCount

func (x *HostStatus) GetNetRecvCount() int64

func (*HostStatus) GetNetSentBytes

func (x *HostStatus) GetNetSentBytes() int64

func (*HostStatus) GetNetSentCount

func (x *HostStatus) GetNetSentCount() int64

func (*HostStatus) GetUpdated

func (x *HostStatus) GetUpdated() int64

func (*HostStatus) GetUptime

func (x *HostStatus) GetUptime() int64

func (*HostStatus) GetWanAddr

func (x *HostStatus) GetWanAddr() string

func (*HostStatus) ProtoMessage

func (*HostStatus) ProtoMessage()

func (*HostStatus) ProtoReflect

func (x *HostStatus) ProtoReflect() protoreflect.Message

func (*HostStatus) Reset

func (x *HostStatus) Reset()

func (*HostStatus) String

func (x *HostStatus) String() string

type HostStatusUpdateRequest

type HostStatusUpdateRequest struct {

	// host contains the host information to update.
	Host *Host `protobuf:"bytes,2,opt,name=host,proto3" json:"host,omitempty" toml:"host,omitempty"`
	// status contains the current status metrics of the host.
	Status *HostStatus `protobuf:"bytes,3,opt,name=status,proto3" json:"status,omitempty" toml:"status,omitempty"`
	// contains filtered or unexported fields
}

HostStatusUpdateRequest is the request message for updating host status.

func (*HostStatusUpdateRequest) Descriptor deprecated

func (*HostStatusUpdateRequest) Descriptor() ([]byte, []int)

Deprecated: Use HostStatusUpdateRequest.ProtoReflect.Descriptor instead.

func (*HostStatusUpdateRequest) GetHost

func (x *HostStatusUpdateRequest) GetHost() *Host

func (*HostStatusUpdateRequest) GetStatus

func (x *HostStatusUpdateRequest) GetStatus() *HostStatus

func (*HostStatusUpdateRequest) ProtoMessage

func (*HostStatusUpdateRequest) ProtoMessage()

func (*HostStatusUpdateRequest) ProtoReflect

func (x *HostStatusUpdateRequest) ProtoReflect() protoreflect.Message

func (*HostStatusUpdateRequest) Reset

func (x *HostStatusUpdateRequest) Reset()

func (*HostStatusUpdateRequest) String

func (x *HostStatusUpdateRequest) String() string

type HostStatusUpdateResponse

type HostStatusUpdateResponse struct {

	// app_instances is the list of application instances that need to be synced
	// to the host after the status update.
	AppInstances []*AppInstance `` /* 128-byte string literal not displayed */
	// vpc_bridge_ip is the VPC bridge IP assigned to this host by the zone
	// leader.
	VpcBridgeIp string `` /* 127-byte string literal not displayed */
	// vpc_instance_cidr is the VPC instance subnet assigned to this host.
	VpcInstanceCidr string `` /* 143-byte string literal not displayed */
	// zone_network_map contains the distributed VPC routing table.
	ZoneNetworkMap *ZoneNetworkMap `` /* 139-byte string literal not displayed */
	// contains filtered or unexported fields
}

HostStatusUpdateResponse is the response message after updating host status.

func (*HostStatusUpdateResponse) Descriptor deprecated

func (*HostStatusUpdateResponse) Descriptor() ([]byte, []int)

Deprecated: Use HostStatusUpdateResponse.ProtoReflect.Descriptor instead.

func (*HostStatusUpdateResponse) GetAppInstances

func (x *HostStatusUpdateResponse) GetAppInstances() []*AppInstance

func (*HostStatusUpdateResponse) GetVpcBridgeIp

func (x *HostStatusUpdateResponse) GetVpcBridgeIp() string

func (*HostStatusUpdateResponse) GetVpcInstanceCidr

func (x *HostStatusUpdateResponse) GetVpcInstanceCidr() string

func (*HostStatusUpdateResponse) GetZoneNetworkMap

func (x *HostStatusUpdateResponse) GetZoneNetworkMap() *ZoneNetworkMap

func (*HostStatusUpdateResponse) ProtoMessage

func (*HostStatusUpdateResponse) ProtoMessage()

func (*HostStatusUpdateResponse) ProtoReflect

func (x *HostStatusUpdateResponse) ProtoReflect() protoreflect.Message

func (*HostStatusUpdateResponse) Reset

func (x *HostStatusUpdateResponse) Reset()

func (*HostStatusUpdateResponse) String

func (x *HostStatusUpdateResponse) String() string

type HostStatus_Container

type HostStatus_Container struct {

	// driver is the container driver name (e.g., "docker", "containerd").
	Driver string `protobuf:"bytes,1,opt,name=driver,proto3" json:"driver,omitempty" toml:"driver,omitempty"`
	// version is the driver version string.
	Version string `protobuf:"bytes,2,opt,name=version,proto3" json:"version,omitempty" toml:"version,omitempty"`
	// api_version is the API version of the container runtime.
	ApiVersion string `protobuf:"bytes,3,opt,name=api_version,json=apiVersion,proto3" json:"api_version,omitempty" toml:"api_version,omitempty"`
	// container_num is the number of running containers.
	ContainerNum int32 `` /* 129-byte string literal not displayed */
	// image_num is the number of available images.
	ImageNum int32 `protobuf:"varint,5,opt,name=image_num,json=imageNum,proto3" json:"image_num,omitempty" toml:"image_num,omitempty"`
	// contains filtered or unexported fields
}

HostStatus_Container represents the status of a container runtime service.

func (*HostStatus_Container) Descriptor deprecated

func (*HostStatus_Container) Descriptor() ([]byte, []int)

Deprecated: Use HostStatus_Container.ProtoReflect.Descriptor instead.

func (*HostStatus_Container) GetApiVersion

func (x *HostStatus_Container) GetApiVersion() string

func (*HostStatus_Container) GetContainerNum

func (x *HostStatus_Container) GetContainerNum() int32

func (*HostStatus_Container) GetDriver

func (x *HostStatus_Container) GetDriver() string

func (*HostStatus_Container) GetImageNum

func (x *HostStatus_Container) GetImageNum() int32

func (*HostStatus_Container) GetVersion

func (x *HostStatus_Container) GetVersion() string

func (*HostStatus_Container) ProtoMessage

func (*HostStatus_Container) ProtoMessage()

func (*HostStatus_Container) ProtoReflect

func (x *HostStatus_Container) ProtoReflect() protoreflect.Message

func (*HostStatus_Container) Reset

func (x *HostStatus_Container) Reset()

func (*HostStatus_Container) String

func (x *HostStatus_Container) String() string

type KvEntry

type KvEntry struct {
	Meta  *kvapi.Meta
	Value interface{}
}

type KvSet

type KvSet struct {
	// contains filtered or unexported fields
}

func (*KvSet) Clear

func (it *KvSet) Clear()

func (*KvSet) Fresh

func (it *KvSet) Fresh(fn func() error)

func (*KvSet) IsReady

func (it *KvSet) IsReady() bool

func (*KvSet) Iter

func (it *KvSet) Iter(f func(entry *KvEntry) bool)

func (*KvSet) Len

func (it *KvSet) Len() int

func (*KvSet) Load

func (it *KvSet) Load(key string) *KvEntry

func (*KvSet) Store

func (it *KvSet) Store(key string, meta *kvapi.Meta, val any)

type Metadata

type Metadata struct {
	Id      string `protobuf:"bytes,1,opt,name=id,proto3" json:"id,omitempty" toml:"id,omitempty"`                  // unique identifier
	Name    string `protobuf:"bytes,2,opt,name=name,proto3" json:"name,omitempty" toml:"name,omitempty"`            // human-readable name
	User    string `protobuf:"bytes,3,opt,name=user,proto3" json:"user,omitempty" toml:"user,omitempty"`            // owner or creator
	Created int64  `protobuf:"varint,14,opt,name=created,proto3" json:"created,omitempty" toml:"created,omitempty"` // creation time, unix timestamp in seconds
	Updated int64  `protobuf:"varint,15,opt,name=updated,proto3" json:"updated,omitempty" toml:"updated,omitempty"` // last update time, unix timestamp in seconds
	Version uint64 `protobuf:"varint,16,opt,name=version,proto3" json:"version,omitempty" toml:"version,omitempty"` // resource version for optimistic concurrency
	// contains filtered or unexported fields
}

Metadata is the standard resource metadata with id, name, timestamps and version.

func (*Metadata) Descriptor deprecated

func (*Metadata) Descriptor() ([]byte, []int)

Deprecated: Use Metadata.ProtoReflect.Descriptor instead.

func (*Metadata) GetCreated

func (x *Metadata) GetCreated() int64

func (*Metadata) GetId

func (x *Metadata) GetId() string

func (*Metadata) GetName

func (x *Metadata) GetName() string

func (*Metadata) GetUpdated

func (x *Metadata) GetUpdated() int64

func (*Metadata) GetUser

func (x *Metadata) GetUser() string

func (*Metadata) GetVersion

func (x *Metadata) GetVersion() uint64

func (*Metadata) ProtoMessage

func (*Metadata) ProtoMessage()

func (*Metadata) ProtoReflect

func (x *Metadata) ProtoReflect() protoreflect.Message

func (*Metadata) Reset

func (x *Metadata) Reset()

func (*Metadata) String

func (x *Metadata) String() string

type Package

type Package struct {

	// metadata contains the package identity and descriptive information
	Metadata *PackageMetadata `protobuf:"bytes,1,opt,name=metadata,proto3" json:"metadata,omitempty" toml:"metadata,omitempty"`
	// release contains build artifact properties for a specific platform
	Release *PackageRelease `protobuf:"bytes,2,opt,name=release,proto3" json:"release,omitempty" toml:"release,omitempty"`
	// file contains upload progress information (only during upload)
	File *PackageFile `protobuf:"bytes,3,opt,name=file,proto3" json:"file,omitempty" toml:"file,omitempty"`
	// contains filtered or unexported fields
}

Package represents a software package in the package repository. It combines metadata (identity information) with release information (build artifacts for a specific platform).

Package Archive Naming Format:

{name}_{version}_{os}_{arch}.{ext}

Examples:

myapp_1.0.0_linux_amd64.txz    (xz compression, default)
myapp_1.0.0_linux_amd64.tgz    (gzip compression)
myapp_1.0.0-beta.1_linux_arm64.txz (with pre-release version)

func (*Package) Descriptor deprecated

func (*Package) Descriptor() ([]byte, []int)

Deprecated: Use Package.ProtoReflect.Descriptor instead.

func (*Package) GetFile

func (x *Package) GetFile() *PackageFile

func (*Package) GetMetadata

func (x *Package) GetMetadata() *PackageMetadata

func (*Package) GetRelease

func (x *Package) GetRelease() *PackageRelease

func (*Package) ProtoMessage

func (*Package) ProtoMessage()

func (*Package) ProtoReflect

func (x *Package) ProtoReflect() protoreflect.Message

func (*Package) Reset

func (x *Package) Reset()

func (*Package) String

func (x *Package) String() string

type PackageChunkRequest

type PackageChunkRequest struct {

	// id is the package ID ({name}_{version}_{os}_{arch}).
	Id string `protobuf:"bytes,1,opt,name=id,proto3" json:"id,omitempty" toml:"id,omitempty"`
	// index is the 0-based chunk index to retrieve.
	Index int64 `protobuf:"varint,2,opt,name=index,proto3" json:"index,omitempty" toml:"index,omitempty"`
	// contains filtered or unexported fields
}

PackageChunkRequest is the request message for downloading a package chunk.

func (*PackageChunkRequest) Descriptor deprecated

func (*PackageChunkRequest) Descriptor() ([]byte, []int)

Deprecated: Use PackageChunkRequest.ProtoReflect.Descriptor instead.

func (*PackageChunkRequest) GetId

func (x *PackageChunkRequest) GetId() string

func (*PackageChunkRequest) GetIndex

func (x *PackageChunkRequest) GetIndex() int64

func (*PackageChunkRequest) ProtoMessage

func (*PackageChunkRequest) ProtoMessage()

func (*PackageChunkRequest) ProtoReflect

func (x *PackageChunkRequest) ProtoReflect() protoreflect.Message

func (*PackageChunkRequest) Reset

func (x *PackageChunkRequest) Reset()

func (*PackageChunkRequest) String

func (x *PackageChunkRequest) String() string

type PackageChunkResponse

type PackageChunkResponse struct {

	// chunk contains the chunk data and metadata.
	Chunk *PackageFileChunk `protobuf:"bytes,1,opt,name=chunk,proto3" json:"chunk,omitempty" toml:"chunk,omitempty"`
	// file contains the file metadata (size, chunk_size) for calculating
	// progress.
	File *PackageFile `protobuf:"bytes,2,opt,name=file,proto3" json:"file,omitempty" toml:"file,omitempty"`
	// contains filtered or unexported fields
}

PackageChunkResponse is the response message containing the package chunk.

func (*PackageChunkResponse) Descriptor deprecated

func (*PackageChunkResponse) Descriptor() ([]byte, []int)

Deprecated: Use PackageChunkResponse.ProtoReflect.Descriptor instead.

func (*PackageChunkResponse) GetChunk

func (x *PackageChunkResponse) GetChunk() *PackageFileChunk

func (*PackageChunkResponse) GetFile

func (x *PackageChunkResponse) GetFile() *PackageFile

func (*PackageChunkResponse) ProtoMessage

func (*PackageChunkResponse) ProtoMessage()

func (*PackageChunkResponse) ProtoReflect

func (x *PackageChunkResponse) ProtoReflect() protoreflect.Message

func (*PackageChunkResponse) Reset

func (x *PackageChunkResponse) Reset()

func (*PackageChunkResponse) String

func (x *PackageChunkResponse) String() string

type PackageDeleteRequest

type PackageDeleteRequest struct {

	// id is the package ID ({name}_{version}_{os}_{arch}) to delete.
	Id string `protobuf:"bytes,1,opt,name=id,proto3" json:"id,omitempty" toml:"id,omitempty"`
	// contains filtered or unexported fields
}

PackageDeleteRequest is the request message for deleting a package.

func (*PackageDeleteRequest) Descriptor deprecated

func (*PackageDeleteRequest) Descriptor() ([]byte, []int)

Deprecated: Use PackageDeleteRequest.ProtoReflect.Descriptor instead.

func (*PackageDeleteRequest) GetId

func (x *PackageDeleteRequest) GetId() string

func (*PackageDeleteRequest) ProtoMessage

func (*PackageDeleteRequest) ProtoMessage()

func (*PackageDeleteRequest) ProtoReflect

func (x *PackageDeleteRequest) ProtoReflect() protoreflect.Message

func (*PackageDeleteRequest) Reset

func (x *PackageDeleteRequest) Reset()

func (*PackageDeleteRequest) String

func (x *PackageDeleteRequest) String() string

type PackageDeleteResponse

type PackageDeleteResponse struct {

	// id is the package ID that was deleted.
	Id string `protobuf:"bytes,1,opt,name=id,proto3" json:"id,omitempty" toml:"id,omitempty"`
	// chunks_deleted is the number of chunks that were deleted.
	ChunksDeleted int32 `` /* 133-byte string literal not displayed */
	// contains filtered or unexported fields
}

PackageDeleteResponse is the response message after deleting a package.

func (*PackageDeleteResponse) Descriptor deprecated

func (*PackageDeleteResponse) Descriptor() ([]byte, []int)

Deprecated: Use PackageDeleteResponse.ProtoReflect.Descriptor instead.

func (*PackageDeleteResponse) GetChunksDeleted

func (x *PackageDeleteResponse) GetChunksDeleted() int32

func (*PackageDeleteResponse) GetId

func (x *PackageDeleteResponse) GetId() string

func (*PackageDeleteResponse) ProtoMessage

func (*PackageDeleteResponse) ProtoMessage()

func (*PackageDeleteResponse) ProtoReflect

func (x *PackageDeleteResponse) ProtoReflect() protoreflect.Message

func (*PackageDeleteResponse) Reset

func (x *PackageDeleteResponse) Reset()

func (*PackageDeleteResponse) String

func (x *PackageDeleteResponse) String() string

type PackageFile

type PackageFile struct {

	// state is the current upload state.
	// Valid values: "", "uploading", "complete", "failed" (see
	// inapi.PackageFileState* constants)
	State string `protobuf:"bytes,1,opt,name=state,proto3" json:"state,omitempty" toml:"state,omitempty"`
	// size is the entire IPK file size in bytes.
	Size int64 `protobuf:"varint,2,opt,name=size,proto3" json:"size,omitempty" toml:"size,omitempty"`
	// chunk_size is the size of each chunk in bytes (default: 2MB).
	ChunkSize int64 `protobuf:"varint,4,opt,name=chunk_size,json=chunkSize,proto3" json:"chunk_size,omitempty" toml:"chunk_size,omitempty"`
	// uploaded_chunks is the list of uploaded chunk indices.
	UploadedChunks []int64 `` /* 144-byte string literal not displayed */
	// created is the Unix timestamp when the upload started.
	Created int64 `protobuf:"varint,7,opt,name=created,proto3" json:"created,omitempty" toml:"created,omitempty"`
	// updated is the Unix timestamp of the last update.
	Updated int64 `protobuf:"varint,8,opt,name=updated,proto3" json:"updated,omitempty" toml:"updated,omitempty"`
	// contains filtered or unexported fields
}

PackageFile tracks upload progress for a package. Embedded in Package message during upload process. This represents the entire IPK container file (magic + header + data). Note:

  • Size is the entire IPK file size (used for chunk calculation).
  • TotalChunks can be calculated: (Size + ChunkSize - 1) / ChunkSize
  • Progress can be calculated: len(uploaded_chunks) / total_chunks

func (*PackageFile) Descriptor deprecated

func (*PackageFile) Descriptor() ([]byte, []int)

Deprecated: Use PackageFile.ProtoReflect.Descriptor instead.

func (*PackageFile) GetChunkSize

func (x *PackageFile) GetChunkSize() int64

func (*PackageFile) GetCreated

func (x *PackageFile) GetCreated() int64

func (*PackageFile) GetSize

func (x *PackageFile) GetSize() int64

func (*PackageFile) GetState

func (x *PackageFile) GetState() string

func (*PackageFile) GetUpdated

func (x *PackageFile) GetUpdated() int64

func (*PackageFile) GetUploadedChunks

func (x *PackageFile) GetUploadedChunks() []int64

func (*PackageFile) ProtoMessage

func (*PackageFile) ProtoMessage()

func (*PackageFile) ProtoReflect

func (x *PackageFile) ProtoReflect() protoreflect.Message

func (*PackageFile) Reset

func (x *PackageFile) Reset()

func (*PackageFile) String

func (x *PackageFile) String() string

type PackageFileChunk

type PackageFileChunk struct {

	// index is the chunk index (0-based).
	Index int64 `protobuf:"varint,1,opt,name=index,proto3" json:"index,omitempty" toml:"index,omitempty"`
	// crc32 is the CRC32 checksum of the chunk data.
	Crc32 uint32 `protobuf:"varint,2,opt,name=crc32,proto3" json:"crc32,omitempty" toml:"crc32,omitempty"`
	// data is the chunk content.
	Data []byte `protobuf:"bytes,3,opt,name=data,proto3" json:"data,omitempty" toml:"data,omitempty"`
	// uploaded is the Unix timestamp when this chunk was uploaded.
	Uploaded int64 `protobuf:"varint,4,opt,name=uploaded,proto3" json:"uploaded,omitempty" toml:"uploaded,omitempty"`
	// contains filtered or unexported fields
}

PackageFileChunk represents a single chunk of a package upload. KV key: v2/pkg/chunk/{pkg_id}/{chunk_index:08d}

Offset and Size are not stored as they can be calculated:

  • Offset = Index * PackageFile.ChunkSize
  • Size = len(Data)

func (*PackageFileChunk) Descriptor deprecated

func (*PackageFileChunk) Descriptor() ([]byte, []int)

Deprecated: Use PackageFileChunk.ProtoReflect.Descriptor instead.

func (*PackageFileChunk) GetCrc32

func (x *PackageFileChunk) GetCrc32() uint32

func (*PackageFileChunk) GetData

func (x *PackageFileChunk) GetData() []byte

func (*PackageFileChunk) GetIndex

func (x *PackageFileChunk) GetIndex() int64

func (*PackageFileChunk) GetUploaded

func (x *PackageFileChunk) GetUploaded() int64

func (*PackageFileChunk) ProtoMessage

func (*PackageFileChunk) ProtoMessage()

func (*PackageFileChunk) ProtoReflect

func (x *PackageFileChunk) ProtoReflect() protoreflect.Message

func (*PackageFileChunk) Reset

func (x *PackageFileChunk) Reset()

func (*PackageFileChunk) String

func (x *PackageFileChunk) String() string

type PackageListRequest

type PackageListRequest struct {

	// all returns all packages regardless of status when set to true.
	// Default is false, which returns only complete packages.
	All bool `protobuf:"varint,1,opt,name=all,proto3" json:"all,omitempty" toml:"all,omitempty"`
	// name filters packages by exact name match (optional).
	Name string `protobuf:"bytes,2,opt,name=name,proto3" json:"name,omitempty" toml:"name,omitempty"`
	// version filters packages by version with fuzzy matching support
	// (optional). Examples:
	//
	//	"2.0" matches "2.0.0", "2.0.1", "2.0.2", etc. (equivalent to "~2.0.x")
	//	"2.0.0" matches only "2.0.0" exactly
	Version string `protobuf:"bytes,3,opt,name=version,proto3" json:"version,omitempty" toml:"version,omitempty"`
	// os filters packages by target operating system (optional).
	// Common values: "linux", "freebsd", "darwin"
	Os string `protobuf:"bytes,4,opt,name=os,proto3" json:"os,omitempty" toml:"os,omitempty"`
	// arch filters packages by target CPU architecture (optional).
	// Common values: "amd64", "arm64"
	Arch string `protobuf:"bytes,5,opt,name=arch,proto3" json:"arch,omitempty" toml:"arch,omitempty"`
	// latest_only returns only the latest version for each (name, os, arch)
	// combination when set to true. Requires name to be specified. Default is
	// false, which returns all matching packages.
	LatestOnly bool `protobuf:"varint,6,opt,name=latest_only,json=latestOnly,proto3" json:"latest_only,omitempty" toml:"latest_only,omitempty"`
	// contains filtered or unexported fields
}

PackageListRequest is the request message for listing packages.

func (*PackageListRequest) Descriptor deprecated

func (*PackageListRequest) Descriptor() ([]byte, []int)

Deprecated: Use PackageListRequest.ProtoReflect.Descriptor instead.

func (*PackageListRequest) GetAll

func (x *PackageListRequest) GetAll() bool

func (*PackageListRequest) GetArch

func (x *PackageListRequest) GetArch() string

func (*PackageListRequest) GetLatestOnly

func (x *PackageListRequest) GetLatestOnly() bool

func (*PackageListRequest) GetName

func (x *PackageListRequest) GetName() string

func (*PackageListRequest) GetOs

func (x *PackageListRequest) GetOs() string

func (*PackageListRequest) GetVersion

func (x *PackageListRequest) GetVersion() string

func (*PackageListRequest) ProtoMessage

func (*PackageListRequest) ProtoMessage()

func (*PackageListRequest) ProtoReflect

func (x *PackageListRequest) ProtoReflect() protoreflect.Message

func (*PackageListRequest) Reset

func (x *PackageListRequest) Reset()

func (*PackageListRequest) String

func (x *PackageListRequest) String() string

type PackageListResponse

type PackageListResponse struct {

	// packages is the list of packages.
	Packages []*Package `protobuf:"bytes,1,rep,name=packages,proto3" json:"packages,omitempty" toml:"packages,omitempty"`
	// contains filtered or unexported fields
}

PackageListResponse is the response message containing the list of packages.

func (*PackageListResponse) Descriptor deprecated

func (*PackageListResponse) Descriptor() ([]byte, []int)

Deprecated: Use PackageListResponse.ProtoReflect.Descriptor instead.

func (*PackageListResponse) GetPackages

func (x *PackageListResponse) GetPackages() []*Package

func (*PackageListResponse) ProtoMessage

func (*PackageListResponse) ProtoMessage()

func (*PackageListResponse) ProtoReflect

func (x *PackageListResponse) ProtoReflect() protoreflect.Message

func (*PackageListResponse) Reset

func (x *PackageListResponse) Reset()

func (*PackageListResponse) String

func (x *PackageListResponse) String() string

type PackageMetadata

type PackageMetadata struct {

	// name is the package name (required).
	// Must be lowercase, start with a letter, and contain only
	// alphanumeric characters, hyphens, or underscores.
	// Example: "my-app", "nginx", "postgresql"
	Name string `protobuf:"bytes,1,opt,name=name,proto3" json:"name,omitempty" toml:"name,omitempty"`
	// version is the package core version (required).
	// Must follow semantic versioning core format (MAJOR.MINOR.PATCH).
	// Pre-release and build metadata should be specified via --version flag
	// during build. Examples: "1.0.0", "2.1.0", "0.1.0"
	Version string `protobuf:"bytes,2,opt,name=version,proto3" json:"version,omitempty" toml:"version,omitempty"`
	// authors are the package authors (optional).
	// Can include name and optional email in format "Name <email>".
	Authors []string `protobuf:"bytes,4,rep,name=authors,proto3" json:"authors,omitempty" toml:"authors,omitempty"`
	// description is a short description of the package (optional).
	// Should be a single line summarizing what the package does.
	Description string `protobuf:"bytes,5,opt,name=description,proto3" json:"description,omitempty" toml:"description,omitempty"`
	// documentation is the URL to package documentation (optional).
	Documentation string `protobuf:"bytes,6,opt,name=documentation,proto3" json:"documentation,omitempty" toml:"documentation,omitempty"`
	// homepage is the URL to the package homepage (optional).
	Homepage string `protobuf:"bytes,7,opt,name=homepage,proto3" json:"homepage,omitempty" toml:"homepage,omitempty"`
	// repository is the URL to the source code repository (optional).
	// Examples: "https://github.com/user/repo"
	Repository string `protobuf:"bytes,8,opt,name=repository,proto3" json:"repository,omitempty" toml:"repository,omitempty"`
	// license is the package license identifier (optional).
	// Use SPDX license identifiers when possible.
	// Examples: "MIT", "Apache-2.0", "GPL-3.0"
	License string `protobuf:"bytes,9,opt,name=license,proto3" json:"license,omitempty" toml:"license,omitempty"`
	// keywords are search keywords for the package (optional).
	Keywords []string `protobuf:"bytes,10,rep,name=keywords,proto3" json:"keywords,omitempty" toml:"keywords,omitempty"`
	// categories are classification categories for the package (optional).
	// Examples: "database", "web-server", "monitoring"
	Categories []string `protobuf:"bytes,11,rep,name=categories,proto3" json:"categories,omitempty" toml:"categories,omitempty"`
	// contains filtered or unexported fields
}

PackageMetadata defines the identity and descriptive information of a package. These fields are platform-independent and define what the package is. Required fields: name, version All other fields are optional.

func (*PackageMetadata) Descriptor deprecated

func (*PackageMetadata) Descriptor() ([]byte, []int)

Deprecated: Use PackageMetadata.ProtoReflect.Descriptor instead.

func (*PackageMetadata) GetAuthors

func (x *PackageMetadata) GetAuthors() []string

func (*PackageMetadata) GetCategories

func (x *PackageMetadata) GetCategories() []string

func (*PackageMetadata) GetDescription

func (x *PackageMetadata) GetDescription() string

func (*PackageMetadata) GetDocumentation

func (x *PackageMetadata) GetDocumentation() string

func (*PackageMetadata) GetHomepage

func (x *PackageMetadata) GetHomepage() string

func (*PackageMetadata) GetKeywords

func (x *PackageMetadata) GetKeywords() []string

func (*PackageMetadata) GetLicense

func (x *PackageMetadata) GetLicense() string

func (*PackageMetadata) GetName

func (x *PackageMetadata) GetName() string

func (*PackageMetadata) GetRepository

func (x *PackageMetadata) GetRepository() string

func (*PackageMetadata) GetVersion

func (x *PackageMetadata) GetVersion() string

func (*PackageMetadata) ProtoMessage

func (*PackageMetadata) ProtoMessage()

func (*PackageMetadata) ProtoReflect

func (x *PackageMetadata) ProtoReflect() protoreflect.Message

func (*PackageMetadata) Reset

func (x *PackageMetadata) Reset()

func (*PackageMetadata) String

func (x *PackageMetadata) String() string

type PackagePushRequest

type PackagePushRequest struct {

	// id is the package ID ({name}_{version}_{os}_{arch}).
	Id string `protobuf:"bytes,1,opt,name=id,proto3" json:"id,omitempty" toml:"id,omitempty"`
	// package contains the package metadata (required on first chunk).
	Package *Package `protobuf:"bytes,2,opt,name=package,proto3" json:"package,omitempty" toml:"package,omitempty"`
	// total_size is the total size of the package file in bytes (required on
	// first chunk).
	TotalSize int64 `protobuf:"varint,3,opt,name=total_size,json=totalSize,proto3" json:"total_size,omitempty" toml:"total_size,omitempty"`
	ChunkSize int64 `protobuf:"varint,4,opt,name=chunk_size,json=chunkSize,proto3" json:"chunk_size,omitempty" toml:"chunk_size,omitempty"` // chunk size in bytes (default: 2MB)
	// chunk contains the chunk data.
	Chunk *PackageFileChunk `protobuf:"bytes,5,opt,name=chunk,proto3" json:"chunk,omitempty" toml:"chunk,omitempty"`
	// overwrite allows overwriting an existing package.
	Overwrite bool `protobuf:"varint,6,opt,name=overwrite,proto3" json:"overwrite,omitempty" toml:"overwrite,omitempty"`
	// contains filtered or unexported fields
}

PackagePushRequest is the request message for uploading a package chunk.

func (*PackagePushRequest) Descriptor deprecated

func (*PackagePushRequest) Descriptor() ([]byte, []int)

Deprecated: Use PackagePushRequest.ProtoReflect.Descriptor instead.

func (*PackagePushRequest) GetChunk

func (x *PackagePushRequest) GetChunk() *PackageFileChunk

func (*PackagePushRequest) GetChunkSize

func (x *PackagePushRequest) GetChunkSize() int64

func (*PackagePushRequest) GetId

func (x *PackagePushRequest) GetId() string

func (*PackagePushRequest) GetOverwrite

func (x *PackagePushRequest) GetOverwrite() bool

func (*PackagePushRequest) GetPackage

func (x *PackagePushRequest) GetPackage() *Package

func (*PackagePushRequest) GetTotalSize

func (x *PackagePushRequest) GetTotalSize() int64

func (*PackagePushRequest) ProtoMessage

func (*PackagePushRequest) ProtoMessage()

func (*PackagePushRequest) ProtoReflect

func (x *PackagePushRequest) ProtoReflect() protoreflect.Message

func (*PackagePushRequest) Reset

func (x *PackagePushRequest) Reset()

func (*PackagePushRequest) String

func (x *PackagePushRequest) String() string

type PackagePushResponse

type PackagePushResponse struct {

	// id is the package ID.
	Id string `protobuf:"bytes,1,opt,name=id,proto3" json:"id,omitempty" toml:"id,omitempty"`
	// file contains the upload progress and status information.
	File *PackageFile `protobuf:"bytes,2,opt,name=file,proto3" json:"file,omitempty" toml:"file,omitempty"`
	// contains filtered or unexported fields
}

PackagePushResponse is the response message after uploading a package chunk.

func (*PackagePushResponse) Descriptor deprecated

func (*PackagePushResponse) Descriptor() ([]byte, []int)

Deprecated: Use PackagePushResponse.ProtoReflect.Descriptor instead.

func (*PackagePushResponse) GetFile

func (x *PackagePushResponse) GetFile() *PackageFile

func (*PackagePushResponse) GetId

func (x *PackagePushResponse) GetId() string

func (*PackagePushResponse) ProtoMessage

func (*PackagePushResponse) ProtoMessage()

func (*PackagePushResponse) ProtoReflect

func (x *PackagePushResponse) ProtoReflect() protoreflect.Message

func (*PackagePushResponse) Reset

func (x *PackagePushResponse) Reset()

func (*PackagePushResponse) String

func (x *PackagePushResponse) String() string

type PackageRelease

type PackageRelease struct {

	// version is the full version string for this build.
	// If build without --version flag, it equals to Metadata.Version (core
	// version only). If build with --version flag, it can include pre-release and
	// build metadata. Examples: "1.0.0", "1.0.0-beta.1", "1.0.0-beta.1+build.123"
	Version string `protobuf:"bytes,1,opt,name=version,proto3" json:"version,omitempty" toml:"version,omitempty"`
	// os is the target operating system.
	// Common values: "linux", "freebsd", "darwin", "all"
	Os string `protobuf:"bytes,4,opt,name=os,proto3" json:"os,omitempty" toml:"os,omitempty"`
	// arch is the target CPU architecture.
	// Common values: "amd64", "arm64", "src" (source package)
	Arch string `protobuf:"bytes,5,opt,name=arch,proto3" json:"arch,omitempty" toml:"arch,omitempty"`
	// built is the Unix timestamp when the package was built.
	Built int64 `protobuf:"varint,11,opt,name=built,proto3" json:"built,omitempty" toml:"built,omitempty"`
	// size is the package size in bytes.
	Size int64 `protobuf:"varint,12,opt,name=size,proto3" json:"size,omitempty" toml:"size,omitempty"`
	// checksum is the SHA-256 checksum of the package archive.
	Checksum string `protobuf:"bytes,13,opt,name=checksum,proto3" json:"checksum,omitempty" toml:"checksum,omitempty"`
	// compress is the compression algorithm used for the package archive.
	// Valid values: "xz", "gzip", "" (empty for uncompressed)
	Compress string `protobuf:"bytes,14,opt,name=compress,proto3" json:"compress,omitempty" toml:"compress,omitempty"`
	// contains filtered or unexported fields
}

PackageRelease defines build artifact properties for a specific platform. These fields are determined after the build process and identify the physical characteristics of the package distribution.

func (*PackageRelease) Descriptor deprecated

func (*PackageRelease) Descriptor() ([]byte, []int)

Deprecated: Use PackageRelease.ProtoReflect.Descriptor instead.

func (*PackageRelease) GetArch

func (x *PackageRelease) GetArch() string

func (*PackageRelease) GetBuilt

func (x *PackageRelease) GetBuilt() int64

func (*PackageRelease) GetChecksum

func (x *PackageRelease) GetChecksum() string

func (*PackageRelease) GetCompress

func (x *PackageRelease) GetCompress() string

func (*PackageRelease) GetOs

func (x *PackageRelease) GetOs() string

func (*PackageRelease) GetSize

func (x *PackageRelease) GetSize() int64

func (*PackageRelease) GetVersion

func (x *PackageRelease) GetVersion() string

func (*PackageRelease) ProtoMessage

func (*PackageRelease) ProtoMessage()

func (*PackageRelease) ProtoReflect

func (x *PackageRelease) ProtoReflect() protoreflect.Message

func (*PackageRelease) Reset

func (x *PackageRelease) Reset()

func (*PackageRelease) String

func (x *PackageRelease) String() string

type PackageSpec

type PackageSpec struct {

	// metadata contains the package metadata (identity information).
	// The [metadata] section in ipk.toml.
	Metadata *PackageMetadata `protobuf:"bytes,1,opt,name=metadata,proto3" json:"metadata,omitempty" toml:"metadata,omitempty"`
	// build contains the build configuration.
	// The [build] section in ipk.toml.
	Build *PackageSpecBuild `protobuf:"bytes,2,opt,name=build,proto3" json:"build,omitempty" toml:"build,omitempty"`
	// dependencies are the package dependencies (optional).
	// The [[dependencies]] sections in ipk.toml.
	Dependencies []*PackageSpecRef `protobuf:"bytes,3,rep,name=dependencies,proto3" json:"dependencies,omitempty" toml:"dependencies,omitempty"`
	// contains filtered or unexported fields
}

PackageSpec defines the package specification for building. This is the structure used in ipk.toml configuration files.

func (*PackageSpec) Descriptor deprecated

func (*PackageSpec) Descriptor() ([]byte, []int)

Deprecated: Use PackageSpec.ProtoReflect.Descriptor instead.

func (*PackageSpec) GetBuild

func (x *PackageSpec) GetBuild() *PackageSpecBuild

func (*PackageSpec) GetDependencies

func (x *PackageSpec) GetDependencies() []*PackageSpecRef

func (*PackageSpec) GetMetadata

func (x *PackageSpec) GetMetadata() *PackageMetadata

func (*PackageSpec) ProtoMessage

func (*PackageSpec) ProtoMessage()

func (*PackageSpec) ProtoReflect

func (x *PackageSpec) ProtoReflect() protoreflect.Message

func (*PackageSpec) Reset

func (x *PackageSpec) Reset()

func (*PackageSpec) String

func (x *PackageSpec) String() string

type PackageSpecBuild

type PackageSpecBuild struct {

	// include specifies files/directories to include in the package.
	// Supports glob patterns. If empty, all files are included by default.
	// Examples: ["src/**", "lib/**", "config/*"]
	Include []string `protobuf:"bytes,1,rep,name=include,proto3" json:"include,omitempty" toml:"include,omitempty"`
	// exclude specifies files/directories to exclude from the package.
	// Supports glob patterns. Applied after include patterns.
	// Examples: ["*.test", "node_modules/**", ".git/**"]
	Exclude []string `protobuf:"bytes,2,rep,name=exclude,proto3" json:"exclude,omitempty" toml:"exclude,omitempty"`
	// file is the path to a build file (optional).
	// Alternative to inline script. Examples: "Makefile", "build.sh"
	File string `protobuf:"bytes,3,opt,name=file,proto3" json:"file,omitempty" toml:"file,omitempty"`
	// script is the build script to execute (optional).
	// Supports template variables: {{.ipk_dir}}, {{.ipk_build_dir}},
	// {{.ipk_name}}, {{.ipk_version}}, {{.ipk_release}}, {{.ipk_os}},
	// {{.ipk_arch}}, {{.ipk_prefix}}
	Script string `protobuf:"bytes,4,opt,name=script,proto3" json:"script,omitempty" toml:"script,omitempty"`
	// env specifies environment variables for the build script.
	// These are available in addition to IPK_* variables.
	Env map[string]string `` /* 168-byte string literal not displayed */
	// minify_js specifies JavaScript files to minify (glob patterns).
	// Requires a JavaScript minifier to be available.
	MinifyJs []string `protobuf:"bytes,9,rep,name=minify_js,json=minifyJs,proto3" json:"minify_js,omitempty" toml:"minify_js,omitempty"`
	// minify_css specifies CSS files to minify (glob patterns).
	// Requires a CSS minifier to be available.
	MinifyCss []string `protobuf:"bytes,10,rep,name=minify_css,json=minifyCss,proto3" json:"minify_css,omitempty" toml:"minify_css,omitempty"`
	// minify_html specifies HTML/template files to minify (glob patterns).
	// Also processes .tpl files. Removes whitespace and comments.
	MinifyHtml []string `protobuf:"bytes,11,rep,name=minify_html,json=minifyHtml,proto3" json:"minify_html,omitempty" toml:"minify_html,omitempty"`
	// optimize_png specifies PNG files to optimize (glob patterns).
	// Uses lossless PNG optimization.
	OptimizePng []string `protobuf:"bytes,12,rep,name=optimize_png,json=optimizePng,proto3" json:"optimize_png,omitempty" toml:"optimize_png,omitempty"`
	// contains filtered or unexported fields
}

PackageSpecBuild defines the build configuration. Specifies how to build the package from source.

func (*PackageSpecBuild) Descriptor deprecated

func (*PackageSpecBuild) Descriptor() ([]byte, []int)

Deprecated: Use PackageSpecBuild.ProtoReflect.Descriptor instead.

func (*PackageSpecBuild) GetEnv

func (x *PackageSpecBuild) GetEnv() map[string]string

func (*PackageSpecBuild) GetExclude

func (x *PackageSpecBuild) GetExclude() []string

func (*PackageSpecBuild) GetFile

func (x *PackageSpecBuild) GetFile() string

func (*PackageSpecBuild) GetInclude

func (x *PackageSpecBuild) GetInclude() []string

func (*PackageSpecBuild) GetMinifyCss

func (x *PackageSpecBuild) GetMinifyCss() []string

func (*PackageSpecBuild) GetMinifyHtml

func (x *PackageSpecBuild) GetMinifyHtml() []string

func (*PackageSpecBuild) GetMinifyJs

func (x *PackageSpecBuild) GetMinifyJs() []string

func (*PackageSpecBuild) GetOptimizePng

func (x *PackageSpecBuild) GetOptimizePng() []string

func (*PackageSpecBuild) GetScript

func (x *PackageSpecBuild) GetScript() string

func (*PackageSpecBuild) ProtoMessage

func (*PackageSpecBuild) ProtoMessage()

func (*PackageSpecBuild) ProtoReflect

func (x *PackageSpecBuild) ProtoReflect() protoreflect.Message

func (*PackageSpecBuild) Reset

func (x *PackageSpecBuild) Reset()

func (*PackageSpecBuild) String

func (x *PackageSpecBuild) String() string

type PackageSpecRef

type PackageSpecRef struct {

	// name is the required package name.
	Name string `protobuf:"bytes,1,opt,name=name,proto3" json:"name,omitempty" toml:"name,omitempty"`
	// version is the version constraint (semver range).
	// Examples: ">=1.0.0", "^2.0.0", "~1.2.0", "1.0.0 - 2.0.0"
	Version string `protobuf:"bytes,2,opt,name=version,proto3" json:"version,omitempty" toml:"version,omitempty"`
	// contains filtered or unexported fields
}

PackageSpecRef is a reference to a package, used for dependencies. It specifies constraints rather than exact matches.

func (*PackageSpecRef) Descriptor deprecated

func (*PackageSpecRef) Descriptor() ([]byte, []int)

Deprecated: Use PackageSpecRef.ProtoReflect.Descriptor instead.

func (*PackageSpecRef) GetName

func (x *PackageSpecRef) GetName() string

func (*PackageSpecRef) GetVersion

func (x *PackageSpecRef) GetVersion() string

func (*PackageSpecRef) ProtoMessage

func (*PackageSpecRef) ProtoMessage()

func (*PackageSpecRef) ProtoReflect

func (x *PackageSpecRef) ProtoReflect() protoreflect.Message

func (*PackageSpecRef) Reset

func (x *PackageSpecRef) Reset()

func (*PackageSpecRef) String

func (x *PackageSpecRef) String() string

type UnimplementedHostInternalServiceServer

type UnimplementedHostInternalServiceServer struct {
}

UnimplementedHostInternalServiceServer must be embedded to have forward compatible implementations.

func (UnimplementedHostInternalServiceServer) HostInit

type UnimplementedZoneInternalServiceServer

type UnimplementedZoneInternalServiceServer struct {
}

UnimplementedZoneInternalServiceServer must be embedded to have forward compatible implementations.

func (UnimplementedZoneInternalServiceServer) HostStatusUpdate

func (UnimplementedZoneInternalServiceServer) PackageChunk

type UnimplementedZoneServiceServer

type UnimplementedZoneServiceServer struct {
}

UnimplementedZoneServiceServer must be embedded to have forward compatible implementations.

func (UnimplementedZoneServiceServer) AppInstanceDelete

func (UnimplementedZoneServiceServer) AppInstanceDeploy

func (UnimplementedZoneServiceServer) AppInstanceInfo

func (UnimplementedZoneServiceServer) AppInstanceList

func (UnimplementedZoneServiceServer) GatewayIngressInfo

func (UnimplementedZoneServiceServer) GatewayIngressList

func (UnimplementedZoneServiceServer) GatewayIngressSet

func (UnimplementedZoneServiceServer) HostJoin

func (UnimplementedZoneServiceServer) HostList

func (UnimplementedZoneServiceServer) PackageDelete

func (UnimplementedZoneServiceServer) PackageList

func (UnimplementedZoneServiceServer) PackagePush

func (UnimplementedZoneServiceServer) ZoneInfo

func (UnimplementedZoneServiceServer) ZoneInit

func (UnimplementedZoneServiceServer) ZoneSet

type UnsafeHostInternalServiceServer

type UnsafeHostInternalServiceServer interface {
	// contains filtered or unexported methods
}

UnsafeHostInternalServiceServer may be embedded to opt out of forward compatibility for this service. Use of this interface is not recommended, as added methods to HostInternalServiceServer will result in compilation errors.

type UnsafeZoneInternalServiceServer

type UnsafeZoneInternalServiceServer interface {
	// contains filtered or unexported methods
}

UnsafeZoneInternalServiceServer may be embedded to opt out of forward compatibility for this service. Use of this interface is not recommended, as added methods to ZoneInternalServiceServer will result in compilation errors.

type UnsafeZoneServiceServer

type UnsafeZoneServiceServer interface {
	// contains filtered or unexported methods
}

UnsafeZoneServiceServer may be embedded to opt out of forward compatibility for this service. Use of this interface is not recommended, as added methods to ZoneServiceServer will result in compilation errors.

type Validator

type Validator func(string) error
var (
	NameValid Validator

	// RFC 1123 DNS label
	DNSLabelValid Validator

	Ip4AddrValid Validator

	ObjectIdValid = regexp.MustCompile("^[0-9a-f]{12,16}$")
)

type Zone

type Zone struct {

	// name is the unique identifier of the zone.
	Name string `protobuf:"bytes,1,opt,name=name,proto3" json:"name,omitempty" toml:"name,omitempty"`
	// description provides a human-readable description of the zone.
	Description string `protobuf:"bytes,3,opt,name=description,proto3" json:"description,omitempty" toml:"description,omitempty"`
	// action specifies the current action being performed on the zone.
	// Valid values: init, update, destroy.
	Action string `protobuf:"bytes,6,opt,name=action,proto3" json:"action,omitempty" toml:"action,omitempty"`
	// hosts is a list of host IDs that belong to this zone.
	Hosts []string `protobuf:"bytes,9,rep,name=hosts,proto3" json:"hosts,omitempty" toml:"hosts,omitempty"`
	// vpc_bridge_cidr specifies the zone-wide VPC bridge subnet.
	//
	// Must be a private IPv4 /24 network (RFC 1918). Each host node is
	// assigned a bridge IP whose fourth octet falls within the allocatable
	// range [3, 252]. Octets 0-2 and 253-255 are reserved for system use.
	//
	//	Example: 192.168.10.0/24
	//	  192.168.10.3    -> host-1 bridge IP   (first allocatable)
	//	  ...
	//	  192.168.10.252  -> host-250 bridge IP  (last allocatable)
	//
	// Allocatable capacity: 250 host nodes per zone.
	VpcBridgeCidr string `` /* 136-byte string literal not displayed */
	// vpc_instance_cidr specifies the zone-wide VPC instance supernet.
	//
	// Must be a private IPv4 /16 network (RFC 1918). The /16 prefix length
	// provides a two-level hierarchy where the third octet (c) maps 1:1 to
	// a host node's bridge IP fourth octet, and the fourth octet (d)
	// provides per-host instance addresses:
	//
	//	a.b.c.d  ->  a.b.{host_index}.{instance_index}
	//
	// Both c and d are allocated within [3, 252] only. Octets 0-2 and 253-255
	// are reserved for future use.
	//
	//	Example: 10.10.0.0/16
	//	  10.10.3.0/24  -> instances on host with bridge 192.168.10.3
	//	    10.10.3.3   -> instance-1 (first allocatable)
	//	    ...
	//	    10.10.3.252 -> instance-250 (last allocatable)
	//	  ...
	//	  10.10.N.d     -> instance d on host N  (N, d in [3, 252])
	//
	// Allocatable capacity: 250 hosts * 250 instances/host = 62,500.
	//
	// The third octet of the instance subnet and the bridge subnet must
	// form a bijective mapping (c-instance <-> c-bridge) managed by the
	// internal IPAM scheduler.
	VpcInstanceCidr string `` /* 144-byte string literal not displayed */
	// vpc_network_domain is the DNS domain for VPC internal name resolution.
	// The internal DNS resolves <app-instance-id>.<domain> to the container
	// instance IP. Default: "local". Recommended: "zone-name.example.com".
	VpcNetworkDomain string `` /* 148-byte string literal not displayed */
	// contains filtered or unexported fields
}

Zone represents a logical cluster or data center in the infrastructure. A zone contains multiple hosts and serves as a management boundary for resource allocation and application deployment.

func (*Zone) Descriptor deprecated

func (*Zone) Descriptor() ([]byte, []int)

Deprecated: Use Zone.ProtoReflect.Descriptor instead.

func (*Zone) GetAction

func (x *Zone) GetAction() string

func (*Zone) GetDescription

func (x *Zone) GetDescription() string

func (*Zone) GetHosts

func (x *Zone) GetHosts() []string

func (*Zone) GetName

func (x *Zone) GetName() string

func (*Zone) GetVpcBridgeCidr

func (x *Zone) GetVpcBridgeCidr() string

func (*Zone) GetVpcInstanceCidr

func (x *Zone) GetVpcInstanceCidr() string

func (*Zone) GetVpcNetworkDomain

func (x *Zone) GetVpcNetworkDomain() string

func (*Zone) ProtoMessage

func (*Zone) ProtoMessage()

func (*Zone) ProtoReflect

func (x *Zone) ProtoReflect() protoreflect.Message

func (*Zone) Reset

func (x *Zone) Reset()

func (*Zone) String

func (x *Zone) String() string

type ZoneInfoRequest

type ZoneInfoRequest struct {
	// contains filtered or unexported fields
}

ZoneInfoRequest is the request message for retrieving zone information.

func (*ZoneInfoRequest) Descriptor deprecated

func (*ZoneInfoRequest) Descriptor() ([]byte, []int)

Deprecated: Use ZoneInfoRequest.ProtoReflect.Descriptor instead.

func (*ZoneInfoRequest) ProtoMessage

func (*ZoneInfoRequest) ProtoMessage()

func (*ZoneInfoRequest) ProtoReflect

func (x *ZoneInfoRequest) ProtoReflect() protoreflect.Message

func (*ZoneInfoRequest) Reset

func (x *ZoneInfoRequest) Reset()

func (*ZoneInfoRequest) String

func (x *ZoneInfoRequest) String() string

type ZoneInfoResponse

type ZoneInfoResponse struct {

	// zone contains the zone information.
	Zone *Zone `protobuf:"bytes,1,opt,name=zone,proto3" json:"zone,omitempty" toml:"zone,omitempty"`
	// hosts is the list of hosts belonging to the zone.
	Hosts []*Host `protobuf:"bytes,2,rep,name=hosts,proto3" json:"hosts,omitempty" toml:"hosts,omitempty"`
	// network_map is the VPC routing table for the zone.
	NetworkMap *ZoneNetworkMap `protobuf:"bytes,3,opt,name=network_map,json=networkMap,proto3" json:"network_map,omitempty" toml:"network_map,omitempty"`
	// contains filtered or unexported fields
}

ZoneInfoResponse is the response message containing zone information.

func (*ZoneInfoResponse) Descriptor deprecated

func (*ZoneInfoResponse) Descriptor() ([]byte, []int)

Deprecated: Use ZoneInfoResponse.ProtoReflect.Descriptor instead.

func (*ZoneInfoResponse) GetHosts

func (x *ZoneInfoResponse) GetHosts() []*Host

func (*ZoneInfoResponse) GetNetworkMap

func (x *ZoneInfoResponse) GetNetworkMap() *ZoneNetworkMap

func (*ZoneInfoResponse) GetZone

func (x *ZoneInfoResponse) GetZone() *Zone

func (*ZoneInfoResponse) ProtoMessage

func (*ZoneInfoResponse) ProtoMessage()

func (*ZoneInfoResponse) ProtoReflect

func (x *ZoneInfoResponse) ProtoReflect() protoreflect.Message

func (*ZoneInfoResponse) Reset

func (x *ZoneInfoResponse) Reset()

func (*ZoneInfoResponse) String

func (x *ZoneInfoResponse) String() string

type ZoneInitRequest

type ZoneInitRequest struct {

	// name is the name of the zone to create.
	Name string `protobuf:"bytes,1,opt,name=name,proto3" json:"name,omitempty" toml:"name,omitempty"`
	// contains filtered or unexported fields
}

ZoneInitRequest is the request message for initializing a zone.

func (*ZoneInitRequest) Descriptor deprecated

func (*ZoneInitRequest) Descriptor() ([]byte, []int)

Deprecated: Use ZoneInitRequest.ProtoReflect.Descriptor instead.

func (*ZoneInitRequest) GetName

func (x *ZoneInitRequest) GetName() string

func (*ZoneInitRequest) ProtoMessage

func (*ZoneInitRequest) ProtoMessage()

func (*ZoneInitRequest) ProtoReflect

func (x *ZoneInitRequest) ProtoReflect() protoreflect.Message

func (*ZoneInitRequest) Reset

func (x *ZoneInitRequest) Reset()

func (*ZoneInitRequest) String

func (x *ZoneInitRequest) String() string

type ZoneInitResponse

type ZoneInitResponse struct {
	// contains filtered or unexported fields
}

ZoneInitResponse is the response message after zone initialization.

func (*ZoneInitResponse) Descriptor deprecated

func (*ZoneInitResponse) Descriptor() ([]byte, []int)

Deprecated: Use ZoneInitResponse.ProtoReflect.Descriptor instead.

func (*ZoneInitResponse) ProtoMessage

func (*ZoneInitResponse) ProtoMessage()

func (*ZoneInitResponse) ProtoReflect

func (x *ZoneInitResponse) ProtoReflect() protoreflect.Message

func (*ZoneInitResponse) Reset

func (x *ZoneInitResponse) Reset()

func (*ZoneInitResponse) String

func (x *ZoneInitResponse) String() string

type ZoneInternalServiceClient

type ZoneInternalServiceClient interface {
	// HostStatusUpdate updates the status of a host and receives updated app
	// instances.
	HostStatusUpdate(ctx context.Context, in *HostStatusUpdateRequest, opts ...grpc.CallOption) (*HostStatusUpdateResponse, error)
	// GatewayIngressDeployList retrieves deployed ingress entries newer than
	// the given version for incremental sync.
	GatewayIngressDeployList(ctx context.Context, in *GatewayIngressDeployListRequest, opts ...grpc.CallOption) (*GatewayIngressDeployListResponse, error)
	// PackageChunk retrieves a single chunk of a package for download.
	PackageChunk(ctx context.Context, in *PackageChunkRequest, opts ...grpc.CallOption) (*PackageChunkResponse, error)
}

ZoneInternalServiceClient is the client API for ZoneInternalService service.

For semantics around ctx use and closing/ending streaming RPCs, please refer to https://pkg.go.dev/google.golang.org/grpc/?tab=doc#ClientConn.NewStream.

type ZoneInternalServiceServer

type ZoneInternalServiceServer interface {
	// HostStatusUpdate updates the status of a host and receives updated app
	// instances.
	HostStatusUpdate(context.Context, *HostStatusUpdateRequest) (*HostStatusUpdateResponse, error)
	// GatewayIngressDeployList retrieves deployed ingress entries newer than
	// the given version for incremental sync.
	GatewayIngressDeployList(context.Context, *GatewayIngressDeployListRequest) (*GatewayIngressDeployListResponse, error)
	// PackageChunk retrieves a single chunk of a package for download.
	PackageChunk(context.Context, *PackageChunkRequest) (*PackageChunkResponse, error)
	// contains filtered or unexported methods
}

ZoneInternalServiceServer is the server API for ZoneInternalService service. All implementations must embed UnimplementedZoneInternalServiceServer for forward compatibility

type ZoneNetworkMap

type ZoneNetworkMap struct {

	// zone-wide VPC bridge subnet (e.g., "192.168.10.0/24")
	VpcBridgeCidr string `` /* 135-byte string literal not displayed */
	// zone-wide VPC instance supernet (e.g., "10.10.0.0/16")
	VpcInstanceCidr string `` /* 143-byte string literal not displayed */
	// DNS domain for VPC name resolution
	VpcNetworkDomain string `` /* 147-byte string literal not displayed */
	// vpc_bridge_host maps bridge IP to host network info.
	// Example: key=3232238090 -> host id "6985b60604d7", instance
	// subnet 10.10.2.0
	VpcBridgeHost map[uint32]*ZoneNetworkMap_Host `` /* 225-byte string literal not displayed */
	// vpc_instance maps instance IP last octet to replica ID.
	// Example: key corresponding to 10.10.2.3 -> "699e0d6f3f11-0000"
	VpcInstance map[uint32]string `` /* 214-byte string literal not displayed */
	// monotonic revision for incremental sync
	Revision uint64 `protobuf:"varint,8,opt,name=revision,proto3" json:"revision,omitempty" toml:"revision,omitempty"`
	// last update unix timestamp (seconds)
	Updated int64 `protobuf:"varint,13,opt,name=updated,proto3" json:"updated,omitempty" toml:"updated,omitempty"`
	// contains filtered or unexported fields
}

ZoneNetworkMap represents the distributed routing table for VPC networking. It is generated by the zone leader and propagated to all hosts.

func (*ZoneNetworkMap) Descriptor deprecated

func (*ZoneNetworkMap) Descriptor() ([]byte, []int)

Deprecated: Use ZoneNetworkMap.ProtoReflect.Descriptor instead.

func (*ZoneNetworkMap) GetRevision

func (x *ZoneNetworkMap) GetRevision() uint64

func (*ZoneNetworkMap) GetUpdated

func (x *ZoneNetworkMap) GetUpdated() int64

func (*ZoneNetworkMap) GetVpcBridgeCidr

func (x *ZoneNetworkMap) GetVpcBridgeCidr() string

func (*ZoneNetworkMap) GetVpcBridgeHost

func (x *ZoneNetworkMap) GetVpcBridgeHost() map[uint32]*ZoneNetworkMap_Host

func (*ZoneNetworkMap) GetVpcInstance

func (x *ZoneNetworkMap) GetVpcInstance() map[uint32]string

func (*ZoneNetworkMap) GetVpcInstanceCidr

func (x *ZoneNetworkMap) GetVpcInstanceCidr() string

func (*ZoneNetworkMap) GetVpcNetworkDomain

func (x *ZoneNetworkMap) GetVpcNetworkDomain() string

func (*ZoneNetworkMap) ProtoMessage

func (*ZoneNetworkMap) ProtoMessage()

func (*ZoneNetworkMap) ProtoReflect

func (x *ZoneNetworkMap) ProtoReflect() protoreflect.Message

func (*ZoneNetworkMap) Reset

func (x *ZoneNetworkMap) Reset()

func (*ZoneNetworkMap) String

func (x *ZoneNetworkMap) String() string

type ZoneNetworkMap_Host

type ZoneNetworkMap_Host struct {
	Id       string `protobuf:"bytes,1,opt,name=id,proto3" json:"id,omitempty" toml:"id,omitempty"`                     // host unique identifier
	Peer     uint32 `protobuf:"fixed32,2,opt,name=peer,proto3" json:"peer,omitempty" toml:"peer,omitempty"`             // peer address
	Bridge   uint32 `protobuf:"fixed32,3,opt,name=bridge,proto3" json:"bridge,omitempty" toml:"bridge,omitempty"`       // bridge address
	Instance uint32 `protobuf:"fixed32,4,opt,name=instance,proto3" json:"instance,omitempty" toml:"instance,omitempty"` // instance subnet address
	// contains filtered or unexported fields
}

Host represents a host's VPC network identity within the routing table.

func (*ZoneNetworkMap_Host) Descriptor deprecated

func (*ZoneNetworkMap_Host) Descriptor() ([]byte, []int)

Deprecated: Use ZoneNetworkMap_Host.ProtoReflect.Descriptor instead.

func (*ZoneNetworkMap_Host) GetBridge

func (x *ZoneNetworkMap_Host) GetBridge() uint32

func (*ZoneNetworkMap_Host) GetId

func (x *ZoneNetworkMap_Host) GetId() string

func (*ZoneNetworkMap_Host) GetInstance

func (x *ZoneNetworkMap_Host) GetInstance() uint32

func (*ZoneNetworkMap_Host) GetPeer

func (x *ZoneNetworkMap_Host) GetPeer() uint32

func (*ZoneNetworkMap_Host) ProtoMessage

func (*ZoneNetworkMap_Host) ProtoMessage()

func (*ZoneNetworkMap_Host) ProtoReflect

func (x *ZoneNetworkMap_Host) ProtoReflect() protoreflect.Message

func (*ZoneNetworkMap_Host) Reset

func (x *ZoneNetworkMap_Host) Reset()

func (*ZoneNetworkMap_Host) String

func (x *ZoneNetworkMap_Host) String() string

type ZoneServiceClient

type ZoneServiceClient interface {
	// ZoneInit initializes a new zone with the specified name.
	ZoneInit(ctx context.Context, in *ZoneInitRequest, opts ...grpc.CallOption) (*ZoneInitResponse, error)
	// ZoneInfo retrieves information about the current zone.
	ZoneInfo(ctx context.Context, in *ZoneInfoRequest, opts ...grpc.CallOption) (*ZoneInfoResponse, error)
	// ZoneSet updates zone network configuration.
	// All three VPC fields (bridge, instance, domain) must be provided together.
	ZoneSet(ctx context.Context, in *ZoneSetRequest, opts ...grpc.CallOption) (*ZoneSetResponse, error)
	// HostJoin registers a new host to join the zone.
	HostJoin(ctx context.Context, in *HostJoinRequest, opts ...grpc.CallOption) (*HostJoinResponse, error)
	// HostList retrieves all hosts in the zone.
	HostList(ctx context.Context, in *HostListRequest, opts ...grpc.CallOption) (*HostListResponse, error)
	// AppInstanceDeploy deploys a new application instance or updates an
	// existing one.
	AppInstanceDeploy(ctx context.Context, in *AppInstanceDeployRequest, opts ...grpc.CallOption) (*AppInstanceDeployResponse, error)
	// AppInstanceInfo retrieves detailed information about a specific
	// application instance.
	AppInstanceInfo(ctx context.Context, in *AppInstanceInfoRequest, opts ...grpc.CallOption) (*AppInstanceInfoResponse, error)
	// AppInstanceList retrieves all application instances in the zone.
	AppInstanceList(ctx context.Context, in *AppInstanceListRequest, opts ...grpc.CallOption) (*AppInstanceListResponse, error)
	// AppInstanceDelete deletes an application instance from the zone.
	AppInstanceDelete(ctx context.Context, in *AppInstanceDeleteRequest, opts ...grpc.CallOption) (*AppInstanceDeleteResponse, error)
	// GatewayIngressInfo retrieves details of a specific gateway ingress.
	GatewayIngressInfo(ctx context.Context, in *GatewayIngressInfoRequest, opts ...grpc.CallOption) (*GatewayIngressInfoResponse, error)
	// GatewayIngressList retrieves all gateway ingress entries.
	GatewayIngressList(ctx context.Context, in *GatewayIngressListRequest, opts ...grpc.CallOption) (*GatewayIngressListResponse, error)
	// GatewayIngressSet creates or updates a gateway ingress entry.
	GatewayIngressSet(ctx context.Context, in *GatewayIngressSetRequest, opts ...grpc.CallOption) (*GatewayIngressSetResponse, error)
	// PackagePush uploads a package in chunks.
	PackagePush(ctx context.Context, in *PackagePushRequest, opts ...grpc.CallOption) (*PackagePushResponse, error)
	// PackageList retrieves all packages in the zone.
	PackageList(ctx context.Context, in *PackageListRequest, opts ...grpc.CallOption) (*PackageListResponse, error)
	// PackageDelete deletes a package and all its chunks from the zone.
	PackageDelete(ctx context.Context, in *PackageDeleteRequest, opts ...grpc.CallOption) (*PackageDeleteResponse, error)
}

ZoneServiceClient is the client API for ZoneService service.

For semantics around ctx use and closing/ending streaming RPCs, please refer to https://pkg.go.dev/google.golang.org/grpc/?tab=doc#ClientConn.NewStream.

type ZoneServiceServer

type ZoneServiceServer interface {
	// ZoneInit initializes a new zone with the specified name.
	ZoneInit(context.Context, *ZoneInitRequest) (*ZoneInitResponse, error)
	// ZoneInfo retrieves information about the current zone.
	ZoneInfo(context.Context, *ZoneInfoRequest) (*ZoneInfoResponse, error)
	// ZoneSet updates zone network configuration.
	// All three VPC fields (bridge, instance, domain) must be provided together.
	ZoneSet(context.Context, *ZoneSetRequest) (*ZoneSetResponse, error)
	// HostJoin registers a new host to join the zone.
	HostJoin(context.Context, *HostJoinRequest) (*HostJoinResponse, error)
	// HostList retrieves all hosts in the zone.
	HostList(context.Context, *HostListRequest) (*HostListResponse, error)
	// AppInstanceDeploy deploys a new application instance or updates an
	// existing one.
	AppInstanceDeploy(context.Context, *AppInstanceDeployRequest) (*AppInstanceDeployResponse, error)
	// AppInstanceInfo retrieves detailed information about a specific
	// application instance.
	AppInstanceInfo(context.Context, *AppInstanceInfoRequest) (*AppInstanceInfoResponse, error)
	// AppInstanceList retrieves all application instances in the zone.
	AppInstanceList(context.Context, *AppInstanceListRequest) (*AppInstanceListResponse, error)
	// AppInstanceDelete deletes an application instance from the zone.
	AppInstanceDelete(context.Context, *AppInstanceDeleteRequest) (*AppInstanceDeleteResponse, error)
	// GatewayIngressInfo retrieves details of a specific gateway ingress.
	GatewayIngressInfo(context.Context, *GatewayIngressInfoRequest) (*GatewayIngressInfoResponse, error)
	// GatewayIngressList retrieves all gateway ingress entries.
	GatewayIngressList(context.Context, *GatewayIngressListRequest) (*GatewayIngressListResponse, error)
	// GatewayIngressSet creates or updates a gateway ingress entry.
	GatewayIngressSet(context.Context, *GatewayIngressSetRequest) (*GatewayIngressSetResponse, error)
	// PackagePush uploads a package in chunks.
	PackagePush(context.Context, *PackagePushRequest) (*PackagePushResponse, error)
	// PackageList retrieves all packages in the zone.
	PackageList(context.Context, *PackageListRequest) (*PackageListResponse, error)
	// PackageDelete deletes a package and all its chunks from the zone.
	PackageDelete(context.Context, *PackageDeleteRequest) (*PackageDeleteResponse, error)
	// contains filtered or unexported methods
}

ZoneServiceServer is the server API for ZoneService service. All implementations must embed UnimplementedZoneServiceServer for forward compatibility

type ZoneSetRequest

type ZoneSetRequest struct {

	// vpc_bridge_cidr is the zone-wide VPC bridge CIDR (e.g., "192.168.10.0/24").
	VpcBridgeCidr string `` /* 135-byte string literal not displayed */
	// vpc_instance_cidr is the zone-wide VPC instance CIDR (e.g.,
	// "10.10.0.0/16").
	VpcInstanceCidr string `` /* 143-byte string literal not displayed */
	// vpc_network_domain is the DNS domain name for the zone (e.g., "local").
	VpcNetworkDomain string `` /* 147-byte string literal not displayed */
	// contains filtered or unexported fields
}

ZoneSetRequest is the request message for updating zone network configuration. All three VPC fields must be provided together; partial updates are not allowed.

func (*ZoneSetRequest) Descriptor deprecated

func (*ZoneSetRequest) Descriptor() ([]byte, []int)

Deprecated: Use ZoneSetRequest.ProtoReflect.Descriptor instead.

func (*ZoneSetRequest) GetVpcBridgeCidr

func (x *ZoneSetRequest) GetVpcBridgeCidr() string

func (*ZoneSetRequest) GetVpcInstanceCidr

func (x *ZoneSetRequest) GetVpcInstanceCidr() string

func (*ZoneSetRequest) GetVpcNetworkDomain

func (x *ZoneSetRequest) GetVpcNetworkDomain() string

func (*ZoneSetRequest) ProtoMessage

func (*ZoneSetRequest) ProtoMessage()

func (*ZoneSetRequest) ProtoReflect

func (x *ZoneSetRequest) ProtoReflect() protoreflect.Message

func (*ZoneSetRequest) Reset

func (x *ZoneSetRequest) Reset()

func (*ZoneSetRequest) String

func (x *ZoneSetRequest) String() string

type ZoneSetResponse

type ZoneSetResponse struct {

	// zone contains the updated zone information.
	Zone *Zone `protobuf:"bytes,1,opt,name=zone,proto3" json:"zone,omitempty" toml:"zone,omitempty"`
	// contains filtered or unexported fields
}

ZoneSetResponse is the response message after updating zone network configuration.

func (*ZoneSetResponse) Descriptor deprecated

func (*ZoneSetResponse) Descriptor() ([]byte, []int)

Deprecated: Use ZoneSetResponse.ProtoReflect.Descriptor instead.

func (*ZoneSetResponse) GetZone

func (x *ZoneSetResponse) GetZone() *Zone

func (*ZoneSetResponse) ProtoMessage

func (*ZoneSetResponse) ProtoMessage()

func (*ZoneSetResponse) ProtoReflect

func (x *ZoneSetResponse) ProtoReflect() protoreflect.Message

func (*ZoneSetResponse) Reset

func (x *ZoneSetResponse) Reset()

func (*ZoneSetResponse) String

func (x *ZoneSetResponse) String() string

Jump to

Keyboard shortcuts

? : This menu
/ : Search site
f or F : Jump to
y or Y : Canonical URL