package kubecaml

  1. Overview
  2. Docs
Legend:
Library
Module
Module type
Parameter
Class
Class type

Pod_spec is a description of a pod.

type t
val to_yojson : t -> Yojson.Safe.t
val make : ?volumes:Kubernetes.Definitions.Api.Core.V1.Volume.t list -> ?tolerations:Kubernetes.Definitions.Api.Core.V1.Toleration.t list -> ?termination_grace_period_seconds:int -> ?subdomain:string -> ?share_process_namespace:bool -> ?service_account_name:string -> ?service_account:string -> ?security_context:Kubernetes.Definitions.Api.Core.V1.Pod_security_context.t -> ?scheduler_name:string -> ?restart_policy:string -> ?priority_class_name:string -> ?priority:int -> ?node_selector:Object.Of_strings.t -> ?node_name:string -> ?init_containers:Kubernetes.Definitions.Api.Core.V1.Container.t list -> ?image_pull_secrets: Kubernetes.Definitions.Api.Core.V1.Local_object_reference.t list -> ?hostname:string -> ?host_pid:bool -> ?host_network:bool -> ?host_ipc:bool -> ?host_aliases:Kubernetes.Definitions.Api.Core.V1.Host_alias.t list -> ?dns_policy:string -> ?dns_config:Kubernetes.Definitions.Api.Core.V1.Pod_dns_config.t -> containers:Kubernetes.Definitions.Api.Core.V1.Container.t list -> ?automount_service_account_token:bool -> ?affinity:Kubernetes.Definitions.Api.Core.V1.Affinity.t -> ?active_deadline_seconds:int -> unit -> t
val active_deadline_seconds : t -> int option

Optional duration in seconds the pod may be active on the node relative to Start_time before the system will actively try to mark it failed and kill associated containers. Value must be a positive integer.

If specified, the pod's scheduling constraints

val automount_service_account_token : t -> bool option

Automount_service_account_token indicates whether a service account token should be automatically mounted.

List of containers belonging to the pod. Containers cannot currently be added or removed. There must be at least one container in a Pod. Cannot be updated.

Specifies the Dns parameters of a pod. Parameters specified here will be merged to the generated Dns configuration based on Dns_policy.

val dns_policy : t -> string option

Set Dns policy for the pod. Defaults to "cluster_first". Valid values are 'cluster_first_with_host_net', 'cluster_first', 'default' or 'none'. Dns parameters given in Dns_config will be merged with the policy selected with Dns_policy. To have Dns options set along with host_network, you have to specify Dns policy explicitly to 'cluster_first_with_host_net'.

val host_aliases : t -> Kubernetes.Definitions.Api.Core.V1.Host_alias.t list option

Host_aliases is an optional list of hosts and Ips that will be injected into the pod's hosts file if specified. This is only valid for non_host_network pods.

val host_ipc : t -> bool option

Use the host's ipc namespace. Optional: Default to false.

val host_network : t -> bool option

Host networking requested for this pod. Use the host's network namespace. If this option is set, the ports that will be used must be specified. Default to false.

val host_pid : t -> bool option

Use the host's pid namespace. Optional: Default to false.

val hostname : t -> string option

Specifies the hostname of the Pod If not specified, the pod's hostname will be set to a system_defined value.

val image_pull_secrets : t -> Kubernetes.Definitions.Api.Core.V1.Local_object_reference.t list option

Image_pull_secrets is an optional list of references to secrets in the same namespace to use for pulling any of the images used by this Pod_spec. If specified, these secrets will be passed to individual puller implementations for them to use. For example, in the case of docker, only Docker_config type secrets are honored. More info: https://kubernetes.io/docs/concepts/containers/images#specifying-imagepullsecrets-on-a-pod

val init_containers : t -> Kubernetes.Definitions.Api.Core.V1.Container.t list option

List of initialization containers belonging to the pod. Init containers are executed in order prior to containers being started. If any init container fails, the pod is considered to have failed and is handled according to its restart_policy. The name for an init container or normal container must be unique among all containers. Init containers may not have Lifecycle actions, Readiness probes, or Liveness probes. The resource_requirements of an init container are taken into account during scheduling by finding the highest request/limit for each resource type, and then using the max of of that value or the sum of the normal containers. Limits are applied to init containers in a similar fashion. Init containers cannot currently be added or removed. Cannot be updated. More info: https://kubernetes.io/docs/concepts/workloads/pods/init-containers/

val node_name : t -> string option

Node_name is a request to schedule this pod onto a specific node. If it is non_empty, the scheduler simply schedules this pod onto that node, assuming that it fits resource requirements.

val node_selector : t -> Object.Of_strings.t option

Node_selector is a selector which must be true for the pod to fit on a node. Selector which must match a node's labels for the pod to be scheduled on that node. More info: https://kubernetes.io/docs/concepts/configuration/assign-pod-node/

val priority : t -> int option

The priority value. Various system components use this field to find the priority of the pod. When Priority Admission Controller is enabled, it prevents users from setting this field. The admission controller populates this field from Priority_class_name. The higher the value, the higher the priority.

val priority_class_name : t -> string option

If specified, indicates the pod's priority. "system_node_critical" and "system_cluster_critical" are two special keywords which indicate the highest priorities with the former being the highest priority. Any other name must be defined by creating a Priority_class object with that name. If not specified, the pod priority will be default or zero if there is no default.

val restart_policy : t -> string option

Restart policy for all containers within the pod. One of Always, On_failure, Never. Default to Always. More info: https://kubernetes.io/docs/concepts/workloads/pods/pod-lifecycle/#restart-policy

val scheduler_name : t -> string option

If specified, the pod will be dispatched by specified scheduler. If not specified, the pod will be dispatched by default scheduler.

Security_context holds pod_level security attributes and common container settings. Optional: Defaults to empty. See type description for default values of each field.

val service_account : t -> string option

Deprecated_service_account is a depreciated alias for Service_account_name. Deprecated: Use service_account_name instead.

val service_account_name : t -> string option

Service_account_name is the name of the Service_account to use to run this pod. More info: https://kubernetes.io/docs/tasks/configure-pod-container/configure-service-account/

val share_process_namespace : t -> bool option

Share a single process namespace between all of the containers in a pod. When this is set containers will be able to view and signal processes from other containers in the same pod, and the first process in each container will not be assigned Pid 1. Host_pid and Share_process_namespace cannot both be set. Optional: Default to false. This field is alpha_level and is honored only by servers that enable the Pod_share_process_namespace feature.

val subdomain : t -> string option

If specified, the fully qualified Pod hostname will be "<hostname>.<subdomain>.<pod namespace>.svc.<cluster domain>". If not specified, the pod will not have a domainname at all.

val termination_grace_period_seconds : t -> int option

Optional duration in seconds the pod needs to terminate gracefully. May be decreased in delete request. Value must be non_negative integer. The value zero indicates delete immediately. If this value is nil, the default grace period will be used instead. The grace period is the duration in seconds after the processes running in the pod are sent a termination signal and the time when the processes are forcibly halted with a kill signal. Set this value longer than the expected cleanup time for your process. Defaults to 30 seconds.

val tolerations : t -> Kubernetes.Definitions.Api.Core.V1.Toleration.t list option

If specified, the pod's tolerations.

val volumes : t -> Kubernetes.Definitions.Api.Core.V1.Volume.t list option

List of volumes that can be mounted by containers belonging to the pod. More info: https://kubernetes.io/docs/concepts/storage/volumes

module Object : Object.S with type value := t
OCaml

Innovation. Community. Security.