Documentation ¶
Index ¶
Constants ¶
This section is empty.
Variables ¶
This section is empty.
Functions ¶
This section is empty.
Types ¶
type Profile ¶
type Profile struct { metav1.TypeMeta `json:",inline"` metav1.ObjectMeta `json:"metadata,omitempty"` Spec ProfileSpec `json:"spec"` }
Profile and ProfileSpec are used to customise the Pod template for sahrepods
type ProfileList ¶
type ProfileList struct { metav1.TypeMeta `json:",inline"` metav1.ListMeta `json:"metadata"` Items []Profile `json:"items"` }
ProfileList is a list of Profiles
type ProfileSpec ¶
type ProfileSpec struct { // If specified, the function's pod tolerations. // // merged into the Pod Tolerations // // +optional Tolerations []corev1.Toleration `json:"tolerations,omitempty"` // RuntimeClassName refers to a RuntimeClass object in the node.k8s.io group, which should be used // to run this pod. If no RuntimeClass resource matches the named class, the pod will not be run. // If unset or empty, the "legacy" RuntimeClass will be used, which is an implicit class with an // empty definition that uses the default runtime handler. // More info: https://git.k8s.io/enhancements/keps/sig-node/runtime-class.md // This is a beta feature as of Kubernetes v1.14. // // copied to the Pod RunTimeClass, this will replace any existing value or previously // applied Profile. // // +optional RuntimeClassName *string `json:"runtimeClassName,omitempty"` // If specified, the pod's scheduling constraints // // copied to the Pod Affinity, this will replace any existing value or previously // applied Profile. We use a replacement strategy because it is not clear that merging // affinities will actually produce a meaning Affinity definition, it would likely result in // an impossible to satisfy constraint // // +optional Affinity *corev1.Affinity `json:"affinity,omitempty"` // SecurityContext holds pod-level security attributes and common container settings. // Optional: Defaults to empty. See type description for default values of each field. // // each non-nil value will be merged into the function's PodSecurityContext, the value will // replace any existing value or previously applied Profile // // +optional PodSecurityContext *corev1.PodSecurityContext `json:"podSecurityContext,omitempty"` }
ProfileSpec is an openfaas api extensions that can be predefined and applied to functions by annotating them with `com.openfaas/profile: name1,name2`
type SharepodDeployment ¶
type SharepodDeployment struct { string `json:"service"` Image string `json:"image"` Namespace string `json:"namespace,omitempty"` // with the watchdog EnvProcess string `json:"envProcess,omitempty"` EnvVars map[string]string `json:"envVars,omitempty"` Constraints []string `json:"constraints,omitempty"` Secrets []string `json:"secrets,omitempty"` // faas-provider or the gateway Labels *map[string]string `json:"labels,omitempty"` // faas-provider or the gateway Annotations *map[string]string `json:"annotations,omitempty"` // mount-point. ReadOnlyRootFilesystem bool `json:"readOnlyRootFilesystem,omitempty"` }Service
TODO: not yet finalized, still need to check its validation
type SharepodRequirements ¶
type SharepodRequirements struct { //Limits }
type SharepodResources ¶
type SharepodResources struct {}
SharepodResources is used to set GPU and memory limits and requests
type SharepodSpec ¶
type SharepodSpec struct { //this is inside ObjectMeta TerminationGracePeriodSeconds int `json:"terminationGracePeriodSeconds, omitempty"` //use Containers instead, regarding how it was defined in KubeShare Containers Container `json:"containers,omitempty"` Handler string `json:"handler,omitempty"` Labels *map[string]string `json:"labels,omitempty"` Environment *map[string]string `json:"environment,omitempty"` Constraints []string `json:"constraints,omitempty"` Secrets []string `json:"secrets,omitempty"` //Limits *SharepodResources `json:"limits,omitempty"` // +optional //Requests *SharepodResources `json:"requests,omitempty"` // +optional ReadOnlyRootFilesystem bool `json:"readOnlyRootFilesystem"` }
Click to show internal directories.
Click to hide internal directories.