pb

package
v0.0.0-...-ca39941 Latest Latest
Warning

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

Go to latest
Published: Mar 14, 2021 License: Apache-2.0 Imports: 9 Imported by: 0

Documentation

Index

Constants

This section is empty.

Variables

View Source
var (
	InstallError_Type_name = map[int32]string{
		0: "UNSPECIFIED",
		1: "INCOMPATIBLE",
		2: "TOO_LARGE",
		3: "PARSE_FAIL",
		4: "INTEGRITY_FAIL",
		5: "INSTALL_RUN_PACKAGE",
		6: "INSTALL_IN_PROGRESS",
		7: "UNEXPECTED_SWITCHOVER",
		8: "SYNC_FAIL",
	}
	InstallError_Type_value = map[string]int32{
		"UNSPECIFIED":           0,
		"INCOMPATIBLE":          1,
		"TOO_LARGE":             2,
		"PARSE_FAIL":            3,
		"INTEGRITY_FAIL":        4,
		"INSTALL_RUN_PACKAGE":   5,
		"INSTALL_IN_PROGRESS":   6,
		"UNEXPECTED_SWITCHOVER": 7,
		"SYNC_FAIL":             8,
	}
)

Enum value maps for InstallError_Type.

View Source
var (
	ActivateError_Type_name = map[int32]string{
		0: "UNSPECIFIED",
		1: "NON_EXISTENT_VERSION",
	}
	ActivateError_Type_value = map[string]int32{
		"UNSPECIFIED":          0,
		"NON_EXISTENT_VERSION": 1,
	}
)

Enum value maps for ActivateError_Type.

View Source
var (
	StandbyState_State_name = map[int32]string{
		0: "UNSPECIFIED",
		1: "UNSUPORTED",
		2: "NON_EXISTENT",
		3: "UNAVAILABLE",
	}
	StandbyState_State_value = map[string]int32{
		"UNSPECIFIED":  0,
		"UNSUPORTED":   1,
		"NON_EXISTENT": 2,
		"UNAVAILABLE":  3,
	}
)

Enum value maps for StandbyState_State.

Functions

func RegisterOSServer

func RegisterOSServer(s *grpc.Server, srv OSServer)

Types

type ActivateError

type ActivateError struct {
	Type   ActivateError_Type `protobuf:"varint,1,opt,name=type,proto3,enum=gnoi.os.ActivateError_Type" json:"type,omitempty"`
	Detail string             `protobuf:"bytes,2,opt,name=detail,proto3" json:"detail,omitempty"`
	// contains filtered or unexported fields
}

func (*ActivateError) Descriptor deprecated

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

Deprecated: Use ActivateError.ProtoReflect.Descriptor instead.

func (*ActivateError) GetDetail

func (x *ActivateError) GetDetail() string

func (*ActivateError) GetType

func (x *ActivateError) GetType() ActivateError_Type

func (*ActivateError) ProtoMessage

func (*ActivateError) ProtoMessage()

func (*ActivateError) ProtoReflect

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

func (*ActivateError) Reset

func (x *ActivateError) Reset()

func (*ActivateError) String

func (x *ActivateError) String() string

type ActivateError_Type

type ActivateError_Type int32
const (
	// An unspecified error. Must use the detail value to describe the issue.
	ActivateError_UNSPECIFIED ActivateError_Type = 0
	// There is no OS package with the version requested for activation. This is
	// also used for an empty version string.
	ActivateError_NON_EXISTENT_VERSION ActivateError_Type = 1
)

func (ActivateError_Type) Descriptor

func (ActivateError_Type) Enum

func (ActivateError_Type) EnumDescriptor deprecated

func (ActivateError_Type) EnumDescriptor() ([]byte, []int)

Deprecated: Use ActivateError_Type.Descriptor instead.

func (ActivateError_Type) Number

func (ActivateError_Type) String

func (x ActivateError_Type) String() string

func (ActivateError_Type) Type

type ActivateOK

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

If the Target is already running the requested version in ActivateRequest, then it replies with ActivateOK. If the Target has the OS package version requested in ActivateRequest then it replies with ActivateOK and proceeds to boot. In a Target with dual Supervisor, performing this RPC on the Active Supervisor triggers a switchover before booting the (old)Active Supervisor. The Target should always perform a switchover with the least impact possible to forwarding.

func (*ActivateOK) Descriptor deprecated

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

Deprecated: Use ActivateOK.ProtoReflect.Descriptor instead.

func (*ActivateOK) ProtoMessage

func (*ActivateOK) ProtoMessage()

func (*ActivateOK) ProtoReflect

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

