Class Job.Builder

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

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

      • create

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

        @Stability(Stable)
        public Job.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 Job.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 Job.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 Job.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 Job.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 Job.Builder podMetadata​(org.cdk8s.ApiObjectMetadata podMetadata)
        The pod metadata.

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

        @Stability(Stable)
        public Job.Builder activeDeadline​(org.cdk8s.Duration activeDeadline)
        Specifies the duration the job may be active before the system tries to terminate it.

        Default: - If unset, then there is no deadline.

        Parameters:
        activeDeadline - Specifies the duration the job may be active before the system tries to terminate it. This parameter is required.
        Returns:
        this
      • backoffLimit

        @Stability(Stable)
        public Job.Builder backoffLimit​(Number backoffLimit)
        Specifies the number of retries before marking this job failed.

        Default: - If not set, system defaults to 6.

        Parameters:
        backoffLimit - Specifies the number of retries before marking this job failed. This parameter is required.
        Returns:
        this
      • ttlAfterFinished

        @Stability(Stable)
        public Job.Builder ttlAfterFinished​(org.cdk8s.Duration ttlAfterFinished)
        Limits the lifetime of a Job that has finished execution (either Complete or Failed).

        If this field is set, after the Job finishes, it is eligible to be automatically deleted. When the Job is being deleted, its lifecycle guarantees (e.g. finalizers) will be honored. If this field is set to zero, the Job becomes eligible to be deleted immediately after it finishes. This field is alpha-level and is only honored by servers that enable the TTLAfterFinished feature.

        Default: - If this field is unset, the Job won't be automatically deleted.

        Parameters:
        ttlAfterFinished - Limits the lifetime of a Job that has finished execution (either Complete or Failed). This parameter is required.
        Returns:
        this
      • build

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