Documentation ¶
Index ¶
- type ActionConfig
- type ActionType
- type AffinityType
- type CRDColumn
- type CRDConfig
- type CRDConversionStraegyType
- type CRDScaleSubresources
- type CRDScopeType
- type CRDVersion
- type ClusterRoleBindingConfig
- type ClusterRoleConfig
- type ComponentType
- type ConfigMapConfig
- type ConfigMapOrSecretVolumeConfig
- type ContainerConfig
- type DNSPolicyType
- type DaemonSetConfig
- type DaemonSetUpdateStrategyType
- type DeployableComponentInterface
- type DeployerControllerInterface
- type DeployerResources
- type DeploymentConfig
- type DeploymentStrategyType
- type EmptyDirVolumeConfig
- type EnvConfig
- type EnvType
- type ExpressionRequirementConfig
- type ExpressionRequirementOp
- type GCEPersistentDiskVolumeConfig
- type HPAConfig
- type HTTPIngressPathConfig
- type HostAliasConfig
- type HostModeType
- type HostPathType
- type HostPathVolumeConfig
- type IngressConfig
- type IngressHostRuleConfig
- type IngressTLSConfig
- type JobConfig
- type KeyPath
- type LoadBalancerConfig
- type MountPropagationType
- type NamespaceConfig
- type NodeAffinityConfig
- type NodeExpression
- type NodeOperator
- type PVCAccessModeType
- type PVCConfig
- type PVCMode
- type PVCVolumeConfig
- type PodAffinityConfig
- type PodConfig
- type PodDNSConfig
- type PodManagementPolicyType
- type PolicyRuleConfig
- type PortConfig
- type ProbeConfig
- type ProcMountType
- type ProtocolType
- type PullPolicyType
- type ReplicationControllerConfig
- type RestartPolicyType
- type RoleBindingConfig
- type RoleConfig
- type RoleRefConfig
- type SELinuxType
- type SecretConfig
- type SecretType
- type SelectorConfig
- type ServiceAccountConfig
- type ServiceAccountSecretConfig
- type ServiceAffinityType
- type ServiceConfig
- type ServicePortConfig
- type ServiceType
- type StatefulSetConfig
- type StatefulSetUpdateStrategyType
- type StorageMediumType
- type SubjectConfig
- type TerminationMessagePolicyType
- type TolerationConfig
- type TolerationEffectType
- type TolerationOpType
- type TrafficPolicyType
- type VolumeDeviceConfig
- type VolumeMountConfig
Constants ¶
This section is empty.
Variables ¶
This section is empty.
Functions ¶
This section is empty.
Types ¶
type ActionConfig ¶
type ActionConfig struct { Type ActionType Command []string Headers map[string]string Host string Port string Path string }
ActionConfig defines the configuration for an action (ie on-start, pre-stop)
type ActionType ¶
type ActionType int
ActionType defines the type of action
const ( ActionTypeCommand ActionType = iota + 1 ActionTypeHTTP ActionTypeHTTPS ActionTypeTCP )
type AffinityType ¶
type AffinityType int
AffinityType defines the type of affinity
const ( AffinityHard AffinityType = iota + 1 AffinitySoft )
type CRDColumn ¶
type CRDColumn struct { Name string Type string Format string Description string Priority int32 Path string }
CRDColumn specifies a column for server side printing of a custom resource definition
type CRDConfig ¶
type CRDConfig struct { Name string Namespace string APIVersion string ClusterName string Group string CRDVersion string Plural string Singular string ShortNames []string Kind string ListKind string Categories []string ScaleSubresources *CRDScaleSubresources Versions []CRDVersion Validation *apiext.JSONSchemaProps Scope CRDScopeType ExtraColumns []CRDColumn ConversionStrategy CRDConversionStraegyType ConversionWebhookURL *string ConversionWebhookServiceNamespace string ConversionWebhookServiceName string ConversionWebhookServicePath *string ConversionWebhookCABundle []byte ConversionReviewVersions []string }
CRDConfig defines the configuration for a custom defined resource
type CRDConversionStraegyType ¶
type CRDConversionStraegyType int
CRDConversionStraegyType defines the type of conversion strategy for the custom resource
const ( CRDConversionStraegyTypeNone CRDConversionStraegyType = iota + 1 CRDConversionStraegyTypeWebhook )
type CRDScaleSubresources ¶
CRDScaleSubresources defines how to serve the scale subresource for the scale subresource of custom resources
type CRDScopeType ¶
type CRDScopeType int
CRDScopeType defines the scope of the custom resource definition
const ( CRDClusterScoped CRDScopeType = iota + 1 CRDNamespaceScoped )
type CRDVersion ¶
type CRDVersion struct { Name string Enabled bool Storage bool Schema *apiext.JSONSchemaProps ScaleSubresources *CRDScaleSubresources ExtraColumns []CRDColumn }
CRDVersion defines a version for a custom resource definition
type ClusterRoleBindingConfig ¶
type ClusterRoleBindingConfig struct { APIVersion string ClusterName string Name string Namespace string }
ClusterRoleBindingConfig defines the base configuration for a cluster role binding
type ClusterRoleConfig ¶
ClusterRoleConfig defines the basic configuration for a cluster role
type ComponentType ¶
type ComponentType string
ComponentType defines the component type
const ( DeploymentComponent ComponentType = "Deployment" PodComponent ComponentType = "Pod" ConfigMapComponent ComponentType = "ConfigMap" SecretComponent ComponentType = "Secret" ServiceComponent ComponentType = "Service" ServiceAccountComponent ComponentType = "ServiceAccount" ClusterRoleComponent ComponentType = "ClusterRole" ClusterRoleBindingComponent ComponentType = "ClusterRoleBinding" RoleComponent ComponentType = "Role" RoleBindingComponent ComponentType = "RoleBinding" ReplicationControllerComponent ComponentType = "ReplicationController" CRDComponent ComponentType = "CustomResourceDefinition" Controller ComponentType = "Controller" NamespaceComponent ComponentType = "Namespace" PersistentVolumeClaimComponent ComponentType = "PersistentVolumeClaim" JobComponent ComponentType = "Job" HorizontalPodAutoscalerComponent ComponentType = "HorizontalPodAutoscaler" IngressComponent ComponentType = "Ingress" StatefulSetComponent ComponentType = "StatefulSetIngress" DaemonSetComponent ComponentType = "DaemonSetIngress" )
type ConfigMapConfig ¶
ConfigMapConfig defines the basic configuration for a config map
type ConfigMapOrSecretVolumeConfig ¶
type ConfigMapOrSecretVolumeConfig struct { VolumeName string MapOrSecretName string Items []KeyPath DefaultMode *int32 Optional *bool }
ConfigMapOrSecretVolumeConfig defines the configuration for a config map or secret
type ContainerConfig ¶
type ContainerConfig struct { Name string Args []string Command []string Image string PullPolicy PullPolicyType MinCPU string MaxCPU string MinMem string MaxMem string Privileged *bool AllowPrivilegeEscalation *bool ReadOnlyFS *bool ForceNonRoot *bool SELinux *SELinuxType UID *int64 GID *int64 AllocateStdin bool StdinOnce bool AllocateTTY bool WorkingDirectory string TerminationMsgPath string TerminationMsgPolicy TerminationMessagePolicyType ProcMount *ProcMountType }
ContainerConfig defines the basic configuration for a container
type DNSPolicyType ¶
type DNSPolicyType int
DNSPolicyType defines the pod DNS policy
const ( DNSClusterFirstWithHostNet DNSPolicyType = iota + 1 DNSClusterFirst DNSDefault )
type DaemonSetConfig ¶
type DaemonSetConfig struct { APIVersion string ClusterName string Name string Namespace string Strategy DaemonSetUpdateStrategyType MinReadySeconds int32 RevisionHistoryLimit *int32 }
DaemonSetConfig defines the basic configuration for a daemon set
type DaemonSetUpdateStrategyType ¶
type DaemonSetUpdateStrategyType int
DaemonSetUpdateStrategyType defines the update strategy for the stateful set
const ( DaemonSetUpdateStrategyRollingUpdate DaemonSetUpdateStrategyType = iota + 1 DaemonSetUpdateStrategyOnDelete )
type DeployableComponentInterface ¶
type DeployableComponentInterface interface { runtime.Object GetName() string Deploy(DeployerResources) error Undeploy(DeployerResources) error }
DeployableComponentInterface defines an interface a component must support in order for the deployer to deploy it
type DeployerControllerInterface ¶
type DeployerControllerInterface interface {
Run(DeployerResources, chan struct{}) error
}
DeployerControllerInterface defines the interface for controllers
type DeployerResources ¶
type DeployerResources struct { KubeClient *kubernetes.Clientset KubeExtensionsClient *extensionsclient.Clientset }
DeployerResources defines the resources the deployer will provide
type DeploymentConfig ¶
type DeploymentConfig struct { APIVersion string ClusterName string Name string Namespace string Replicas *int32 Strategy DeploymentStrategyType MaxExtra string MinReadySeconds int32 RevisionHistoryLimit *int32 Paused bool ProgressDeadlineSeconds *int32 }
DeploymentConfig defines the basic configuration for a deployment
type DeploymentStrategyType ¶
type DeploymentStrategyType int
const ( DeploymentStrategyTypeRecreate DeploymentStrategyType = iota + 1 DeploymentStrategyTypeRollingUpdate )
type EmptyDirVolumeConfig ¶
type EmptyDirVolumeConfig struct { VolumeName string Medium StorageMediumType SizeLimit string }
EmptyDirVolumeConfig defines the configuration for an EmptyDir volume
type EnvConfig ¶
type EnvConfig struct { NameOrPrefix string Type EnvType KeyOrVal string FromName string Optional *bool }
EnvConfig defines environment variable configuration
type EnvType ¶
type EnvType int
EnvType defines the type of environemnt configuration
const ( EnvVal EnvType = iota + 1 EnvFromConfigMap EnvFromSecret EnvFromCPULimits EnvFromMemLimits EnvFromEphemeralStorageLimits EnvFromCPURequests EnvFromMemRequests EnvFromEphemeralStorageRequests EnvFromName EnvFromNamespace EnvFromLabels EnvFromAnnotation EnvFromNodename EnvFromServiceAccountName EnvFromHostIP EnvFromPodIP )
type ExpressionRequirementConfig ¶
type ExpressionRequirementConfig struct { Key string Op ExpressionRequirementOp Values []string }
ExpressionRequirementConfig defines the configuration for an expression
type ExpressionRequirementOp ¶
type ExpressionRequirementOp int
A ExpressionRequirementOp is the set of operators that can be used in a selector requirement
const ( ExpressionRequirementOpIn ExpressionRequirementOp = iota + 1 ExpressionRequirementOpNotIn ExpressionRequirementOpExists ExpressionRequirementOpDoesNotExist )
type GCEPersistentDiskVolumeConfig ¶
type GCEPersistentDiskVolumeConfig struct { VolumeName string DiskName string FSType string Partition int32 ReadOnly bool }
GCEPersistentDiskVolumeConfig defines the configuraton for a GCE Persistent Disk volume
type HPAConfig ¶
type HPAConfig struct { APIVersion string ClusterName string Name string Namespace string MinReplicas *int32 MaxReplicas int32 TargetCPUUtilizationPercentage *int32 ScaleTargetKind string ScaleTargetName string ScaleTargetAPIVersion string }
HPAConfig defines the basic configuration for a horizontal pod autoscaler
type HTTPIngressPathConfig ¶
HTTPIngressPathConfig defines a collection of paths that map requests to backends
type HostAliasConfig ¶
HostAliasConfig defines the configuration for a host alias on a pod
type HostModeType ¶
type HostModeType int
HostModeType defines the host mode for the pod
const ( HostModeNet HostModeType = iota + 1 HostModePID HostModeIPC )
type HostPathType ¶
type HostPathType int
HostPathType defines the type of HostPath
const ( HostPathUnset HostPathType = iota + 1 HostPathDirectoryOrCreate HostPathDirectory HostPathFileOrCreate HostPathFile HostPathSocket HostPathCharDev HostPathBlockDev )
type HostPathVolumeConfig ¶
type HostPathVolumeConfig struct { VolumeName string Path string Type HostPathType }
HostPathVolumeConfig defines the configuration for a HostPath volume
type IngressConfig ¶
type IngressConfig struct { APIVersion string ClusterName string Name string Namespace string ServiceName string ServicePort string }
IngressConfig defines the basic configuration for an ingress
type IngressHostRuleConfig ¶
type IngressHostRuleConfig struct { Host string Paths []HTTPIngressPathConfig }
IngressHostRuleConfig defines the rules mapping the paths under a specified host to the related backend services
type IngressTLSConfig ¶
IngressTLSConfig defines the configuration for TLS for the ingress
type JobConfig ¶
type JobConfig struct { APIVersion string ClusterName string Name string Namespace string Parallelism *int32 Completions *int32 MaxRetries *int32 ActiveDeadlineSeconds *int64 SelectManually *bool DeletionTTL *int32 }
JobConfig defines the basic configuration for a job
type LoadBalancerConfig ¶
LoadBalancerConfig defines the configuration for a load balancer to use with a service
type MountPropagationType ¶
type MountPropagationType int
MountPropagationType defines the type of mount propagation for the volume mount
const ( MountPropagationHostToContainer MountPropagationType = iota + 1 MountPropagationBidirectional MountPropagationNone )
type NamespaceConfig ¶
NamespaceConfig defines the configuration for a namespace
type NodeAffinityConfig ¶
type NodeAffinityConfig struct { Weight int32 Expressions []NodeExpression Fields []NodeExpression }
NodeAffinityConfig defines the configuration for a node affinity
type NodeExpression ¶
type NodeExpression struct { Key string Op NodeOperator Values []string }
NodeExpression defines the configuration for a node expresion
type NodeOperator ¶
type NodeOperator int
NodeOperator defines the valid operators in a node expression
const ( NodeOperatorIn NodeOperator = iota + 1 NodeOperatorNotIn NodeOperatorExists NodeOperatorDoesNotExist NodeOperatorGt NodeOperatorLt )
type PVCAccessModeType ¶
type PVCAccessModeType int
PVCAccessModeType defines the access mode for the persistent volume claim
const ( ReadWriteOnce PVCAccessModeType = iota + 1 ReadOnlyMany ReadWriteMany )
type PVCConfig ¶
type PVCConfig struct { APIVersion string ClusterName string Name string Namespace string Class *string VolumeName string Size string Mode PVCMode DataSourceAPIGroup *string DataSourceKind string DataSourceName string }
PVCConfig defines the configuration for a persistent volume claim
type PVCVolumeConfig ¶
PVCVolumeConfig defines the configuration for a persistent volume claim
type PodAffinityConfig ¶
type PodAffinityConfig struct { Weight int32 Selector SelectorConfig Topology string Namespaces []string }
PodAffinityConfig defines the configuration for a pod affinity or antiaffinity
type PodConfig ¶
type PodConfig struct { APIVersion string ClusterName string Name string Namespace string ServiceAccount string RestartPolicy RestartPolicyType TerminationGracePeriod *int64 ActiveDeadline *int64 Node string FSGID *int64 Hostname string SchedulerName string DNSPolicy DNSPolicyType PriorityValue *int32 PriorityClass string SELinux *SELinuxType RunAsUser *int64 RunAsGroup *int64 ForceNonRoot *bool MountSAToken *bool RuntimeClass *string ServiceLinks *bool }
PodConfig defines the basic configuration for a pod
type PodDNSConfig ¶
type PodDNSConfig struct { Nameservers []string SearchDomains []string ResolverOptions map[string]string }
PodDNSConfig defines the dns configuration for a pod
type PodManagementPolicyType ¶
type PodManagementPolicyType int
PodManagementPolicyType defines the pod managagement policy for the stateful set
const ( PodManagementPolicyOrdered PodManagementPolicyType = iota + 1 PodManagementPolicyParallel )
type PolicyRuleConfig ¶
type PolicyRuleConfig struct { Verbs []string APIGroups []string Resources []string ResourceNames []string NonResourceURLs []string }
PolicyRuleConfig defines the configuration for a policy rule
type PortConfig ¶
type PortConfig struct { Name string Protocol ProtocolType IP string HostPort int32 ContainerPort int32 }
PortConfig defines the configuration for a port
type ProbeConfig ¶
type ProbeConfig struct { ActionConfig Delay int32 Interval int32 MinCountSuccess int32 MinCountFailure int32 Timeout int32 }
ProbeConfig defines the configuration for a probe
type ProcMountType ¶
type ProcMountType int
ProcMountType defines the type of proc mount to use for the container
const ( ProcMountTypeDefault ProcMountType = iota + 1 ProcMountTypeUmasked )
type ProtocolType ¶
type ProtocolType int
ProtocolType defines the type of protocols
const ( ProtocolTCP ProtocolType = iota + 1 ProtocolUDP ProtocolSCTP )
type PullPolicyType ¶
type PullPolicyType int
PullPolicyType defines the type of pull policy
const ( PullAlways PullPolicyType = iota + 1 PullNever PullIfNotPresent )
type ReplicationControllerConfig ¶
type ReplicationControllerConfig struct { APIVersion string ClusterName string Name string Namespace string Replicas *int32 ReadySeconds int32 }
ReplicationControllerConfig defines the basic configuration for a replication controller
type RestartPolicyType ¶
type RestartPolicyType int
RestartPolicyType defines the pod restart policy
const ( RestartPolicyAlways RestartPolicyType = iota + 1 RestartPolicyOnFailure RestartPolicyNever )
type RoleBindingConfig ¶
RoleBindingConfig defines the base configuration for a role binding
type RoleConfig ¶
RoleConfig defines the basic configuration for a role
type RoleRefConfig ¶
RoleRefConfig defines the configuration for a role reference
type SELinuxType ¶
SELinuxType defines SELinux labels
type SecretConfig ¶
type SecretConfig struct { APIVersion string ClusterName string Name string Namespace string Type SecretType }
SecretConfig defines the basic configuration for a secret
type SecretType ¶
type SecretType int
SecretType defines the type of sercret
const ( SecretTypeOpaque SecretType = iota + 1 SecretTypeServiceAccountToken SecretTypeDockercfg SecretTypeDockerConfigJSON SecretTypeBasicAuth SecretTypeSSHAuth SecretTypeTLS SecretTypeBootstrapToken )
type SelectorConfig ¶
type SelectorConfig struct { Labels map[string]string Expressions []ExpressionRequirementConfig }
SelectorConfig defines the configuration for a selector
type ServiceAccountConfig ¶
type ServiceAccountConfig struct { APIVersion string ClusterName string Name string Namespace string AutomountToken *bool }
ServiceAccountConfig defines the basic configuration for a service account
type ServiceAccountSecretConfig ¶
type ServiceAccountSecretConfig struct { Kind string Namespace string Name string UID string Version string ResourceVersion string FieldPath string }
ServiceAccountSecretConfig defines the configuration for an allowed secret by a service account
type ServiceAffinityType ¶
type ServiceAffinityType int
const ( ServiceAffinityTypeClientIP ServiceAffinityType = iota + 1 ServiceAffinityTypeNone )
type ServiceConfig ¶
type ServiceConfig struct { APIVersion string ClusterName string Name string Namespace string ExternalName string Type ServiceType ClusterIP string PublishNotReadyAddresses bool TrafficPolicy TrafficPolicyType Affinity ServiceAffinityType IPTimeout *int32 }
ServiceConfig defines the basic configuration for a service
type ServicePortConfig ¶
type ServicePortConfig struct { Name string Port int32 TargetPort string NodePort int32 Protocol ProtocolType }
ServicePortConfig defines the configuration for a service port
type ServiceType ¶
type ServiceType int
ServiceType defines how the service is exposed service
const ( ServiceTypeServiceIP ServiceType = iota + 1 ServiceTypeNodePort ServiceTypeLoadBalancer ServiceTypeExternalName )
type StatefulSetConfig ¶
type StatefulSetConfig struct { APIVersion string ClusterName string Name string Namespace string Replicas *int32 UpdateStrategy StatefulSetUpdateStrategyType Partition *int32 RevisionHistoryLimit *int32 PodManagementPolicy PodManagementPolicyType Service string }
StatefulSetConfig defines the basic configuration for a stateful set
type StatefulSetUpdateStrategyType ¶
type StatefulSetUpdateStrategyType int
StatefulSetUpdateStrategyType defines the update strategy for the stateful set
const ( StatefulSetUpdateStrategyRollingUpdate StatefulSetUpdateStrategyType = iota + 1 StatefulSetUpdateStrategyOnDelete )
type StorageMediumType ¶
type StorageMediumType int
StorageMediumType defines the storage medium
const ( StorageMediumDefault StorageMediumType = iota + 1 StorageMediumMemory StorageMediumHugePages )
type SubjectConfig ¶
SubjectConfig defines the configuration for a subject
type TerminationMessagePolicyType ¶
type TerminationMessagePolicyType int
TerminationMessagePolicyType defines the policy for the termination message
const ( TerminationMessageReadFile TerminationMessagePolicyType = iota + 1 TerminationMessageFallbackToLogsOnError )
type TolerationConfig ¶
type TolerationConfig struct { Duration *int64 Effect TolerationEffectType Key string Value string Op TolerationOpType }
TolerationConfig defines the configuration for a pod toleration
type TolerationEffectType ¶
type TolerationEffectType int
TolerationEffectType defines the effect of the toleration
const ( TolerationEffectNoSchedule TolerationEffectType = iota + 1 TolerationEffectPreferNoSchedule TolerationEffectNoExecute )
type TolerationOpType ¶
type TolerationOpType int
TolerationOpType defines the toleration operator
const ( TolerationOpExists TolerationOpType = iota + 1 TolerationOpEqual )
type TrafficPolicyType ¶
type TrafficPolicyType int
TrafficPolicyType defines the external traffic policy for the service
const ( ServiceTrafficPolicyLocal TrafficPolicyType = iota + 1 ServiceTrafficPolicyCluster )
type VolumeDeviceConfig ¶
VolumeDeviceConfig defines the configuration for a volume device
type VolumeMountConfig ¶
type VolumeMountConfig struct { MountPath string Propagation *MountPropagationType Name string SubPath string ReadOnly bool }
VolumeMountConfig defines the configuration for a volume mount
Source Files ¶
- action.go
- affinity.go
- components.go
- config_map.go
- container.go
- custom_resource_definition.go
- daemon_set.go
- deployer_resources.go
- deployment.go
- env.go
- horizontal_pod_autoscaler.go
- ingress.go
- job.go
- namespace.go
- persistent_volume_claim.go
- pod.go
- protocol.go
- rbac.go
- replication_controller.go
- secret.go
- selectors.go
- selinux.go
- service.go
- service_account.go
- stateful_set.go
- volume.go