func (*ActivateOK) Reset

func (x *ActivateOK) Reset()

func (*ActivateOK) String

func (x *ActivateOK) String() string

type ActivateRequest

type ActivateRequest struct {

	// The version that is required to be activated and booted.
	Version string `protobuf:"bytes,1,opt,name=version,proto3" json:"version,omitempty"`
	// For dual Supervisors setting this flag instructs the Target to perform the
	// action on the Standby Supervisor.
	StandbySupervisor bool `protobuf:"varint,2,opt,name=standby_supervisor,json=standbySupervisor,proto3" json:"standby_supervisor,omitempty"`
	// contains filtered or unexported fields
}

The ActivateRequest is sent by the Client to the Target to initiate a change in the next bootable OS version that is to be used on the Target.

func (*ActivateRequest) Descriptor deprecated

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

Deprecated: Use ActivateRequest.ProtoReflect.Descriptor instead.

func (*ActivateRequest) GetStandbySupervisor

func (x *ActivateRequest) GetStandbySupervisor() bool

func (*ActivateRequest) GetVersion

func (x *ActivateRequest) GetVersion() string

func (*ActivateRequest) ProtoMessage

func (*ActivateRequest) ProtoMessage()

func (*ActivateRequest) ProtoReflect

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

func (*ActivateRequest) Reset

func (x *ActivateRequest) Reset()

func (*ActivateRequest) String

func (x *ActivateRequest) String() string

type ActivateResponse

type ActivateResponse struct {

	// Types that are assignable to Response:
	//	*ActivateResponse_ActivateOk
	//	*ActivateResponse_ActivateError
	Response isActivateResponse_Response `protobuf_oneof:"response"`
	// contains filtered or unexported fields
}

The ActivateResponse is sent from the Target to the Client in response to the Activate RPC. It indicates the success of making the OS package version active.

func (*ActivateResponse) Descriptor deprecated

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

Deprecated: Use ActivateResponse.ProtoReflect.Descriptor instead.

func (*ActivateResponse) GetActivateError

func (x *ActivateResponse) GetActivateError() *ActivateError

func (*ActivateResponse) GetActivateOk

func (x *ActivateResponse) GetActivateOk() *ActivateOK

func (*ActivateResponse) GetResponse

func (m *ActivateResponse) GetResponse() isActivateResponse_Response

func (*ActivateResponse) ProtoMessage

func (*ActivateResponse) ProtoMessage()

func (*ActivateResponse) ProtoReflect

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

func (*ActivateResponse) Reset

func (x *ActivateResponse) Reset()

func (*ActivateResponse) String

func (x *ActivateResponse) String() string

type ActivateResponse_ActivateError

type ActivateResponse_ActivateError struct {
	ActivateError *ActivateError `protobuf:"bytes,2,opt,name=activate_error,json=activateError,proto3,oneof"`
}

type ActivateResponse_ActivateOk

type ActivateResponse_ActivateOk struct {
	ActivateOk *ActivateOK `protobuf:"bytes,1,opt,name=activate_ok,json=activateOk,proto3,oneof"`
}

type InstallError

type InstallError struct {
	Type   InstallError_Type `protobuf:"varint,1,opt,name=type,proto3,enum=gnoi.os.InstallError_Type" json:"type,omitempty"`
	Detail string            `protobuf:"bytes,2,opt,name=detail,proto3" json:"detail,omitempty"`
	// contains filtered or unexported fields
}

The InstallError message MUST be sent by the Target to the Client whenever an issue occurs. The Target MUST immediately close the RPC without a gRPC error.

func (*InstallError) Descriptor deprecated

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

Deprecated: Use InstallError.ProtoReflect.Descriptor instead.

func (*InstallError) GetDetail

func (x *InstallError) GetDetail() string

func (*InstallError) GetType

func (x *InstallError) GetType() InstallError_Type

func (*InstallError) ProtoMessage

func (*InstallError) ProtoMessage()

func (*InstallError) ProtoReflect

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

func (*InstallError) Reset

func (x *InstallError) Reset()

func (*InstallError) String

func (x *InstallError) String() string

type InstallError_Type

