Package org.cdk8s.plus20
Class PodSpecProps.Builder
- java.lang.Object
-
- org.cdk8s.plus20.PodSpecProps.Builder
-
- All Implemented Interfaces:
software.amazon.jsii.Builder<PodSpecProps>
- Enclosing interface:
- PodSpecProps
@Stability(Stable) public static final class PodSpecProps.Builder extends Object implements software.amazon.jsii.Builder<PodSpecProps>
A builder forPodSpecProps
-
-
Constructor Summary
Constructors Constructor Description Builder()
-
Method Summary
All Methods Instance Methods Concrete Methods Modifier and Type Method Description PodSpecPropsbuild()Builds the configured instance.PodSpecProps.Buildercontainers(List<? extends ContainerProps> containers)Sets the value ofPodSpecProps.getContainers()PodSpecProps.BuilderhostAliases(List<? extends HostAlias> hostAliases)Sets the value ofPodSpecProps.getHostAliases()PodSpecProps.BuilderinitContainers(List<? extends ContainerProps> initContainers)Sets the value ofPodSpecProps.getInitContainers()PodSpecProps.BuilderrestartPolicy(RestartPolicy restartPolicy)Sets the value ofPodSpecProps.getRestartPolicy()PodSpecProps.BuildersecurityContext(PodSecurityContextProps securityContext)Sets the value ofPodSpecProps.getSecurityContext()PodSpecProps.BuilderserviceAccount(IServiceAccount serviceAccount)Sets the value ofPodSpecProps.getServiceAccount()PodSpecProps.Buildervolumes(List<? extends Volume> volumes)Sets the value ofPodSpecProps.getVolumes()
-
-
-
Method Detail
-
containers
@Stability(Stable) public PodSpecProps.Builder containers(List<? extends ContainerProps> containers)
Sets the value ofPodSpecProps.getContainers()- Parameters:
containers- List of containers belonging to the pod. Containers cannot currently be added or removed. There must be at least one container in a Pod.You can add additionnal containers using
podSpec.addContainer()- Returns:
this
-
hostAliases
@Stability(Stable) public PodSpecProps.Builder hostAliases(List<? extends HostAlias> hostAliases)
Sets the value ofPodSpecProps.getHostAliases()- Parameters:
hostAliases- HostAlias holds the mapping between IP and hostnames that will be injected as an entry in the pod's hosts file.- Returns:
this
-
initContainers
@Stability(Stable) public PodSpecProps.Builder initContainers(List<? extends ContainerProps> initContainers)
Sets the value ofPodSpecProps.getInitContainers()- Parameters:
initContainers- 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 restartPolicy. The name for an init container or normal container must be unique among all containers. Init containers may not have Lifecycle actions, Readiness probes, Liveness probes, or Startup probes. The resourceRequirements 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 ,removed or updated.
- Returns:
this
-
restartPolicy
@Stability(Stable) public PodSpecProps.Builder restartPolicy(RestartPolicy restartPolicy)
Sets the value ofPodSpecProps.getRestartPolicy()- Parameters:
restartPolicy- Restart policy for all containers within the pod.- Returns:
this
-
securityContext
@Stability(Stable) public PodSpecProps.Builder securityContext(PodSecurityContextProps securityContext)
Sets the value ofPodSpecProps.getSecurityContext()- Parameters:
securityContext- SecurityContext holds pod-level security attributes and common container settings.- Returns:
this
-
serviceAccount
@Stability(Stable) public PodSpecProps.Builder serviceAccount(IServiceAccount serviceAccount)
Sets the value ofPodSpecProps.getServiceAccount()- Parameters:
serviceAccount- A service account provides an identity for processes that run in a Pod. When you (a human) access the cluster (for example, using kubectl), you are authenticated by the apiserver as a particular User Account (currently this is usually admin, unless your cluster administrator has customized your cluster). Processes in containers inside pods can also contact the apiserver. When they do, they are authenticated as a particular Service Account (for example, default).- Returns:
this
-
volumes
@Stability(Stable) public PodSpecProps.Builder volumes(List<? extends Volume> volumes)
Sets the value ofPodSpecProps.getVolumes()- Parameters:
volumes- List of volumes that can be mounted by containers belonging to the pod. You can also add volumes later usingpodSpec.addVolume()- Returns:
this
-
build
@Stability(Stable) public PodSpecProps build()
Builds the configured instance.- Specified by:
buildin interfacesoftware.amazon.jsii.Builder<PodSpecProps>- Returns:
- a new instance of
PodSpecProps - Throws:
NullPointerException- if any required attribute was not provided
-
-