import { Resource } from '@c6o/kubeclient-contracts'; import { ListMeta, ObjectMeta, Time } from '../meta/v1'; import { ObjectReference } from '../core/v1'; import { JobSpec } from './v1'; export interface CronJob extends Resource { apiVersion?: 'batch/v1beta1'; kind?: 'CronJob'; metadata?: ObjectMeta; spec?: CronJobSpec; status?: CronJobStatus; } export interface CronJobList extends Resource { apiVersion?: 'batch/v1beta1'; items: Array; kind?: 'CronJobList'; metadata?: ListMeta; } export interface CronJobSpec { concurrencyPolicy?: string; failedJobsHistoryLimit?: number; jobTemplate: JobTemplateSpec; schedule: string; startingDeadlineSeconds?: number; successfulJobsHistoryLimit?: number; suspend?: boolean; } export interface CronJobStatus { active?: Array; lastScheduleTime?: Time; lastSuccessfulTime?: Time; } export interface JobTemplateSpec { metadata?: ObjectMeta; spec?: JobSpec; }