type InstallError_Type int32
const (
	// An unspecified error. Must use the detail value to describe the issue.
	InstallError_UNSPECIFIED InstallError_Type = 0
	// The newly transferred package is not compatible with the Target platform.
	// The detail field MUST contain the detailed error message.
	InstallError_INCOMPATIBLE InstallError_Type = 1
	// The OS package being transferred is larger than the available size the
	// Target provisioned. This is unexpected since the Target MUST clear disk
	// space for the new OS packages. The available space and the OS package
	// size MUST be guaranteed by the platform maker, therefore the most likely
	// cause of this error is that a wrong package is being transferred.
	InstallError_TOO_LARGE InstallError_Type = 2
	// Used whenever the system is unable to parse the newly transferred
	// package, like reading the OS version or the integrity checksums.
	InstallError_PARSE_FAIL InstallError_Type = 3
	// The transferred OS package fails integrity check.
	InstallError_INTEGRITY_FAIL InstallError_Type = 4
	// Attempting to force transfer an OS package with the same version as the
	// currently running.
	InstallError_INSTALL_RUN_PACKAGE InstallError_Type = 5
	// Another Install RPC to this Target is already in progress.
	InstallError_INSTALL_IN_PROGRESS InstallError_Type = 6
	// A switchover happened during the Install RPC.
	InstallError_UNEXPECTED_SWITCHOVER InstallError_Type = 7
	// Failed to sync the transferred OS package to the standby Supervisor. The
	// detail value MUST have more information.
	InstallError_SYNC_FAIL InstallError_Type = 8
)

func (InstallError_Type) Descriptor

func (InstallError_Type) Enum

func (InstallError_Type) EnumDescriptor deprecated

func (InstallError_Type) EnumDescriptor() ([]byte, []int)

Deprecated: Use InstallError_Type.Descriptor instead.

func (InstallError_Type) Number

func (InstallError_Type) String

func (x InstallError_Type) String() string

func (InstallError_Type) Type

type InstallRequest

type InstallRequest struct {

	// Types that are assignable to Request:
	//	*InstallRequest_TransferRequest
	//	*InstallRequest_TransferContent
	//	*InstallRequest_TransferEnd
	Request isInstallRequest_Request `protobuf_oneof:"request"`
	// contains filtered or unexported fields
}

func (*InstallRequest) Descriptor deprecated

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

Deprecated: Use InstallRequest.ProtoReflect.Descriptor instead.

func (*InstallRequest) GetRequest

func (m *InstallRequest) GetRequest() isInstallRequest_Request

func (*InstallRequest) GetTransferContent

func (x *InstallRequest) GetTransferContent() []byte

func (*InstallRequest) GetTransferEnd

func (x *InstallRequest) GetTransferEnd() *TransferEnd

func (*InstallRequest) GetTransferRequest

func (x *InstallRequest) GetTransferRequest() *TransferRequest

func (*InstallRequest) ProtoMessage

func (*InstallRequest) ProtoMessage()

func (*InstallRequest) ProtoReflect

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

func (*InstallRequest) Reset

func (x *InstallRequest) Reset()

func (*InstallRequest) String

func (x *InstallRequest) String() string

type InstallRequest_TransferContent

type InstallRequest_TransferContent struct {
	TransferContent []byte `protobuf:"bytes,2,opt,name=transfer_content,json=transferContent,proto3,oneof"`
}

type InstallRequest_TransferEnd

type InstallRequest_TransferEnd struct {
	TransferEnd *TransferEnd `protobuf:"bytes,3,opt,name=transfer_end,json=transferEnd,proto3,oneof"`
}

type InstallRequest_TransferRequest

type InstallRequest_TransferRequest struct {
	TransferRequest *TransferRequest `protobuf:"bytes,1,opt,name=transfer_request,json=transferRequest,proto3,oneof"`
}

type InstallResponse

type InstallResponse struct {

	// Types that are assignable to Response:
	//	*InstallResponse_TransferReady
	//	*InstallResponse_TransferProgress
	//	*InstallResponse_SyncProgress
	//	*InstallResponse_Validated
	//	*InstallResponse_InstallError
	Response isInstallResponse_Response `protobuf_oneof:"response"`
	// contains filtered or unexported fields
}

The InstallResponse is used by the Target to inform the Client about the state of the Install RPC. At any stage of the process the Target can reply with an Error message which MUST terminate the stream.

func (*InstallResponse) Descriptor deprecated

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

Deprecated: Use InstallResponse.ProtoReflect.Descriptor instead.

func (*InstallResponse) GetInstallError

func (x *InstallResponse) GetInstallError() *InstallError

func (*InstallResponse) GetResponse

func (m *InstallResponse) GetResponse() isInstallResponse_Response

func (*InstallResponse) GetSyncProgress

func (x *InstallResponse) GetSyncProgress() *SyncProgress

func (*InstallResponse) GetTransferProgress

func (x *InstallResponse) GetTransferProgress() *TransferProgress

func (*InstallResponse) GetTransferReady

func (x *InstallResponse) GetTransferReady() *TransferReady

func (*InstallResponse) GetValidated

