Documentation
¶
Index ¶
- Constants
- func InstanceStatusEqual(l, r InstanceStatus) bool
- func IsInstanceAvailable(instance *Instance, minReadySeconds int32, now unversioned.Time) bool
- func IsInstanceReady(instance *Instance) bool
- func IsInstanceReadyConditionTrue(status InstanceStatus) bool
- type ConfigSpec
- type FileSpec
- type Instance
- func (x *Instance) CodecDecodeSelf(d *codec1978.Decoder)
- func (x *Instance) CodecEncodeSelf(e *codec1978.Encoder)
- func (i *Instance) GetInitializers() []string
- func (i Instance) GetObjectKind() unversioned.ObjectKind
- func (i Instance) GetObjectMeta() meta.Object
- func (i *Instance) SetInitializers(is []string)
- type InstanceCondition
- type InstanceConditionType
- type InstanceDependency
- type InstanceGroup
- type InstanceGroupCondition
- type InstanceGroupConditionType
- type InstanceGroupList
- type InstanceGroupSpec
- type InstanceGroupStatus
- type InstanceList
- type InstanceOptions
- type InstancePhase
- type InstanceSpec
- type InstanceStatus
- type InstanceTemplateSpec
- type LocalObjectReference
- type Network
- type NetworkList
- type NetworkPhase
- type NetworkSpec
- type NetworkStatus
- type User
- type UserList
- type UserSpec
Constants ¶
const AnnotationPrefix = "archon.kubeup.com/"
const InitializerKey = "initializers"
Variables ¶
This section is empty.
Functions ¶
func InstanceStatusEqual ¶
func InstanceStatusEqual(l, r InstanceStatus) bool
func IsInstanceAvailable ¶
func IsInstanceAvailable(instance *Instance, minReadySeconds int32, now unversioned.Time) bool
IsInstanceAvailable returns true if a instance is available; false otherwise. Precondition for an available instance is that it must be ready. On top of that, there are two cases when a instance can be considered available: 1. minReadySeconds == 0, or 2. LastTransitionTime (is set) + minReadySeconds < current time
func IsInstanceReady ¶
IsInstanceReady returns true if a instance is ready; false otherwise.
func IsInstanceReadyConditionTrue ¶
func IsInstanceReadyConditionTrue(status InstanceStatus) bool
IsInstanceReady retruns true if a instance is ready; false otherwise.
Types ¶
type ConfigSpec ¶
type ConfigSpec struct { Name string `json:"name,omitempty"` Data map[string]string `json:"data,omitempty"` }
func (*ConfigSpec) CodecDecodeSelf ¶
func (x *ConfigSpec) CodecDecodeSelf(d *codec1978.Decoder)
func (*ConfigSpec) CodecEncodeSelf ¶
func (x *ConfigSpec) CodecEncodeSelf(e *codec1978.Encoder)
type FileSpec ¶
type FileSpec struct { Name string `json:"name,omitempty" yaml:"name,omitempty"` Encoding string `` /* 128-byte string literal not displayed */ Content string `json:"content,omitempty" yaml:"content,omitempty"` Template string `json:"template,omitempty" yaml:"template,omitempty"` Owner string `json:"owner,omitempty" yaml:"owner,omitempty"` Path string `json:"path,omitempty" yaml:"path,omitempty"` RawFilePermissions string `json:"permissions,omitempty" yaml:"permissions,omitempty" valid:"^0?[0-7]{3,4}$"` }
func (*FileSpec) CodecDecodeSelf ¶
func (*FileSpec) CodecEncodeSelf ¶
type Instance ¶
type Instance struct { unversioned.TypeMeta `json:",inline"` api.ObjectMeta `json:"metadata"` Spec InstanceSpec `json:"spec,omitempty"` Status InstanceStatus `json:"status,omitempty"` Dependency InstanceDependency `json:"-"` }
func (*Instance) CodecDecodeSelf ¶
func (*Instance) CodecEncodeSelf ¶
func (*Instance) GetInitializers ¶
Just a substitute when native initializer/finalizer for tpr is not ready
func (Instance) GetObjectKind ¶
func (i Instance) GetObjectKind() unversioned.ObjectKind
func (Instance) GetObjectMeta ¶
func (*Instance) SetInitializers ¶
type InstanceCondition ¶
type InstanceCondition struct { Type InstanceConditionType `json:"type"` Status api.ConditionStatus `json:"status"` // +optional LastProbeTime unversioned.Time `json:"lastProbeTime,omitempty"` // +optional LastTransitionTime unversioned.Time `json:"lastTransitionTime,omitempty"` // +optional Reason string `json:"reason,omitempty"` // +optional Message string `json:"message,omitempty"` }
func GetInstanceCondition ¶
func GetInstanceCondition(status *InstanceStatus, conditionType InstanceConditionType) (int, *InstanceCondition)
GetInstanceCondition extracts the provided condition from the given status and returns that. Returns nil and -1 if the condition is not present, and the index of the located condition.
func GetInstanceReadyCondition ¶
func GetInstanceReadyCondition(status InstanceStatus) *InstanceCondition
Extracts the instance ready condition from the given status and returns that. Returns nil if the condition is not present.
func (*InstanceCondition) CodecDecodeSelf ¶
func (x *InstanceCondition) CodecDecodeSelf(d *codec1978.Decoder)
func (*InstanceCondition) CodecEncodeSelf ¶
func (x *InstanceCondition) CodecEncodeSelf(e *codec1978.Encoder)
type InstanceConditionType ¶
type InstanceConditionType string
const ( // InstanceScheduled represents status of the scheduling process for this instance. InstanceScheduled InstanceConditionType = "InstanceScheduled" // InstanceReady means the instance is able to service requests and should be added to the // load balancing pools of all matching services. InstanceReady InstanceConditionType = "Ready" // InstanceInitialized means that all init containers in the instance have started successfully. InstanceInitialized InstanceConditionType = "Initialized" // InstanceReasonUnschedulable reason in InstanceScheduled InstanceCondition means that the scheduler // can't schedule the instance right now, for example due to insufficient resources in the cluster. InstanceReasonUnschedulable = "Unschedulable" )
These are valid conditions of instance.
func (*InstanceConditionType) CodecDecodeSelf ¶
func (x *InstanceConditionType) CodecDecodeSelf(d *codec1978.Decoder)
func (InstanceConditionType) CodecEncodeSelf ¶
func (x InstanceConditionType) CodecEncodeSelf(e *codec1978.Encoder)
type InstanceDependency ¶
type InstanceDependency struct { Network Network `json:"network,omitempty"` Secrets []api.Secret `json:"secrets,omitempty"` Users []User `json:"users,omitempty"` }
func (*InstanceDependency) CodecDecodeSelf ¶
func (x *InstanceDependency) CodecDecodeSelf(d *codec1978.Decoder)
func (*InstanceDependency) CodecEncodeSelf ¶
func (x *InstanceDependency) CodecEncodeSelf(e *codec1978.Encoder)
type InstanceGroup ¶
type InstanceGroup struct { unversioned.TypeMeta `json:",inline"` api.ObjectMeta `json:"metadata"` Spec InstanceGroupSpec `json:"spec,omitempty"` Status InstanceGroupStatus `json:"status,omitempty"` }
func (*InstanceGroup) CodecDecodeSelf ¶
func (x *InstanceGroup) CodecDecodeSelf(d *codec1978.Decoder)
func (*InstanceGroup) CodecEncodeSelf ¶
func (x *InstanceGroup) CodecEncodeSelf(e *codec1978.Encoder)
func (InstanceGroup) GetObjectKind ¶
func (i InstanceGroup) GetObjectKind() unversioned.ObjectKind
func (InstanceGroup) GetObjectMeta ¶
func (i InstanceGroup) GetObjectMeta() meta.Object
type InstanceGroupCondition ¶
type InstanceGroupCondition struct { // Type of replica set condition. Type InstanceGroupConditionType `json:"type"` // Status of the condition, one of True, False, Unknown. Status api.ConditionStatus `json:"status"` // The last time the condition transitioned from one status to another. // +optional LastTransitionTime unversioned.Time `json:"lastTransitionTime,omitempty"` // The reason for the condition's last transition. // +optional Reason string `json:"reason,omitempty"` // A human readable message indicating details about the transition. // +optional Message string `json:"message,omitempty"` }
InstanceGroupCondition describes the state of a replica set at a certain point.
func (*InstanceGroupCondition) CodecDecodeSelf ¶
func (x *InstanceGroupCondition) CodecDecodeSelf(d *codec1978.Decoder)
func (*InstanceGroupCondition) CodecEncodeSelf ¶
func (x *InstanceGroupCondition) CodecEncodeSelf(e *codec1978.Encoder)
type InstanceGroupConditionType ¶
type InstanceGroupConditionType string
const ( // InstanceGroupReplicaFailure is added in a replica set when one of its instances fails to be created // due to insufficient quota, limit ranges, instance security policy, node selectors, etc. or deleted // due to kubelet being down or finalizers are failing. InstanceGroupReplicaFailure InstanceGroupConditionType = "ReplicaFailure" )
These are valid conditions of a replica set.
func (*InstanceGroupConditionType) CodecDecodeSelf ¶
func (x *InstanceGroupConditionType) CodecDecodeSelf(d *codec1978.Decoder)
func (InstanceGroupConditionType) CodecEncodeSelf ¶
func (x InstanceGroupConditionType) CodecEncodeSelf(e *codec1978.Encoder)
type InstanceGroupList ¶
type InstanceGroupList struct { unversioned.TypeMeta `json:",inline"` unversioned.ListMeta `json:"metadata"` Items []*InstanceGroup `json:"items"` }
func (*InstanceGroupList) CodecDecodeSelf ¶
func (x *InstanceGroupList) CodecDecodeSelf(d *codec1978.Decoder)
func (*InstanceGroupList) CodecEncodeSelf ¶
func (x *InstanceGroupList) CodecEncodeSelf(e *codec1978.Encoder)
func (InstanceGroupList) GetObjectKind ¶
func (il InstanceGroupList) GetObjectKind() unversioned.ObjectKind
func (InstanceGroupList) GetObjectMeta ¶
func (il InstanceGroupList) GetObjectMeta() unversioned.List
type InstanceGroupSpec ¶
type InstanceGroupSpec struct { Replicas int32 `json:"replicas,omitempty"` // Minimum number of seconds for which a newly created instance should be ready // without any of its container crashing, for it to be considered available. // Defaults to 0 (instance will be considered available as soon as it is ready) // +optional MinReadySeconds int32 `json:"minReadySeconds,omitempty"` Selector *unversioned.LabelSelector `json:"selector,omitempty"` Template InstanceTemplateSpec `json:"template,omitempty"` }
func (*InstanceGroupSpec) CodecDecodeSelf ¶
func (x *InstanceGroupSpec) CodecDecodeSelf(d *codec1978.Decoder)
func (*InstanceGroupSpec) CodecEncodeSelf ¶
func (x *InstanceGroupSpec) CodecEncodeSelf(e *codec1978.Encoder)
type InstanceGroupStatus ¶
type InstanceGroupStatus struct { // Replicas is the number of actual replicas. Replicas int32 `json:"replicas"` // The number of instances that have labels matching the labels of the instance template of the instancegroup. // +optional FullyLabeledReplicas int32 `json:"fullyLabeledReplicas,omitempty"` // The number of ready replicas for this replica set. // +optional ReadyReplicas int32 `json:"readyReplicas,omitempty"` // The number of available replicas (ready for at least minReadySeconds) for this replica set. // +optional AvailableReplicas int32 `json:"availableReplicas,omitempty"` // ObservedGeneration is the most recent generation observed by the controller. // +optional ObservedGeneration int64 `json:"observedGeneration,omitempty"` Conditions []InstanceGroupCondition `json:"conditions,omitempty" patchStrategy:"merge" patchMergeKey:"type"` }
func (*InstanceGroupStatus) CodecDecodeSelf ¶
func (x *InstanceGroupStatus) CodecDecodeSelf(d *codec1978.Decoder)
func (*InstanceGroupStatus) CodecEncodeSelf ¶
func (x *InstanceGroupStatus) CodecEncodeSelf(e *codec1978.Encoder)
type InstanceList ¶
type InstanceList struct { unversioned.TypeMeta `json:",inline"` unversioned.ListMeta `json:"metadata"` Items []*Instance `json:"items"` }
func (*InstanceList) CodecDecodeSelf ¶
func (x *InstanceList) CodecDecodeSelf(d *codec1978.Decoder)
func (*InstanceList) CodecEncodeSelf ¶
func (x *InstanceList) CodecEncodeSelf(e *codec1978.Encoder)
func (InstanceList) GetObjectKind ¶
func (il InstanceList) GetObjectKind() unversioned.ObjectKind
func (InstanceList) GetObjectMeta ¶
func (il InstanceList) GetObjectMeta() unversioned.List
type InstanceOptions ¶
type InstanceOptions struct {
UsePrivateIP string `k8s:"use-private-ip"`
}
func (*InstanceOptions) CodecDecodeSelf ¶
func (x *InstanceOptions) CodecDecodeSelf(d *codec1978.Decoder)
func (*InstanceOptions) CodecEncodeSelf ¶
func (x *InstanceOptions) CodecEncodeSelf(e *codec1978.Encoder)
type InstancePhase ¶
type InstancePhase string
const ( InstancePending InstancePhase = "" InstanceInitializing InstancePhase = "Initializing" InstanceRunning InstancePhase = "Running" InstanceFailed InstancePhase = "Failed" InstanceUnknown InstancePhase = "Unknown" )
func (*InstancePhase) CodecDecodeSelf ¶
func (x *InstancePhase) CodecDecodeSelf(d *codec1978.Decoder)
func (InstancePhase) CodecEncodeSelf ¶
func (x InstancePhase) CodecEncodeSelf(e *codec1978.Encoder)
type InstanceSpec ¶
type InstanceSpec struct { OS string `json:"os,omitempty"` Image string `json:"image,omitempty"` InstanceType string `json:"instanceType,omitempty"` NetworkName string `json:"networkName,omitempty"` Files []FileSpec `json:"files,omitempty"` Secrets []LocalObjectReference `json:"secrets,omitempty"` Configs []ConfigSpec `json:"configs,omitempty"` Users []LocalObjectReference `json:"users,omitempty"` Hostname string `json:"hostname,omitempty"` }
func (*InstanceSpec) CodecDecodeSelf ¶
func (x *InstanceSpec) CodecDecodeSelf(d *codec1978.Decoder)
func (*InstanceSpec) CodecEncodeSelf ¶
func (x *InstanceSpec) CodecEncodeSelf(e *codec1978.Encoder)
type InstanceStatus ¶
type InstanceStatus struct { Phase InstancePhase `json:"phase,omitempty"` Conditions []InstanceCondition `json:"conditions,omitempty"` // TODO: allow multiple ips PrivateIP string `json:"privateIP,omitempty"` PublicIP string `json:"publicIP,omitempty"` InstanceID string `json:"instanceID,omitempty"` CreationTimestamp unversioned.Time `json:"creationTimestamp,omitempty" protobuf:"bytes,8,opt,name=creationTimestamp"` }
func InstanceStatusDeepCopy ¶
func InstanceStatusDeepCopy(s *InstanceStatus) *InstanceStatus
func (*InstanceStatus) CodecDecodeSelf ¶
func (x *InstanceStatus) CodecDecodeSelf(d *codec1978.Decoder)
func (*InstanceStatus) CodecEncodeSelf ¶
func (x *InstanceStatus) CodecEncodeSelf(e *codec1978.Encoder)
type InstanceTemplateSpec ¶
type InstanceTemplateSpec struct { api.ObjectMeta `json:"metadata"` Spec InstanceSpec `json:"spec,omitempty"` Secrets []api.Secret `json:"secrets,omitempty"` }
func (*InstanceTemplateSpec) CodecDecodeSelf ¶
func (x *InstanceTemplateSpec) CodecDecodeSelf(d *codec1978.Decoder)
func (*InstanceTemplateSpec) CodecEncodeSelf ¶
func (x *InstanceTemplateSpec) CodecEncodeSelf(e *codec1978.Encoder)
type LocalObjectReference ¶
type LocalObjectReference struct { //TODO: Add other useful fields. apiVersion, kind, uid? Name string `json:"name,omitempty"` }
LocalObjectReference contains enough information to let you locate the referenced object inside the same namespace.
func (*LocalObjectReference) CodecDecodeSelf ¶
func (x *LocalObjectReference) CodecDecodeSelf(d *codec1978.Decoder)
func (*LocalObjectReference) CodecEncodeSelf ¶
func (x *LocalObjectReference) CodecEncodeSelf(e *codec1978.Encoder)
type Network ¶
type Network struct { unversioned.TypeMeta `json:",inline"` api.ObjectMeta `json:"metadata"` Spec NetworkSpec `json:"spec,omitempty"` Status NetworkStatus `json:"status,omitempty"` }
func (*Network) CodecDecodeSelf ¶
func (*Network) CodecEncodeSelf ¶
func (Network) GetObjectKind ¶
func (i Network) GetObjectKind() unversioned.ObjectKind
func (Network) GetObjectMeta ¶
type NetworkList ¶
type NetworkList struct { unversioned.TypeMeta `json:",inline"` unversioned.ListMeta `json:"metadata"` Items []*Network `json:"items"` }
func (*NetworkList) CodecDecodeSelf ¶
func (x *NetworkList) CodecDecodeSelf(d *codec1978.Decoder)
func (*NetworkList) CodecEncodeSelf ¶
func (x *NetworkList) CodecEncodeSelf(e *codec1978.Encoder)
func (NetworkList) GetObjectKind ¶
func (il NetworkList) GetObjectKind() unversioned.ObjectKind
func (NetworkList) GetObjectMeta ¶
func (il NetworkList) GetObjectMeta() unversioned.List
type NetworkPhase ¶
type NetworkPhase string
const ( NetworkPending NetworkPhase = "Pending" NetworkRunning NetworkPhase = "Running" NetworkFailed NetworkPhase = "Failed" NetworkUnknown NetworkPhase = "Unknown" )
func (*NetworkPhase) CodecDecodeSelf ¶
func (x *NetworkPhase) CodecDecodeSelf(d *codec1978.Decoder)
func (NetworkPhase) CodecEncodeSelf ¶
func (x NetworkPhase) CodecEncodeSelf(e *codec1978.Encoder)
type NetworkSpec ¶
type NetworkSpec struct { Region string `k8s:"region" json:"region,omitempty"` Zone string `k8s:"zone" json:"zone,omitempty"` Subnet string `k8s:"subnet" json:"subnet,omitempty"` }
func (*NetworkSpec) CodecDecodeSelf ¶
func (x *NetworkSpec) CodecDecodeSelf(d *codec1978.Decoder)
func (*NetworkSpec) CodecEncodeSelf ¶
func (x *NetworkSpec) CodecEncodeSelf(e *codec1978.Encoder)
type NetworkStatus ¶
type NetworkStatus struct {
Phase NetworkPhase `json:"phase,omitempty"`
}
func NetworkStatusDeepCopy ¶
func NetworkStatusDeepCopy(s *NetworkStatus) *NetworkStatus
func (*NetworkStatus) CodecDecodeSelf ¶
func (x *NetworkStatus) CodecDecodeSelf(d *codec1978.Decoder)
func (*NetworkStatus) CodecEncodeSelf ¶
func (x *NetworkStatus) CodecEncodeSelf(e *codec1978.Encoder)
type User ¶
type User struct { unversioned.TypeMeta `json:",inline"` api.ObjectMeta `json:"metadata"` Spec UserSpec `json:"spec"` }
func (*User) CodecDecodeSelf ¶
func (*User) CodecEncodeSelf ¶
func (User) GetObjectKind ¶
func (i User) GetObjectKind() unversioned.ObjectKind
func (User) GetObjectMeta ¶
type UserList ¶
type UserList struct { unversioned.TypeMeta `json:",inline"` unversioned.ListMeta `json:"metadata"` Items []*User `json:"items"` }
func (*UserList) CodecDecodeSelf ¶
func (*UserList) CodecEncodeSelf ¶
func (UserList) GetObjectKind ¶
func (il UserList) GetObjectKind() unversioned.ObjectKind
func (UserList) GetObjectMeta ¶
func (il UserList) GetObjectMeta() unversioned.List
type UserSpec ¶
type UserSpec struct { Name string `json:"name,omitempty"` PasswordHash string `json:"passwordHash,omitempty"` SSHAuthorizedKeys []string `json:"sshAuthorizedKeys,omitempty"` }