Class CronJobSpec.Builder

  • All Implemented Interfaces:
    software.amazon.jsii.Builder<CronJobSpec>
    Enclosing interface:
    CronJobSpec

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

      • Builder

        public Builder()
    • Method Detail

      • schedule

        @Stability(Stable)
        public CronJobSpec.Builder schedule​(String schedule)
        Sets the value of CronJobSpec.getSchedule()
        Parameters:
        schedule - The schedule in Cron format, see https://en.wikipedia.org/wiki/Cron. This parameter is required.
        Returns:
        this
      • concurrencyPolicy

        @Stability(Stable)
        public CronJobSpec.Builder concurrencyPolicy​(String concurrencyPolicy)
        Parameters:
        concurrencyPolicy - Specifies how to treat concurrent executions of a Job. Valid values are: - "Allow" (default): allows CronJobs to run concurrently; - "Forbid": forbids concurrent runs, skipping next run if previous run hasn't finished yet; - "Replace": cancels currently running job and replaces it with a new one
        Returns:
        this
      • failedJobsHistoryLimit

        @Stability(Stable)
        public CronJobSpec.Builder failedJobsHistoryLimit​(Number failedJobsHistoryLimit)
        Parameters:
        failedJobsHistoryLimit - The number of failed finished jobs to retain. Value must be non-negative integer. Defaults to 1.
        Returns:
        this
      • startingDeadlineSeconds

        @Stability(Stable)
        public CronJobSpec.Builder startingDeadlineSeconds​(Number startingDeadlineSeconds)
        Parameters:
        startingDeadlineSeconds - Optional deadline in seconds for starting the job if it misses scheduled time for any reason. Missed jobs executions will be counted as failed ones.
        Returns:
        this
      • successfulJobsHistoryLimit

        @Stability(Stable)
        public CronJobSpec.Builder successfulJobsHistoryLimit​(Number successfulJobsHistoryLimit)
        Parameters:
        successfulJobsHistoryLimit - The number of successful finished jobs to retain. Value must be non-negative integer. Defaults to 3.
        Returns:
        this
      • suspend

        @Stability(Stable)
        public CronJobSpec.Builder suspend​(Boolean suspend)
        Sets the value of CronJobSpec.getSuspend()
        Parameters:
        suspend - This flag tells the controller to suspend subsequent executions, it does not apply to already started executions. Defaults to false.
        Returns:
        this
      • timeZone

        @Stability(Stable)
        public CronJobSpec.Builder timeZone​(String timeZone)
        Sets the value of CronJobSpec.getTimeZone()
        Parameters:
        timeZone - The time zone name for the given schedule, see https://en.wikipedia.org/wiki/List_of_tz_database_time_zones. If not specified, this will default to the time zone of the kube-controller-manager process. The set of valid time zone names and the time zone offset is loaded from the system-wide time zone database by the API server during CronJob validation and the controller manager during execution. If no system-wide time zone database can be found a bundled version of the database is used instead. If the time zone name becomes invalid during the lifetime of a CronJob or due to a change in host configuration, the controller will stop creating new new Jobs and will create a system event with the reason UnknownTimeZone. More information can be found in https://kubernetes.io/docs/concepts/workloads/controllers/cron-jobs/#time-zones This is beta field and must be enabled via the CronJobTimeZone feature gate.
        Returns:
        this
      • build

        @Stability(Stable)
        public CronJobSpec build()
        Builds the configured instance.
        Specified by:
        build in interface software.amazon.jsii.Builder<CronJobSpec>
        Returns:
        a new instance of CronJobSpec
        Throws:
        NullPointerException - if any required attribute was not provided