func (x *InstallResponse) GetValidated() *Validated

func (*InstallResponse) ProtoMessage

func (*InstallResponse) ProtoMessage()

func (*InstallResponse) ProtoReflect

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

func (*InstallResponse) Reset

func (x *InstallResponse) Reset()

func (*InstallResponse) String

func (x *InstallResponse) String() string

type InstallResponse_InstallError

type InstallResponse_InstallError struct {
	InstallError *InstallError `protobuf:"bytes,5,opt,name=install_error,json=installError,proto3,oneof"`
}

type InstallResponse_SyncProgress

type InstallResponse_SyncProgress struct {
	SyncProgress *SyncProgress `protobuf:"bytes,3,opt,name=sync_progress,json=syncProgress,proto3,oneof"`
}

type InstallResponse_TransferProgress

type InstallResponse_TransferProgress struct {
	TransferProgress *TransferProgress `protobuf:"bytes,2,opt,name=transfer_progress,json=transferProgress,proto3,oneof"`
}

type InstallResponse_TransferReady

type InstallResponse_TransferReady struct {
	TransferReady *TransferReady `protobuf:"bytes,1,opt,name=transfer_ready,json=transferReady,proto3,oneof"`
}

type InstallResponse_Validated

type InstallResponse_Validated struct {
	Validated *Validated `protobuf:"bytes,4,opt,name=validated,proto3,oneof"`
}

type OSClient

type OSClient interface {
	// Install transfers an OS package into the Target. No concurrent Install RPCs
	// MUST be allowed to the same Target.
	//
	// The OS package file format is platform dependent. The platform MUST
	// validate that the OS package that is supplied is valid and bootable. This
	// SHOULD include a hash check against a known good hash. It is recommended
	// that the hash is embedded in the OS package.
	//
	// The Target manages its own persistent storage, and OS installation process.
	// It stores a set of distinct OS packages, and always proactively frees up
	// space for incoming new OS packages. It is guaranteed that the Target always
	// has enough space for a valid incoming OS package. The currently running OS
	// packages MUST never be removed. The Client MUST expect that the last
	// successfully installed package is available.
	//
	// The Install RPC allows the Client to specify the OS package version. If
	// the Target already has an OS package with the same version then there is no
	// need to transfer the OS package to the Target. If the Target does not have
	// an OS package with the same version, then the OS package is copied.
	//
	// Scenario 1 - When the Target already has the OS package:
	//
	//         Client :--------------|--------------> Target
	//              TransferRequest -->
	//                              <-- [Validated|InstallError]
	//
	//
	// Scenario 2 - When the Target does not have the OS package:
	//
	//         Client :--------------|--------------> Target
	//              TransferRequest -->
	//                              <-- [TransferReady|InstallError]
	//            transfer_content  -->
	//                              ...
	//                              <-- [TransferProgress|InstallError]
	//                              ...
	//                  TransferEnd -->
	//                              <-- [Validated|InstallError]
	//
	// On a dual Supervisor Target, only the Active Supervisor runs this gNOI
	// Service. The Install RPC applies to the Active Supervisor unless
	// InstallRequest->TransferRequest->standby_supervisor is set, in which case
	// it applies to the Standby Supervisor. One Install RPC is required for each
	// Supervisor. The Supervisor order of package installation MUST not be fixed.
	//
	// The Target MUST always attempt to copy the OS package between Supervisors
	// first before accepting the transfer from the Client. The syncing progress
	// is reported to the client with InstallResponse->SyncProgress messages.
	//
	// If a switchover is triggered during the Install RPC, the RPC MUST
	// immediately abort with Error->type->UNEXPECTED_SWITCHOVER.
	//
	// Scenario 3 - When both Supervisors already have the OS package, regardless
	//              of the value in Start.standby_supervisor:
	//
	//         Client :--------------|--------------> Target
	//              TransferRequest -->
	//                              <-- [Validated|InstallError]
	//
	//
	// Scenario 4 - When one of the Supervisors already has the OS package but the
	//              other Supervisor is the target of the Install:
	//
	//         Client :--------------|--------------> Target
	//              TransferRequest -->
	//                              <-- [SyncProgress|InstallError]
	//                              ...
	//                              <-- [Validated|InstallError]
	//
	//
	// Scenario 5 - When neither of the two Supervisors has the OS package:
	//
	//         Client :--------------|--------------> Target
	//              TransferRequest -->
	//                              <-- [TransferReady|InstallError]
	//            transfer_content  -->
	//                              ...
	//                              <-- [TransferProgress|InstallError]
	//                              ...
	//                  TransferEnd -->
	//                              <-- [Validated|InstallError]
	//
	Install(ctx context.Context, opts ...grpc.CallOption) (OS_InstallClient, error)
	// Activate sets the requested OS version as the version which is used at the
	// next reboot, and reboots the Target. When booting the requested OS version
	// fails, the Target recovers by booting the previously running OS package.
	Activate(ctx context.Context, in *ActivateRequest, opts ...grpc.CallOption) (*ActivateResponse, error)
	// Verify checks the running OS version. This RPC may be called multiple times
	// while the Target boots, until successful.
	Verify(ctx context.Context, in *VerifyRequest, opts ...grpc.CallOption) (*VerifyResponse, error)
}

