Class StatefulSet.Builder

  • All Implemented Interfaces:
    software.amazon.jsii.Builder<StatefulSet>
    Enclosing class:
    StatefulSet

    @Stability(Stable)
    public static final class StatefulSet.Builder
    extends Object
    implements software.amazon.jsii.Builder<StatefulSet>
    A fluent builder for StatefulSet.
    • Method Detail

      • create

        @Stability(Stable)
        public static StatefulSet.Builder create​(software.constructs.Construct scope,
                                                 String id)
        Parameters:
        scope - This parameter is required.
        id - This parameter is required.
        Returns:
        a new instance of StatefulSet.Builder.
      • metadata

        @Stability(Stable)
        public StatefulSet.Builder metadata​(org.cdk8s.ApiObjectMetadata metadata)
        Metadata that all persisted resources must have, which includes all objects users must create.

        Parameters:
        metadata - Metadata that all persisted resources must have, which includes all objects users must create. This parameter is required.
        Returns:
        this
      • containers

        @Stability(Stable)
        public StatefulSet.Builder containers​(List<? extends ContainerProps> 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()

        Default: - No containers. Note that a pod spec must include at least one container.

        Parameters:
        containers - List of containers belonging to the pod. This parameter is required.
        Returns:
        this
      • restartPolicy

        @Stability(Stable)
        public StatefulSet.Builder restartPolicy​(RestartPolicy restartPolicy)
        Restart policy for all containers within the pod.

        Default: RestartPolicy.ALWAYS

        Parameters:
        restartPolicy - Restart policy for all containers within the pod. This parameter is required.
        Returns:
        this
      • serviceAccount

        @Stability(Stable)
        public StatefulSet.Builder serviceAccount​(IServiceAccount 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).

        Default: - No service account.

        Parameters:
        serviceAccount - A service account provides an identity for processes that run in a Pod. This parameter is required.
        Returns:
        this
      • volumes

        @Stability(Stable)
        public StatefulSet.Builder volumes​(List<? extends Volume> volumes)
        List of volumes that can be mounted by containers belonging to the pod.

        You can also add volumes later using podSpec.addVolume()

        Default: - No volumes.

        Parameters:
        volumes - List of volumes that can be mounted by containers belonging to the pod. This parameter is required.
        Returns:
        this
      • podMetadata

        @Stability(Stable)
        public StatefulSet.Builder podMetadata​(org.cdk8s.ApiObjectMetadata podMetadata)
        The pod metadata.

        Parameters:
        podMetadata - The pod metadata. This parameter is required.
        Returns:
        this
      • service

        @Stability(Stable)
        public StatefulSet.Builder service​(Service service)
        Service to associate with the statefulset.

        Parameters:
        service - Service to associate with the statefulset. This parameter is required.
        Returns:
        this
      • defaultSelector

        @Stability(Stable)
        public StatefulSet.Builder defaultSelector​(Boolean defaultSelector)
        Automatically allocates a pod selector for this statefulset.

        If this is set to false you must define your selector through statefulset.podMetadata.addLabel() and statefulset.selectByLabel().

        Default: true

        Parameters:
        defaultSelector - Automatically allocates a pod selector for this statefulset. This parameter is required.
        Returns:
        this
      • podManagementPolicy

        @Stability(Stable)
        public StatefulSet.Builder podManagementPolicy​(PodManagementPolicy podManagementPolicy)
        Pod management policy to use for this statefulset.

        Default: PodManagementPolicy.ORDERED_READY

        Parameters:
        podManagementPolicy - Pod management policy to use for this statefulset. This parameter is required.
        Returns:
        this
      • replicas

        @Stability(Stable)
        public StatefulSet.Builder replicas​(Number replicas)
        Number of desired pods.

        Default: 1

        Parameters:
        replicas - Number of desired pods. This parameter is required.
        Returns:
        this
      • build

        @Stability(Stable)
        public StatefulSet build()
        Specified by:
        build in interface software.amazon.jsii.Builder<StatefulSet>