OSClient is the client API for OS service.

For semantics around ctx use and closing/ending streaming RPCs, please refer to https://godoc.org/google.golang.org/grpc#ClientConn.NewStream.

func NewOSClient

func NewOSClient(cc grpc.ClientConnInterface) OSClient

type OSServer

type OSServer interface {
	// Install transfers an OS package into the Target. No concurrent Install RPCs
	// MUST be allowed to the same Target.
	//
	// The OS package file format is platform dependent. The platform MUST
	// validate that the OS package that is supplied is valid and bootable. This
	// SHOULD include a hash check against a known good hash. It is recommended
	// that the hash is embedded in the OS package.
	//
	// The Target manages its own persistent storage, and OS installation process.
	// It stores a set of distinct OS packages, and always proactively frees up
	// space for incoming new OS packages. It is guaranteed that the Target always
	// has enough space for a valid incoming OS package. The currently running OS
	// packages MUST never be removed. The Client MUST expect that the last
	// successfully installed package is available.
	//
	// The Install RPC allows the Client to specify the OS package version. If
	// the Target already has an OS package with the same version then there is no
	// need to transfer the OS package to the Target. If the Target does not have
	// an OS package with the same version, then the OS package is copied.
	//
	// Scenario 1 - When the Target already has the OS package:
	//
	//         Client :--------------|--------------> Target
	//              TransferRequest -->
	//                              <-- [Validated|InstallError]
	//
	//
	// Scenario 2 - When the Target does not have the OS package:
	//
	//         Client :--------------|--------------> Target
	//              TransferRequest -->
	//                              <-- [TransferReady|InstallError]
	//            transfer_content  -->
	//                              ...
	//                              <-- [TransferProgress|InstallError]
	//                              ...
	//                  TransferEnd -->
	//                              <-- [Validated|InstallError]
	//
	// On a dual Supervisor Target, only the Active Supervisor runs this gNOI
	// Service. The Install RPC applies to the Active Supervisor unless
	// InstallRequest->TransferRequest->standby_supervisor is set, in which case
	// it applies to the Standby Supervisor. One Install RPC is required for each
	// Supervisor. The Supervisor order of package installation MUST not be fixed.
	//
	// The Target MUST always attempt to copy the OS package between Supervisors
	// first before accepting the transfer from the Client. The syncing progress
	// is reported to the client with InstallResponse->SyncProgress messages.
	//
	// If a switchover is triggered during the Install RPC, the RPC MUST
	// immediately abort with Error->type->UNEXPECTED_SWITCHOVER.
	//
	// Scenario 3 - When both Supervisors already have the OS package, regardless
	//              of the value in Start.standby_supervisor:
	//
	//         Client :--------------|--------------> Target
	//              TransferRequest -->
	//                              <-- [Validated|InstallError]
	//
	//
	// Scenario 4 - When one of the Supervisors already has the OS package but the
	//              other Supervisor is the target of the Install:
	//
	//         Client :--------------|--------------> Target
	//              TransferRequest -->
	//                              <-- [SyncProgress|InstallError]
	//                              ...
	//                              <-- [Validated|InstallError]
	//
	//
	// Scenario 5 - When neither of the two Supervisors has the OS package:
	//
	//         Client :--------------|--------------> Target
	//              TransferRequest -->
	//                              <-- [TransferReady|InstallError]
	//            transfer_content  -->
	//                              ...
	//                              <-- [TransferProgress|InstallError]
	//                              ...
	//                  TransferEnd -->
	//                              <-- [Validated|InstallError]
	//
	Install(OS_InstallServer) error
	// Activate sets the requested OS version as the version which is used at the
	// next reboot, and reboots the Target. When booting the requested OS version
	// fails, the Target recovers by booting the previously running OS package.
	Activate(context.Context, *ActivateRequest) (*ActivateResponse, error)
	// Verify checks the running OS version. This RPC may be called multiple times
	// while the Target boots, until successful.
	Verify(context.Context, *VerifyRequest) (*VerifyResponse, error)
}

OSServer is the server API for OS service.

type OS_InstallClient

type OS_InstallClient interface {
	Send(*InstallRequest) error
	Recv() (*InstallResponse, error)
	grpc.ClientStream
}

type OS_InstallServer

type OS_InstallServer interface {
	Send(*InstallResponse) error
	Recv() (*InstallRequest, error)
	grpc.ServerStream
}

type StandbyResponse

type StandbyResponse struct {

	// Standby Supervisor ID, usually the slot number.
	Id                    string `protobuf:"bytes,1,opt,name=id,proto3" json:"id,omitempty"`
	Version               string `protobuf:"bytes,2,opt,name=version,proto3" json:"version,omitempty"`
	ActivationFailMessage string `` /* 126-byte string literal not displayed */
	// contains filtered or unexported fields
}

func (*StandbyResponse) Descriptor deprecated

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

Deprecated: Use StandbyResponse.ProtoReflect.Descriptor instead.

func (*StandbyResponse) GetActivationFailMessage

func (x *StandbyResponse) GetActivationFailMessage() string

func (*StandbyResponse) GetId

func (x *StandbyResponse) GetId() string

func (*StandbyResponse) GetVersion

func (x *StandbyResponse) GetVersion() string

func (*StandbyResponse) ProtoMessage

func (*StandbyResponse) ProtoMessage()

func (*StandbyResponse) ProtoReflect

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

func (*StandbyResponse) Reset

func (x *StandbyResponse) Reset()

func (*StandbyResponse) String

func (x *StandbyResponse) String() string

type StandbyState

type StandbyState struct {
	State StandbyState_State `protobuf:"varint,1,opt,name=state,proto3,enum=gnoi.os.StandbyState_State" json:"state,omitempty"`
	// contains filtered or unexported fields
}

func (*StandbyState) Descriptor deprecated

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

Deprecated: Use StandbyState.ProtoReflect.Descriptor instead.

func (*StandbyState) GetState

func (x *StandbyState) GetState() StandbyState_State

func (*StandbyState) ProtoMessage

func (*StandbyState) ProtoMessage()

func (*StandbyState) ProtoReflect

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

func (*StandbyState) Reset

func (x *StandbyState) Reset()

func (*StandbyState) String

func (x *StandbyState) String() string

type StandbyState_State

type StandbyState_State int32
const (
	StandbyState_UNSPECIFIED StandbyState_State = 0
	// The Target does not support dual Supervisors.
	StandbyState_UNSUPORTED StandbyState_State = 1
	// Standby Supervisor is supported but does not exist.
	StandbyState_NON_EXISTENT StandbyState_State = 2
	// Standby Supervisor is supported but is not available, eg.: rebooting.
	StandbyState_UNAVAILABLE StandbyState_State = 3
)

func (StandbyState_State) Descriptor

func (StandbyState_State) Enum

func (StandbyState_State) EnumDescriptor deprecated

func (StandbyState_State) EnumDescriptor() ([]byte, []int)

Deprecated: Use StandbyState_State.Descriptor instead.

func (StandbyState_State) Number

func (StandbyState_State) String

func (x StandbyState_State) String() string

func (StandbyState_State) Type

type SyncProgress

type SyncProgress struct {

	// The percentage that has transferred between Supervisors.
	PercentageTransferred uint32 `protobuf:"varint,1,opt,name=percentage_transferred,json=percentageTransferred,proto3" json:"percentage_transferred,omitempty"`
	// contains filtered or unexported fields
}

The SyncProgress message signals the Client about the progress of transferring the OS package between Supervisors.

func (*SyncProgress) Descriptor deprecated

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

Deprecated: Use SyncProgress.ProtoReflect.Descriptor instead.

func (*SyncProgress) GetPercentageTransferred

func (x *SyncProgress) GetPercentageTransferred() uint32

func (*SyncProgress) ProtoMessage

func (*SyncProgress) ProtoMessage()

func (*SyncProgress) ProtoReflect

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

func (*SyncProgress) Reset

func (x *SyncProgress) Reset()

func (*SyncProgress) String

func (x *SyncProgress) String() string

type TransferEnd

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

The TransferEnd message is sent whenever the Client finishes transferring the OS package to the Target. At this point the Target MUST perform a general health check to the OS package. If the Target fails to parse the OS package it MUST immediately reply with an InstallError->type->PARSE_FAIL. If the integrity check of the OS package fails it MUST immediately reply with an InstallError->type->INTEGRITY_FAIL. If the identified OS version contained in the package is not compatible with the Target either because of the platform type or the running OS, it MUST immediately reply with an InstallError->type->INCOMPATIBLE. If the image is force transferred by omitting the InstallRequest->TransferRequest->version value, and the OS package is the same as the one running in the Target, the RPC MUST immediately abort and reply with an InstallError->type->INSTALL_RUN_PACKAGE.

func (*TransferEnd) Descriptor deprecated

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

Deprecated: Use TransferEnd.ProtoReflect.Descriptor instead.

func (*TransferEnd) ProtoMessage

func (*TransferEnd) ProtoMessage()

func (*TransferEnd) ProtoReflect

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

func (*TransferEnd) Reset

func (x *TransferEnd) Reset()

func (*TransferEnd) String

func (x *TransferEnd) String() string

type TransferProgress

type TransferProgress struct {

	// The number of bytes transferred.
	BytesReceived uint64 `protobuf:"varint,1,opt,name=bytes_received,json=bytesReceived,proto3" json:"bytes_received,omitempty"`
	// contains filtered or unexported fields
}

The TransferProgress message is sent by the target asynchronously during a file transfer. The device SHOULD not respond to each input block received from the client, but rather determine reasonable intervals at which to send the message (e.g., 5MB).

func (*TransferProgress) Descriptor deprecated

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

Deprecated: Use TransferProgress.ProtoReflect.Descriptor instead.

func (*TransferProgress) GetBytesReceived

func (x *TransferProgress) GetBytesReceived() uint64

func (*TransferProgress) ProtoMessage

func (*TransferProgress) ProtoMessage()

func (*TransferProgress) ProtoReflect

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

func (*TransferProgress) Reset

func (x *TransferProgress) Reset()

func (*TransferProgress) String

func (x *TransferProgress) String() string

type TransferReady

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

The TransferReady message tells the Client that the Target is ready to accept the transfer of the OS package. At this stage the Target MUST have cleared enough space to accept the incoming OS package.

func (*TransferReady) Descriptor deprecated

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

Deprecated: Use TransferReady.ProtoReflect.Descriptor instead.

func (*TransferReady) ProtoMessage

func (*TransferReady) ProtoMessage()

func (*TransferReady) ProtoReflect

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

func (*TransferReady) Reset

func (x *TransferReady) Reset()

func (*TransferReady) String

func (x *TransferReady) String() string

type TransferRequest

type TransferRequest struct {

	// The version string is a vendor defined string that identifies the OS
	// version. It is provided by the vendor and embedded in the OS package. This
	// value states the desired OS package version to transfer to the Target. If
	// the Target already has the OS package version it will reply with
	// InstallResponse->Validated. In the case that the target is a
	// single Supervisor device, or the partner Supervisor does not have the OS
	// image specified, it will respond with InstallResponse->TransferReady. In
	// this case, the client MUST subsequently transfer the image. In the case
	// that the image is available on the peer Supervisor of a dual Supervisor
	// system, it will respond with InstallResponse->SyncProgress. In this,
	// latter, case - the client does not need to transfer the OS image. This
	// value can also be set empty, in which case the OS package is forced
	// transferred to the Target. The Target MUST never validate that this value
	// matches the one in the InstallResponse->Validated message, that is the
	// Client's responsibility.
	Version string `protobuf:"bytes,1,opt,name=version,proto3" json:"version,omitempty"`
	// For a Target with dual Supervisors setting this flag instructs the Target
	// to perform the action on the Standby Supervisor.
	StandbySupervisor bool `protobuf:"varint,2,opt,name=standby_supervisor,json=standbySupervisor,proto3" json:"standby_supervisor,omitempty"`
	// contains filtered or unexported fields
}

func (*TransferRequest) Descriptor deprecated

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

Deprecated: Use TransferRequest.ProtoReflect.Descriptor instead.

func (*TransferRequest) GetStandbySupervisor

func (x *TransferRequest) GetStandbySupervisor() bool

func (*TransferRequest) GetVersion

func (x *TransferRequest) GetVersion() string

func (*TransferRequest) ProtoMessage

func (*TransferRequest) ProtoMessage()

func (*TransferRequest) ProtoReflect

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

func (*TransferRequest) Reset

func (x *TransferRequest) Reset()

func (*TransferRequest) String

func (x *TransferRequest) String() string

type UnimplementedOSServer

type UnimplementedOSServer struct {
}

UnimplementedOSServer can be embedded to have forward compatible implementations.

func (*UnimplementedOSServer) Activate

func (*UnimplementedOSServer) Install

func (*UnimplementedOSServer) Verify

type Validated

type Validated struct {

	// The OS version string that identifies the OS version in the OS package.
	Version string `protobuf:"bytes,1,opt,name=version,proto3" json:"version,omitempty"`
	// Informational field that SHOULD be used for providing more details about
	// the OS package and its version. This MUST be strictly informational if
	// used, and can contain information such as build date, target platform,
	// developer, etc.
	Description string `protobuf:"bytes,2,opt,name=description,proto3" json:"description,omitempty"`
	// contains filtered or unexported fields
}

The Validated message asserts that the Target was able to parse the package and perform integrity checks to its contents.

func (*Validated) Descriptor deprecated

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

Deprecated: Use Validated.ProtoReflect.Descriptor instead.

func (*Validated) GetDescription

func (x *Validated) GetDescription() string

func (*Validated) GetVersion

func (x *Validated) GetVersion() string

func (*Validated) ProtoMessage

func (*Validated) ProtoMessage()

func (*Validated) ProtoReflect

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

func (*Validated) Reset

func (x *Validated) Reset()

func (*Validated) String

func (x *Validated) String() string

type VerifyRequest

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

func (*VerifyRequest) Descriptor deprecated

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

Deprecated: Use VerifyRequest.ProtoReflect.Descriptor instead.

func (*VerifyRequest) ProtoMessage

func (*VerifyRequest) ProtoMessage()

func (*VerifyRequest) ProtoReflect

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

func (*VerifyRequest) Reset

func (x *VerifyRequest) Reset()

func (*VerifyRequest) String

func (x *VerifyRequest) String() string

type VerifyResponse

type VerifyResponse struct {

	// The OS version currently running.
	Version string `protobuf:"bytes,1,opt,name=version,proto3" json:"version,omitempty"`
	// Informational message describing fail details of the last boot. This MUST
	// be set when a newly transferred OS fails to boot and the system falls back
	// to the previously running OS version. It MUST be cleared whenever the
	// systems successfully boots the activated OS version.
	ActivationFailMessage string         `` /* 126-byte string literal not displayed */
	VerifyStandby         *VerifyStandby `protobuf:"bytes,3,opt,name=verify_standby,json=verifyStandby,proto3" json:"verify_standby,omitempty"`
	// contains filtered or unexported fields
}

func (*VerifyResponse) Descriptor deprecated

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

Deprecated: Use VerifyResponse.ProtoReflect.Descriptor instead.

func (*VerifyResponse) GetActivationFailMessage

func (x *VerifyResponse) GetActivationFailMessage() string

func (*VerifyResponse) GetVerifyStandby

func (x *VerifyResponse) GetVerifyStandby() *VerifyStandby

func (*VerifyResponse) GetVersion

func (x *VerifyResponse) GetVersion() string

func (*VerifyResponse) ProtoMessage

func (*VerifyResponse) ProtoMessage()

func (*VerifyResponse) ProtoReflect

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

func (*VerifyResponse) Reset

func (x *VerifyResponse) Reset()

func (*VerifyResponse) String

func (x *VerifyResponse) String() string

type VerifyStandby

type VerifyStandby struct {

	// Types that are assignable to State:
	//	*VerifyStandby_StandbyState
	//	*VerifyStandby_VerifyResponse
	State isVerifyStandby_State `protobuf_oneof:"state"`
	// contains filtered or unexported fields
}

func (*VerifyStandby) Descriptor deprecated

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

Deprecated: Use VerifyStandby.ProtoReflect.Descriptor instead.

func (*VerifyStandby) GetStandbyState

func (x *VerifyStandby) GetStandbyState() *StandbyState

func (*VerifyStandby) GetState

func (m *VerifyStandby) GetState() isVerifyStandby_State

func (*VerifyStandby) GetVerifyResponse

func (x *VerifyStandby) GetVerifyResponse() *StandbyResponse

func (*VerifyStandby) ProtoMessage

func (*VerifyStandby) ProtoMessage()

func (*VerifyStandby) ProtoReflect

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

func (*VerifyStandby) Reset

func (x *VerifyStandby) Reset()

func (*VerifyStandby) String

func (x *VerifyStandby) String() string

type VerifyStandby_StandbyState

type VerifyStandby_StandbyState struct {
	StandbyState *StandbyState `protobuf:"bytes,1,opt,name=standby_state,json=standbyState,proto3,oneof"`
}

type VerifyStandby_VerifyResponse

type VerifyStandby_VerifyResponse struct {
	VerifyResponse *StandbyResponse `protobuf:"bytes,2,opt,name=verify_response,json=verifyResponse,proto3,oneof"`
}

Jump to

Keyboard shortcuts

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